fix open-streets-dc example syntax that I accidentally broke in e0f82b669dab06efcccc237f2363b8619c1c6e55 - closes #1639

/* ---- PALETTE ---- */

@motorway: #F8D6E0; /* #90BFE0 */
@trunk: #FFFABB;
@primary: @trunk;
@secondary: @trunk;
@road: #bbb;
@track: @road;
@footway: #6B9;
@cycleway: #69B;

/* ---- ROAD COLORS ---- */

/*.highway.line { line-color: #f00; } /* debug */

.highway[TYPE='motorway'] {
  .line[zoom>=7]  {
    line-color:spin(darken(@motorway,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=10] {
    line-color:@motorway;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='motorway_link'] {
  .line[zoom>=7]  {
    line-color:spin(darken(@motorway,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=12] {
    line-color:@motorway;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='trunk'],
.highway[TYPE='trunk_link'] {
  .line[zoom>=7] {
    line-color:spin(darken(@trunk,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=11] {
    line-color:@trunk;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='primary'],
.highway[TYPE='primary_link'] {
  .line[zoom>=7] {
    line-color:spin(darken(@primary,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=12] {
    line-color:@primary;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='secondary'] {
  .line[zoom>=8] {
    line-color:spin(darken(@secondary,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=12] {
    line-color:@secondary;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='secondary_link'] {
  .line[zoom>=12] {
    line-color:spin(darken(@secondary,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=14] {
    line-color:@secondary;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='living_street'],
.highway[TYPE='residential'],
.highway[TYPE='road'],
.highway[TYPE='tertiary'],
.highway[TYPE='unclassified'] {
  .line[zoom>=10] {
    line-color:@road;
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=14] {
    line-color:#fff;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='service'] {
  .line[zoom>=13] {
    line-color:@road;
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=16] {
    line-color:#fff;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='track'] {
  .line[zoom>=13] {
    line-color:@track;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='footway'],
.highway[TYPE='path'],
.highway[TYPE='pedestrian'] {
  .line[zoom>=14] {
    line-color:@footway;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='cycleway'] {
  .line[zoom>=14] {
    line-color:@cycleway;
    line-cap:round;
    line-join:round;
  }
}

/* ---- ROAD WIDTHS ---- */

.highway[zoom=7] {
  .line[TYPE='motorway'] { line-width: 1.0; }
  .line[TYPE='trunk']    { line-width: 0.8; }
  .line[TYPE='primary']  { line-width: 0.6; }
}

.highway[zoom=8] {
  .line[TYPE='motorway'] { line-width: 1.0; }
  .line[TYPE='trunk']    { line-width: 0.8; }
  .line[TYPE='primary']  { line-width: 0.5; }
  .line[TYPE='secondary']{ line-width: 0.3; }
}

.highway[zoom=9] {
  .line[TYPE='motorway'] { line-width: 1.0; }
  .line[TYPE='trunk']    { line-width: 0.8; }
  .line[TYPE='primary']  { line-width: 0.6; }
  .line[TYPE='secondary']{ line-width: 0.4; }
}

.highway[zoom=10] {
  .line[TYPE='motorway'] { line-width: 0.8 + 1.6; }
  .fill[TYPE='motorway'] { line-width: 0.8; }

  .line[TYPE='trunk']    { line-width: 1.4; }

  .line[TYPE='primary']  { line-width: 1.2; }

  .line[TYPE='secondary']{ line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified'] { line-width: 0.2; }
}

.highway[zoom=11] {
  .line[TYPE='motorway']      { line-width: 1.0 + 1.8; }
  .fill[TYPE='motorway']      { line-width: 1.0; }
  .line[TYPE='trunk']         { line-width: 0.8 + 1.6; }
  .fill[TYPE='trunk']         { line-width: 0.8; }
  .line[TYPE='primary']       { line-width: 1.4; }
  .line[TYPE='secondary']     { line-width: 1.0; }

  .line[TYPE='motorway_link'] { line-width: 0.6; }
  .line[TYPE='trunk_link']    { line-width: 0.5; }
  .line[TYPE='primary_link']  { line-width: 0.4; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified'] { line-width: 0.4; }
}

.highway[zoom=12] {
  .line[TYPE='motorway']      { line-width: 1.2 + 2; }
  .fill[TYPE='motorway']      { line-width: 1.2; }
  .line[TYPE='trunk']         { line-width: 1.0 + 1.8; }
  .fill[TYPE='trunk']         { line-width: 1.0; }
  .line[TYPE='primary']       { line-width: 0.8 + 1.6; }
  .fill[TYPE='primary']       { line-width: 0.8; }
  .line[TYPE='secondary']     { line-width: 0.8 + 1.6; }
  .fill[TYPE='secondary']     { line-width: 0.8; }

  .line[TYPE='motorway_link'] { line-width: 1.0 + 1.8; }
  .fill[TYPE='motorway_link'] { line-width: 1.0; }
  .line[TYPE='trunk_link']    { line-width: 0.8 + 1.6; }
  .fill[TYPE='trunk_link']    { line-width: 0.8; }
  .line[TYPE='primary_link']  { line-width: 0.8 + 1.6; }
  .fill[TYPE='primary_link']  { line-width: 0.8; }
  .line[TYPE='secondary_link']  { line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 0.6; }
}

.highway[zoom=13] {
  .line[TYPE='motorway']      { line-width: 2.0 + 2; }
  .fill[TYPE='motorway']      { line-width: 2.0; }
  .line[TYPE='trunk']         { line-width: 1.4 + 2; }
  .fill[TYPE='trunk']         { line-width: 1.4; }
  .line[TYPE='primary']       { line-width: 1.2 + 2; }
  .fill[TYPE='primary']       { line-width: 1.2; }
  .line[TYPE='primary_link'],
  .line[TYPE='secondary']     { line-width: 1.0 + 2; }
  .fill[TYPE='primary_link'],
  .fill[TYPE='secondary']     { line-width: 1.0; }

  .line[TYPE='motorway_link'] { line-width: 1.0 + 2; }
  .fill[TYPE='motorway_link'] { line-width: 1.0; }
  .line[TYPE='trunk_link']    { line-width: 1.0 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 1.0; }
  .line[TYPE='primary_link']  { line-width: 1.0 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.0; }
  .line[TYPE='secondary_link']{ line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 1.0; }
  .line[TYPE='service']       { line-width: 0.5; }

  .line[TYPE='track']         { line-width: 0.5; line-dasharray:2,3; }
}

.highway[zoom=14] {
  .line[TYPE='motorway']      { line-width: 4 + 2; }
  .fill[TYPE='motorway']      { line-width: 4; }
  .line[TYPE='trunk']         { line-width: 3 + 2; }
  .fill[TYPE='trunk']         { line-width: 3; }
  .line[TYPE='primary']       { line-width: 2 + 2; }
  .fill[TYPE='primary']       { line-width: 2; }
  .line[TYPE='secondary']     { line-width: 2 + 2; }
  .fill[TYPE='secondary']     { line-width: 2; }

  .line[TYPE='motorway_link'] { line-width: 1.4 + 2; }
  .fill[TYPE='motorway_link'] { line-width: 1.4; }
  .line[TYPE='trunk_link']    { line-width: 1.2 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 1.2; }
  .line[TYPE='primary_link']  { line-width: 1.0 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.0; }
  .line[TYPE='secondary_link']{ line-width: 0.8 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 1.6 + 1.6; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 1.6; }
  .line[TYPE='service']       { line-width: 0.6; }

  .line[TYPE='track']         { line-width: 0.6; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:1,2;
    line-width:0.6;
  }
}

.highway[zoom=15] {
  .line[TYPE='motorway']      { line-width: 6 + 2; }
  .fill[TYPE='motorway']      { line-width: 6; }
  .line[TYPE='trunk']         { line-width: 5 + 2; }
  .fill[TYPE='trunk']         { line-width: 5; }
  .line[TYPE='primary']       { line-width: 4 + 2; }
  .fill[TYPE='primary']       { line-width: 4; }
  .line[TYPE='secondary']     { line-width: 4 + 2; }
  .fill[TYPE='secondary']     { line-width: 4; }

  .line[TYPE='motorway_link'] { line-width: 2 + 2; }
  .fill[TYPE='motorway_link'] { line-width: 2; }
  .line[TYPE='trunk_link']    { line-width: 1.6 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 1.6; }
  .line[TYPE='primary_link']  { line-width: 1.4 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.4; }
  .line[TYPE='secondary_link']{ line-width: 1.0 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 1.0; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 4 + 2; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 4; }
  .line[TYPE='service']       { line-width: 1; }

  .line[TYPE='track']         { line-width: 1; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:1,2;
    line-width:0.8;
  }
}

.highway[zoom=16] {
  .line[TYPE='motorway']      { line-width: 9 + 3; }
  .fill[TYPE='motorway']      { line-width: 9; }
  .line[TYPE='trunk']         { line-width: 8 + 2.5; }
  .fill[TYPE='trunk']         { line-width: 8; }
  .line[TYPE='primary']       { line-width: 7 + 2; }
  .fill[TYPE='primary']       { line-width: 7; }
  .line[TYPE='secondary']     { line-width: 6 + 2; }
  .fill[TYPE='secondary']     { line-width: 6; }

  .line[TYPE='motorway_link'] { line-width: 3 + 2.5; }
  .fill[TYPE='motorway_link'] { line-width: 3; }
  .line[TYPE='trunk_link']    { line-width: 2 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 2; }
  .line[TYPE='primary_link']  { line-width: 1.8 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.8; }
  .line[TYPE='secondary_link']{ line-width: 1.4 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 1.4; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 6 + 2; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 6; }
  .line[TYPE='service']       { line-width: 1.4 + 2; }
  .fill[TYPE='service']       { line-width: 1.4; }

  .line[TYPE='track']         { line-width: 1.2; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:1,2;
    line-width:1.0;
  }
}

.highway[zoom>=17] {
  .line[TYPE='motorway']      { line-width: 13 + 3; }
  .fill[TYPE='motorway']      { line-width: 13; }
  .line[TYPE='trunk']         { line-width: 10 + 2.5; }
  .fill[TYPE='trunk']         { line-width: 10; }
  .line[TYPE='primary']       { line-width: 9 + 2; }
  .fill[TYPE='primary']       { line-width: 9; }
  .line[TYPE='secondary']     { line-width: 8 + 2; }
  .fill[TYPE='secondary']     { line-width: 8; }

  .line[TYPE='motorway_link'] { line-width: 4 + 2.5; }
  .fill[TYPE='motorway_link'] { line-width: 4; }
  .line[TYPE='trunk_link']    { line-width: 3.5 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 3.5; }
  .line[TYPE='primary_link']  { line-width: 3 + 2; }
  .fill[TYPE='primary_link']  { line-width: 3; }
  .line[TYPE='secondary_link']{ line-width: 2.5 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 2.5; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 8 + 2; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 8; }

  .line[TYPE='service']       { line-width: 2 + 2; }
  .fill[TYPE='service']       { line-width: 2; }

  .line[TYPE='track']         { line-width: 1.4; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:2,3;
    line-width:1.2;
  }
}

/* ---- ONE WAY ARROWS ---- */

.highway.fill::oneway_arrow[zoom>15][ONEWAY='yes'] {
  marker-file:url("shape://arrow");
  marker-width:15;
  marker-placement:line;
  marker-line-width:1;
  marker-line-opacity:0.5;
  marker-line-color:#fff;
  marker-spacing: 200;
  marker-fill:spin(darken(@motorway,50),-10);
  marker-opacity:0.8;
}

/* ---- PALETTE ---- */

@motorway: #F8D6E0; /* #90BFE0 */
@trunk: #FFFABB;
@primary: @trunk;
@secondary: @trunk;
@road: #bbb;
@track: @road;
@footway: #6B9;
@cycleway: #69B;

/* ---- ROAD COLORS ---- */

/*.highway.line { line-color: #f00; } /* debug */

.highway[TYPE='motorway'] {
  .line[zoom>=7]  {
    line-color:spin(darken(@motorway,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=10] {
    line-color:@motorway;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='motorway_link'] {
  .line[zoom>=7]  {
    line-color:spin(darken(@motorway,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=12] {
    line-color:@motorway;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='trunk'],
.highway[TYPE='trunk_link'] {
  .line[zoom>=7] {
    line-color:spin(darken(@trunk,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=11] {
    line-color:@trunk;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='primary'],
.highway[TYPE='primary_link'] {
  .line[zoom>=7] {
    line-color:spin(darken(@primary,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=12] {
    line-color:@primary;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='secondary'] {
  .line[zoom>=8] {
    line-color:spin(darken(@secondary,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=12] {
    line-color:@secondary;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='secondary_link'] {
  .line[zoom>=12] {
    line-color:spin(darken(@secondary,36),-10);
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=14] {
    line-color:@secondary;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='living_street'],
.highway[TYPE='residential'],
.highway[TYPE='road'],
.highway[TYPE='tertiary'],
.highway[TYPE='unclassified'] {
  .line[zoom>=10] {
    line-color:@road;
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=14] {
    line-color:#fff;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='service'] {
  .line[zoom>=13] {
    line-color:@road;
    line-cap:round;
    line-join:round;
  }
  .fill[zoom>=16] {
    line-color:#fff;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='track'] {
  .line[zoom>=13] {
    line-color:@track;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='footway'],
.highway[TYPE='path'],
.highway[TYPE='pedestrian'] {
  .line[zoom>=14] {
    line-color:@footway;
    line-cap:round;
    line-join:round;
  }
}

.highway[TYPE='cycleway'] {
  .line[zoom>=14] {
    line-color:@cycleway;
    line-cap:round;
    line-join:round;
  }
}

/* ---- ROAD WIDTHS ---- */

.highway[zoom=7] {
  .line[TYPE='motorway'] { line-width: 1.0; }
  .line[TYPE='trunk']    { line-width: 0.8; }
  .line[TYPE='primary']  { line-width: 0.6; }
}

.highway[zoom=8] {
  .line[TYPE='motorway'] { line-width: 1.0; }
  .line[TYPE='trunk']    { line-width: 0.8; }
  .line[TYPE='primary']  { line-width: 0.5; }
  .line[TYPE='secondary']{ line-width: 0.3; }
}

.highway[zoom=9] {
  .line[TYPE='motorway'] { line-width: 1.0; }
  .line[TYPE='trunk']    { line-width: 0.8; }
  .line[TYPE='primary']  { line-width: 0.6; }
  .line[TYPE='secondary']{ line-width: 0.4; }
}

.highway[zoom=10] {
  .line[TYPE='motorway'] { line-width: 0.8 + 1.6; }
  .fill[TYPE='motorway'] { line-width: 0.8; }

  .line[TYPE='trunk']    { line-width: 1.4; }

  .line[TYPE='primary']  { line-width: 1.2; }

  .line[TYPE='secondary']{ line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified'] { line-width: 0.2; }
}

.highway[zoom=11] {
  .line[TYPE='motorway']      { line-width: 1.0 + 1.8; }
  .fill[TYPE='motorway']      { line-width: 1.0; }
  .line[TYPE='trunk']         { line-width: 0.8 + 1.6; }
  .fill[TYPE='trunk']         { line-width: 0.8; }
  .line[TYPE='primary']       { line-width: 1.4; }
  .line[TYPE='secondary']     { line-width: 1.0; }

  .line[TYPE='motorway_link'] { line-width: 0.6; }
  .line[TYPE='trunk_link']    { line-width: 0.5; }
  .line[TYPE='primary_link']  { line-width: 0.4; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified'] { line-width: 0.4; }
}

.highway[zoom=12] {
  .line[TYPE='motorway']      { line-width: 1.2 + 2; }
  .fill[TYPE='motorway']      { line-width: 1.2; }
  .line[TYPE='trunk']         { line-width: 1.0 + 1.8; }
  .fill[TYPE='trunk']         { line-width: 1.0; }
  .line[TYPE='primary']       { line-width: 0.8 + 1.6; }
  .fill[TYPE='primary']       { line-width: 0.8; }
  .line[TYPE='secondary']     { line-width: 0.8 + 1.6; }
  .fill[TYPE='secondary']     { line-width: 0.8; }

  .line[TYPE='motorway_link'] { line-width: 1.0 + 1.8; }
  .fill[TYPE='motorway_link'] { line-width: 1.0; }
  .line[TYPE='trunk_link']    { line-width: 0.8 + 1.6; }
  .fill[TYPE='trunk_link']    { line-width: 0.8; }
  .line[TYPE='primary_link']  { line-width: 0.8 + 1.6; }
  .fill[TYPE='primary_link']  { line-width: 0.8; }
  .line[TYPE='secondary_link']  { line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 0.6; }
}

.highway[zoom=13] {
  .line[TYPE='motorway']      { line-width: 2.0 + 2; }
  .fill[TYPE='motorway']      { line-width: 2.0; }
  .line[TYPE='trunk']         { line-width: 1.4 + 2; }
  .fill[TYPE='trunk']         { line-width: 1.4; }
  .line[TYPE='primary']       { line-width: 1.2 + 2; }
  .fill[TYPE='primary']       { line-width: 1.2; }
  .line[TYPE='primary_link'],
  .line[TYPE='secondary']     { line-width: 1.0 + 2; }
  .fill[TYPE='primary_link'],
  .fill[TYPE='secondary']     { line-width: 1.0; }

  .line[TYPE='motorway_link'] { line-width: 1.0 + 2; }
  .fill[TYPE='motorway_link'] { line-width: 1.0; }
  .line[TYPE='trunk_link']    { line-width: 1.0 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 1.0; }
  .line[TYPE='primary_link']  { line-width: 1.0 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.0; }
  .line[TYPE='secondary_link']{ line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 1.0; }
  .line[TYPE='service']       { line-width: 0.5; }

  .line[TYPE='track']         { line-width: 0.5; line-dasharray:2,3; }
}

.highway[zoom=14] {
  .line[TYPE='motorway']      { line-width: 4 + 2; }
  .fill[TYPE='motorway']      { line-width: 4; }
  .line[TYPE='trunk']         { line-width: 3 + 2; }
  .fill[TYPE='trunk']         { line-width: 3; }
  .line[TYPE='primary']       { line-width: 2 + 2; }
  .fill[TYPE='primary']       { line-width: 2; }
  .line[TYPE='secondary']     { line-width: 2 + 2; }
  .fill[TYPE='secondary']     { line-width: 2; }

  .line[TYPE='motorway_link'] { line-width: 1.4 + 2; }
  .fill[TYPE='motorway_link'] { line-width: 1.4; }
  .line[TYPE='trunk_link']    { line-width: 1.2 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 1.2; }
  .line[TYPE='primary_link']  { line-width: 1.0 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.0; }
  .line[TYPE='secondary_link']{ line-width: 0.8 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 0.8; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 1.6 + 1.6; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 1.6; }
  .line[TYPE='service']       { line-width: 0.6; }

  .line[TYPE='track']         { line-width: 0.6; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:1,2;
    line-width:0.6;
  }
}

.highway[zoom=15] {
  .line[TYPE='motorway']      { line-width: 6 + 2; }
  .fill[TYPE='motorway']      { line-width: 6; }
  .line[TYPE='trunk']         { line-width: 5 + 2; }
  .fill[TYPE='trunk']         { line-width: 5; }
  .line[TYPE='primary']       { line-width: 4 + 2; }
  .fill[TYPE='primary']       { line-width: 4; }
  .line[TYPE='secondary']     { line-width: 4 + 2; }
  .fill[TYPE='secondary']     { line-width: 4; }

  .line[TYPE='motorway_link'] { line-width: 2 + 2; }
  .fill[TYPE='motorway_link'] { line-width: 2; }
  .line[TYPE='trunk_link']    { line-width: 1.6 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 1.6; }
  .line[TYPE='primary_link']  { line-width: 1.4 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.4; }
  .line[TYPE='secondary_link']{ line-width: 1.0 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 1.0; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 4 + 2; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 4; }
  .line[TYPE='service']       { line-width: 1; }

  .line[TYPE='track']         { line-width: 1; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:1,2;
    line-width:0.8;
  }
}

.highway[zoom=16] {
  .line[TYPE='motorway']      { line-width: 9 + 3; }
  .fill[TYPE='motorway']      { line-width: 9; }
  .line[TYPE='trunk']         { line-width: 8 + 2.5; }
  .fill[TYPE='trunk']         { line-width: 8; }
  .line[TYPE='primary']       { line-width: 7 + 2; }
  .fill[TYPE='primary']       { line-width: 7; }
  .line[TYPE='secondary']     { line-width: 6 + 2; }
  .fill[TYPE='secondary']     { line-width: 6; }

  .line[TYPE='motorway_link'] { line-width: 3 + 2.5; }
  .fill[TYPE='motorway_link'] { line-width: 3; }
  .line[TYPE='trunk_link']    { line-width: 2 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 2; }
  .line[TYPE='primary_link']  { line-width: 1.8 + 2; }
  .fill[TYPE='primary_link']  { line-width: 1.8; }
  .line[TYPE='secondary_link']{ line-width: 1.4 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 1.4; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 6 + 2; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 6; }
  .line[TYPE='service']       { line-width: 1.4 + 2; }
  .fill[TYPE='service']       { line-width: 1.4; }

  .line[TYPE='track']         { line-width: 1.2; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:1,2;
    line-width:1.0;
  }
}

.highway[zoom>=17] {
  .line[TYPE='motorway']      { line-width: 13 + 3; }
  .fill[TYPE='motorway']      { line-width: 13; }
  .line[TYPE='trunk']         { line-width: 10 + 2.5; }
  .fill[TYPE='trunk']         { line-width: 10; }
  .line[TYPE='primary']       { line-width: 9 + 2; }
  .fill[TYPE='primary']       { line-width: 9; }
  .line[TYPE='secondary']     { line-width: 8 + 2; }
  .fill[TYPE='secondary']     { line-width: 8; }

  .line[TYPE='motorway_link'] { line-width: 4 + 2.5; }
  .fill[TYPE='motorway_link'] { line-width: 4; }
  .line[TYPE='trunk_link']    { line-width: 3.5 + 2; }
  .fill[TYPE='trunk_link']    { line-width: 3.5; }
  .line[TYPE='primary_link']  { line-width: 3 + 2; }
  .fill[TYPE='primary_link']  { line-width: 3; }
  .line[TYPE='secondary_link']{ line-width: 2.5 + 2; }
  .fill[TYPE='secondary_link']{ line-width: 2.5; }

  .line[TYPE='living_street'],
  .line[TYPE='residential'],
  .line[TYPE='road'],
  .line[TYPE='tertiary'],
  .line[TYPE='unclassified']  { line-width: 8 + 2; }
  .fill[TYPE='living_street'],
  .fill[TYPE='residential'],
  .fill[TYPE='road'],
  .fill[TYPE='tertiary'],
  .fill[TYPE='unclassified']  { line-width: 8; }

  .line[TYPE='service']       { line-width: 2 + 2; }
  .fill[TYPE='service']       { line-width: 2; }

  .line[TYPE='track']         { line-width: 1.4; line-dasharray:2,3; }

  .line[TYPE='cycleway'],
  .line[TYPE='footway'],
  .line[TYPE='path'],
  .line[TYPE='pedestrian'] {
    line-dasharray:2,3;
    line-width:1.2;
  }
}

/* ---- ONE WAY ARROWS ---- */

.highway.fill::oneway_arrow[zoom>15][ONEWAY='yes'] {
  marker-file:"shape://arrow";
  marker-placement:line;
  marker-line-width:1;
  marker-line-opacity:0.5;
  marker-line-color:#fff;
  marker-spacing: 200;
  marker-fill:spin(darken(@motorway,50),-10);
  marker-opacity:0.8;
}


Add default style

Add default style

Map {
  map-bgcolor: #fff;
}
#world {
  polygon-fill: #eee;
  line-color: #ccc;
  line-width: 0.5;
}
#inspect {
  polygon-fill: #83bc69;
  line-color: #333;
  line-width: 0.5;
}


fix broken rivers

fix broken rivers

@color_physical: #000;
@color_physical_bright: #fff;
@color_water: #000;
@color_administrative_dark: #000;
@color_administrative_bright: #fff;
@color_administrative_medium_low: #000;
@color_administrative_medium_high: #000;
@color_administrative_medium_high2: #000;
@color_transport: #000;
@color_transport_casing: #fff;
@color_transport_inline: #fff;
@color_transport_tunnel: #ccc;
@color_transport_minor: #ccc;
@color_transport_rail: #444;
@color_transport_path: #ededed;
@color_building_outline: #000;
@color_building_outline_special: #00aeef;
@color_airport_runways: #eee;
@color_airport_runways_detail: #f2f2f2;

Map {
  background-color: @color_physical;
  font-directory: url("fonts/");
}

/**
 * "shore" is a general class for layers with continents, coastlines, lakes,
 * and other kinds of meeting points between water and land.
 */
.shore {
  line-color: @color_physical;
  line-cap: round;
  line-join: round;
  line-width: 0;
}

#country-shapes-110m {
  line-width: 0.25;
  polygon-fill: @color_administrative_bright;
}

#land-shapes-110m,
#country-shapes-50m,
#country-shapes-10m,
{
  line-width: 0.25;
  polygon-fill: @color_physical_bright;
}

.country-boundary-10m {
  ::whiteout {
    [zoom>=7] {
      line-color: @color_administrative_bright;
      line-width: 2;
    }
  }

  [zoom>=6] {
    line-color: @color_administrative_dark;
    line-width: 1.2;
  }

  [zoom>=7] {
    line-width: 1.2;
    line-dasharray: 3,7;
    line-cap: round;
  }
}

#admin1-lines-50m {
  line-width: 0.35;
  line-color: @color_administrative_dark;
}

#admin1-lines-10m {
  [zoom>=6] {
    line-width: 0.6;
    line-color: @color_administrative_dark;
  }

  [zoom>=7] {
    line-width: 1.5;
    line-color: @color_administrative_medium_low;
    line-dasharray: 1,5;
    line-cap: round;
  }

  [zoom>=8] {
    line-width: 2.0;
    line-color: @color_administrative_medium_high;
  }

  [zoom>=9] {
    line-color: @color_administrative_medium_high2;
  }
}

#lakes-110m[zoom<3][scalerank<1],
#lakes-50m[zoom=3][scalerank<2],
#lakes-50m[zoom=4][scalerank<3],
#lakes-50m[zoom=5][scalerank<5],
#lakes-50m[zoom=6],
#lakes-10m,
{
  line-width: 1;
  polygon-fill: @color_physical;
}

#ne-roads {
  ::casing {
    line-color: @color_transport_casing;
    line-opacity: 0.5;
    line-width: 0;

    [zoom=7][scalerank<=7] {
      line-width: 2.25;
    }

    [zoom=8][scalerank<=8] {
      line-width: 3.25;
    }
  }

  line-color: @color_transport;
  line-width: 0;

  [zoom=6][scalerank>=3][scalerank<=6] {
    line-width: 0.1;
  }

  [zoom=7] {
    [scalerank<=6],
    [scalerank<=7][expressway=1],
    [scalerank<=7][type='Major Highway'],
    [scalerank<=7][type='Secondary Highway'],
    {
      line-width: 0.1;
    }

    [scalerank>=3][scalerank<=5] {
      line-width: 1.5;
    }
  }

  [zoom=8] {
    [scalerank<=8] {
      line-width: 0.1;
    }

    [type='Beltway'],
    [scalerank<=8][expressway=1],
    {
      line-width: 1.5;
    }
  }
}

/**
 * Ocean, lake, and river polygons
 */
#water-bodies-low[zoom=8][area>50000000],
#water-bodies-low[zoom=9][area>10000000],
#water-bodies-low[zoom=10][area>2500000],
#water-bodies-med[zoom=11][area> 800000],
#water-bodies-med[zoom=12][area> 500000],
#water-bodies-med[zoom=13][area>  25000],
#water-bodies-high[zoom=14][area> 10000],
#water-bodies-high[zoom>=15]
{
  polygon-fill: @color_water;
}

/**
 * Water bodies that are parts of rivers
 * should never be filtered
 */
#water-bodies-low[type='riverbank'],
#water-bodies-med[type='riverbank'],
#water-bodies-high[type='riverbank']
{
  polygon-fill: @color_water;
}

#land {
  // TODO polygon seams
  polygon-fill: @color_physical_bright;
}

#admin1-lines-osm,
{
  line-width: 2.0;
  line-color: @color_administrative_medium_high2;
  line-dasharray: 1,5;
  line-cap: round;
}

#buildings-med {
  [area>=40000] {
    polygon-pattern-file: url("images/stripe_sm.png");
    line-width: 0.5;
    line-color: @color_building_outline;
  }
}

#buildings-high {
  [zoom>=14] {
    [area>=20000] {
      polygon-pattern-file: url("images/stripe_med.png");
      line-width: 0.5;
      line-color: @color_building_outline;
    }
  }

  [zoom>=16] {
    line-width: 0.5;
  }

  [zoom=15][area>=16000],
  [zoom=16][area>=8000],
  [zoom=17][area>=4000],
  [zoom>=18],
  {
    polygon-pattern-file: url("images/stripe.png");
    polygon-pattern-alignment: global;
    line-width: 0.5;
    line-color: @color_building_outline;
  }

  // Stamen HQ fancy candycane striping
  [zoom>=18] {
    [osm_id=45074542],
    [osm_id=224030635], // Seth's house
    {
      polygon-pattern-file: url("images/stripe_color.png");
      line-width: 1.5;
      line-color: @color_building_outline_special;
    }
  }
}

#green-areas-low[zoom=10][area>5000000],
#green-areas-med[zoom=11][area>1000000],
#green-areas-med[zoom=12][area> 500000],
#green-areas-med[zoom=12][area> 200000],
#green-areas-med[zoom=13][area>  75000],
#green-areas-high[zoom=14][area> 10000],
#green-areas-high[zoom>14],
{
  polygon-pattern-alignment: global;
  polygon-pattern-file: url("images/halftone2.png");

  [type='nature_reserve'] {
      polygon-pattern-file: url("images/halftone2-transparent.png");
  }
}

#brown-areas-low[zoom=10][area>5000000],
#brown-areas-med[zoom=11][area>1000000],
#brown-areas-med[zoom=12][area> 500000],
#brown-areas-med[zoom=12][area> 200000],
#brown-areas-med[zoom=13][area>  75000],
#brown-areas-high[zoom=14][area> 10000],
#brown-areas-high[zoom>14],
{
  polygon-pattern-alignment: global;
  polygon-pattern-file: url("images/halftone2.png");
}

#aeroways {
  line-color: @color_airport_runways;
  line-cap: square;
  line-join: miter;

  [zoom>=15] {
    line-color: @color_airport_runways_detail;
  }

  [aeroway='runway'] {
    [zoom=12] {
      line-width: 2;
    }

    [zoom=13] {
      line-width: 4;
    }

    [zoom=14] {
      line-width: 8;
    }

    [zoom=15] {
      line-width: 16;
    }

    [zoom=16] {
      line-width: 32;
    }

    [zoom=17] {
      line-width: 64;
    }

    [zoom>=18] {
      line-width: 128;
    }
  }

  [aeroway='taxiway'] {
    [zoom=13] {
      line-width: 1;
    }

    [zoom=14] {
      line-width: 2;
    }

    [zoom=15] {
      line-width: 4;
    }

    [zoom=16] {
      line-width: 8;
    }

    [zoom=17] {
      line-width: 16;
    }

    [zoom>=18] {
      line-width: 32;
    }
  }
}

.roads {
  ::casing,
  ::outline,
  {
    line-cap: butt;
    line-width: 0;
    line-color: @color_transport_casing;
  }

  line-join: round;
  line-cap: round;
  line-width: 0;
  line-color: @color_transport;

  [is_tunnel='yes']
  {
    [zoom>=14]
    {
      ::casing {
        line-opacity: 0.5;
      }

      ::outline {
        line-opacity: 0.5;
      }
    }

    [zoom>=15]
    {
      line-opacity: 0; // vs. line-width: 0 to override subsequent styling
    }
  }

  [is_link='yes']
  {
    [zoom>=16]
    {
      ::casing {
        line-width: 8;
      }

      line-width: 4;
    }
  }
}

.roads[kind='highway']
{
  [zoom>=9] {
    ::outline {
      line-width: 4.25;
    }

    line-width: 1.5;
  }

  [zoom>=10] {
    ::outline {
      line-width: 6;
    }

    line-width: 2;
  }

  [zoom>=11] {
    line-width: 2.5;
  }

  [zoom>=12] {
    ::outline {
      line-width: 8;
    }

    line-width: 3;

    [is_link='yes'] {
      ::outline {
        line-width: 0;
      }

      line-width: 0.5;
    }
  }

  [zoom>=13] {
    ::outline {
      line-width: 8;
    }

    line-width: 3;

    [is_link='yes'] {
      ::outline {
        line-width: 3;
      }

      line-width: 1;

      [is_bridge='yes'] {
        ::outline {
          line-width: 3;
        }
      }
    }
  }

  [zoom>=14] {
    ::outline {
      line-width: 8;
    }

    line-width: 4;

    [is_bridge='yes'] {
      ::casing {
        line-width: 8;
      }
    }

    [is_link='yes'] {
      ::outline {
        line-width: 6;
      }

      line-width: 2.5;

      [is_bridge='yes'] {
        ::casing {
          line-width: 6;
        }
      }
    }
  }

  [zoom>=15] {
    ::casing {
      line-width: 11;
    }

    line-width: 6;

    [is_link='yes'] {
      ::casing {
        line-width: 6.5;
      }

      line-width: 2.25;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 5;
        line-opacity: 0.7;
        line-color: @color_transport_tunnel;
      }

      line-width: 3;
      line-opacity: 0.5;
    }
  }

  [zoom>=16] {
    ::casing {
      line-width: 14;
    }

    line-width: 9;

    [is_link='yes'] {
      ::casing {
        line-width: 7;
      }

      line-width: 2.5;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 7;
        line-opacity: 0.4;
      }

      line-opacity: 0.7;
      line-color: @color_transport_tunnel;

      [is_link='yes'] {
        ::casing {
          line-color: @color_transport_casing;
        }
      }
    }
  }

  [zoom>=17] {
    ::casing {
      line-width: 24;
    }

    line-width: 15;

    [is_link='yes'] {
      ::casing {
        line-width: 9;
      }

      line-width: 5;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 18;
      }

      line-width: 12;

      [is_link='yes'] {
        ::casing {
          line-width: 9;
        }
      }
    }
  }

  [zoom>=18] {
    ::casing {
      line-width: 42;
      line-color: @color_transport;
    }

    line-width: 28;
    line-color: @color_transport_inline;

    [is_bridge='yes'] {
      ::casing {
        line-width: 44;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 14;
        line-color: @color_transport;
      }

      line-width: 10;
      line-color: @color_transport_inline;

      [is_bridge='yes'] {
        ::casing {
          line-width: 15;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 22;
      }

      line-width: 18;
    }
  }

  [zoom>=19] {
    ::casing {
      line-width: 49;
      line-color: @color_transport;
    }

    line-width: 35;
    line-color: @color_transport_casing;

    [is_bridge='yes'] {
      ::casing {
        line-width: 51;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 20;
      }

      line-width: 16;
      line-color: @color_transport_casing;

      [is_bridge='yes'] {
        ::casing {
          line-width: 21;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 30;
      }

      line-width: 26;

      [is_link='yes'] {
        ::casing {
          line-width: 13;
        }
      }
    }
  }
}

.roads[kind='major_road']
{
  [zoom<=12] {
    line-color: #000;
  }

  [zoom>=9] {
    line-width: 0.15;
  }

  [zoom>=10] {
    line-width: 0.5;
  }

  [zoom>=11] {
    ::outline {
      line-width: 1.25;
    }

    line-width: 0.7;
  }

  [zoom>=12] {
    ::outline {
      line-width: 5;
    }

    line-width: 1;

    [is_link='yes'] {
      ::outline {
        line-width: 0;
      }

      line-width: 0.5;
    }
  }

  [zoom>=13] {
    line-width: 1.5;
  }

  [zoom>=14] {
    ::outline {
      line-width: 6;
    }

    line-width: 1.9;

    [is_bridge='yes'] {
      ::casing {
        line-width: 6;
      }
    }

    [is_link='yes'] {
      ::outline {
        line-width: 6;
      }

      line-width: 1.9;

      [is_bridge='yes'] {
        ::casing {
          line-width: 6;
        }
      }
    }
  }

  [zoom>=15] {
    ::casing {
      line-width: 8;
    }

    line-width: 5;

    [is_link='yes'] {
      ::casing {
        line-width: 5.5;
      }

      line-width: 2.25;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 5;
        line-opacity: 0.7;
        line-color: @color_transport_tunnel;
      }

      line-width: 3;
      line-opacity: 0.5;
    }
  }

  [zoom>=16] {
    ::casing {
      line-width: 11;
    }

    line-width: 7;

    [is_link='yes'] {
      ::casing {
        line-width: 7;
      }

      line-width: 2.5;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 7;
        line-opacity: 0.4;
      }

      line-opacity: 0.7;
      line-color: @color_transport_tunnel;

      [is_link='yes'] {
        ::casing {
          line-color: @color_transport_casing;
        }
      }
    }
  }

  [zoom>=17] {
    ::casing {
      line-width: 18;
    }

    line-width: 12;

    [is_link='yes'] {
      ::casing {
        line-width: 8;
      }

      line-width: 4;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 18;
      }

      line-width: 12;

      [is_link='yes'] {
        ::casing {
          line-width: 9;
        }
      }
    }
  }

  [zoom>=18] {
    ::casing {
      line-width: 22;
      line-color: @color_transport;
    }

    line-width: 18;
    line-color: @color_transport_inline;

    [is_bridge='yes'] {
      ::casing {
        line-width: 24;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 13;
        line-color: @color_transport;
      }

      line-width: 9;
      line-color: @color_transport_inline;

      [is_bridge='yes'] {
        ::casing {
          line-width: 14;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 22;
      }

      line-width: 18;
    }
  }

  [zoom>=19] {
    ::casing {
      line-width: 30;
    }

    line-width: 26;
    line-color: @color_transport_casing;

    [is_bridge='yes'] {
      ::casing {
        line-width: 32;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 17;
      }

      line-width: 13;
      line-color: @color_transport_casing;

      [is_bridge='yes'] {
        ::casing {
          line-width: 18;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 30;
      }

      line-width: 26;

      [is_link='yes'] {
        ::casing {
          line-width: 13;
        }
      }
    }
  }
}

.roads[kind='minor_road']
{
  [zoom<=14] {
    line-color: #999;
  }

  [zoom>=16] {
    line-color: @color_transport_minor;
  }

  [zoom>=10] {
    line-width: 0.2;
  }

  [zoom>=13] {
    line-width: 0.4;
  }

  [zoom>=14] {
    line-width: 0.8;
  }

  [zoom>=15] {
    line-width: 1.5;

    [is_tunnel='yes'] {
      ::casing {
        line-opacity: 0.7;
        line-color: @color_transport_tunnel;
      }

      line-opacity: 0.5;
    }
  }

  [zoom>=16] {
    ::casing {
      line-width: 7;
    }

    line-width: 4;
    line-color: @color_transport;
  }

  [zoom>=17] {
    ::casing {
      line-width: 9;
    }

    line-width: 7;
  }

  [zoom>=18] {
    ::casing {
      line-width: 17;
      line-color: @color_transport;
    }

    line-width: 13;
    line-color: @color_transport_casing;
  }

  [zoom>=19] {
    ::casing {
      line-width: 20;
    }

    line-width: 16;
  }
}

.roads[kind='rail']
{
  ::casing,
  ::outline,
  {
    line-color: @color_transport_rail;
  }

  line-color: @color_transport_rail;

  [zoom>=14] {
    ::casing {
      line-width: 3;
      line-dasharray: 1,3;
    }

    line-width: 1;
  }

  [zoom>=16] {
    ::casing {
      line-width: 5;
      line-dasharray: 1,4;
    }
  }

  [zoom>=18] {
    ::casing {
      line-width: 6;
      line-dasharray: 2,6;
    }

    line-width: 2;
  }

  [zoom>=19] {
    ::casing {
      line-width: 9;
      line-dasharray: 4,7;
    }

    line-width: 4;
  }
}

.roads[highway='service']
{
  [zoom>=15]
  {
    line-width: 1.5;
  }

  [zoom>=16] {
    ::casing {
      line-width: 4;
    }

    line-width: 2;
  }

  [zoom>=17] {
    ::casing {
      line-width: 6;
    }

    line-width: 4;
  }
}

.roads[kind='path']
{
  ::casing {
    line-color: @color_transport_path;
  }

  line-color: @color_transport_casing;

  [zoom>=15] {
    ::casing {
      line-width: 4;
    }

    line-width: 1.5;
    line-cap: butt;
  }

  [zoom>=16] {
    ::casing {
      line-width: 5;
    }

    line-width: 2;
  }

  [zoom>=17] {
    line-width: 3;
  }

  [zoom>=19] {
    line-width: 4;
  }
}

@color_physical: #000;
@color_physical_bright: #fff;
@color_water: #000;
@color_administrative_dark: #000;
@color_administrative_bright: #fff;
@color_administrative_medium_low: #000;
@color_administrative_medium_high: #000;
@color_administrative_medium_high2: #000;
@color_transport: #000;
@color_transport_casing: #fff;
@color_transport_inline: #fff;
@color_transport_tunnel: #ccc;
@color_transport_minor: #ccc;
@color_transport_rail: #444;
@color_transport_path: #ededed;
@color_building_outline: #000;
@color_building_outline_special: #00aeef;
@color_airport_runways: #eee;
@color_airport_runways_detail: #f2f2f2;

Map {
  background-color: @color_physical;
  font-directory: url("fonts/");
}

/**
 * "shore" is a general class for layers with continents, coastlines, lakes,
 * and other kinds of meeting points between water and land.
 */
.shore {
  line-color: @color_physical;
  line-cap: round;
  line-join: round;
  line-width: 0;
}

#country-shapes-110m {
  line-width: 0.25;
  polygon-fill: @color_administrative_bright;
}

#land-shapes-110m,
#country-shapes-50m,
#country-shapes-10m,
{
  line-width: 0.25;
  polygon-fill: @color_physical_bright;
}

.country-boundary-10m {
  ::whiteout {
    [zoom>=7] {
      line-color: @color_administrative_bright;
      line-width: 2;
    }
  }

  [zoom>=6] {
    line-color: @color_administrative_dark;
    line-width: 1.2;
  }

  [zoom>=7] {
    line-width: 1.2;
    line-dasharray: 3,7;
    line-cap: round;
  }
}

#admin1-lines-50m {
  line-width: 0.35;
  line-color: @color_administrative_dark;
}

#admin1-lines-10m {
  [zoom>=6] {
    line-width: 0.6;
    line-color: @color_administrative_dark;
  }

  [zoom>=7] {
    line-width: 1.5;
    line-color: @color_administrative_medium_low;
    line-dasharray: 1,5;
    line-cap: round;
  }

  [zoom>=8] {
    line-width: 2.0;
    line-color: @color_administrative_medium_high;
  }

  [zoom>=9] {
    line-color: @color_administrative_medium_high2;
  }
}

#lakes-110m[zoom<3][scalerank<1],
#lakes-50m[zoom=3][scalerank<2],
#lakes-50m[zoom=4][scalerank<3],
#lakes-50m[zoom=5][scalerank<5],
#lakes-50m[zoom=6],
#lakes-10m,
{
  line-width: 1;
  polygon-fill: @color_physical;
}

#ne-roads {
  ::casing {
    line-color: @color_transport_casing;
    line-opacity: 0.5;
    line-width: 0;

    [zoom=7][scalerank<=7] {
      line-width: 2.25;
    }

    [zoom=8][scalerank<=8] {
      line-width: 3.25;
    }
  }

  line-color: @color_transport;
  line-width: 0;

  [zoom=6][scalerank>=3][scalerank<=6] {
    line-width: 0.1;
  }

  [zoom=7] {
    [scalerank<=6],
    [scalerank<=7][expressway=1],
    [scalerank<=7][type='Major Highway'],
    [scalerank<=7][type='Secondary Highway'],
    {
      line-width: 0.1;
    }

    [scalerank>=3][scalerank<=5] {
      line-width: 1.5;
    }
  }

  [zoom=8] {
    [scalerank<=8] {
      line-width: 0.1;
    }

    [type='Beltway'],
    [scalerank<=8][expressway=1],
    {
      line-width: 1.5;
    }
  }
}

/**
 * Ocean, lake, and river polygons
 */
#water-bodies-low[zoom=8][area>50000000],
#water-bodies-low[zoom=9][area>10000000],
#water-bodies-low[zoom=10][area>2500000],
#water-bodies-med[zoom=11][area> 800000],
#water-bodies-med[zoom=12][area> 500000],
#water-bodies-med[zoom=13][area>  25000],
#water-bodies-high[zoom=14][area> 10000],
#water-bodies-high[zoom>=15]
{
  polygon-fill: @color_water;
}

#land {
  // TODO polygon seams
  polygon-fill: @color_physical_bright;
}

#admin1-lines-osm,
{
  line-width: 2.0;
  line-color: @color_administrative_medium_high2;
  line-dasharray: 1,5;
  line-cap: round;
}

#buildings-med {
  [area>=40000] {
    polygon-pattern-file: url("images/stripe_sm.png");
    line-width: 0.5;
    line-color: @color_building_outline;
  }
}

#buildings-high {
  [zoom>=14] {
    [area>=20000] {
      polygon-pattern-file: url("images/stripe_med.png");
      line-width: 0.5;
      line-color: @color_building_outline;
    }
  }

  [zoom>=16] {
    line-width: 0.5;
  }

  [zoom=15][area>=16000],
  [zoom=16][area>=8000],
  [zoom=17][area>=4000],
  [zoom>=18],
  {
    polygon-pattern-file: url("images/stripe.png");
    polygon-pattern-alignment: global;
    line-width: 0.5;
    line-color: @color_building_outline;
  }

  // Stamen HQ fancy candycane striping
  [zoom>=18] {
    [osm_id=45074542],
    [osm_id=224030635], // Seth's house
    {
      polygon-pattern-file: url("images/stripe_color.png");
      line-width: 1.5;
      line-color: @color_building_outline_special;
    }
  }
}

#green-areas-low[zoom=10][area>5000000],
#green-areas-med[zoom=11][area>1000000],
#green-areas-med[zoom=12][area> 500000],
#green-areas-med[zoom=12][area> 200000],
#green-areas-med[zoom=13][area>  75000],
#green-areas-high[zoom=14][area> 10000],
#green-areas-high[zoom>14],
{
  polygon-pattern-alignment: global;
  polygon-pattern-file: url("images/halftone2.png");

  [type='nature_reserve'] {
      polygon-pattern-file: url("images/halftone2-transparent.png");
  }
}

#brown-areas-low[zoom=10][area>5000000],
#brown-areas-med[zoom=11][area>1000000],
#brown-areas-med[zoom=12][area> 500000],
#brown-areas-med[zoom=12][area> 200000],
#brown-areas-med[zoom=13][area>  75000],
#brown-areas-high[zoom=14][area> 10000],
#brown-areas-high[zoom>14],
{
  polygon-pattern-alignment: global;
  polygon-pattern-file: url("images/halftone2.png");
}

#aeroways {
  line-color: @color_airport_runways;
  line-cap: square;
  line-join: miter;

  [zoom>=15] {
    line-color: @color_airport_runways_detail;
  }

  [aeroway='runway'] {
    [zoom=12] {
      line-width: 2;
    }

    [zoom=13] {
      line-width: 4;
    }

    [zoom=14] {
      line-width: 8;
    }

    [zoom=15] {
      line-width: 16;
    }

    [zoom=16] {
      line-width: 32;
    }

    [zoom=17] {
      line-width: 64;
    }

    [zoom>=18] {
      line-width: 128;
    }
  }

  [aeroway='taxiway'] {
    [zoom=13] {
      line-width: 1;
    }

    [zoom=14] {
      line-width: 2;
    }

    [zoom=15] {
      line-width: 4;
    }

    [zoom=16] {
      line-width: 8;
    }

    [zoom=17] {
      line-width: 16;
    }

    [zoom>=18] {
      line-width: 32;
    }
  }
}

.roads {
  ::casing,
  ::outline,
  {
    line-cap: butt;
    line-width: 0;
    line-color: @color_transport_casing;
  }

  line-join: round;
  line-cap: round;
  line-width: 0;
  line-color: @color_transport;

  [is_tunnel='yes']
  {
    [zoom>=14]
    {
      ::casing {
        line-opacity: 0.5;
      }

      ::outline {
        line-opacity: 0.5;
      }
    }

    [zoom>=15]
    {
      line-opacity: 0; // vs. line-width: 0 to override subsequent styling
    }
  }

  [is_link='yes']
  {
    [zoom>=16]
    {
      ::casing {
        line-width: 8;
      }

      line-width: 4;
    }
  }
}

.roads[kind='highway']
{
  [zoom>=9] {
    ::outline {
      line-width: 4.25;
    }

    line-width: 1.5;
  }

  [zoom>=10] {
    ::outline {
      line-width: 6;
    }

    line-width: 2;
  }

  [zoom>=11] {
    line-width: 2.5;
  }

  [zoom>=12] {
    ::outline {
      line-width: 8;
    }

    line-width: 3;

    [is_link='yes'] {
      ::outline {
        line-width: 0;
      }

      line-width: 0.5;
    }
  }

  [zoom>=13] {
    ::outline {
      line-width: 8;
    }

    line-width: 3;

    [is_link='yes'] {
      ::outline {
        line-width: 3;
      }

      line-width: 1;

      [is_bridge='yes'] {
        ::outline {
          line-width: 3;
        }
      }
    }
  }

  [zoom>=14] {
    ::outline {
      line-width: 8;
    }

    line-width: 4;

    [is_bridge='yes'] {
      ::casing {
        line-width: 8;
      }
    }

    [is_link='yes'] {
      ::outline {
        line-width: 6;
      }

      line-width: 2.5;

      [is_bridge='yes'] {
        ::casing {
          line-width: 6;
        }
      }
    }
  }

  [zoom>=15] {
    ::casing {
      line-width: 11;
    }

    line-width: 6;

    [is_link='yes'] {
      ::casing {
        line-width: 6.5;
      }

      line-width: 2.25;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 5;
        line-opacity: 0.7;
        line-color: @color_transport_tunnel;
      }

      line-width: 3;
      line-opacity: 0.5;
    }
  }

  [zoom>=16] {
    ::casing {
      line-width: 14;
    }

    line-width: 9;

    [is_link='yes'] {
      ::casing {
        line-width: 7;
      }

      line-width: 2.5;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 7;
        line-opacity: 0.4;
      }

      line-opacity: 0.7;
      line-color: @color_transport_tunnel;

      [is_link='yes'] {
        ::casing {
          line-color: @color_transport_casing;
        }
      }
    }
  }

  [zoom>=17] {
    ::casing {
      line-width: 24;
    }

    line-width: 15;

    [is_link='yes'] {
      ::casing {
        line-width: 9;
      }

      line-width: 5;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 18;
      }

      line-width: 12;

      [is_link='yes'] {
        ::casing {
          line-width: 9;
        }
      }
    }
  }

  [zoom>=18] {
    ::casing {
      line-width: 42;
      line-color: @color_transport;
    }

    line-width: 28;
    line-color: @color_transport_inline;

    [is_bridge='yes'] {
      ::casing {
        line-width: 44;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 14;
        line-color: @color_transport;
      }

      line-width: 10;
      line-color: @color_transport_inline;

      [is_bridge='yes'] {
        ::casing {
          line-width: 15;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 22;
      }

      line-width: 18;
    }
  }

  [zoom>=19] {
    ::casing {
      line-width: 49;
      line-color: @color_transport;
    }

    line-width: 35;
    line-color: @color_transport_casing;

    [is_bridge='yes'] {
      ::casing {
        line-width: 51;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 20;
      }

      line-width: 16;
      line-color: @color_transport_casing;

      [is_bridge='yes'] {
        ::casing {
          line-width: 21;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 30;
      }

      line-width: 26;

      [is_link='yes'] {
        ::casing {
          line-width: 13;
        }
      }
    }
  }
}

.roads[kind='major_road']
{
  [zoom<=12] {
    line-color: #000;
  }

  [zoom>=9] {
    line-width: 0.15;
  }

  [zoom>=10] {
    line-width: 0.5;
  }

  [zoom>=11] {
    ::outline {
      line-width: 1.25;
    }

    line-width: 0.7;
  }

  [zoom>=12] {
    ::outline {
      line-width: 5;
    }

    line-width: 1;

    [is_link='yes'] {
      ::outline {
        line-width: 0;
      }

      line-width: 0.5;
    }
  }

  [zoom>=13] {
    line-width: 1.5;
  }

  [zoom>=14] {
    ::outline {
      line-width: 6;
    }

    line-width: 1.9;

    [is_bridge='yes'] {
      ::casing {
        line-width: 6;
      }
    }

    [is_link='yes'] {
      ::outline {
        line-width: 6;
      }

      line-width: 1.9;

      [is_bridge='yes'] {
        ::casing {
          line-width: 6;
        }
      }
    }
  }

  [zoom>=15] {
    ::casing {
      line-width: 8;
    }

    line-width: 5;

    [is_link='yes'] {
      ::casing {
        line-width: 5.5;
      }

      line-width: 2.25;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 5;
        line-opacity: 0.7;
        line-color: @color_transport_tunnel;
      }

      line-width: 3;
      line-opacity: 0.5;
    }
  }

  [zoom>=16] {
    ::casing {
      line-width: 11;
    }

    line-width: 7;

    [is_link='yes'] {
      ::casing {
        line-width: 7;
      }

      line-width: 2.5;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 7;
        line-opacity: 0.4;
      }

      line-opacity: 0.7;
      line-color: @color_transport_tunnel;

      [is_link='yes'] {
        ::casing {
          line-color: @color_transport_casing;
        }
      }
    }
  }

  [zoom>=17] {
    ::casing {
      line-width: 18;
    }

    line-width: 12;

    [is_link='yes'] {
      ::casing {
        line-width: 8;
      }

      line-width: 4;
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 18;
      }

      line-width: 12;

      [is_link='yes'] {
        ::casing {
          line-width: 9;
        }
      }
    }
  }

  [zoom>=18] {
    ::casing {
      line-width: 22;
      line-color: @color_transport;
    }

    line-width: 18;
    line-color: @color_transport_inline;

    [is_bridge='yes'] {
      ::casing {
        line-width: 24;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 13;
        line-color: @color_transport;
      }

      line-width: 9;
      line-color: @color_transport_inline;

      [is_bridge='yes'] {
        ::casing {
          line-width: 14;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 22;
      }

      line-width: 18;
    }
  }

  [zoom>=19] {
    ::casing {
      line-width: 30;
    }

    line-width: 26;
    line-color: @color_transport_casing;

    [is_bridge='yes'] {
      ::casing {
        line-width: 32;
      }
    }

    [is_link='yes'] {
      ::casing {
        line-width: 17;
      }

      line-width: 13;
      line-color: @color_transport_casing;

      [is_bridge='yes'] {
        ::casing {
          line-width: 18;
        }
      }
    }

    [is_tunnel='yes'] {
      ::casing {
        line-width: 30;
      }

      line-width: 26;

      [is_link='yes'] {
        ::casing {
          line-width: 13;
        }
      }
    }
  }
}

.roads[kind='minor_road']
{
  [zoom<=14] {
    line-color: #999;
  }

  [zoom>=16] {
    line-color: @color_transport_minor;
  }

  [zoom>=10] {
    line-width: 0.2;
  }

  [zoom>=13] {
    line-width: 0.4;
  }

  [zoom>=14] {
    line-width: 0.8;
  }

  [zoom>=15] {
    line-width: 1.5;

    [is_tunnel='yes'] {
      ::casing {
        line-opacity: 0.7;
        line-color: @color_transport_tunnel;
      }

      line-opacity: 0.5;
    }
  }

  [zoom>=16] {
    ::casing {
      line-width: 7;
    }

    line-width: 4;
    line-color: @color_transport;
  }

  [zoom>=17] {
    ::casing {
      line-width: 9;
    }

    line-width: 7;
  }

  [zoom>=18] {
    ::casing {
      line-width: 17;
      line-color: @color_transport;
    }

    line-width: 13;
    line-color: @color_transport_casing;
  }

  [zoom>=19] {
    ::casing {
      line-width: 20;
    }

    line-width: 16;
  }
}

.roads[kind='rail']
{
  ::casing,
  ::outline,
  {
    line-color: @color_transport_rail;
  }

  line-color: @color_transport_rail;

  [zoom>=14] {
    ::casing {
      line-width: 3;
      line-dasharray: 1,3;
    }

    line-width: 1;
  }

  [zoom>=16] {
    ::casing {
      line-width: 5;
      line-dasharray: 1,4;
    }
  }

  [zoom>=18] {
    ::casing {
      line-width: 6;
      line-dasharray: 2,6;
    }

    line-width: 2;
  }

  [zoom>=19] {
    ::casing {
      line-width: 9;
      line-dasharray: 4,7;
    }

    line-width: 4;
  }
}

.roads[highway='service']
{
  [zoom>=15]
  {
    line-width: 1.5;
  }

  [zoom>=16] {
    ::casing {
      line-width: 4;
    }

    line-width: 2;
  }

  [zoom>=17] {
    ::casing {
      line-width: 6;
    }

    line-width: 4;
  }
}

.roads[kind='path']
{
  ::casing {
    line-color: @color_transport_path;
  }

  line-color: @color_transport_casing;

  [zoom>=15] {
    ::casing {
      line-width: 4;
    }

    line-width: 1.5;
    line-cap: butt;
  }

  [zoom>=16] {
    ::casing {
      line-width: 5;
    }

    line-width: 2;
  }

  [zoom>=17] {
    line-width: 3;
  }

  [zoom>=19] {
    line-width: 4;
  }
}


Adding rule for labels at zoom 12

Adding rule for labels at zoom 12

/* LABELS.MSS CONTENTS:
 * - place names
 * - area labels
 * - waterway labels
 */

/* Font sets are defined in palette.mss */

/* ================================================================== */
/* PLACE NAMES
/* ================================================================== */

#place::country[type='country'][zoom>3][zoom<9] {
  text-name:'[name]';
  text-face-name:@sans_bold;
  text-placement:point;
  text-fill:@country_text;
  text-halo-fill: @country_halo;
  text-halo-radius: 1;
  [zoom=3] {
    text-size:10 + @text_adjust;
    text-wrap-width: 40;
  }
  [zoom=4] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
  }
  [zoom>4] {
    text-halo-radius: 2;
  }
  [zoom=5] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
    text-line-spacing: 1;
  }
  [zoom=6] {
    text-size:12 + @text_adjust;
    text-character-spacing: 1;
    text-wrap-width: 80;
    text-line-spacing: 2;
  }
  [zoom=7] {
    text-size:14 + @text_adjust;
    text-character-spacing: 2;
  }
}

#place::state[type='state'][zoom>=6][zoom<=10] {
  text-name:'[name]';
  text-face-name:@sans_bold_italic;
  text-placement:point;
  text-fill:@state_text;
  text-halo-fill: @state_halo;
  text-halo-radius: 1;
  [zoom=6] {
    text-size:10 + @text_adjust;
    text-wrap-width: 40;
  }
  [zoom=7] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
  }
  [zoom>8] {
    text-halo-radius: 2;
  }
  [zoom=8] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
    text-line-spacing: 1;
  }
  [zoom=9] {
    text-size:12 + @text_adjust;
    text-character-spacing: 1;
    text-wrap-width: 80;
    text-line-spacing: 2;
  }
  [zoom=10] {
    text-size:14 + @text_adjust;
    text-character-spacing: 2;
  }
}

/* ---- Cities ------------------------------------------------------ */

#place::city[type='city'][zoom>=9][zoom<=15] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@city_text;
  text-halo-fill:@city_halo;
  text-halo-radius:2;
  [zoom=9] {
    text-size:12;
    text-wrap-width: 60;
  }
  [zoom=10] {
    text-size:14;
    text-wrap-width: 70;
  }
  [zoom=11] {
    text-size:16;
    text-character-spacing: 1;
    text-wrap-width: 80;
  }
  [zoom=12] {
    text-size:18;
    text-character-spacing: 2;
    text-wrap-width: 200;
  }
  [zoom=13] {
    text-size:20;
    text-character-spacing: 4;
    text-wrap-width: 300;
    text-transform: uppercase;
  }
  [zoom=14] {
    text-size:22;
    text-character-spacing: 10;
    text-wrap-width: 500;
    text-transform: uppercase;
  }
  [zoom=15] {
    text-size:26;
    text-character-spacing: 16;
    text-wrap-width: 800;
    text-transform: uppercase;
  }
}

/* ---- Towns ------------------------------------------------------- */

#place::town[type='town'][zoom>=9][zoom<=17] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@town_text;
  text-size:9;
  text-halo-fill:@town_halo;
  text-halo-radius:2;
  text-wrap-width: 50;
  [zoom>=10] {
    text-halo-radius:2;
    text-size: 12;
  }
  [zoom>=11]{
    text-size:14;
  }
  [zoom>=12]{
    text-size:16;
    text-line-spacing: 1;
  }
  [zoom>=13]{
    text-size:18;
    text-transform: uppercase;
    text-character-spacing: 1;
    text-line-spacing: 2;
  }
  [zoom>=14]{
    text-size:20;
    text-character-spacing: 2;
    text-line-spacing: 3;
  }
  [zoom>=15]{
    text-size:22;
    text-character-spacing: 3;
    text-line-spacing: 4;
  }
  [zoom>=16]{
    text-size:24;
    text-character-spacing: 4;
    text-line-spacing: 5;
  }
  [zoom>=17]{
    text-size:26;
    text-character-spacing: 5;
    text-line-spacing: 6;
  }
}

/* ---- Other small places ------------------------------------------ */

#place::small[type='village'][zoom>=13],
#place::small[type='suburb'][zoom>=13],
#place::small[type='hamlet'][zoom>=13],
#place::small[type='neighbourhood'][zoom>=13] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@other_text;
  text-size:12;
  text-halo-fill:@other_halo;
  text-halo-radius:1;
  text-wrap-width: 30;
  [zoom>=14] {
    text-size:14;
    text-character-spacing: 1;
    text-wrap-width: 120;
    text-line-spacing: 1;
  }
  [zoom>=15] {
    text-size:15;
    text-halo-radius: 2;
    text-transform: uppercase;
    text-character-spacing: 1;
    text-wrap-width: 180;
    text-line-spacing: 1;
  }
  [zoom>=16] {
    text-size:16;
    text-character-spacing: 2;
    text-wrap-width: 240;
    text-line-spacing: 2;
  }
  [zoom>=17] {
    text-size:17;
    text-character-spacing: 3;
    text-wrap-width: 320;
    text-line-spacing: 4;
  }
  [zoom>=18] {
    text-size:18;
    text-character-spacing: 4;
    text-line-spacing: 6;
  }
}

#place::small[type='locality'][zoom>=15] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@locality_text;
  text-size:9;
  text-halo-fill:@locality_halo;
  text-halo-radius:1;
  text-wrap-width: 30;
  [zoom>=16] {
    text-size:10;
    text-wrap-width: 60;
    text-line-spacing: 1;
  }
  [zoom>=17] {
    text-size:11;
    text-wrap-width: 120;
    text-line-spacing: 2;
  }
  [zoom>=18] {
    text-size:12;
    text-character-spacing: 1;
    text-line-spacing: 4;
  }
}

// =====================================================================
// AREA LABELS
// =====================================================================

#area_label {
  // Bring in labels gradually as one zooms in, bases on polygon area
  [zoom>=10][area>102400000],
  [zoom>=11][area>25600000],
  [zoom>=12][area>6400000],
  [zoom>=13][area>1600000],
  [zoom>=14][area>320000],
  [zoom>=15][area>80000],
  [zoom>=16][area>20000],
  [zoom>=17][area>5000],
  [zoom>=18][area>=0] {
    text-name: "[name]";
    text-halo-radius: 1.5;
    text-face-name:@sans_italic;
    text-size: 11;
    text-wrap-width:30;
    text-fill: @area_text;
    text-halo-fill: @area_halo;
    // Specific style overrides for different types of areas:
    [type='park'][zoom>=10] {
      text-face-name: @sans_lt_italic;
      text-fill: darken(@park, 70%);
      text-halo-fill: lighten(@park, 10);
    }
    [type='golf_course'][zoom>=10] {
      text-fill: darken(@sports, 70%);
      text-halo-fill: lighten(@sports, 10);
    }
    [type='cemetery'][zoom>=10] {
      text-fill: darken(@cemetery, 70%);
      text-halo-fill: lighten(@cemetery, 10);
    }
    [type='hospital'][zoom>=10] {
      text-fill: darken(@hospital, 70%);
      text-halo-fill: lighten(@hospital, 10);
    }
    [type='college'][zoom>=10],
    [type='school'][zoom>=10],
    [type='university'][zoom>=10] {
      text-fill: darken(@school, 70%);
      text-halo-fill: lighten(@school, 10);
    }
    [type='water'][zoom>=10] {
      text-fill: darken(@water, 70%);
      text-halo-fill: lighten(@water, 10);
    }
  }
  [zoom=15][area>1600000],
  [zoom=16][area>80000],
  [zoom=17][area>20000],
  [zoom=18][area>5000] {
    text-name: "[name]";
    text-size: 13;
    text-wrap-width: 60;
    text-character-spacing: 1;
    text-halo-radius: 2;
  }
  [zoom=16][area>1600000],
  [zoom=17][area>80000],
  [zoom=18][area>20000] {
    text-size: 15;
    text-character-spacing: 2;
    text-wrap-width: 120;
  }
  [zoom>=17][area>1600000],
  [zoom>=18][area>80000] {
    text-size: 20;
    text-character-spacing: 3;
    text-wrap-width: 180;
  }
}

#poi[type='university'][zoom>=15],
#poi[type='hospital'][zoom>=16],
#poi[type='school'][zoom>=17],
#poi[type='library'][zoom>=17] {
  text-name:"[name]";
  text-face-name:@sans;
  text-size:10;
  text-wrap-width:30;
  text-fill: @poi_text;
}

/* ================================================================== */
/* WATERWAY LABELS
/* ================================================================== */

#waterway_label[type='river'][zoom>=13],
#waterway_label[type='canal'][zoom>=15],
#waterway_label[type='stream'][zoom>=17] {
  text-name: '[name]';
  text-face-name: @sans_italic;
  text-fill: darken(@water, 70%);
  text-halo-fill: fadeout(lighten(@water,5%),25%);
  text-halo-radius: 1;
  text-placement: line;
  text-min-distance: 400;
  text-size: 10;
  [type='river'][zoom=15],
  [type='canal'][zoom=17] {
    text-size: 11;
  }
  [type='river'][zoom>=16],
  [type='canal'][zoom=18] {
    text-size: 14;
    text-spacing: 300;
  }
}

/* ================================================================== */
/* ROAD LABELS
/* ================================================================== */

#motorway_label[zoom>=11][zoom<=14][reflen<=8] {
  shield-name: "[ref]";
  shield-size: 9;
  shield-face-name: @sans_bold;
  shield-fill: #fff;
  shield-file: url(img/shield-motorway-1.png);
  [type='motorway'] {
    [reflen=1] { shield-file: url(img/shield-motorway-1.png); }
    [reflen=2] { shield-file: url(img/shield-motorway-2.png); }
    [reflen=3] { shield-file: url(img/shield-motorway-3.png); }
    [reflen=4] { shield-file: url(img/shield-motorway-4.png); }
    [reflen=5] { shield-file: url(img/shield-motorway-5.png); }
    [reflen=6] { shield-file: url(img/shield-motorway-6.png); }
    [reflen=7] { shield-file: url(img/shield-motorway-7.png); }
    [reflen=8] { shield-file: url(img/shield-motorway-8.png); }
  }
  [type='trunk'] {
    [reflen=1] { shield-file: url(img/shield-trunk-1.png); }
    [reflen=2] { shield-file: url(img/shield-trunk-2.png); }
    [reflen=3] { shield-file: url(img/shield-trunk-3.png); }
    [reflen=4] { shield-file: url(img/shield-trunk-4.png); }
    [reflen=5] { shield-file: url(img/shield-trunk-5.png); }
    [reflen=6] { shield-file: url(img/shield-trunk-6.png); }
    [reflen=7] { shield-file: url(img/shield-trunk-7.png); }
    [reflen=8] { shield-file: url(img/shield-trunk-8.png); }
  }
  [zoom=11] { shield-min-distance: 60; } //50
  [zoom=12] { shield-min-distance: 80; } //60
  [zoom=13] { shield-min-distance: 120; } //120
  [zoom=14] { shield-min-distance: 180; }
}

#motorway_label[type='motorway'][zoom>9],
#motorway_label[type='trunk'][zoom>9] {
  text-name:"[name]";
  text-face-name:@sans_bold;
  text-placement:line;
  text-fill:@road_text;
  text-halo-fill:@road_halo;
  text-halo-radius:1;
  text-min-distance:60;
  text-size:10;
  [zoom=11] { text-min-distance:70; }
  [zoom=12] { text-min-distance:80; }
  [zoom=13] { text-min-distance:100; }
}

#mainroad_label[type='primary'][zoom>12],
#mainroad_label[type='secondary'][zoom>13],
#mainroad_label[type='tertiary'][zoom>13] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:line;
  text-fill:@road_text;
  text-halo-fill:@road_halo;
  text-halo-radius:1;
  text-min-distance:60;
  text-size:11;
}

#minorroad_label[zoom>14] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:line;
  text-size:9;
  text-fill:@road_text;
  text-halo-fill:@road_halo;
  text-halo-radius:1;
  text-min-distance:60;
  text-size:11;
}

/* ================================================================== */
/* ONE-WAY ARROWS
/* ================================================================== */

#motorway_label[oneway!=0][zoom>=16],
#mainroad_label[oneway!=0][zoom>=16],
#minorroad_label[oneway!=0][zoom>=16] {
  marker-placement:line;
  marker-max-error: 0.5;
  marker-spacing: 200;
  marker-file: url(img/icon/oneway.svg);
  [oneway=-1] { marker-file: url(img/icon/oneway-reverse.svg); }
  [zoom=16] { marker-transform: "scale(0.5)"; }
  [zoom=17] { marker-transform: "scale(0.75)"; }
}

/* ****************************************************************** */

/* LABELS.MSS CONTENTS:
 * - place names
 * - area labels
 * - waterway labels
 */

/* Font sets are defined in palette.mss */

/* ================================================================== */
/* PLACE NAMES
/* ================================================================== */

#place::country[type='country'][zoom>3][zoom<9] {
  text-name:'[name]';
  text-face-name:@sans_bold;
  text-placement:point;
  text-fill:@country_text;
  text-halo-fill: @country_halo;
  text-halo-radius: 1;
  [zoom=3] {
    text-size:10 + @text_adjust;
    text-wrap-width: 40;
  }
  [zoom=4] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
  }
  [zoom>4] {
    text-halo-radius: 2;
  }
  [zoom=5] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
    text-line-spacing: 1;
  }
  [zoom=6] {
    text-size:12 + @text_adjust;
    text-character-spacing: 1;
    text-wrap-width: 80;
    text-line-spacing: 2;
  }
  [zoom=7] {
    text-size:14 + @text_adjust;
    text-character-spacing: 2;
  }
}

#place::state[type='state'][zoom>=6][zoom<=10] {
  text-name:'[name]';
  text-face-name:@sans_bold_italic;
  text-placement:point;
  text-fill:@state_text;
  text-halo-fill: @state_halo;
  text-halo-radius: 1;
  [zoom=6] {
    text-size:10 + @text_adjust;
    text-wrap-width: 40;
  }
  [zoom=7] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
  }
  [zoom>8] {
    text-halo-radius: 2;
  }
  [zoom=8] {
    text-size:11 + @text_adjust;
    text-wrap-width: 50;
    text-line-spacing: 1;
  }
  [zoom=9] {
    text-size:12 + @text_adjust;
    text-character-spacing: 1;
    text-wrap-width: 80;
    text-line-spacing: 2;
  }
  [zoom=10] {
    text-size:14 + @text_adjust;
    text-character-spacing: 2;
  }
}

