Warning, /libraries/kosmindoormap/src/map/assets/css/breeze-common.mapcss is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-FileCopyrightText: 2020 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 /* common definitions between light and dark style */ 0008 0009 /** Various outdoor stuff. */ 0010 area[water], 0011 area[waterway], 0012 area[natural=water], 0013 area[amenity=fountain], 0014 area[landuse=basin], 0015 area[place=sea] 0016 { 0017 fill-color: #103daee9; 0018 z-index: -1000; 0019 } 0020 way[waterway] 0021 { 0022 color: #103daee9; 0023 z-index: -1000; 0024 width: 1m; 0025 } 0026 way[waterway][width] { width: width; } 0027 0028 area[natural=water][intermittent=yes] 0029 { 0030 fill-opacity: 0.5; 0031 fill-image: url("intermittent_water.svg"); 0032 } 0033 0034 *|z18- [amenity=fountain] { 0035 icon-image: amenity; 0036 icon-color: #2980b9; 0037 } 0038 *|z18- [waterway=waterfall] { 0039 icon-image: waterway; 0040 icon-color: #2980b9; 0041 } 0042 0043 area[leisure=miniature_golf], 0044 area[leisure=park], 0045 area[leisure=pitch], 0046 area[leisure=playground], 0047 area[landuse=farmland], 0048 area[landuse=grass], 0049 area[landuse=recreation_ground], 0050 area[landuse=village_green], 0051 area[landuse=meadow], 0052 area[natural=grassland], 0053 area[natural=heath], 0054 area[surface=grass] 0055 { 0056 fill-color: #1027ae60; 0057 z-index: -999; 0058 } 0059 area[landuse=cemetery] 0060 { 0061 fill-color: #1027ae60; 0062 fill-opacity: 0.4; 0063 fill-image: url("grave_yard_generic.svg"); 0064 z-index: -999; 0065 } 0066 area[leisure=garden] 0067 { 0068 fill-color: #1027ae60; 0069 fill-opacity: 0.6; 0070 fill-image: url("plant_nursery.svg"); 0071 z-index: -999; 0072 } 0073 area[landuse=plant_nursery] 0074 { 0075 fill-color: #1027ae60; 0076 z-index: -999; 0077 fill-opacity: 0.5; 0078 fill-image: url("plant_nursery.svg"); 0079 } 0080 0081 line[natural=tree_row] 0082 { 0083 color: #1027ae60; 0084 width: 2m; 0085 linecap: round; 0086 } 0087 0088 area[landuse=forest], 0089 area[natural=wood] 0090 { 0091 fill-color: #1027ae60; 0092 z-index: -999; 0093 fill-opacity: 0.5; 0094 fill-image: url("leaftype_unknown.svg"); 0095 } 0096 area[landuse=forest][leaf_type=broadleaved], 0097 area[natural=wood][leaf_type=broadleaved] 0098 { 0099 fill-image: url("leaftype_broadleaved.svg"); 0100 } 0101 area[landuse=forest][leaf_type=leafless], 0102 area[natural=wood][leaf_type=leafless] 0103 { 0104 fill-image: url("leaftype_leafless.svg"); 0105 } 0106 area[landuse=forest][leaf_type=needleleaved], 0107 area[natural=wood][leaf_type=needleleaved] 0108 { 0109 fill-image: url("leaftype_needleleaved.svg"); 0110 } 0111 area[landuse=forest][leaf_type=mixed], 0112 area[natural=wood][leaf_type=mixed] 0113 { 0114 fill-image: url("leaftype_mixed.svg"); 0115 } 0116 0117 area[landuse=orchard] 0118 { 0119 fill-color: #1027ae60; 0120 z-index: -999; 0121 fill-opacity: 0.5; 0122 fill-image: url("orchard.svg"); 0123 } 0124 area[landuse=vineyard] 0125 { 0126 fill-color: #1027ae60; 0127 z-index: -999; 0128 fill-opacity: 0.5; 0129 fill-image: url("vineyard.svg"); 0130 } 0131 0132 area[natural=scrub] 0133 { 0134 fill-color: #1027ae60; 0135 z-index: -999; 0136 fill-opacity: 0.5; 0137 fill-image: url("scrub.png"); 0138 } 0139 0140 area[landuse=allotments] 0141 { 0142 fill-color: #1027ae60; 0143 z-index: -999; 0144 fill-opacity: 0.5; 0145 fill-image: url("allotments.svg"); 0146 } 0147 0148 area[natural=beach], 0149 area[natural=sand] 0150 { 0151 fill-color: #20fdbc4b; 0152 z-index: -999; 0153 } 0154 area[natural=beach][surface=sand] { fill-image: url("beach.png"); } 0155 0156 area[natural=rock] 0157 { 0158 fill-color: #20bdc3c7; 0159 z-index: -999; 0160 } 0161 area[natural=bare_rock] 0162 { 0163 fill-color: #20bdc3c7; 0164 fill-image: url("rock_overlay.png"); 0165 z-index: -999; 0166 } 0167 area[landuse=quarry] 0168 { 0169 fill-color: #20bdc3c7; 0170 fill-image: url("quarry.svg"); 0171 z-index: -999; 0172 } 0173 0174 area[natural=wetland], 0175 area[natural=mud] 0176 { 0177 fill-color: #1027ae60; 0178 fill-opacity: 0.5; 0179 fill-image: url("wetland.png"); 0180 z-index: -999; 0181 } 0182 area[natural=wetland][wetland=bog], 0183 area[natural=wetland][wetland=fen], 0184 area[natural=wetland][wetland=string_bog] 0185 { 0186 fill-image: url("wetland_bog.png"); 0187 } 0188 area[natural=wetland][wetland=marsh], 0189 area[natural=wetland][wetland=saltmarsh], 0190 area[natural=wetland][wetland=wet_meadow] 0191 { 0192 fill-image: url("wetland_marsh.png"); 0193 } 0194 area[natural=wetland][wetland=mangrove] { fill-image: url("wetland_mangrove.png"); } 0195 area[natural=wetland][wetland=reedbed] { fill-image: url("wetland_reed.png"); } 0196 area[natural=wetland][wetland=swamp] { fill-image: url("wetland_swamp.png"); } 0197 0198 node|z19-[natural=tree] 0199 { 0200 icon-image: "tree"; 0201 icon-height: 2m; 0202 icon-width: 2m; 0203 icon-color: #27ae60; 0204 icon-opacity: 0.4; 0205 icon-allow-icon-overlap: true; 0206 icon-allow-text-overlap: true; 0207 } 0208 node|z19-[natural=tree][diameter_crown] 0209 { 0210 icon-height: diameter_crown; 0211 icon-width: diameter_crown; 0212 } 0213 0214 node|z21-[natural=shrub] 0215 { 0216 icon-image: "circle"; 0217 icon-height: 0.4m; 0218 icon-width: 0.4m; 0219 icon-color: #27ae60; 0220 icon-opacity: 0.4; 0221 icon-allow-icon-overlap: true; 0222 icon-allow-text-overlap: true; 0223 } 0224 node|z21-[natural=shrub][width] 0225 { 0226 icon-height: width; 0227 icon-width: width; 0228 } 0229 0230 /** Generic labeling */ 0231 area|z21- [indoor=room], 0232 area|z21- [allotments=plot] 0233 { 0234 text: ref; 0235 max-width: 100; 0236 text-halo-radius: 2.0; 0237 text-position: center; 0238 } 0239 0240 *|z21- [building], 0241 *|z20- [shop], 0242 *|z19- [shop=ticket], 0243 *|z21- [amenity][name], 0244 *|z20- [amenity=cafe], 0245 *|z20- [amenity=car_rental], 0246 *|z20- [amenity=fast_food], 0247 *|z20- [amenity=restaurant], 0248 *|z21- [indoor=room][name], 0249 *|z21- [leisure], 0250 *|z19- [tourism=information], 0251 *|z18- [tourism=zoo], 0252 *|z18- [tourism=theme_park], 0253 *|z20- [tourism=attraction], 0254 *|z20- [attraction], 0255 *|z21- [tourism], 0256 *|z19- [shop=mall], 0257 *|z21- [historic], 0258 *|z21- [diplomatic], 0259 *|z21- [office=coworking] 0260 { 0261 text: name; 0262 max-width: 100; 0263 text-halo-radius: 2.0; 0264 } 0265 0266 0267 /** Ferries */ 0268 *|z17- [amenity=ferry_terminal] 0269 { 0270 icon-image: amenity; 0271 icon-color: #3daee9; 0272 } 0273 line[route=ferry] 0274 { 0275 color: #803daee9; 0276 dashes: 2,2; 0277 width: 3px; 0278 } 0279 0280 /** Roads */ 0281 line[highway=motorway], 0282 line[highway=motorway_link], 0283 line[highway=trunk], 0284 line[highway=trunk_link], 0285 line[highway=primary], 0286 line[highway=primary_link], 0287 line[highway=secondary], 0288 line[highway=secondary_link], 0289 line[highway=tertiary], 0290 line[highway=tertiary_link], 0291 line[highway=unclassified], 0292 line[highway=residential], 0293 line[highway=service]::road, 0294 line[highway=living_street], 0295 line[highway=pedestrian], 0296 line[highway=road], 0297 line[highway=track] 0298 { 0299 casing-width: 1; 0300 z-index: -30; 0301 linecap: round; 0302 casing-linecap: round; 0303 } 0304 0305 line[highway=motorway] { width: 9; } 0306 line[highway=trunk] { width: 7; } 0307 line[highway=primary] { width: 6.5; } 0308 line[highway=secondary] { width: 6; } 0309 0310 line[highway=motorway_link], 0311 line[highway=tertiary] 0312 { 0313 width: 5; 0314 } 0315 0316 line[highway=trunk_link], 0317 line[highway=primary_link], 0318 line[highway=secondary_link], 0319 line[highway=tertiary_link], 0320 line[highway=unclassified], 0321 line[highway=living_street], 0322 line[highway=pedestrian] 0323 { 0324 width: 4; 0325 } 0326 0327 line[highway=residential], 0328 line[highway=road] 0329 { 0330 width: 3; 0331 } 0332 0333 line[highway=service]::road { width: 2; } 0334 0335 line[highway=track], 0336 line[highway=path] 0337 { 0338 width: 1; 0339 } 0340 0341 line[highway][layer<0], 0342 line[highway][tunnel] { 0343 casing-dashes: 0.25,0.25; 0344 casing-linecap: none; 0345 } 0346 line [highway=steps] { width: 1; } 0347 line [highway=steps][width] { width: width; } 0348 line[highway=steps][layer<0] { 0349 casing-dashes: none; 0350 } 0351 0352 line|z18-[highway=motorway], 0353 line|z20-[highway=motorway_link] 0354 { 0355 text-position: line; 0356 text-opacity: 0.75; 0357 text: ref; 0358 } 0359 line|z19-[highway=trunk], 0360 line|z20-[highway=trunk_link], 0361 line|z19-[highway=primary], 0362 line|z20-[highway=primary_link], 0363 line|z19-[highway=secondary], 0364 line|z20-[highway=secondary_link], 0365 line|z20-[highway=tertiary], 0366 line|z20-[highway=tertiary_link], 0367 line|z20-[highway=unclassified], 0368 line|z20-[highway=residential], 0369 line|z21-[highway=service], 0370 line|z20-[highway=living_street], 0371 line|z20-[highway=pedestrian], 0372 line|z20-[highway=road] 0373 { 0374 text-position: line; 0375 text-opacity: 0.75; 0376 text: name; 0377 } 0378 0379 /** Railway tracks */ 0380 way[railway=rail], 0381 way[railway=light_rail], 0382 way[railway=subway], 0383 way[railway=tram]::tram, 0384 way[railway=monorail] 0385 { 0386 color: #eff0f1; 0387 dashes: 2,2; 0388 width: 1.5m; 0389 casing-width: 3; 0390 casing-color: #31363b; 0391 linecap: none; 0392 linejoin: miter; 0393 } 0394 way[railway=narrow_gauge] 0395 { 0396 color: #eff0f1; 0397 dashes: 2,2; 0398 width: 1m; 0399 casing-width: 3; 0400 casing-color: #31363b; 0401 linecap: none; 0402 } 0403 way[railway][gauge] { 0404 width: gauge; 0405 } 0406 0407 way[railway:traffic_mode=freight], 0408 way[railway=rail][service=yard] 0409 { 0410 casing-color: #7f8c8d; 0411 } 0412 0413 /** Buildings */ 0414 area[building], 0415 area[building:part=yes], 0416 area[building:part=floor], 0417 area[indoor=area], 0418 area[indoor=corridor], 0419 area[indoor=level], 0420 area[stairwell], 0421 area[tunnel] 0422 { 0423 z-index: -1; 0424 } 0425 /** Cap building layers, this is much more often a data issue than actually intended and 0426 * causes misrenderings as building content then gets covered. 0427 */ 0428 area[building][layer>0], 0429 area[building:part=yes][layer>0] 0430 { 0431 set layer=0; 0432 } 0433 0434 node|z21-[door][door!=no][!entrance] 0435 { 0436 icon-image: "square"; 0437 icon-height: 4px; 0438 icon-width: 4px; 0439 icon-color: #31363b; 0440 icon-allow-icon-overlap: true; 0441 icon-allow-text-overlap: true; 0442 } 0443 0444 node|z21-[entrance=yes][railway!=subway_entrance], 0445 node|z21-[entrance=main] 0446 { 0447 icon-image: "entrance"; 0448 icon-allow-icon-overlap: true; 0449 icon-allow-text-overlap: true; 0450 } 0451 0452 /** Airports */ 0453 line|z14-[aeroway=runway] 0454 { 0455 color: #eff0f1; 0456 width: 2px; 0457 dashes: 4, 4; 0458 casing-width: 20m; 0459 casing-color: #95a5a6; 0460 text: ref; 0461 text-color: #232629; 0462 shield-color: #fdbc4b; 0463 z-index: -10; 0464 } 0465 line|z14-[aeroway=runway][width] 0466 { 0467 casing-width: width; 0468 } 0469 area|z14-[aeroway=runway] 0470 { 0471 fill-color: #95a5a6; 0472 text: ref; 0473 text-color: #232629; 0474 shield-color: #fdbc4b; 0475 z-index: -10; 0476 } 0477 area|z15-[aeroway=helipad] 0478 { 0479 text: "H"; 0480 fill-color: #95a5a6; 0481 } 0482 way|z14-[aeroway=taxiway], 0483 way|z14-[aeroway=taxilane] 0484 { 0485 color: #fdbc4b; 0486 width: 1px; 0487 casing-width: 10m; 0488 casing-color: #95a5a6; 0489 z-index: -20; 0490 } 0491 way|z14-[aeroway=taxiway][width] 0492 { 0493 casing-width: width; 0494 } 0495 way|z19-[aeroway=taxiway] 0496 { 0497 text-color: #fdbc4b; 0498 text-position: line; 0499 font-size: 8; 0500 text: ref; 0501 text-offset: 12; 0502 } 0503 way|z19-[aeroway=parking_position] 0504 { 0505 color: #fdbc4b; 0506 width: 1px; 0507 dashes: 8,8; 0508 text-color: #fdbc4b; 0509 text-position: line; 0510 font-size: 8; 0511 text: ref; 0512 text-offset: 12; 0513 } 0514 node|z20-[aeroway=parking_position] 0515 { 0516 text-color: #fdbc4b; 0517 font-size: 8; 0518 text: ref; 0519 } 0520 0521 area|z16-[aeroway=terminal] 0522 { 0523 text: name; 0524 } 0525 node|z18-[aeroway=gate] 0526 { 0527 text: ref; 0528 text-color: #232629; 0529 shield-color: #fdbc4b; 0530 } 0531 node|z17-[aeroway=gate][mx:arrival=1] 0532 { 0533 text: ref; 0534 text-color: #eff0f1; 0535 shield-color: #16a085; 0536 } 0537 node|z17-[aeroway=gate][mx:departure=1] 0538 { 0539 text: ref; 0540 text-color: #eff0f1; 0541 shield-color: #da4453; 0542 } 0543 0544 *|z19-[amenity=baggage_claim] 0545 { 0546 text: ref; 0547 icon-image: amenity; 0548 set .static; 0549 } 0550 way|z19-[amenity=baggage_claim] 0551 { 0552 width: 1m; 0553 color: #bdc3c7; 0554 } 0555 0556 /** Platforms */ 0557 node[highway=bus_stop] 0558 { 0559 icon-image: "bus_stop"; 0560 icon-color: #1d99f3; 0561 max-width: 150; 0562 } 0563 node|z20-[highway=bus_stop] 0564 { 0565 text: name; 0566 } 0567 0568 area[railway=platform], 0569 area[public_transport=platform], 0570 way[public_transport=platform] 0571 { 0572 z-index: 0; // in case this is also marked as a building part... 0573 opacity: 1; 0574 } 0575 0576 @import url("platform-overlay.mapcss"); 0577 0578 /** static elements 0579 * keep before amenities/shops, as those can occur on the same element and should override the static element styles 0580 */ 0581 line[barrier], 0582 line[indoor=wall], 0583 line[man_made=embankment] 0584 { 0585 width: 0.25m; 0586 } 0587 0588 line[barrier=fence], 0589 area[barrier=fence] { 0590 width: 1px; 0591 } 0592 line[barrier=hedge] { 0593 width: 0.4m; 0594 } 0595 line[barrier=bollard] { 0596 dashes: 0.2,1.2; 0597 } 0598 line[barrier=kerb] { 0599 width: 1px; 0600 opacity: 0.5; 0601 } 0602 0603 node|z21- [barrier=block] 0604 { 0605 set .static; 0606 icon-image: "circle"; 0607 icon-width: 0.5m; 0608 icon-height: 0.5m; 0609 icon-allow-icon-overlap: true; 0610 icon-allow-text-overlap: true; 0611 } 0612 0613 node|z20- [amenity=bench], 0614 node|z20- [amenity=recycling], 0615 *|z20- [amenity=shelter], 0616 node|z20- [amenity=waste_basket], 0617 *|z20- [amenity=waste_disposal] 0618 { 0619 icon-image: amenity; 0620 set .static; 0621 } 0622 0623 node|z19- [barrier=lift_gate] 0624 { 0625 icon-image: barrier; 0626 set .static; 0627 } 0628 0629 node|z20- [information=board], 0630 node|z20- [information=guidepost], 0631 node|z20- [information=map], 0632 node|z20- [information=terminal] 0633 { 0634 icon-image: information; 0635 set .static; 0636 } 0637 // hide information boards as their names clutter the vie 0638 // showing an icon instead would be better, but we don't have one yet 0639 node[information] { text: ""; } 0640 0641 *|z20- [historic=archaeological_site], 0642 *|z19- [historic=castle], 0643 *|z19- [historic=city_gate], 0644 *|z20- [historic=memorial], 0645 *|z19- [historic=monument] 0646 { 0647 icon-image: historic; 0648 set .static; 0649 } 0650 *|z20- [memorial=statue] 0651 { 0652 icon-image: memorial; 0653 set .static; 0654 } 0655 0656 *|z20- [tourism=artwork] 0657 { 0658 icon-image: tourism; 0659 set .static; 0660 } 0661 *|z20- [tourism=artwork][artwork_type=statue] 0662 { 0663 icon-image: artwork_type; 0664 set .static; 0665 } 0666 0667 *|z20- [man_made] { set .static; } 0668 *|z20- [man_made=lighthouse], 0669 *|z20- [man_made=storage_tank], 0670 *|z20- [man_made=water_tower], 0671 *|z20- [man_made=windmill] 0672 { 0673 icon-image: man_made; 0674 } 0675 *|z20- [man_made=silo] { icon-image: "storage_tank"; } 0676 *|z20- [man_made=tower][tower:type=defensive] { icon-image: "tower_defensive"; } 0677 0678 *|z21- [advertising=column ] 0679 { 0680 icon-image: "advertising_column"; 0681 set .static; 0682 } 0683 0684 /** Specific amenities/shops/etc */ 0685 0686 // ticket machines 0687 node|z20-[vending=public_transport_tickets] { 0688 icon-image: vending; 0689 icon-color: #fcfcfc; 0690 shield-color: #1d99f3; 0691 shield-casing-color: #fcfcfc; 0692 shield-casing-width: 1; 0693 text: ""; 0694 } 0695 0696 // parking 0697 *|z17-[amenity=parking], 0698 *|z18-[amenity=bicycle_parking], 0699 *|z19-[amenity=fuel], 0700 *|z18-[amenity=motorcycle_parking] 0701 { 0702 icon-image: amenity; 0703 set .parking; 0704 } 0705 *|z-20[amenity=parking][access=private] 0706 { 0707 icon-opacity: 0.0; 0708 } 0709 0710 // vehicle rental stations 0711 *|z18-[amenity=bicycle_rental] { 0712 icon-color: #3daee9; 0713 icon-image: amenity; 0714 text: ""; // suppress generic names messing up the layouting when we have realtime data (see below) 0715 } 0716 *|z18-[amenity=bicycle_rental][mx:realtime_available=0] { 0717 icon-color: #da4453; 0718 text: mx:realtime_available; 0719 text-color: #da4453; 0720 } 0721 *|z18-[amenity=bicycle_rental][mx:realtime_available>0] { 0722 icon-color: #27ae60; 0723 text: mx:realtime_available; 0724 text-color: #27ae60; 0725 } 0726 0727 // free floating rental vehicles 0728 *|z18-[mx:vehicle=bicycle_rental], 0729 *|z18-[mx:vehicle=car_rental], 0730 *|z18-[mx:vehicle=motorcycle_rental], 0731 *|z18-[mx:vehicle=scooter_rental] 0732 { 0733 icon-image: mx:vehicle; 0734 icon-color: #27ae60; 0735 text: ""; 0736 } 0737 *|z18-[mx:vehicle=bicycle_rental][mx:remaining_range<5000], 0738 *|z18-[mx:vehicle=car_rental][mx:remaining_range<30000], 0739 *|z18-[mx:vehicle=motorcycle_rental][mx:remaining_range<5000], 0740 *|z18-[mx:vehicle=scooter_rental][mx:remaining_range<5000] 0741 { 0742 icon-color: #fdbc4b; 0743 } 0744 0745 // charging stations 0746 node|z19-[amenity=charging_station] { 0747 set .parking; 0748 icon-image: "charging_station"; 0749 } 0750 node|z19-[amenity=charging_station][access=private] { icon-color: #7f8c8d; } 0751 0752 // other transportation-related elements 0753 *|z19-[amenity=boat_rental], 0754 *|z19-[amenity=bicycle_repair_station], 0755 *|z19-[amenity=car_rental], 0756 *|z19-[amenity=car_sharing], 0757 *|z18-[amenity=taxi] 0758 { 0759 set .parking; 0760 icon-image: amenity; 0761 } 0762 *|z21-[amenity=taxi] { text: ""; } 0763 *|z19-[amenity=car_sharing] { icon-image: "car_rental"; } // TODO needs a better icon 0764 node|z19-[barrier=toll_booth] 0765 { 0766 set .parking; 0767 icon-image: barrier; 0768 } 0769 0770 // restrooms 0771 area|z20-[amenity=shower] { icon-image: "shower"; } 0772 node|z20-[amenity=shower] 0773 { 0774 icon-color: #3daee9; 0775 icon-image: "shower"; 0776 } 0777 area|z18-[amenity=toilets], 0778 area|z18-[room=toilets] 0779 { 0780 icon-image: "toilets"; 0781 } 0782 node|z18-[amenity=toilets] { // only for stand-alone nodes, otherwise we have the same color as the room already 0783 icon-color: #3daee9; 0784 icon-image: "toilets"; 0785 } 0786 *[amenity=toilets][access=private], 0787 *[room=toilets][access=private] 0788 { 0789 icon-color: #7f8c8d; 0790 } 0791 *|z-21[amenity=toilets][access=private], 0792 *|z-21[room=toilets][access=private] 0793 { 0794 icon-opacity: 0.0; 0795 } 0796 0797 // accommodation 0798 *|z19- [tourism=apartment], 0799 *|z18- [tourism=caravan_site], 0800 *|z19- [tourism=chalet], 0801 *|z18- [tourism=hotel], 0802 *|z19- [tourism=guest_house], 0803 *|z18- [tourism=hostel] 0804 { 0805 icon-color: #3daee9; 0806 icon-image: tourism; 0807 } 0808 *|z20- [tourism=hotel], 0809 *|z20- [tourism=hostel] 0810 { 0811 text: name; 0812 max-width: 150; 0813 text-halo-radius: 2.0; 0814 } 0815 0816 // food 0817 *|z19- [amenity=bar], 0818 *|z19- [amenity=biergarten], 0819 *|z19- [amenity=cafe], 0820 *|z19- [amenity=fast_food], 0821 *|z18- [amenity=food_court], 0822 *|z19- [amenity=ice_cream], 0823 *|z19- [amenity=pub], 0824 *|z19- [amenity=restaurant] 0825 { 0826 icon-image: amenity; 0827 set .food; 0828 } 0829 *|z18-[amenity=food_court] { icon-image: "restaurant"; } 0830 0831 // shops 0832 * [shop] { set .shop; } 0833 0834 *|z19- [shop=alcohol], 0835 *|z20- [shop=art], 0836 *|z19- [shop=bag], 0837 *|z19- [shop=bakery], 0838 *|z19- [shop=beauty], 0839 *|z19- [shop=bed], 0840 *|z19- [shop=beverages], 0841 *|z19- [shop=bicycle], 0842 *|z20- [shop=bookmaker], 0843 *|z19- [shop=butcher], 0844 *|z19- [shop=car], 0845 *|z20- [shop=car_parts], 0846 *|z20- [shop=car_repair], 0847 *|z20- [shop=carpet], 0848 *|z19- [shop=charity], 0849 *|z19- [shop=chemist], 0850 *|z19- [shop=clothes], 0851 *|z19- [shop=coffee], 0852 *|z19- [shop=computer], 0853 *|z19- [shop=confectionery], 0854 *|z19- [shop=convenience], 0855 *|z19- [shop=copyshop], 0856 *|z19- [shop=dairy], 0857 *|z19- [shop=deli], 0858 *|z18- [shop=department_store], 0859 *|z19- [shop=doityourself], 0860 *|z19- [shop=electronics], 0861 *|z20- [shop=fabric], 0862 *|z19- [shop=florist], 0863 *|z19- [shop=furniture], 0864 *|z19- [shop=garden_centre], 0865 *|z19- [shop=gift], 0866 *|z19- [shop=greengrocer], 0867 *|z19- [shop=hairdresser], 0868 *|z19- [shop=hifi], 0869 *|z19- [shop=houseware], 0870 *|z19- [shop=interior_decoration], 0871 *|z19- [shop=jewelry], 0872 *|z19- [shop=laundry], 0873 *|z19- [shop=medical_supply], 0874 *|z19- [shop=mobile_phone], 0875 *|z20- [shop=motorcycle], 0876 *|z19- [shop=music], 0877 *|z19- [shop=musical_instrument], 0878 *|z19- [shop=newsagent], 0879 *|z19- [shop=optician], 0880 *|z19- [shop=outdoor], 0881 *|z19- [shop=paint], 0882 *|z19- [shop=perfumery], 0883 *|z19- [shop=pet], 0884 *|z19- [shop=photo], 0885 *|z19- [shop=seafood], 0886 *|z19- [shop=second_hand], 0887 *|z19- [shop=shoes], 0888 *|z19- [shop=sports], 0889 *|z19- [shop=stationery], 0890 *|z18- [shop=supermarket], 0891 *|z19- [shop=tea], 0892 *|z18- [shop=ticket], 0893 *|z19- [shop=tobacco], 0894 *|z19- [shop=toys], 0895 *|z19- [shop=trade], 0896 *|z19- [shop=travel_agency], 0897 *|z20- [shop=tyres], 0898 *|z20- [shop=video], 0899 *|z19- [shop=video_games], 0900 *|z19- [shop=variety_store] 0901 { 0902 icon-image: shop; 0903 } 0904 *|z19- [shop=books] { icon-image: "library"; } 0905 *|z19- [shop=boutique] { icon-image: "clothes"; } 0906 *|z19- [shop=chocolate] { icon-image: "confectionery"; } 0907 *|z19- [shop=cosmetics] { icon-image: "perfumery"; } 0908 *|z19- [shop=dry_cleaning] { icon-image: "laundry"; } 0909 *|z19- [shop=hardware] { icon-image: "doityourself"; } 0910 *|z19- [shop=farm] { icon-image: "greengrocer"; } 0911 *|z19- [shop=fashion] { icon-image: "clothes"; } 0912 *|z19- [shop=kiosk] { icon-image: "newsagent"; } 0913 *|z19- [shop=pastry] { icon-image: "confectionery"; } 0914 *|z19- [shop=wine] { icon-image: "alcohol"; } 0915 *|z19- [shop=wholesale] { icon-image: "trade"; } 0916 *|z19- [office=travel_agent] 0917 { 0918 icon-image: "travel_agency"; 0919 set .shop; 0920 } 0921 0922 *|z18- [amenity=marketplace] 0923 { 0924 icon-image: amenity; 0925 set .shop; 0926 } 0927 0928 // health 0929 *|z19- [amenity=dentist], 0930 *|z19- [amenity=doctors], 0931 *|z17- [amenity=hospital], 0932 *|z18- [amenity=pharmacy], 0933 *|z20- [amenity=veterinary] 0934 { 0935 icon-image: amenity; 0936 set .health; 0937 } 0938 *|z19- [amenity=clinic] 0939 { 0940 icon-image: "doctors"; 0941 set .health; 0942 } 0943 0944 // leisure elements 0945 *|z18- [leisure] { set .leisure; } 0946 *|z19- [leisure=bowling_alley], 0947 *|z19- [leisure=fitness_centre], 0948 *|z18- [leisure=golf_course], 0949 *|z19- [leisure=miniature_golf], 0950 *|z20- [leisure=outdoor_seating], 0951 *|z18- [leisure=playground], 0952 *|z20- [leisure=sauna], 0953 *|z18- [leisure=water_park] 0954 { 0955 icon-image: leisure; 0956 } 0957 *|z18- [leisure=sports_centre][sport=swimming] { icon-image: "water_park"; } 0958 *|z19- [leisure=fitness_station] { icon-image: "fitness_centre"; } 0959 *|z20- [shop=massage] 0960 { 0961 icon-image: shop; 0962 set .leisure; 0963 } 0964 *|z20- [tourism=picnic_site] 0965 { 0966 icon-image: tourism; 0967 set .leisure; 0968 } 0969 0970 // other amenities 0971 *|z19- [amenity=arts_centre], 0972 node|z19- [amenity=atm], 0973 *|z19- [amenity=bank], 0974 *|z19- [amenity=bbq], 0975 *|z19- [amenity=bureau_de_change], 0976 *|z20- [amenity=car_wash], 0977 *|z20- [amenity=casino], 0978 *|z19- [amenity=cinema], 0979 *|z20- [amenity=community_centre], 0980 *|z20- [amenity=courthouse], 0981 node|z19- [amenity=drinking_water], 0982 *|z19- [amenity=embassy], 0983 *|z19- [amenity=fire_station], 0984 *|z19- [amenity=internet_cafe], 0985 *|z19- [amenity=library], 0986 *|z20- [amenity=lost_property_office], 0987 *|z19- [amenity=luggage_locker], 0988 *|z20- [amenity=nightclub], 0989 *|z19- [amenity=place_of_worship], 0990 *|z19- [amenity=police], 0991 node|z20- [amenity=post_box], 0992 *|z19- [amenity=post_office], 0993 *|z19- [amenity=prison], 0994 *|z19- [amenity=public_bath], 0995 *|z21- [amenity=public_bookcase], 0996 *|z20- [amenity=recycling], 0997 *|z19- [amenity=social_facility], 0998 node|z20- [amenity=telephone], 0999 *|z19- [amenity=theatre], 1000 *|z20- [amenity=townhall], 1001 *|z19- [amenity=vehicle_inspection] 1002 { 1003 icon-image: amenity; 1004 set .amenity; 1005 } 1006 *|z19- [shop=bank] 1007 { 1008 icon-image: shop; 1009 set .amenity; 1010 } 1011 node|z19- [vending=parking_tickets] 1012 { 1013 icon-image: vending; 1014 set .amenity; 1015 } 1016 *|z18- [tourism=information][!information], 1017 *|z19- [tourism=museum], 1018 *|z20- [tourism=viewpoint] 1019 { 1020 icon-image: tourism; 1021 set .amenity; 1022 } 1023 *|z19- [tourism=gallery] 1024 { 1025 icon-image: "art"; 1026 set .amenity; 1027 } 1028 1029 node|z20- [emergency=phone] 1030 { 1031 icon-image: "emergency_phone"; 1032 set .amenity; 1033 } 1034 node|z20- [leisure=firepit] 1035 { 1036 icon-image: leisure; 1037 set .amenity; 1038 } 1039 *|z19- [diplomatic=consulate], 1040 *|z19- [diplomatic=embassy] 1041 { 1042 icon-image: diplomatic; 1043 set .amenity; 1044 } 1045 *|z18- [information=office] 1046 { 1047 icon-image: information; 1048 set .amenity; 1049 } 1050 1051 node|z19- [amenity=atm], 1052 node|z19- [amenity=drinking_water] 1053 { 1054 text: ""; 1055 } 1056 1057 *|z19- [amenity=left_luggage], 1058 *|z19- [amenity=locker], 1059 *|z19- [amenity=lockers] 1060 { 1061 icon-image: "luggage_locker"; 1062 set .amenity; 1063 } 1064 *|z20- [amenity=lost_and_found], 1065 *|z20- [amenity=lost_found], 1066 *|z20- [amenity=lost_property], 1067 *|z20- [office=lost_property], 1068 *|z20- [office=lost_and_found] 1069 { 1070 icon-image: "lost_property_office"; 1071 set .amenity; 1072 } 1073 1074 /** Stairwells */ 1075 area|z20-[indoor=area][stairs=yes], 1076 area|z20-[indoor=room][stairs=yes] 1077 { 1078 icon-image: "stairs"; 1079 } 1080 1081 /** Elevators/escalators. */ 1082 area[building=elevator], 1083 area[building:part=elevator], 1084 area[building=yes][elevator=yes][!tourism][!shop][!amenity], 1085 area[building:part=yes][elevator=yes], 1086 area[highway=elevator], 1087 area[room=elevator], 1088 area[stairwell=elevator], 1089 area[indoor=room][elevator=yes] 1090 { 1091 set .elevator; 1092 width: 1px; 1093 z-index: 1; 1094 } 1095 1096 area.elevator|z20- { 1097 icon-image: "elevator"; 1098 icon-color: #eff0f1; 1099 } 1100 1101 node[highway=elevator][access!=no][access!=private] 1102 { 1103 set .elevator; 1104 icon-image: "elevator"; 1105 } 1106 1107 line[highway=footway][conveying=yes], 1108 line[highway=footway][conveying=forward], 1109 line[highway=footway][conveying=backward], 1110 line[highway=footway][conveying=reversible], 1111 line[highway=steps][conveying=yes], 1112 line[highway=steps][conveying=forward], 1113 line[highway=steps][conveying=backward], 1114 line[highway=steps][conveying=reversible] 1115 { 1116 set .escalator; 1117 casing-linecap: none; 1118 }