/* ---- Cities ------------------------------------------------------ */

#place::city[type='city'][zoom>=9][zoom<=15] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@city_text;
  text-halo-fill:@city_halo;
  text-halo-radius:2;
  [zoom=9] {
    text-size:12;
    text-wrap-width: 60;
  }
  [zoom=10] {
    text-size:14;
    text-wrap-width: 70;
  }
  [zoom=11] {
    text-size:16;
    text-character-spacing: 1;
    text-wrap-width: 80;
  }
  [zoom=12] {
    text-size:18;
    text-character-spacing: 2;
    text-wrap-width: 200;
  }
  [zoom=13] {
    text-size:20;
    text-character-spacing: 4;
    text-wrap-width: 300;
    text-transform: uppercase;
  }
  [zoom=14] {
    text-size:22;
    text-character-spacing: 10;
    text-wrap-width: 500;
    text-transform: uppercase;
  }
  [zoom=15] {
    text-size:26;
    text-character-spacing: 16;
    text-wrap-width: 800;
    text-transform: uppercase;
  }
}

/* ---- Towns ------------------------------------------------------- */

#place::town[type='town'][zoom>=9][zoom<=17] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@town_text;
  text-size:9;
  text-halo-fill:@town_halo;
  text-halo-radius:2;
  text-wrap-width: 50;
  [zoom>=10] {
    text-halo-radius:2;
    text-size: 12;
  }
  [zoom>=11]{
    text-size:14;
  }
  [zoom>=12]{
    text-size:16;
    text-line-spacing: 1;
  }
  [zoom>=13]{
    text-size:18;
    text-transform: uppercase;
    text-character-spacing: 1;
    text-line-spacing: 2;
  }
  [zoom>=14]{
    text-size:20;
    text-character-spacing: 2;
    text-line-spacing: 3;
  }
  [zoom>=15]{
    text-size:22;
    text-character-spacing: 3;
    text-line-spacing: 4;
  }
  [zoom>=16]{
    text-size:24;
    text-character-spacing: 4;
    text-line-spacing: 5;
  }
  [zoom>=17]{
    text-size:26;
    text-character-spacing: 5;
    text-line-spacing: 6;
  }
}

/* ---- Other small places ------------------------------------------ */

#place::small[type='village'][zoom>=13],
#place::small[type='suburb'][zoom>=13],
#place::small[type='hamlet'][zoom>=13],
#place::small[type='neighbourhood'][zoom>=13] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@other_text;
  text-size:12;
  text-halo-fill:@other_halo;
  text-halo-radius:1;
  text-wrap-width: 30;
  [zoom>=14] {
    text-size:14;
    text-character-spacing: 1;
    text-wrap-width: 120;
    text-line-spacing: 1;
  }
  [zoom>=15] {
    text-size:15;
    text-halo-radius: 2;
    text-transform: uppercase;
    text-character-spacing: 1;
    text-wrap-width: 180;
    text-line-spacing: 1;
  }
  [zoom>=16] {
    text-size:16;
    text-character-spacing: 2;
    text-wrap-width: 240;
    text-line-spacing: 2;
  }
  [zoom>=17] {
    text-size:17;
    text-character-spacing: 3;
    text-wrap-width: 320;
    text-line-spacing: 4;
  }
  [zoom>=18] {
    text-size:18;
    text-character-spacing: 4;
    text-line-spacing: 6;
  }
}

#place::small[type='locality'][zoom>=15] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:point;
  text-fill:@locality_text;
  text-size:9;
  text-halo-fill:@locality_halo;
  text-halo-radius:1;
  text-wrap-width: 30;
  [zoom>=16] {
    text-size:10;
    text-wrap-width: 60;
    text-line-spacing: 1;
  }
  [zoom>=17] {
    text-size:11;
    text-wrap-width: 120;
    text-line-spacing: 2;
  }
  [zoom>=18] {
    text-size:12;
    text-character-spacing: 1;
    text-line-spacing: 4;
  }
}

// =====================================================================
// AREA LABELS
// =====================================================================

#area_label {
  // Bring in labels gradually as one zooms in, bases on polygon area
  [zoom>=12][area>25600000],
  [zoom>=13][area>1600000],
  [zoom>=14][area>320000],
  [zoom>=15][area>80000],
  [zoom>=16][area>20000],
  [zoom>=17][area>5000],
  [zoom>=18][area>=0] {
    text-name: "[name]";
    text-halo-radius: 1.5;
    text-face-name:@sans_italic;
    text-size: 11;
    text-wrap-width:30;
    text-fill: @area_text;
    text-halo-fill: @area_halo;
    // Specific style overrides for different types of areas:
    [type='park'][zoom>=10] {
      text-face-name: @sans_lt_italic;
      text-fill: darken(@park, 70%);
      text-halo-fill: lighten(@park, 10);
    }
    [type='golf_course'][zoom>=10] {
      text-fill: darken(@sports, 70%);
      text-halo-fill: lighten(@sports, 10);
    }
    [type='cemetery'][zoom>=10] {
      text-fill: darken(@cemetery, 70%);
      text-halo-fill: lighten(@cemetery, 10);
    }
    [type='hospital'][zoom>=10] {
      text-fill: darken(@hospital, 70%);
      text-halo-fill: lighten(@hospital, 10);
    }
    [type='college'][zoom>=10],
    [type='school'][zoom>=10],
    [type='university'][zoom>=10] {
      text-fill: darken(@school, 70%);
      text-halo-fill: lighten(@school, 10);
    }
    [type='water'][zoom>=10] {
      text-fill: darken(@water, 70%);
      text-halo-fill: lighten(@water, 10);
    }
  }
  [zoom=15][area>1600000],
  [zoom=16][area>80000],
  [zoom=17][area>20000],
  [zoom=18][area>5000] {
    text-name: "[name]";
    text-size: 13;
    text-wrap-width: 60;
    text-character-spacing: 1;
    text-halo-radius: 2;
  }
  [zoom=16][area>1600000],
  [zoom=17][area>80000],
  [zoom=18][area>20000] {
    text-size: 15;
    text-character-spacing: 2;
    text-wrap-width: 120;
  }
  [zoom>=17][area>1600000],
  [zoom>=18][area>80000] {
    text-size: 20;
    text-character-spacing: 3;
    text-wrap-width: 180;
  }
}

#poi[type='university'][zoom>=15],
#poi[type='hospital'][zoom>=16],
#poi[type='school'][zoom>=17],
#poi[type='library'][zoom>=17] {
  text-name:"[name]";
  text-face-name:@sans;
  text-size:10;
  text-wrap-width:30;
  text-fill: @poi_text;
}

/* ================================================================== */
/* WATERWAY LABELS
/* ================================================================== */

#waterway_label[type='river'][zoom>=13],
#waterway_label[type='canal'][zoom>=15],
#waterway_label[type='stream'][zoom>=17] {
  text-name: '[name]';
  text-face-name: @sans_italic;
  text-fill: darken(@water, 70%);
  text-halo-fill: fadeout(lighten(@water,5%),25%);
  text-halo-radius: 1;
  text-placement: line;
  text-min-distance: 400;
  text-size: 10;
  [type='river'][zoom=15],
  [type='canal'][zoom=17] {
    text-size: 11;
  }
  [type='river'][zoom>=16],
  [type='canal'][zoom=18] {
    text-size: 14;
    text-spacing: 300;
  }
}

/* ================================================================== */
/* ROAD LABELS
/* ================================================================== */

#motorway_label[zoom>=11][zoom<=14][reflen<=8] {
  shield-name: "[ref]";
  shield-size: 9;
  shield-face-name: @sans_bold;
  shield-fill: #fff;
  shield-file: url(img/shield-motorway-1.png);
  [type='motorway'] {
    [reflen=1] { shield-file: url(img/shield-motorway-1.png); }
    [reflen=2] { shield-file: url(img/shield-motorway-2.png); }
    [reflen=3] { shield-file: url(img/shield-motorway-3.png); }
    [reflen=4] { shield-file: url(img/shield-motorway-4.png); }
    [reflen=5] { shield-file: url(img/shield-motorway-5.png); }
    [reflen=6] { shield-file: url(img/shield-motorway-6.png); }
    [reflen=7] { shield-file: url(img/shield-motorway-7.png); }
    [reflen=8] { shield-file: url(img/shield-motorway-8.png); }
  }
  [type='trunk'] {
    [reflen=1] { shield-file: url(img/shield-trunk-1.png); }
    [reflen=2] { shield-file: url(img/shield-trunk-2.png); }
    [reflen=3] { shield-file: url(img/shield-trunk-3.png); }
    [reflen=4] { shield-file: url(img/shield-trunk-4.png); }
    [reflen=5] { shield-file: url(img/shield-trunk-5.png); }
    [reflen=6] { shield-file: url(img/shield-trunk-6.png); }
    [reflen=7] { shield-file: url(img/shield-trunk-7.png); }
    [reflen=8] { shield-file: url(img/shield-trunk-8.png); }
  }
  [zoom=11] { shield-min-distance: 60; } //50
  [zoom=12] { shield-min-distance: 80; } //60
  [zoom=13] { shield-min-distance: 120; } //120
  [zoom=14] { shield-min-distance: 180; }
}

#motorway_label[type='motorway'][zoom>9],
#motorway_label[type='trunk'][zoom>9] {
  text-name:"[name]";
  text-face-name:@sans_bold;
  text-placement:line;
  text-fill:@road_text;
  text-halo-fill:@road_halo;
  text-halo-radius:1;
  text-min-distance:60;
  text-size:10;
  [zoom=11] { text-min-distance:70; }
  [zoom=12] { text-min-distance:80; }
  [zoom=13] { text-min-distance:100; }
}

#mainroad_label[type='primary'][zoom>12],
#mainroad_label[type='secondary'][zoom>13],
#mainroad_label[type='tertiary'][zoom>13] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:line;
  text-fill:@road_text;
  text-halo-fill:@road_halo;
  text-halo-radius:1;
  text-min-distance:60;
  text-size:11;
}

#minorroad_label[zoom>14] {
  text-name:'[name]';
  text-face-name:@sans;
  text-placement:line;
  text-size:9;
  text-fill:@road_text;
  text-halo-fill:@road_halo;
  text-halo-radius:1;
  text-min-distance:60;
  text-size:11;
}

/* ================================================================== */
/* ONE-WAY ARROWS
/* ================================================================== */

#motorway_label[oneway!=0][zoom>=16],
#mainroad_label[oneway!=0][zoom>=16],
#minorroad_label[oneway!=0][zoom>=16] {
  marker-placement:line;
  marker-max-error: 0.5;
  marker-spacing: 200;
  marker-file: url(img/icon/oneway.svg);
  [oneway=-1] { marker-file: url(img/icon/oneway-reverse.svg); }
  [zoom=16] { marker-transform: "scale(0.5)"; }
  [zoom=17] { marker-transform: "scale(0.75)"; }
}

/* ****************************************************************** */