source: josm/trunk/styles/standard/elemstyles.mapcss @ 8434

Last change on this file since 8434 was 8434, checked in by Klumbumbus, 4 years ago

see #11445 - new icon for amenity=restaurant

  • Property svn:eol-style set to native
File size: 103.6 KB
Line 
1/*
2Main JOSM map paint style.
3
4Originally in XML format, migrated to MapCSS.
5Documentation of MapCSS format:
6
7 http://josm.openstreetmap.de/wiki/Help/Styles/MapCSSImplementation
8
9*/
10
11meta {
12    icon: "dialogs/mappaint/josm_small.png";
13}
14
15canvas {
16    default-points: false;
17}
18
19/*************************/
20/* create style settings */
21/*************************/
22
23setting::hide_icons {
24  type: boolean;
25  label: tr("Hide icons at low zoom");
26  default: true;
27}
28
29setting::shrink_nodes {
30  type: boolean;
31  label: tr("Less obtrusive node symbols at low zoom");
32  default: true;
33}
34
35setting::highway_labels {
36  type: boolean;
37  label: tr("Display street labels (at high zoom)");
38  default: true;
39}
40
41setting::alt_turn_icons {
42  type: boolean;
43  label: tr("Use alternative turn restriction icon set");
44  default: false;
45}
46
47/*********************/
48/* turn restrictions */
49/*********************/
50
51relation[restriction=no_left_turn][!setting("alt_turn_icons")] {
52    icon-image: "vehicle/restriction/turn_restrictions/no_left_turn_red.png";
53    set icon_z17;
54    text: auto;
55}
56relation[restriction=no_left_turn][setting("alt_turn_icons")] {
57    icon-image: "vehicle/restriction/turn_restrictions/no_left_turn.png";
58    set icon_z17;
59    text: auto;
60}
61relation[restriction=no_right_turn][!setting("alt_turn_icons")] {
62    icon-image: "vehicle/restriction/turn_restrictions/no_right_turn_red.png";
63    set icon_z17;
64    text: auto;
65}
66relation[restriction=no_right_turn][setting("alt_turn_icons")] {
67    icon-image: "vehicle/restriction/turn_restrictions/no_right_turn.png";
68    set icon_z17;
69    text: auto;
70}
71relation[restriction=no_straight_on][!setting("alt_turn_icons")] {
72    icon-image: "vehicle/restriction/turn_restrictions/no_straight_on_red.png";
73    set icon_z17;
74    text: auto;
75}
76relation[restriction=no_straight_on][setting("alt_turn_icons")] {
77    icon-image: "vehicle/restriction/turn_restrictions/no_straight_on.png";
78    set icon_z17;
79    text: auto;
80}
81relation[restriction=no_u_turn] {
82    icon-image: "vehicle/restriction/turn_restrictions/no_u_turn.png";
83    set icon_z17;
84    text: auto;
85}
86relation[restriction=only_left_turn] {
87    icon-image: "vehicle/restriction/turn_restrictions/only_left_turn.png";
88    set icon_z17;
89    text: auto;
90}
91relation[restriction=only_right_turn] {
92    icon-image: "vehicle/restriction/turn_restrictions/only_right_turn.png";
93    set icon_z17;
94    text: auto;
95}
96relation[restriction=only_straight_on] {
97    icon-image: "vehicle/restriction/turn_restrictions/only_straight_on.png";
98    set icon_z17;
99    text: auto;
100}
101node[restriction] {
102    icon-image: "misc/deprecated.png";
103    set icon_z17;
104    text: auto;
105}
106
107/******************/
108/* bridge, tunnel */
109/******************/
110
111way[bridge=yes]::core_bridge,
112way[bridge=viaduct]::core_bridge,
113way[bridge=swing]::core_bridge,
114way[bridge=movable]::core_bridge,
115way[bridge=cantilever]::core_bridge,
116way[bridge=covered]::core_bridge,
117way[bridge=low_water_crossing]::core_bridge,
118way[bridge=trestle]::core_bridge,
119way[bridge=aqueduct]::core_bridge {
120    major-z-index: 2;
121    object-z-index: -1;
122    width: +4;
123    color: bridge#0000FF;
124    opacity: 0.9;
125}
126way[tunnel=yes]::core_tunnel,
127way[tunnel=culvert]::core_tunnel,
128way[tunnel=building_passage]::core_tunnel,
129way[tunnel=avalanche_protector]::core_tunnel {
130    major-z-index: 2;
131    object-z-index: -1;
132    width: +5;
133    color: tunnel#964B00;
134    opacity: 0.9;
135}
136node[oneway],
137node[bridge],
138node[tunnel?],
139node[tunnel?!],
140node[cutting?!],
141node[embankment?!] {
142    icon-image: "misc/deprecated.png";
143    set icon_z17;
144    text: auto;
145}
146
147/****************************/
148/* access restrictions tags */
149/****************************/
150
151way[access?!]::core_access {
152    z-index: -1;
153    width: +2;
154    color: no#ff8080;
155    dashes: 2,2;
156}
157way[access=permissive]::core_access {
158    z-index: -1;
159    width: +2;
160    color: permissive#80ff80;
161    dashes: 2,2;
162}
163way[access=private]::core_access {
164    z-index: -1;
165    width: +2;
166    color: private#ff8080;
167    dashes: 2,2;
168}
169way[access=destination]::core_access {
170    z-index: -1;
171    width: +2;
172    color: destination#8080ff;
173    dashes: 2,2;
174}
175node[traffic_sign][access?!] {
176    icon-image: "vehicle/restriction/access.png";
177    set icon_z17;
178}
179node[traffic_sign][access=permissive],
180node[traffic_sign][access=private],
181node[traffic_sign][access=destination] {
182    icon-image: "misc/no_icon.png";
183    set icon_z17;
184    text: auto;
185}
186node[traffic_sign][bicycle?!] {
187    icon-image: "vehicle/restriction/bicycle.png";
188    set icon_z17;
189}
190node[traffic_sign][bicycle=designated] {
191    icon-image: "vehicle/restriction/bicycle-designated.png";
192    set icon_z17;
193    text: auto;
194}
195node[traffic_sign][foot?!] {
196    icon-image: "vehicle/restriction/foot.png";
197    set icon_z17;
198}
199node[traffic_sign][foot=designated] {
200    icon-image: "vehicle/restriction/foot-designated.png";
201    set icon_z17;
202    text: auto;
203}
204node[traffic_sign][goods?!],
205node[traffic_sign][hgv?!] {
206    icon-image: "vehicle/restriction/goods.png";
207    set icon_z17;
208}
209node[traffic_sign][horse?!] {
210    icon-image: "vehicle/restriction/horse.png";
211    set icon_z17;
212}
213node[traffic_sign][horse=designated] {
214    icon-image: "vehicle/restriction/horse-designated.png";
215    set icon_z17;
216}
217node[traffic_sign][motorcycle?!] {
218    icon-image: "vehicle/restriction/motorbike.png";
219    set icon_z17;
220}
221node[traffic_sign][motorcar?!] {
222    icon-image: "vehicle/restriction/motorcar.png";
223    set icon_z17;
224}
225node[traffic_sign][psv?!] {
226    icon-image: "vehicle/restriction/psv.png";
227    set icon_z17;
228}
229node[traffic_sign][motorboat?!],
230node[traffic_sign][boat?!] {
231    icon-image: "misc/no_icon.png";
232    set icon_z17;
233}
234node[noexit=yes] {
235    icon-image: "vehicle/restriction/dead_end.png";
236    set icon_z17;
237}
238node[traffic_sign][maxweight] {
239    icon-image: "vehicle/restriction/maxweight.png";
240    set icon_z17;
241}
242node[traffic_sign][maxheight] {
243    icon-image: "vehicle/restriction/maxheight.png";
244    set icon_z17;
245}
246node[traffic_sign][maxwidth] {
247    icon-image: "vehicle/restriction/maxwidth.png";
248    set icon_z17;
249}
250node[traffic_sign][maxlength] {
251    icon-image: "vehicle/restriction/maxlength.png";
252    set icon_z17;
253}
254node[traffic_sign][minspeed] {
255    icon-image: "vehicle/restriction/minspeed.png";
256    set icon_z17;
257}
258node[traffic_sign][maxstay],
259node[traffic_sign][toll] {
260    icon-image: "misc/no_icon.png";
261    set icon_z17;
262}
263
264/*****************************/
265/* building/entrance/address */
266/*****************************/
267
268node["addr:housenumber"],
269node["addr:postcode"] {
270    icon-image: "misc/housenumber.png";
271    set icon_z17;
272    text: auto;
273}
274way["addr:interpolation"=odd] {
275    width: 1;
276    color: address#1C86EE;
277    dashes: 15,4;
278}
279way["addr:interpolation"=even] {
280    width: 1;
281    color: address#1C86EE;
282    dashes: 4,4;
283}
284way["addr:interpolation"=all],
285way["addr:interpolation"=alphabetic] {
286    width: 1;
287    color: address#1C86EE;
288    dashes: 2,2;
289}
290area[building][!building?!] {
291    fill-color: building#cb9999;
292}
293area[building:part][!building:part?!] {
294    fill-color: buildingpart#dcbbbb;
295}
296node[building][!building?!] {
297    icon-image: "misc/landmark/building.png";
298    set icon_z17;
299    text: auto;
300}
301node[building=garage] {
302    icon-image: "misc/landuse/garages.png";
303    set icon_z17;
304    text: auto;
305}
306node[building=garages] {
307    icon-image: "misc/landuse/garages.png";
308    set icon_z17;
309    text: auto;
310}
311node[entrance=yes] {
312    icon-image: "misc/entrance-yes.png";
313    set icon_z17;
314    text: auto;
315}
316node[entrance=main] {
317    icon-image: "misc/entrance-main.png";
318    set icon_z17;
319    text: auto;
320}
321node[entrance=service] {
322    icon-image: "misc/entrance-service.png";
323    set icon_z17;
324    text: auto;
325}
326node[entrance=exit] {
327    icon-image: "misc/entrance-exit.png";
328    set icon_z17;
329    text: auto;
330}
331node[entrance=emergency] {
332    icon-image: "misc/entrance-emergency.png";
333    set icon_z17;
334    text: auto;
335}
336node[building=entrance],
337node[building:part] {
338    icon-image: "misc/deprecated.png";
339    set icon_z17;
340    text: auto;
341}
342
343/****************/
344/* barrier tags */
345/****************/
346
347way[barrier=bollard] {
348    width: 2;
349    color: barrier#F0F050;
350    dashes: 3,9;
351}
352node[barrier=bollard] {
353    icon-image: "presets/bollard.png";
354    icon-width: 16;
355    set icon_z17;
356    text: auto;
357}
358node[barrier=gate] {
359    icon-image: "vehicle/gate.png";
360    set icon_z17;
361    text: auto;
362}
363way[barrier=yes],
364way[barrier=hedge],
365way[barrier=fence],
366way[barrier=wall],
367way[barrier=guard_rail],
368way[barrier=city_wall],
369way[barrier=retaining_wall],
370way[barrier=block],
371way[barrier=chain],
372way[barrier=ditch],
373way[barrier=kerb] {
374    width: 2;
375    color: barrier#F0F050;
376}
377way[barrier=retaining_wall],
378way[barrier=kerb] {
379    repeat-image: "misc/cliff-pattern.png";
380    repeat-image-align: top;
381}
382node[barrier=hedge],
383node[barrier=wall],
384node[barrier=guard_rail],
385node[barrier=city_wall],
386node[barrier=retaining_wall],
387node[barrier=ditch] {
388    icon-image: "misc/deprecated.png";
389    set icon_z17;
390    text: auto;
391}
392node[barrier=kerb] {
393    icon-image: "vehicle/kerb.svg";
394    set icon_z17;
395    text: auto;
396}
397node[barrier=block] {
398    icon-image: "vehicle/block.svg";
399    set icon_z17;
400    text: auto;
401}
402node[barrier=chain] {
403    icon-image: "vehicle/chain.svg";
404    set icon_z17;
405    text: auto;
406}
407node[barrier=stile] {
408    icon-image: "vehicle/stile.svg";
409    set icon_z17;
410    text: auto;
411}
412node[barrier=turnstile] {
413    icon-image: "vehicle/turnstile.png";
414    set icon_z17;
415    text: auto;
416}
417node[barrier=cycle_barrier] {
418    icon-image: "vehicle/cycle_barrier.png";
419    set icon_z17;
420    text: auto;
421}
422node[barrier=lift_gate] {
423    icon-image: "vehicle/lift_gate.png";
424    set icon_z17;
425    text: auto;
426}
427node[barrier=swing_gate] {
428    icon-image: "vehicle/swing_gate.png";
429    set icon_z17;
430    text: auto;
431}
432area[barrier=toll_booth]:closed {
433    fill-color: barrier#F0F050;
434}
435node[barrier=toll_booth] {
436    icon-image: "vehicle/toll_booth.png";
437    set icon_z17;
438    text: auto;
439}
440node[barrier=entrance] {
441    icon-image: "vehicle/entrance.png";
442    set icon_z17;
443    text: auto;
444}
445node[barrier=cattle_grid] {
446    icon-image: "vehicle/cattle_grid.png";
447    set icon_z17;
448    text: auto;
449}
450node[barrier=border_control] {
451    icon-image: "vehicle/border_control.png";
452    set icon_z17;
453    text: auto;
454}
455node[barrier=sally_port] {
456    icon-image: "vehicle/sally_port.png";
457    set icon_z17;
458    text: auto;
459}
460node[barrier=spikes] {
461    icon-image: "vehicle/spikes.svg";
462    set icon_z17;
463    text: auto;
464}
465node[barrier=fence],
466node[barrier=kissing_gate],
467node[barrier=bump_gate],
468node[barrier=portcullis],
469node[barrier=bus_trap],
470node[barrier=drawbridge],
471node[barrier=hampshire_gate] {
472    icon-image: "misc/no_icon.png";
473    set icon_z17;
474    text: auto;
475}
476
477/****************/
478/* highway tags */
479/****************/
480
481way[motorroad=yes]::core_motorroad {
482    major-z-index: 2;
483    z-index: -1;
484    width: +4;
485    color: motorroad#3377ff;
486}
487way[highway=motorway] {
488    width: 3;
489    color: motorway#809bc0;
490}
491way[highway=motorway_link] {
492    width: 3;
493    color: motorway#809bc0;
494}
495way[highway=trunk] {
496    width: 3;
497    color: trunk#7fc97f;
498}
499way[highway=trunk_link] {
500    width: 3;
501    color: trunk#7fc97f;
502}
503way[highway=primary] {
504    width: 3;
505    color: primary#fb805f;
506}
507way[highway=primary_link] {
508    width: 3;
509    color: primary#fb805f;
510}
511way[highway=secondary] {
512    width: 3;
513    color: secondary#fdbf6f;
514}
515way[highway=secondary_link] {
516    width: 3;
517    color: secondary#fdbf6f;
518}
519way[highway=tertiary] {
520    width: 2;
521    color: tertiary#f7f496;
522}
523way[highway=tertiary_link] {
524    width: 2;
525    color: tertiary#f7f496;
526}
527way[highway=unclassified] {
528    width: 2;
529    color: street#c0c0c0;
530}
531way[highway=escape] {
532    width: 3;
533    color: street#c0c0c0;
534    dashes: 3,3;
535}
536way[highway=road] {
537    width: 2;
538    casing-width: 0.5;
539    casing-color: #ff9696;
540    color: #770000;
541}
542way[highway=track][area?], relation[type=multipolygon][highway=track] {
543    fill-color: highway_track#6e541c;
544}
545way[highway=track] {
546    width: 2;
547    color: highway_track#6e541c;
548}
549way[highway=residential] {
550    width: 2;
551    color: street#c0c0c0;
552}
553way[highway=living_street] {
554    width: 2;
555    dashes: 9,9;
556    dashes-background-color: livingdashed#00ff00;
557    color: street#c0c0c0;
558}
559way[highway=service][area?], relation[type=multipolygon][highway=service] {
560    fill-color: service#809bc0;
561}
562way[highway=service][!area?] {
563    width: 1;
564    color: service#809bc0;
565}
566way[highway=bridleway] {
567    width: 1;
568    color: horse#a18559;
569}
570way[highway=cycleway] {
571    width: 1;
572    color: bicycle#b100ff;
573}
574way[highway=footway][area?], relation[type=multipolygon][highway=footway] {
575    fill-color: foot#00ff00;
576}
577way[highway=footway][!area?] {
578    width: 1;
579    color: foot#00ff00;
580}
581way[highway=path][bicycle!=designated][bicycle!=official][foot!=designated][foot!=official] {
582    width: 1;
583    dashes: 9,9;
584    color: foot#00ff00;
585}
586/* display path with bicycle/foot=designated/official as if it was cycleway/footway */
587way[highway=path][bicycle=designated],
588way[highway=path][bicycle=official] {
589    width: 1;
590    color: bicycle#b100ff;
591}
592way[highway=path][foot=designated],
593way[highway=path][foot=official] {
594    width: 1;
595    color: foot#00ff00;
596}
597way[highway=path][bicycle=designated][foot=designated],
598way[highway=path][bicycle=official][foot=official] {
599    width: 1;
600    color: bicycle#b100ff;
601    dashes: 14,14;
602    dashes-background-color: foot#00ff00;
603}
604way[highway=cycleway][foot=yes],
605way[highway=path][bicycle=designated][foot=yes],
606way[highway=path][bicycle=official][foot=yes] {
607    width: 1;
608    color: bicycle#b100ff;
609    dashes: 21,7;
610    dashes-background-color: foot#00ff00;
611}
612way[highway=footway][bicycle=yes],
613way[highway=path][bicycle=yes][foot=designated],
614way[highway=path][bicycle=yes][foot=official] {
615    width: 1;
616    color: foot#00ff00;
617    dashes: 21,7;
618    dashes-background-color: bicycle#b100ff;
619}
620way[highway=pedestrian][area?], relation[type=multipolygon][highway=pedestrian] {
621    width: 3;
622    color: foot#00ff00;
623    fill-color: foot#00ff00;
624}
625way[highway=pedestrian] {
626    width: 3;
627    color: foot#00ff00;
628}
629way[highway=steps] {
630    width: 3;
631    color: foot#00ff00;
632    dashes: 2,2;
633}
634node[highway=steps] {
635    icon-image: "transport/steps.png";
636    set icon_z17;
637    text: auto;
638}
639way[highway=bus_guideway] {
640    width: 1;
641    color: rail#404040;
642    dashes: 9,9;
643}
644way[highway=raceway] {
645    width: 1;
646    color: raceway#ff80ff;
647}
648way[highway=raceway][area?], relation[type=multipolygon][highway=raceway] {
649    fill-color: raceway#ff80ff;
650}
651area[junction=yes] {
652    fill-color: junction#c0c0c0;
653}
654node[junction=yes] {
655    icon-image: "misc/no_icon.png";
656    set icon_z17;
657    text: auto;
658}
659node[highway=traffic_mirror] {
660    icon-image: "vehicle/traffic_mirror.svg";
661    set icon_z17;
662    text: auto;
663}
664node[direction=clockwise] {
665    icon-image: "vehicle/restriction/roundabout_left.png";
666    set icon_z17;
667    text: auto;
668}
669node[highway=mini_roundabout] {
670    icon-image: "vehicle/restriction/roundabout_left.png";
671    set icon_z17;
672    text: auto;
673}
674node:righthandtraffic[highway=mini_roundabout] {
675    icon-image: "vehicle/restriction/roundabout_right.png";
676    set icon_z17;
677}
678node[highway=stop] {
679    icon-image: "vehicle/restriction/stop.png";
680    set icon_z17;
681    text: auto;
682}
683node[highway=give_way] {
684    icon-image: "vehicle/restriction/right_of_way.png";
685    set icon_z17;
686    text: auto;
687}
688node[highway=traffic_signals] {
689    icon-image: "vehicle/traffic_signals.svg";
690    set icon_z17;
691    text: auto;
692}
693node[highway=traffic_signals][crossing][crossing!=no] {
694    icon-image: "vehicle/traffic_signals_crossing.svg";
695    set icon_z17;
696    text: auto;
697}
698node[highway=traffic_signals][crossing_ref=zebra] {
699    icon-image: "vehicle/traffic_signals_crossing_ref_zebra.svg";
700    set icon_z17;
701    text: auto;
702}
703node[highway=traffic_signals][crossing=island] {
704    icon-image: "vehicle/traffic_signals_crossing_island.svg";
705    set icon_z17;
706    text: auto;
707}
708node[highway=traffic_signals][crossing=traffic_signals] {
709    icon-image: "vehicle/traffic_signals_crossing_traffic_signals.svg";
710    set icon_z17;
711    text: auto;
712}
713node[highway=street_lamp] {
714    icon-image: "misc/streetlamp.png";
715    set icon_z17;
716    text: auto;
717}
718node[highway=speed_camera] {
719    icon-image: "vehicle/restriction/speed_trap.png";
720    set icon_z17;
721    text: auto;
722}
723relation[type=enforcement] >[role="device"] node {
724    icon-image: "vehicle/restriction/speed_trap.png";
725    set icon_z17;
726    text: auto;
727}
728node[traffic_sign=city_limit] {
729    icon-image: "vehicle/restriction/citylimit.png";
730    set icon_z17;
731    text: auto;
732}
733node[highway=crossing] {
734    icon-image: "vehicle/crossing.svg";
735    set icon_z17;
736    text: auto;
737}
738node[highway=crossing][crossing=unmarked] {
739    icon-image: "vehicle/crossing_unmarked.svg";
740    set icon_z17;
741    text: auto;
742}
743node[highway=crossing][crossing=island] {
744    icon-image: "vehicle/crossing_island.svg";
745    set icon_z17;
746    text: auto;
747}
748node[highway=crossing][crossing_ref=zebra] {
749    icon-image: "vehicle/crossing_ref_zebra.svg";
750    set icon_z17;
751    text: auto;
752}
753node[highway=crossing][crossing=traffic_signals] {
754    icon-image: "vehicle/crossing_traffic_signals.svg";
755    set icon_z17;
756    text: auto;
757}
758node[highway=incline], node[highway=incline_steep] {
759    icon-image: "vehicle/restriction/incline.png";
760    set icon_z17;
761    text: auto;
762}
763node[highway=motorway_junction] {
764    icon-image: "vehicle/motorway_junction.svg";
765    set icon_z17;
766    text: auto;
767}
768area[highway=services] {
769    fill-color: services#c0c0c0;
770}
771node[highway=services] {
772    icon-image: "vehicle/services.png";
773    set icon_z17;
774    text: auto;
775}
776area[highway=rest_area] {
777    fill-color: services#c0c0c0;
778}
779node[highway=rest_area] {
780    icon-image: "vehicle/parking.png";
781    set icon_z17;
782    text: auto;
783}
784node[highway=ford], node[ford?] {
785    icon-image: "vehicle/ford.png";
786    set icon_z17;
787    text: auto;
788}
789way[ford?]::core_ford {
790    z-index: 1;
791    width: 2;
792    color: water#0000ff;
793    dashes: 9,9;
794}
795area[highway=platform]:closed {
796    fill-color: highway_platform#c0c0c0;
797}
798way[highway=platform] {
799    width: 2;
800    color: highway_platform#c0c0c0;
801}
802node[highway=turning_circle] {
803    icon-image: "vehicle/turning_circle.png";
804    set icon_z17;
805    text: auto;
806}
807node[highway=turning_loop] {
808    icon-image: "vehicle/turning_loop.png";
809    set icon_z17;
810    text: auto;
811}
812node[highway=passing_place] {
813    icon-image: "vehicle/passing_place.png";
814    set icon_z17;
815    text: auto;
816}
817area[highway=elevator] {
818    fill-color: elevator#a6bace;
819}
820node[highway=elevator] {
821    icon-image: "service/elevator.png";
822    set icon_z17;
823    text: auto;
824}
825way[highway=construction] {
826    width: 2;
827    color: construction#ffff00;
828    dashes: 9,9;
829}
830node[highway=construction] {
831    icon-image: "misc/construction.png";
832    set icon_z17;
833    text: auto;
834}
835area[highway=emergency_access_point] {
836    fill-color: emergency_access_point#c0c0c0;
837}
838node[highway=emergency_access_point] {
839    icon-image: "service/emergency_access_point.png";
840    set icon_z17;
841    text: auto;
842}
843node[highway=motorway], node[highway=motorway_link],
844node[highway=trunk], node[highway=trunk_link],
845node[highway=primary], node[highway=primary_link],
846node[highway=secondary], node[highway=secondary_link],
847node[highway=tertiary], node[highway=tertiary_link],
848node[highway=unclassified],
849node[highway=road],
850node[highway=unsurfaced],
851node[highway=track],
852node[highway=residential],
853node[highway=living_street],
854node[highway=service],
855node[highway=bridleway],
856node[highway=cycleway],
857node[highway=footway],
858node[highway=path],
859node[highway=pedestrian],
860node[highway=bus_guideway],
861node[highway=platform] {
862    icon-image: "misc/deprecated.png";
863    set icon_z17;
864    text: auto;
865}
866
867/************************/
868/* traffic_calming tags */
869/************************/
870
871node[traffic_calming] {
872    icon-image: "vehicle/traffic_calming_blue.png";
873    set icon_z17;
874    text: auto;
875}
876node[traffic_calming=chicane] {
877    icon-image: "vehicle/chicane.png";
878    set icon_z17;
879    text: auto;
880}
881node[traffic_calming=choker],
882node[traffic_calming=cushion] {
883    icon-image: "vehicle/passing_place.png";
884    set icon_z17;
885    text: auto;
886}
887
888/****************/
889/* junction tag */
890/****************/
891
892node[junction=roundabout] {
893    icon-image: "vehicle/restriction/roundabout_left.png";
894    set icon_z17;
895    text: auto;
896}
897node:righthandtraffic[junction=roundabout] {
898    icon-image: "vehicle/restriction/roundabout_right.png";
899    set icon_z17;
900}
901
902/*****************/
903/* cycleway tags */
904/*****************/
905
906way[oneway?][cycleway=lane]:righthandtraffic::core_cycleway,
907way[oneway=-1][cycleway=opposite_lane]:righthandtraffic::core_cycleway {
908    set lR;
909    set righthandtr;
910}
911way[oneway?][cycleway=opposite_lane]:righthandtraffic::core_cycleway,
912way[oneway=-1][cycleway=lane]:righthandtraffic::core_cycleway {
913    set lL;
914    set righthandtr;
915}
916way[oneway?][cycleway=lane]!.righthandtr::core_cycleway,
917way[oneway=-1][cycleway=opposite_lane]!.righthandtr::core_cycleway {
918    set lL;
919}
920way[oneway?][cycleway=opposite_lane]!.righthandtr::core_cycleway,
921way[oneway=-1][cycleway=lane]!.righthandtr::core_cycleway {
922    set lR;
923}
924way[cycleway:left=lane]::core_cycleway {
925    set lL;
926}
927way[cycleway:right=lane]::core_cycleway {
928    set lR;
929}
930way[oneway=no][cycleway=lane]::core_cycleway,
931way[!oneway][cycleway=lane]::core_cycleway {
932    set lL;
933    set lR;
934}
935
936way[oneway?][cycleway=track]:righthandtraffic::core_cycleway,
937way[oneway=-1][cycleway=opposite_track]:righthandtraffic::core_cycleway {
938    set tR;
939    set righthandtr;
940}
941way[oneway?][cycleway=opposite_track]:righthandtraffic::core_cycleway,
942way[oneway=-1][cycleway=track]:righthandtraffic::core_cycleway {
943    set tL;
944    set righthandtr;
945}
946way[oneway?][cycleway=track]!.righthandtr::core_cycleway,
947way[oneway=-1][cycleway=opposite_track]!.righthandtr::core_cycleway {
948    set tL;
949}
950way[oneway?][cycleway=opposite_track]!.righthandtr::core_cycleway,
951way[oneway=-1][cycleway=track]!.righthandtr::core_cycleway {
952    set tR;
953}
954way[cycleway:left=track]::core_cycleway {
955    set tL;
956}
957way[cycleway:right=track]::core_cycleway {
958    set tR;
959}
960way[oneway=no][cycleway=track]::core_cycleway,
961way[!oneway][cycleway=track]::core_cycleway {
962    set tL;
963    set tR;
964}
965
966way.lR::core_cycleway {
967    width: 2;
968    color: bicycle#b100ff;
969    dashes: 6, 10;
970    offset: 0 - (prop("width", "default") / 2) - 2;
971    major-z-index: 2.1;
972    modifier: true;
973}
974way[prop("lL","core_cycleway")]::core_cycleway2 {
975    width: 2;
976    color: bicycle#b100ff;
977    dashes: 6, 10;
978    offset: (prop("width", "default") / 2) + 2;
979    major-z-index: 2.1;
980    modifier: true;
981}
982way.tR::core_cycleway {
983    width: 2;
984    color: bicycle#b100ff;
985    dashes: 25, 8;
986    offset: 0 - (prop("width", "default") / 2) - 2;
987    major-z-index: 2.1;
988    modifier: true;
989}
990way[prop("tL","core_cycleway")]::core_cycleway2 {
991    width: 2;
992    color: bicycle#b100ff;
993    dashes: 25, 8;
994    offset: (prop("width", "default") / 2) + 2;
995    major-z-index: 2.1;
996    modifier: true;
997}
998
999way[cycleway=opposite]::core_cycleway {
1000    object-z-index: 1;
1001    width: +0;
1002    color: bicycle#b100ff;
1003    dashes: 4,10;
1004}
1005node[cycleway=lane], node[cycleway=opposite_lane],
1006node[cycleway=track], node[cycleway=opposite_track],
1007node[cycleway=opposite] {
1008    icon-image: "misc/deprecated.png";
1009    set icon_z17;
1010    text: auto;
1011}
1012
1013/******************/
1014/* tracktype tags */
1015/******************/
1016
1017way[highway=track][tracktype=grade1] {
1018    dashes: 8,1;
1019}
1020way[highway=track][tracktype=grade2] {
1021    dashes: 6,2;
1022}
1023way[highway=track][tracktype=grade3] {
1024    dashes: 4,3;
1025}
1026way[highway=track][tracktype=grade4] {
1027    dashes: 4,5;
1028}
1029way[highway=track][tracktype=grade5] {
1030    dashes: 4,7;
1031}
1032
1033/**************/
1034/* piste tags */
1035/**************/
1036
1037way[route=ski]::core_piste {
1038    z-index: -1;
1039    modifier: false;
1040    width: 6;
1041    color: ski#809bc0;
1042}
1043area[piste:difficulty=easy][!highway]:closed::core_piste {
1044    fill-color: piste_easy#0000ff;
1045}
1046way[piste:difficulty=easy]::core_piste {
1047    z-index: -1; /* below line style from highway=* tag */
1048    modifier: false; /* suppress default line if there is no style on default layer */
1049    width: 6;
1050    color: piste_easy#0000ff;
1051}
1052area[piste:difficulty=intermediate][!highway]:closed::core_piste {
1053    fill-color: piste_intermediate#ff0000;
1054}
1055way[piste:difficulty=intermediate]::core_piste {
1056    z-index: -1;
1057    modifier: false;
1058    width: 6;
1059    color: piste_intermediate#ff0000;
1060}
1061area[piste:difficulty=advanced][!highway]:closed::core_piste {
1062    fill-color: piste_advanced#606060;
1063}
1064way[piste:difficulty=advanced]::core_piste {
1065    z-index: -1;
1066    modifier: false;
1067    width: 6;
1068    color: piste_advanced#606060;
1069}
1070area[piste:difficulty=expert][!highway]:closed::core_piste {
1071    fill-color: piste_expert#606060;
1072}
1073way[piste:difficulty=expert]::core_piste {
1074    z-index: -1;
1075    modifier: false;
1076    width: 6;
1077    color: piste_expert#606060;
1078}
1079area[piste:difficulty=freeride][!highway]:closed::core_piste {
1080    fill-color: piste_freeride#ffff00;
1081}
1082way[piste:difficulty=freeride]::core_piste {
1083    z-index: -1;
1084    modifier: false;
1085    width: 6;
1086    color: piste_freeride#ffff00;
1087}
1088area[piste:difficulty=novice][!highway]:closed::core_piste {
1089    fill-color: piste_novice#00ff00;
1090}
1091way[piste:difficulty=novice]::core_piste {
1092    z-index: -1;
1093    modifier: false;
1094    width: 6;
1095    color: piste_novice#00ff00;
1096}
1097node[piste:type=downhill],
1098node[piste:type=nordic],
1099node[piste:type=skitour],
1100node[piste:type=sled],
1101node[piste:type=sleigh],
1102node[piste:type=snow_park] {
1103    icon-image: "sport/skiing.png";
1104    set icon_z17;
1105}
1106
1107/**************/
1108/* power tags */
1109/**************/
1110
1111node[power=tower] {
1112    icon-image: "misc/landmark/power/tower_small.png";
1113    set icon_z17;
1114    text: auto;
1115}
1116node[power=pole] {
1117    icon-image: "misc/landmark/power/pole.png";
1118    set icon_z17;
1119    text: auto;
1120}
1121way[power=line],
1122way[power=minor_line] {
1123    width: 1;
1124    color: power#eeeeee;
1125}
1126way[power=cable] {
1127    width: 1;
1128    color: power#eeeeee;
1129    dashes: 9,9;
1130}
1131node[power=plant],
1132node[power=sub_station],
1133node[power=line],
1134node[power=cable],
1135node[power=minor_line] {
1136    icon-image: "misc/deprecated.png";
1137    set icon_z17;
1138    text: auto;
1139}
1140area[power=plant],
1141area[power=substation],
1142area[power=transformer],
1143area[power=compensator],
1144area[power=converter],
1145area[power=generator] {
1146    fill-color: power#eeeeee;
1147}
1148node[power=cable_distribution_cabinet],
1149node[power=generator] {
1150    icon-image: "misc/landmark/power.png";
1151    set icon_z17;
1152    text: auto;
1153}
1154node[power=substation] {
1155    icon-image: "icons/power_substation.n.16.png";
1156    set icon_z17;
1157    text: auto;
1158}
1159node[power=transformer] {
1160    icon-image: "misc/landmark/power/transformer.png";
1161    icon-width: 16;
1162    set icon_z17;
1163    text: auto;
1164}
1165
1166/*************************/
1167/* generator:source tags */
1168/*************************/
1169
1170area[generator:source=nuclear],
1171area[generator:source=wind],
1172area[generator:source=hydro],
1173area[generator:source=tidal],
1174area[generator:source=wave],
1175area[generator:source=osmotic],
1176area[generator:source=geothermal],
1177area[generator:source=solar],
1178area[generator:source=coal],
1179area[generator:source=gas],
1180area[generator:source=biomass],
1181area[generator:source=biofuel],
1182area[generator:source=biogas],
1183area[generator:source=oil],
1184area[generator:source=diesel],
1185area[generator:source=gasoline],
1186area[generator:source=waste] {
1187    fill-color: power#eeeeee;
1188}
1189node[generator:source=nuclear] {
1190    icon-image: "presets/power_source-nuclear.svg";
1191    set icon_z17;
1192    text: auto;
1193}
1194node[generator:source=wind] {
1195    icon-image: "presets/power_source-wind.svg";
1196    set icon_z17;
1197    text: auto;
1198}
1199node[generator:source=hydro],
1200node[generator:source=tidal],
1201node[generator:source=wave],
1202node[generator:source=osmotic] {
1203    icon-image: "presets/power_source-water.svg";
1204    set icon_z17;
1205    text: auto;
1206}
1207node[generator:source=geothermal] {
1208    icon-image: "presets/power_source-geothermal.svg";
1209    set icon_z17;
1210    text: auto;
1211}
1212node[generator:source=solar] {
1213    icon-image: "presets/power_source-sun.svg";
1214    set icon_z17;
1215    text: auto;
1216}
1217node[generator:source=coal] {
1218    icon-image: "presets/power_source-coal.svg";
1219    set icon_z17;
1220    text: auto;
1221}
1222node[generator:source=gas] {
1223    icon-image: "presets/power_source-gas.svg";
1224    set icon_z17;
1225    text: auto;
1226}
1227node[generator:source=biomass],
1228node[generator:source=biofuel],
1229node[generator:source=biogas] {
1230    icon-image: "presets/power_source-biofuel.svg";
1231    set icon_z17;
1232    text: auto;
1233}
1234node[generator:source=oil],
1235node[generator:source=diesel],
1236node[generator:source=gasoline] {
1237    icon-image: "presets/power_source-oil.svg";
1238    set icon_z17;
1239    text: auto;
1240}
1241node[generator:source=waste] {
1242    icon-image: "presets/power_source-waste.svg";
1243    set icon_z17;
1244    text: auto;
1245}
1246node[power_source] {
1247    icon-image: "misc/deprecated.png";
1248    set icon_z17;
1249    text: auto;
1250}
1251/*****************/
1252/* man_made tags */
1253/*****************/
1254
1255area[man_made=beacon],
1256area[man_made=bridge],
1257area[bridge:support],
1258area[man_made=chimney],
1259area[man_made=crane],
1260area[man_made=gasometer],
1261area[man_made=storage_tank],
1262area[man_made=bunker_silo],
1263area[man_made=lighthouse],
1264area[man_made=monitoring_station],
1265area[man_made=mineshaft] {
1266    fill-color: manmade#d8d8d8;
1267}
1268node[man_made=beacon] {
1269    icon-image: "misc/landmark/beacon.png";
1270    set icon_z17;
1271    text: auto;
1272}
1273node[man_made=bridge] {
1274    icon-image: "misc/deprecated.png";
1275    set icon_z17;
1276    text: auto;
1277}
1278node[bridge:support] {
1279    icon-image: "transport/bridge/support.svg";
1280    set icon_z17;
1281    text: auto;
1282}
1283node[man_made=chimney] {
1284    icon-image: "misc/landmark/chimney.png";
1285    set icon_z17;
1286    text: auto;
1287}
1288node[man_made=crane] {
1289    icon-image: "misc/landmark/crane.png";
1290    set icon_z17;
1291    text: auto;
1292}
1293node[man_made=flagpole] {
1294    icon-image: "misc/flag.png";
1295    set icon_z17;
1296    text: auto;
1297}
1298node[man_made=gasometer] {
1299    icon-image: "presets/gasometer.png";
1300    icon-width: 16;
1301    set icon_z17;
1302    text: auto;
1303}
1304node[man_made=storage_tank] {
1305    icon-image: "presets/storage_tank.png";
1306    icon-width: 16;
1307    set icon_z17;
1308    text: auto;
1309}
1310node[man_made=bunker_silo] {
1311    icon-image: "bunker_silo.svg";
1312    set icon_z17;
1313    text: auto;
1314}
1315area[man_made=groyne]:closed {
1316    fill-color: manmade#d8d8d8;
1317}
1318way[man_made=groyne] {
1319    width: 2;
1320    color: manmade#d8d8d8;
1321}
1322area[man_made=breakwater]:closed {
1323    fill-color: manmade#d8d8d8;
1324}
1325way[man_made=breakwater] {
1326    width: 2;
1327    color: manmade#d8d8d8;
1328}
1329node[man_made=lighthouse] {
1330    icon-image: "misc/landmark/lighthouse.png";
1331    set icon_z17;
1332    text: auto;
1333}
1334node[man_made=monitoring_station] {
1335    icon-image: "misc/landmark/measurement_station.png";
1336    set icon_z17;
1337    text: auto;
1338}
1339node[man_made=mineshaft] {
1340    icon-image: "misc/landmark/mine.png";
1341    set icon_z17;
1342    text: auto;
1343}
1344node[man_made=adit] {
1345    icon-image: "misc/landmark/adit.png";
1346    set icon_z17;
1347    text: auto;
1348}
1349area[man_made=pier]:closed {
1350    fill-color: pier#660000;
1351}
1352way[man_made=pier] {
1353    width: 2;
1354    color: pier#660000;
1355}
1356node[man_made=pier] {
1357    icon-image: "nautical/pier.png";
1358    set icon_z17;
1359    text: auto;
1360}
1361way[embankment?][!highway][!railway][!waterway],
1362way[man_made=embankment][!highway][!railway][!waterway] {
1363    repeat-image: "misc/embankment-pattern.png";
1364    repeat-image-align: top;
1365    width: 1;
1366    color: embankment#c14d00;
1367}
1368way[embankment?][highway],
1369way[embankment?][railway],
1370way[embankment?][waterway],
1371way[man_made=embankment][highway],
1372way[man_made=embankment][railway],
1373way[man_made=embankment][waterway] {
1374    repeat-image: "misc/embankment-pattern-centered.png";
1375}
1376way[man_made=pipeline] {
1377    width: 2;
1378    color: pipeline#660000;
1379}
1380node[man_made=breakwater],
1381node[man_made=groyne],
1382node[man_made=embankment],
1383node[man_made=pipeline] {
1384    icon-image: "misc/deprecated.png";
1385    set icon_z17;
1386    text: auto;
1387}
1388node[man_made=petroleum_well] {
1389    icon-image: "misc/no_icon.png";
1390    set icon_z17;
1391    text: auto;
1392}
1393area[man_made=reservoir_covered],
1394area[man_made=surveillance],
1395area[man_made=tower],
1396area[man_made=wastewater_plant],
1397area[man_made=watermill],
1398area[man_made=water_tower],
1399area[man_made=water_well],
1400area[man_made=windmill],
1401area[man_made=works],
1402area[man_made=water_works] {
1403    fill-color: manmade#d8d8d8;
1404}
1405node[man_made=reservoir_covered] {
1406    icon-image: "misc/landmark/reservoir_covered.png";
1407    set icon_z17;
1408    text: auto;
1409}
1410node[man_made=surveillance] {
1411    icon-image: "presets/surveillance.png";
1412    icon-width: 16;
1413    set icon_z17;
1414    text: auto;
1415}
1416node[man_made=survey_point] {
1417    icon-image: "misc/landmark/survey_point.png";
1418    set icon_z17;
1419    text: auto;
1420}
1421node[man_made=tower] {
1422    icon-image: "misc/landmark/tower.png";
1423    set icon_z17;
1424    text: auto;
1425}
1426node[man_made=wastewater_plant] {
1427    icon-image: "misc/landmark/wastewater_plant.png";
1428    set icon_z17;
1429    text: auto;
1430}
1431node[man_made=watermill] {
1432    icon-image: "misc/landmark/watermill.png";
1433    set icon_z17;
1434    text: auto;
1435}
1436node[man_made=water_tower] {
1437    icon-image: "misc/landmark/water_tower.png";
1438    set icon_z17;
1439    text: auto;
1440}
1441node[man_made=water_well] {
1442    icon-image: "misc/landmark/water_well.png";
1443    set icon_z17;
1444    text: auto;
1445}
1446node[man_made=windmill] {
1447    icon-image: "misc/landmark/windmill.png";
1448    set icon_z17;
1449    text: auto;
1450}
1451node[man_made=works] {
1452    icon-image: "misc/landmark/works.png";
1453    set icon_z17;
1454    text: auto;
1455}
1456node[man_made=water_works] {
1457    icon-image: "misc/landmark/water_works.png";
1458    set icon_z17;
1459    text: auto;
1460}
1461way[man_made=cutline] {
1462    width: 2;
1463    color: cutline#99ff55;
1464}
1465node[man_made=cutline] {
1466    icon-image: "misc/deprecated.png";
1467    set icon_z17;
1468    text: auto;
1469}
1470
1471/***************/
1472/* office tags */
1473/***************/
1474
1475area[office=company],
1476area[office=government] {
1477    fill-color: office#de5696;
1478}
1479node[office=company] {
1480    icon-image: "icons/office_blue.png";
1481    set icon_z17;
1482    text: auto;
1483}
1484node[office=government] {
1485    icon-image: "icons/office_pink.png";
1486    set icon_z17;
1487    text: auto;
1488}
1489
1490/****************/
1491/* leisure tags */
1492/****************/
1493
1494area[leisure=sports_centre],
1495area[leisure=golf_course],
1496area[leisure=stadium],
1497area[leisure=horse_riding],
1498area[leisure=water_park] {
1499    fill-color: leisure#c7f1a3;
1500}
1501node[leisure=sports_centre] {
1502    icon-image: "sport/centre.png";
1503    set icon_z17;
1504    text: auto;
1505}
1506node[leisure=golf_course] {
1507    icon-image: "sport/golf.svg";
1508    set icon_z17;
1509    text: auto;
1510}
1511node[leisure=stadium] {
1512    icon-image: "sport/stadium.png";
1513    set icon_z17;
1514    text: auto;
1515}
1516node[leisure=horse_riding] {
1517    icon-image: "presets/equestrian.png";
1518    icon-width: 16;
1519    set icon_z17;
1520    text: auto;
1521}
1522node[leisure=water_park] {
1523    icon-image: "leisure/water_park.png";
1524    set icon_z17;
1525    text: auto;
1526}
1527area[leisure=track][!area?!]:closed {
1528    fill-color: leisuretrack#d4f4b9;
1529}
1530way[leisure=track] {
1531    width: 2;
1532    color: leisuretrack#d4f4b9;
1533}
1534node[leisure=track] {
1535    icon-image: "sport/track.png";
1536    set icon_z17;
1537    text: auto;
1538}
1539area[leisure=pitch] {
1540    fill-color: pitch#baee8d;
1541}
1542node[leisure=pitch] {
1543    icon-image: "sport/pitch.png";
1544    set icon_z17;
1545    text: auto;
1546}
1547area[leisure=marina] {
1548    fill-color: marina#0070cf;
1549}
1550node[leisure=marina] {
1551    icon-image: "nautical/marina.png";
1552    set icon_z17;
1553    text: auto;
1554}
1555way[leisure=slipway] {
1556    width: 2;
1557    color: leisure#c7f1a3;
1558}
1559node[leisure=slipway] {
1560    icon-image: "nautical/slipway.png";
1561    set icon_z17;
1562    text: auto;
1563}
1564area[leisure=fishing],
1565area[leisure=nature_reserve],
1566area[leisure=park],
1567area[leisure=playground],
1568area[leisure=garden],
1569area[leisure=common],
1570area[leisure=firepit] {
1571    fill-color: leisure#c7f1a3;
1572}
1573node[leisure=fishing] {
1574    icon-image: "sport/fishing.png";
1575    set icon_z17;
1576    text: auto;
1577}
1578node[leisure=nature_reserve] {
1579    icon-image: "leisure/nature_reserve.png";
1580    set icon_z17;
1581    text: auto;
1582}
1583node[leisure=park] {
1584    icon-image: "misc/deprecated.png";
1585    set icon_z17;
1586    text: auto;
1587}
1588node[leisure=playground] {
1589    icon-image: "leisure/playground.png";
1590    set icon_z17;
1591    text: auto;
1592}
1593node[leisure=garden] {
1594    icon-image: "leisure/garden.png";
1595    set icon_z17;
1596    text: auto;
1597}
1598node[leisure=common] {
1599    icon-image: "leisure/common.png";
1600    set icon_z17;
1601    text: auto;
1602}
1603node[leisure=firepit] { 
1604    icon-image: "leisure/firepit.svg"; 
1605    set icon_z17; 
1606    text: auto; 
1607}
1608node[leisure=picnic_table] {
1609    icon-image: "leisure/picnic.png";
1610    set icon_z17;
1611    text: auto;
1612}
1613area[leisure=swimming_pool] {
1614    fill-color: swimming_pool#51c4ef;
1615}
1616node[leisure=swimming_pool] {
1617    icon-image: "sport/pool.png";
1618    set icon_z17;
1619    text: auto;
1620}
1621area[leisure=miniature_golf],
1622area[leisure=dog_park],
1623area[leisure=ice_rink],
1624area[leisure=sauna] {
1625    fill-color: leisure#c7f1a3;
1626}
1627node[leisure=miniature_golf] {
1628    icon-image: "sport/miniature_golf.svg";
1629    set icon_z17;
1630    text: auto;
1631}
1632node[leisure=dog_park] {
1633    icon-image: "presets/dogpark.png";
1634    icon-width: 16;
1635    set icon_z17;
1636    text: auto;
1637}
1638node[leisure=ice_rink] {
1639    icon-image: "sport/ice_hockey.png";
1640    set icon_z17;
1641    text: auto;
1642}
1643node[leisure=sauna] {
1644    icon-image: "leisure/sauna.png";
1645    set icon_z17;
1646    text: auto;
1647}
1648
1649/********************/
1650/* advertising tags */
1651/********************/
1652
1653node[advertising=column] {
1654    icon-image: "leisure/advertising_column.svg";
1655    set icon_z17;
1656    text: auto;
1657}
1658node[advertising=billboard] {
1659    icon-image: "leisure/billboard.svg";
1660    set icon_z17;
1661    text: auto;
1662}
1663
1664/*************/
1665/* shop tags */
1666/*************/
1667
1668area[shop=supermarket],
1669area[shop=convenience],
1670area[shop=bakery],
1671area[shop=butcher],
1672area[shop=bicycle],
1673area[shop=doityourself],
1674area[shop=dry_cleaning],
1675area[shop=laundry],
1676area[shop=outdoor],
1677area[shop=kiosk],
1678area[shop=alcohol],
1679area[shop=beverages],
1680area[shop=books],
1681area[shop=boutique],
1682area[shop=car],
1683area[shop=car_dealer],
1684area[shop=car_repair],
1685area[shop=tyres],
1686area[shop=chemist],
1687area[shop=clothes],
1688area[shop=computer],
1689area[shop=confectionery],
1690area[shop=copyshop],
1691area[shop=curtain],
1692area[shop=cycle_repair],
1693area[shop=department_store],
1694area[shop=deli],
1695area[shop=electronics],
1696area[shop=erotic],
1697area[shop=furniture],
1698area[shop=fabric],
1699area[shop=florist],
1700area[shop=frame],
1701area[shop=gift],
1702area[shop=greengrocer],
1703area[shop=garden_centre],
1704area[shop=hairdresser],
1705area[shop=hardware],
1706area[shop=hearing_aids],
1707area[shop=hifi],
1708area[shop=jewelry],
1709area[shop=kitchen],
1710area[shop=mall],
1711area[shop=mobile_phone],
1712area[shop=motorcycle],
1713area[shop=musical_instrument],
1714area[shop=newsagent],
1715area[shop=optician],
1716area[shop=medical_supply],
1717area[shop=paint],
1718area[shop=pawnbroker],
1719area[shop=seafood],
1720area[shop=shoes],
1721area[shop=sports],
1722area[shop=stationery],
1723area[shop=tailor],
1724area[shop=travel_agency],
1725area[shop=toys],
1726area[shop=vacuum_cleaner],
1727area[shop=variety_store],
1728area[shop=video],
1729area[shop=bookmaker],
1730area[shop=lottery],
1731area[shop=shopping_centre],
1732area[shop=pet],
1733area[shop=ticket],
1734area[shop=interior_decoration],
1735area[shop=car_parts],
1736area[shop=video_games],
1737area[shop=bed],
1738area[shop=beauty],
1739area[shop=tea],
1740area[shop=coffee],
1741area[shop=antiques],
1742area[shop=music],
1743area[shop=funeral_directors],
1744area[shop=wine],
1745area[shop=farm],
1746area[shop=tattoo],
1747area[shop=art],
1748area[shop=bag] {
1749    fill-color: shop#00005f;
1750}
1751node[shop=supermarket] {
1752    icon-image: "shop/supermarket.png";
1753    set icon_z17;
1754    text: auto;
1755}
1756node[shop=convenience] {
1757    icon-image: "shop/convenience.png";
1758    set icon_z17;
1759    text: auto;
1760}
1761node[shop=bakery] {
1762    icon-image: "shop/groceries/bakery.png";
1763    set icon_z17;
1764    text: auto;
1765}
1766node[shop=butcher] {
1767    icon-image: "shop/groceries/butcher.png";
1768    set icon_z17;
1769    text: auto;
1770}
1771node[shop=bicycle] {
1772    icon-image: "sport/bicycle.png";
1773    set icon_z17;
1774    text: auto;
1775}
1776node[shop=doityourself] {
1777    icon-image: "shop/diy_store.png";
1778    set icon_z17;
1779    text: auto;
1780}
1781node[shop=dry_cleaning],
1782node[shop=laundry] {
1783    icon-image: "shop/laundry.png";
1784    set icon_z17;
1785    text: auto;
1786}
1787node[shop=outdoor] {
1788    icon-image: "shop/outdoor.png";
1789    set icon_z17;
1790    text: auto;
1791}
1792node[shop=kiosk] {
1793    icon-image: "shop/kiosk.png";
1794    set icon_z17;
1795    text: auto;
1796}
1797node[shop=beverages] {
1798    icon-image: "shop/beverages.png";
1799    set icon_z17;
1800    text: auto;
1801}
1802node[shop=alcohol] {
1803    icon-image: "shop/alcohol.png";
1804    set icon_z17;
1805    text: auto;
1806}
1807node[shop=books] {
1808    icon-image: "shop/book.svg";
1809    set icon_z17;
1810    text: auto;
1811}
1812node[shop=boutique] {
1813    icon-image: "shop/boutique.png";
1814    set icon_z17;
1815    text: auto;
1816}
1817node[shop=car],
1818node[shop=car_dealer] {
1819    icon-image: "vehicle.png";
1820    set icon_z17;
1821    text: auto;
1822}
1823node[shop=car_repair] {
1824    icon-image: "vehicle/repair_shop.png";
1825    set icon_z17;
1826    text: auto;
1827}
1828node[shop=tyres] {
1829    icon-image: "vehicle/tyres.png";
1830    set icon_z17;
1831    text: auto;
1832}
1833node[shop=chemist] {
1834    icon-image: "shop/chemist.png";
1835    set icon_z17;
1836    text: auto;
1837}
1838node[shop=clothes] {
1839    icon-image: "shop/clothes.png";
1840    set icon_z17;
1841    text: auto;
1842}
1843node[shop=computer] {
1844    icon-image: "shop/computer.png";
1845    set icon_z17;
1846    text: auto;
1847}
1848node[shop=confectionery] {
1849    icon-image: "shop/groceries/confectionery.png";
1850    set icon_z17;
1851    text: auto;
1852}
1853node[shop=copyshop] {
1854    icon-image: "shop/copyshop.png";
1855    set icon_z17;
1856    text: auto;
1857}
1858node[shop=curtain] {
1859    icon-image: "shop/curtain.png";
1860    set icon_z17;
1861    text: auto;
1862}
1863node[shop=cycle_repair] {
1864    icon-image: "sport/bicycle.png";
1865    set icon_z17;
1866    text: auto;
1867}
1868node[shop=department_store] {
1869    icon-image: "shop/mall.png";
1870    set icon_z17;
1871    text: auto;
1872}
1873node[shop=deli] {
1874    icon-image: "shop/groceries/deli.png";
1875    set icon_z17;
1876    text: auto;
1877}
1878node[shop=electronics] {
1879    icon-image: "shop/electronics.png";
1880    set icon_z17;
1881    text: auto;
1882}
1883node[shop=erotic] {
1884    icon-image: "shop/erotic.png";
1885    set icon_z17;
1886    text: auto;
1887}
1888node[shop=furniture] {
1889    icon-image: "shop/furniture.png";
1890    set icon_z17;
1891    text: auto;
1892}
1893node[shop=fabric] {
1894    icon-image: "shop/fabric.png";
1895    set icon_z17;
1896    text: auto;
1897}
1898node[shop=florist] {
1899    icon-image: "shop/florist.png";
1900    set icon_z17;
1901    text: auto;
1902}
1903node[shop=frame] {
1904    icon-image: "shop/frame.png";
1905    set icon_z17;
1906    text: auto;
1907}
1908node[shop=gift] {
1909    icon-image: "presets/present.svg";
1910    set icon_z17;
1911    text: auto;
1912}
1913node[shop=greengrocer] {
1914    icon-image: "shop/groceries/greengrocer.png";
1915    set icon_z17;
1916    text: auto;
1917}
1918node[shop=garden_centre] {
1919    icon-image: "shop/garden_centre.png";
1920    set icon_z17;
1921    text: auto;
1922}
1923node[shop=hairdresser] {
1924    icon-image: "shop/hairdresser.png";
1925    set icon_z17;
1926    text: auto;
1927}
1928node[shop=hardware] {
1929    icon-image: "shop/hardware.png";
1930    set icon_z17;
1931    text: auto;
1932}
1933node[shop=hearing_aids] {
1934    icon-image: "shop/hearing_aids.png";
1935    set icon_z17;
1936    text: auto;
1937}
1938node[shop=hifi] {
1939    icon-image: "shop/hifi.png";
1940    set icon_z17;
1941    text: auto;
1942}
1943node[shop=jewelry] {
1944    icon-image: "shop/jewelry.png";
1945    set icon_z17;
1946    text: auto;
1947}
1948node[shop=kitchen] {
1949    icon-image: "shop/kitchen.png";
1950    set icon_z17;
1951    text: auto;
1952}
1953node[shop=mall] {
1954    icon-image: "shop/mall.png";
1955    set icon_z17;
1956    text: auto;
1957}
1958node[shop=mobile_phone] {
1959    icon-image: "shop/mobile_phone.png";
1960    set icon_z17;
1961    text: auto;
1962}
1963node[shop=motorcycle] {
1964    icon-image: "vehicle/motorbike.png";
1965    set icon_z17;
1966    text: auto;
1967}
1968node[shop=musical_instrument] {
1969    icon-image: "shop/musical_instrument.png";
1970    set icon_z17;
1971    text: auto;
1972}
1973node[shop=newsagent] {
1974    icon-image: "shop/kiosk.png";
1975    set icon_z17;
1976    text: auto;
1977}
1978node[shop=optician] {
1979    icon-image: "shop/optician.png";
1980    set icon_z17;
1981    text: auto;
1982}
1983node[shop=medical_supply] {
1984    icon-image: "shop/medical_supply.svg";
1985    set icon_z17;
1986    text: auto;
1987}
1988node[shop=paint] {
1989    icon-image: "shop/paint.png";
1990    set icon_z17;
1991    text: auto;
1992}
1993node[shop=pawnbroker] {
1994    icon-image: "presets/pawnbroker.svg";
1995    set icon_z17;
1996    text: auto;
1997}
1998node[shop=seafood] {
1999    icon-image: "shop/groceries/seafood.png";
2000    set icon_z17;
2001    text: auto;
2002}
2003node[shop=shoes] {
2004    icon-image: "shop/shoes.png";
2005    set icon_z17;
2006    text: auto;
2007}
2008node[shop=sports] {
2009    icon-image: "sport/multi.png";
2010    set icon_z17;
2011    text: auto;
2012}
2013node[shop=stationery] {
2014    icon-image: "shop/stationery.png";
2015    set icon_z17;
2016    text: auto;
2017}
2018node[shop=tailor] {
2019    icon-image: "shop/tailor.png";
2020    set icon_z17;
2021    text: auto;
2022}
2023node[shop=travel_agency] {
2024    icon-image: "presets/travel.png";
2025    icon-width: 16;
2026    set icon_z17;
2027    text: auto;
2028}
2029node[shop=toys] {
2030    icon-image: "shop/toys.png";
2031    set icon_z17;
2032    text: auto;
2033}
2034node[shop=vacuum_cleaner] {
2035    icon-image: "shop/vacuum_cleaner.png";
2036    set icon_z17;
2037    text: auto;
2038}
2039node[shop=variety_store] {
2040    icon-image: "shop/variety_store.png";
2041    set icon_z17;
2042    text: auto;
2043}
2044node[shop=video] {
2045    icon-image: "shop/video.png";
2046    set icon_z17;
2047    text: auto;
2048}
2049node[shop=bookmaker] {
2050    icon-image: "presets/lottery.svg";
2051    set icon_z17;
2052    text: auto;
2053}
2054node[shop=lottery] {
2055    icon-image: "presets/lottery.svg";
2056    set icon_z17;
2057    text: auto;
2058}
2059/* duplicate of shopping_centre? */
2060node[shop=shopping_centre] {
2061    icon-image: "shop/mall.png";
2062    set icon_z17;
2063    text: auto;
2064}
2065node[shop=pet] {
2066    icon-image: "shop/pet.svg";
2067    set icon_z17;
2068    text: auto;
2069}
2070node[shop=ticket] {
2071    icon-image: "shop/ticket.svg";
2072    set icon_z17;
2073    text: auto;
2074}
2075node[shop=interior_decoration] {
2076    icon-image: "shop/interior_decoration.svg";
2077    set icon_z17;
2078    text: auto;
2079}
2080node[shop=car_parts] {
2081    icon-image: "vehicle/car_parts.svg";
2082    set icon_z17;
2083    text: auto;
2084}
2085node[shop=video_games] {
2086    icon-image: "shop/video_games.png";
2087    set icon_z17;
2088    text: auto;
2089}
2090node[shop=bed] {
2091    icon-image: "shop/bed.svg";
2092    set icon_z17;
2093    text: auto;
2094}
2095node[shop=beauty] {
2096    icon-image: "shop/beauty.svg";
2097    set icon_z17;
2098    text: auto;
2099}
2100node[shop=tea] {
2101    icon-image: "shop/groceries/tea.svg";
2102    set icon_z17;
2103    text: auto;
2104}
2105node[shop=coffee] {
2106    icon-image: "shop/groceries/coffee.svg";
2107    set icon_z17;
2108    text: auto;
2109}
2110node[shop=antiques] {
2111    icon-image: "shop/antique.svg";
2112    set icon_z17;
2113    text: auto;
2114}
2115node[shop=music] {
2116    icon-image: "shop/music.svg";
2117    set icon_z17;
2118    text: auto;
2119}
2120node[shop=funeral_directors] {
2121    icon-image: "shop/funeral_directors.svg";
2122    set icon_z17;
2123    text: auto;
2124}
2125node[shop=wine] {
2126    icon-image: "shop/wine.svg";
2127    set icon_z17;
2128    text: auto;
2129}
2130node[shop=farm] {
2131    icon-image: "presets/apple.png";
2132    set icon_z17;
2133    text: auto;
2134}
2135node[shop=tattoo] {
2136    icon-image: "shop/tattoo.svg";
2137    set icon_z17;
2138    text: auto;
2139}
2140node[shop=art] {
2141    icon-image: "shop/art.svg";
2142    set icon_z17;
2143    text: auto;
2144}
2145node[shop=bag] {
2146    icon-image: "shop/bag.svg";
2147    set icon_z17;
2148    text: auto;
2149}
2150
2151/****************/
2152/* amenity tags */
2153/****************/
2154
2155area[amenity=pub],
2156area[amenity=biergarten],
2157area[amenity=nightclub],
2158area[amenity=stripclub],
2159area[amenity=brothel],
2160area[amenity=cafe],
2161area[amenity=restaurant],
2162area[amenity=food_court],
2163area[amenity=fast_food],
2164area[amenity=bar],
2165area[amenity=ice_cream] {
2166    fill-color: amenity#ecba52;
2167}
2168node[amenity=pub] {
2169    icon-image: "food/pub.png";
2170    set icon_z17;
2171    text: auto;
2172}
2173node[amenity=biergarten] {
2174    icon-image: "food/biergarten.png";
2175    set icon_z17;
2176    text: auto;
2177}
2178node[amenity=nightclub] {
2179    icon-image: "leisure/discoball.svg";
2180    set icon_z17;
2181    text: auto;
2182}
2183node[amenity=stripclub] {
2184    icon-image: "leisure/nightclub.png";
2185    set icon_z17;
2186    text: auto;
2187}
2188node[amenity=brothel] {
2189    icon-image: "leisure/stripclub.png";
2190    set icon_z17;
2191    text: auto;
2192}
2193node[amenity=cafe] {
2194    icon-image: "food/cafe.png";
2195    set icon_z17;
2196    text: auto;
2197}
2198node[amenity=restaurant] {
2199    icon-image: "food/restaurant.svg";
2200    set icon_z17;
2201    text: auto;
2202}
2203node[amenity=food_court] {
2204    icon-image: "food/restaurant.png";
2205    set icon_z17;
2206    text: auto;
2207}
2208node[amenity=fast_food] {
2209    icon-image: "food/fastfood.png";
2210    set icon_z17;
2211    text: auto;
2212}
2213node[amenity=bar] {
2214    icon-image: "food/bar.png";
2215    set icon_z17;
2216    text: auto;
2217}
2218node[amenity=ice_cream] {
2219    icon-image: "food/icecream.png";
2220    set icon_z17;
2221    text: auto;
2222}
2223way[amenity=bicycle_parking] {
2224    width: 2;
2225    color: amenity_traffic#f7efb7;
2226}
2227area[amenity=parking_space],
2228area[amenity=parking],
2229area[amenity=motorcycle_parking],
2230area[amenity=bicycle_parking],
2231area[amenity=bicycle_rental],
2232area[amenity=bicycle_repair_station],
2233area[amenity=car_rental],
2234area[amenity=car_sharing],
2235area[amenity=car_wash],
2236area[amenity=taxi],
2237area[amenity=fuel] {
2238    fill-color: amenity_traffic#f7efb7;
2239}
2240node[amenity=parking_space] {
2241    icon-image: "vehicle/parking/parking_space.svg";
2242    set icon_z17;
2243    text: auto;
2244}
2245node[amenity=parking] {
2246    icon-image: "vehicle/parking.png";
2247    set icon_z17;
2248    text: auto;
2249}
2250node[amenity=parking_entrance] {
2251    icon-image: "vehicle/parking.png";
2252    set icon_z17;
2253    text: auto;
2254}
2255node[amenity=parking_entrance][parking=multi-storey],
2256node[amenity=parking][parking=multi-storey] {
2257    icon-image: "vehicle/parking/multi-storey.png";
2258    set icon_z17;
2259    text: auto;
2260}
2261node[amenity=parking_entrance][parking=underground],
2262node[amenity=parking][parking=underground] {
2263    icon-image: "vehicle/parking/underground.png";
2264    set icon_z17;
2265    text: auto;
2266}
2267node[amenity=motorcycle_parking] {
2268    icon-image: "vehicle/parking/motorbike.png";
2269    set icon_z17;
2270    text: auto;
2271}
2272node[amenity=bicycle_parking] {
2273    icon-image: "vehicle/parking/bicycle.png";
2274    set icon_z17;
2275    text: auto;
2276}
2277node[park_ride][park_ride!=no] {
2278    icon-image: "vehicle/parking/park_ride.svg";
2279    set icon_z17;
2280    text: auto;
2281}
2282node[amenity=parking_space][wheelchair?] {
2283    icon-image: "vehicle/parking/handicapped.png";
2284    set icon_z17;
2285    text: auto;
2286}
2287node[amenity=bicycle_rental] {
2288    icon-image: "vehicle/rental/bicycle.png";
2289    set icon_z17;
2290    text: auto;
2291}
2292node[amenity=bicycle_repair_station] {
2293    icon-image: "vehicle/bicycle_repair_station.svg";
2294    set icon_z17;
2295    text: auto;
2296}
2297node[amenity=car_rental] {
2298    icon-image: "vehicle/rental/car.png";
2299    set icon_z17;
2300    text: auto;
2301}
2302node[amenity=car_sharing] {
2303    icon-image: "vehicle/car_sharing.png";
2304    set icon_z17;
2305    text: auto;
2306}
2307node[amenity=car_wash] {
2308    icon-image: "vehicle/car_wash.png";
2309    set icon_z17;
2310    text: auto;
2311}
2312node[amenity=taxi] {
2313    icon-image: "transport/taxi.png";
2314    set icon_z17;
2315    text: auto;
2316}
2317node[amenity=fuel] {
2318    icon-image: "vehicle/fuel.png";
2319    set icon_z17;
2320    text: auto;
2321}
2322node[amenity=charging_station] {
2323    icon-image: "vehicle/fuel/charging_station.png";
2324    set icon_z17;
2325    text: auto;
2326}
2327node[amenity=grit_bin] {
2328    icon-image: "misc/grit_bin.png";
2329    set icon_z17;
2330    text: auto;
2331}
2332node[amenity=telephone] {
2333    icon-image: "service/telephone.png";
2334    set icon_z17;
2335    text: auto;
2336}
2337node[amenity=clock] {
2338    icon-image: "service/clock.png";
2339    set icon_z17;
2340    text: auto;
2341}
2342area[amenity=toilets],
2343area[amenity=shower],
2344area[amenity=recycling],
2345area[amenity=sanitary_dump_station] {
2346    fill-color: amenity_light#f7efb7;
2347}
2348node[emergency=phone] {
2349    icon-image: "vehicle/emergency_phone.png";
2350    set icon_z17;
2351    text: auto;
2352}
2353node[emergency=defibrillator] {
2354    icon-image: "presets/aed.svg";
2355    set icon_z17;
2356    text: auto;
2357}
2358node[amenity=toilets] {
2359    icon-image: "service/toilets.png";
2360    set icon_z17;
2361    text: auto;
2362}
2363node[amenity=shower] { 
2364    icon-image: "service/shower.svg"; 
2365    set icon_z17; 
2366    text: auto; 
2367}
2368node[amenity=recycling] {
2369    icon-image: "service/recycling/recycling.svg";
2370    set icon_z17;
2371    text: auto;
2372}
2373node[amenity=recycling][recycling_type=container] {
2374    icon-image: "service/recycling/recycling_container.svg";
2375}
2376node[amenity=recycling][recycling_type=centre] {
2377    icon-image: "service/recycling/recycling_centre.svg";
2378}
2379node[amenity=waste_basket] {
2380    icon-image: "service/recycling/trash-bin.png";
2381    set icon_z17;
2382    text: auto;
2383}
2384node[amenity=waste_disposal] {
2385    icon-image: "service/recycling/waste_disposal.png";
2386    set icon_z17;
2387    text: auto;
2388}
2389node[amenity=sanitary_dump_station] {
2390    icon-image: "service/recycling/sanitary_dump_station.svg";
2391    set icon_z17;
2392    text: auto;
2393}
2394area[amenity=public_building],
2395area[amenity=townhall],
2396area[amenity=embassy],
2397area[amenity=community_centre] {
2398    fill-color: amenity_light#f7efb7;
2399}
2400node[amenity=public_building] {
2401    icon-image: "service.png";
2402    set icon_z17;
2403    text: auto;
2404}
2405node[amenity=townhall] {
2406    icon-image: "presets/townhall.png";
2407    set icon_z17;
2408    text: auto;
2409}
2410node[amenity=embassy] {
2411    icon-image: "service/administration/embassy.png";
2412    set icon_z17;
2413    text: auto;
2414}
2415node[amenity=community_centre] {
2416    icon-image: "service/community_centre.png";
2417    set icon_z17;
2418    text: auto;
2419}
2420area[amenity=water_point],
2421area[amenity=fountain] {
2422    fill-color: light_water#00005f;
2423}
2424node[amenity=drinking_water] {
2425    icon-image: "food/drinking_water.png";
2426    set icon_z17;
2427    text: auto;
2428}
2429node[amenity=water_point] {
2430    icon-image: "accommodation/camping/water.png";
2431    set icon_z17;
2432    text: auto;
2433}
2434node[amenity=fountain] {
2435    icon-image: "misc/fountain.png";
2436    set icon_z17;
2437    text: auto;
2438}
2439area[amenity=place_of_worship],
2440area[amenity=grave_yard],
2441area[amenity=crematorium],
2442area[amenity=post_office],
2443area[amenity=studio],
2444area[amenity=school],
2445area[amenity=university],
2446area[amenity=college],
2447area[amenity=kindergarten],
2448area[amenity=driving_school] {
2449    fill-color: amenity_light#f7efb7;
2450}
2451node[amenity=place_of_worship] {
2452    icon-image: "religion.png";
2453    set icon_z17;
2454    text: auto;
2455}
2456node[amenity=place_of_worship][religion=bahai] {
2457    icon-image: "religion/bahai.png";
2458    set icon_z17;
2459    text: auto;
2460}
2461node[amenity=place_of_worship][religion=buddhist] {
2462    icon-image: "religion/buddhism.png";
2463    set icon_z17;
2464    text: auto;
2465}
2466node[amenity=place_of_worship][religion=christian] {
2467    icon-image: "religion/church.png";
2468    set icon_z17;
2469    text: auto;
2470}
2471node[amenity=place_of_worship][religion=hindu] {
2472    icon-image: "religion/hinduism.png";
2473    set icon_z17;
2474    text: auto;
2475}
2476node[amenity=place_of_worship][religion=jain] {
2477    icon-image: "religion/jainism.png";
2478    set icon_z17;
2479    text: auto;
2480}
2481node[amenity=place_of_worship][religion=jewish] {
2482    icon-image: "religion/jewish.png";
2483    set icon_z17;
2484    text: auto;
2485}
2486node[amenity=place_of_worship][religion=muslim] {
2487    icon-image: "religion/muslim.png";
2488    set icon_z17;
2489    text: auto;
2490}
2491node[amenity=place_of_worship][religion=sikh] {
2492    icon-image: "religion/sikhism.png";
2493    set icon_z17;
2494    text: auto;
2495}
2496node[amenity=place_of_worship][religion=shinto] {
2497    icon-image: "religion/shinto.png";
2498    set icon_z17;
2499    text: auto;
2500}
2501node[amenity=place_of_worship][religion=spiritualist] {
2502    icon-image: "misc/no_icon.png";
2503    set icon_z17;
2504    text: auto;
2505}
2506node[amenity=place_of_worship][religion=taoist] {
2507    icon-image: "religion/taoism.png";
2508    set icon_z17;
2509    text: auto;
2510}
2511node[amenity=place_of_worship][religion=unitarian] {
2512    icon-image: "misc/no_icon.png";
2513    set icon_z17;
2514    text: auto;
2515}
2516node[amenity=place_of_worship][religion=zoroastrian] {
2517    icon-image: "misc/no_icon.png";
2518    set icon_z17;
2519    text: auto;
2520}
2521node[amenity=grave_yard] {
2522    icon-image: "rendering/landuse/cemetery.png";
2523    set icon_z17;
2524    text: auto;
2525}
2526node[amenity=crematorium] {
2527    icon-image: "misc/no_icon.png";
2528    set icon_z17;
2529    text: auto;
2530}
2531node[amenity=post_office] {
2532    icon-image: "service/post_office.png";
2533    set icon_z17;
2534    text: auto;
2535}
2536node[amenity=post_box] {
2537    icon-image: "service/post_box.png";
2538    set icon_z17;
2539    text: auto;
2540}
2541node[amenity=studio] {
2542    icon-image: "service/studio.png";
2543    set icon_z17;
2544    text: auto;
2545}
2546node[amenity=school] {
2547    icon-image: "education/school.png";
2548    set icon_z17;
2549    text: auto;
2550}
2551node[amenity=university] {
2552    icon-image: "education/university.png";
2553    set icon_z17;
2554    text: auto;
2555}
2556node[amenity=college] {
2557    icon-image: "education/college.png";
2558    set icon_z17;
2559    text: auto;
2560}
2561node[amenity=kindergarten] {
2562    icon-image: "education/kindergarten.png";
2563    set icon_z17;
2564    text: auto;
2565}
2566node[amenity=driving_school] {
2567    icon-image: "education/driving_school.png";
2568    set icon_z17;
2569    text: auto;
2570}
2571area[amenity=pharmacy],
2572area[amenity=hospital],
2573area[amenity=clinic],
2574area[amenity=nursing_home],
2575area[amenity=social_facility],
2576area[amenity=nursery],
2577area[amenity=baby_hatch],
2578area[amenity=doctors],
2579area[amenity=dentist],
2580area[amenity=veterinary] {
2581    fill-color: health#eeeeee;
2582}
2583node[amenity=pharmacy] {
2584    icon-image: "health/pharmacy.png";
2585    set icon_z17;
2586    text: auto;
2587}
2588node[amenity=hospital],
2589node[amenity=clinic] {
2590    icon-image: "health/hospital.png";
2591    set icon_z17;
2592    text: auto;
2593}
2594node[amenity=nursing_home],
2595node[amenity=social_facility],
2596node[amenity=nursery] {
2597    icon-image: "misc/no_icon.png";
2598    set icon_z17;
2599    text: auto;
2600}
2601node[amenity=baby_hatch] {
2602    icon-image: "health/baby_hatch.png";
2603    set icon_z17;
2604    text: auto;
2605}
2606node[amenity=doctors] {
2607    icon-image: "health/doctor.png";
2608    set icon_z17;
2609    text: auto;
2610}
2611node[amenity=dentist] {
2612    icon-image: "health/dentist.png";
2613    set icon_z17;
2614    text: auto;
2615}
2616node[amenity=veterinary] {
2617    icon-image: "health/veterinary.png";
2618    set icon_z17;
2619    text: auto;
2620}
2621area[amenity=library],
2622area[amenity=police],
2623area[amenity=ranger_station],
2624area[amenity=fire_station],
2625area[amenity=bus_station],
2626area[amenity=ferry_terminal],
2627area[amenity=theatre],
2628area[amenity=cinema],
2629area[amenity=arts_centre],
2630area[amenity=courthouse],
2631area[amenity=prison],
2632area[amenity=bank],
2633area[amenity=bureau_de_change],
2634area[amenity=bbq] {
2635    fill-color: amenity_light#f7efb7;
2636}
2637node[amenity=library] {
2638    icon-image: "shop/library.png";
2639    set icon_z17;
2640    text: auto;
2641}
2642node[amenity=police] {
2643    icon-image: "service/police.png";
2644    set icon_z17;
2645    text: auto;
2646}
2647node[amenity=ranger_station] {
2648    icon-image: "service/ranger_station.svg";
2649    set icon_z17;
2650    text: auto;
2651}
2652node[amenity=fire_station] {
2653    icon-image: "service/firebrigade.png";
2654    set icon_z17;
2655    text: auto;
2656}
2657node[amenity=bus_station] {
2658    icon-image: "transport/bus.png";
2659    set icon_z17;
2660    text: auto;
2661}
2662node[amenity=ferry_terminal] {
2663    icon-image: "nautical/ferry.png";
2664    icon-width: 16;
2665    set icon_z17;
2666    text: auto;
2667}
2668node[amenity=theatre] {
2669    icon-image: "presets/theater.png";
2670    icon-width: 16;
2671    set icon_z17;
2672    text: auto;
2673}
2674node[amenity=cinema] {
2675    icon-image: "leisure/cinema.png";
2676    set icon_z17;
2677    text: auto;
2678}
2679node[amenity=arts_centre] {
2680    icon-image: "service/arts_centre.png";
2681    set icon_z17;
2682    text: auto;
2683}
2684node[amenity=courthouse] {
2685    icon-image: "service/administration/court_of_law.png";
2686    set icon_z17;
2687    text: auto;
2688}
2689node[amenity=prison] {
2690    icon-image: "service/administration/prison.png";
2691    set icon_z17;
2692    text: auto;
2693}
2694node[amenity=bank] {
2695    icon-image: "money/bank.png";
2696    set icon_z17;
2697    text: auto;
2698}
2699node[amenity=bureau_de_change] {
2700    icon-image: "money/exchange.png";
2701    set icon_z17;
2702    text: auto;
2703}
2704node[amenity=atm] {
2705    icon-image: "money/atm.png";
2706    set icon_z17;
2707    text: auto;
2708}
2709way[amenity=bench] {
2710    width: 2;
2711    color: amenity_light#f7efb7;
2712}
2713node[amenity=bench] {
2714    icon-image: "leisure/bench.png";
2715    set icon_z17;
2716    text: auto;
2717}
2718node[amenity=bbq] {
2719    icon-image: "leisure/bbq.png";
2720    set icon_z17;
2721    text: auto;
2722}
2723node[emergency=fire_hydrant] {
2724    icon-image: "service/fire_hydrant.png";
2725    set icon_z17;
2726    text: auto;
2727}
2728area[amenity=shelter],
2729area[amenity=marketplace],
2730area[amenity=wlan] {
2731    fill-color: amenity_light#f7efb7;
2732}
2733node[amenity=shelter] {
2734    icon-image: "accommodation/shelter.png";
2735    set icon_z17;
2736    text: auto;
2737}
2738node[amenity=shelter][shelter_type=public_transport] {
2739    icon-image: "accommodation/shelter_public_transport_brown.png";
2740    set icon_z17;
2741    text: auto;
2742}
2743node[amenity=shelter][shelter_type=picnic_shelter] {
2744    icon-image: "accommodation/shelter_picnic_brown.png";
2745    set icon_z17;
2746    text: auto;
2747}
2748node[amenity=shelter][shelter_type=basic_hut] {
2749    icon-image: "accommodation/basic_hut_blue.png";
2750    set icon_z17;
2751    text: auto;
2752}
2753node[amenity=shelter][shelter_type=lean_to] {
2754    icon-image: "accommodation/shelter_lean_to.svg";
2755    set icon_z17;
2756    text: auto;
2757}
2758node[amenity=hunting_stand] {
2759    icon-image: "hunting_stand.png";
2760    set icon_z17;
2761    text: auto;
2762}
2763node[amenity=marketplace] {
2764    icon-image: "place/marketplace.png";
2765    set icon_z17;
2766    text: auto;
2767}
2768node[amenity=wlan] {
2769    icon-image: "wlan.png";
2770    set icon_z17;
2771    text: auto;
2772}
2773node[amenity=vending_machine] {
2774    icon-image: "transport/ticket-machine.png";
2775    set icon_z17;
2776}
2777node[vending=excrement_bags] {
2778    icon-image: "service/excrement_bags.png";
2779    set icon_z17;
2780    text: auto;
2781}
2782
2783/**************/
2784/* craft tags */
2785/**************/
2786
2787area[craft=painter],
2788area[craft=plumber],
2789area[craft=pottery],
2790area[craft=stonemason],
2791area[craft=tiler],
2792area[craft=window_construction] {
2793    fill-color: craft#999900;
2794}
2795node[craft=painter] {
2796    icon-image: "craft/painter.png";
2797    set icon_z17;
2798    text: auto;
2799}
2800node[craft=plumber] {
2801    icon-image: "craft/plumber.png";
2802    set icon_z17;
2803    text: auto;
2804}
2805node[craft=pottery] {
2806    icon-image: "craft/pottery.png";
2807    set icon_z17;
2808    text: auto;
2809}
2810node[craft=stonemason] {
2811    icon-image: "craft/stonemason.png";
2812    set icon_z17;
2813    text: auto;
2814}
2815node[craft=tiler] {
2816    icon-image: "craft/tiler.png";
2817    set icon_z17;
2818    text: auto;
2819}
2820node[craft=window_construction] {
2821    icon-image: "craft/window_construction.png";
2822    set icon_z17;
2823    text: auto;
2824}
2825
2826/****************/
2827/* tourism tags */
2828/****************/
2829
2830area[tourism=hotel],
2831area[tourism=motel],
2832area[tourism=guest_house],
2833area[tourism=hostel],
2834area[tourism=chalet],
2835area[tourism=alpine_hut],
2836area[tourism=camp_site],
2837area[tourism=caravan_site] {
2838    fill-color: hotel#e1a0a2;
2839}
2840node[tourism=hotel] {
2841    icon-image: "accommodation.png";
2842    set icon_z17;
2843    text: auto;
2844}
2845node[tourism=motel] {
2846    icon-image: "accommodation/motel.png";
2847    set icon_z17;
2848    text: auto;
2849}
2850node[tourism=guest_house] {
2851    icon-image: "accommodation/guest_house.png";
2852    set icon_z17;
2853    text: auto;
2854}
2855node[tourism=hostel] {
2856    icon-image: "accommodation/hostel.png";
2857    set icon_z17;
2858    text: auto;
2859}
2860node[tourism=chalet] {
2861    icon-image: "accommodation/chalet.png";
2862    set icon_z17;
2863    text: auto;
2864}
2865node[tourism=alpine_hut] {
2866    icon-image: "accommodation/alpine_hut_blue.png";
2867    set icon_z17;
2868    text: auto;
2869}
2870node[tourism=wilderness_hut] {
2871    icon-image: "accommodation/wilderness_hut_blue.png";
2872    set icon_z17;
2873    text: auto;
2874}
2875node[tourism=camp_site] {
2876    icon-image: "accommodation/camping.png";
2877    set icon_z17;
2878    text: auto;
2879}
2880node[tourism=caravan_site] {
2881    icon-image: "accommodation/camping/caravan.png";
2882    set icon_z17;
2883    text: auto;
2884}
2885area[tourism=picnic_site],
2886area[tourism=viewpoint],
2887area[tourism=theme_park],
2888area[tourism=attraction],
2889area[tourism=zoo],
2890area[tourism=artwork],
2891area[tourism=museum] {
2892    fill-color: tourism#e180a2;
2893}
2894node[tourism=picnic_site] {
2895    icon-image: "leisure/picnic.png";
2896    set icon_z17;
2897    text: auto;
2898}
2899node[tourism=viewpoint] {
2900    icon-image: "sightseeing/viewpoint.png";
2901    set icon_z17;
2902    text: auto;
2903}
2904node[tourism=theme_park] {
2905    icon-image: "leisure/theme_park.png";
2906    set icon_z17;
2907    text: auto;
2908}
2909node[tourism=attraction] {
2910    icon-image: "sightseeing.png";
2911    set icon_z17;
2912    text: auto;
2913}
2914node[tourism=zoo] {
2915    icon-image: "leisure/zoo.png";
2916    set icon_z17;
2917    text: auto;
2918}
2919way[tourism=artwork] {
2920    width: 2;
2921    color: tourism#e180a2;
2922}
2923node[tourism=artwork] {
2924    icon-image: "service/arts_centre.png";
2925    set icon_z17;
2926    text: auto;
2927}
2928node[tourism=museum] {
2929    icon-image: "sightseeing/museum.png";
2930    set icon_z17;
2931    text: auto;
2932}
2933
2934/********************/
2935/* information tags */
2936/********************/
2937
2938area[tourism=information] {
2939    fill-color: tourism#e180a2;
2940}
2941node[tourism=information] {
2942    icon-image: "misc/information.png";
2943    set icon_z17;
2944    text: auto;
2945}
2946node[tourism=information][information=guidepost] {
2947    icon-image: "misc/information/guidepost.png";
2948    set icon_z17;
2949    text: auto;
2950}
2951area[tourism=information][information=office] {
2952    fill-color: tourism#e180a2;
2953}
2954node[tourism=information][information=office] {
2955    icon-image: "misc/information/informationoffice.png";
2956    set icon_z17;
2957    text: auto;
2958}
2959node[tourism=information][information=map] {
2960    icon-image: "misc/information/map.png";
2961    set icon_z17;
2962    text: auto;
2963}
2964node[tourism=information][information=board] {
2965    icon-image: "misc/information/board.png";
2966    set icon_z17;
2967    text: auto;
2968}
2969
2970/*****************/
2971/* historic tags */
2972/*****************/
2973
2974area[historic=castle],
2975area[historic=monument],
2976area[historic=memorial],
2977area[historic=archaeological_site],
2978area[historic=ruins],
2979area[historic=battlefield],
2980area[geological=palaeontological_site],
2981area[historic=wayside_cross],
2982area[historic=wayside_shrine],
2983area[historic=boundary_stone] {
2984    fill-color: historic#663300;
2985}
2986node[historic=castle] {
2987    icon-image: "sightseeing/castle.svg";
2988    set icon_z17;
2989    text: auto;
2990}
2991node[historic=monument] {
2992    icon-image: "sightseeing/monument.png";
2993    set icon_z17;
2994    text: auto;
2995}
2996node[historic=memorial] {
2997    icon-image: "sightseeing/memorial.png";
2998    set icon_z17;
2999    text: auto;
3000}
3001node[historic=archaeological_site] {
3002    icon-image: "sightseeing/archaeological.png";
3003    set icon_z17;
3004    text: auto;
3005}
3006node[historic=ruins] {
3007    icon-image: "sightseeing/ruins.png";
3008    set icon_z17;
3009    text: auto;
3010}
3011node[historic=battlefield] {
3012    icon-image: "sightseeing/battlefield.png";
3013    set icon_z17;
3014    text: auto;
3015}
3016node[geological=palaeontological_site] {
3017    icon-image: "historic/palaeontological_site.png";
3018    set icon_z17;
3019    text: auto;
3020}
3021node[historic=wayside_cross] {
3022    icon-image: "religion/wayside_cross.png";
3023    set icon_z17;
3024    text: auto;
3025}
3026node[historic=wayside_shrine] {
3027    icon-image: "religion/wayside_shrine.png";
3028    set icon_z17;
3029    text: auto;
3030}
3031node[historic=boundary_stone] {
3032    icon-image: "historic/boundary_stone.png";
3033    set icon_z17;
3034    text: auto;
3035}
3036
3037/****************/
3038/* landuse tags */
3039/****************/
3040
3041area[landuse],
3042area[leisure],
3043area[amenity],
3044area[place],
3045area[natural],
3046area[man_made] {
3047    z-index: -2; /* put areas that can have other areas inside (e.g. building) a little lower, see #9606 */
3048}
3049area[landuse=farm],
3050area[landuse=farmland] {
3051    fill-color: farmland#b8e0b1;
3052}
3053area[landuse=meadow] {
3054    fill-color: meadow#b1e0b6;
3055}
3056area[landuse=vineyard],
3057area[landuse=orchard] {
3058    fill-color: green#b1e0c2;
3059}
3060area[landuse=quarry] {
3061    fill-color: quarry#888888;
3062}
3063area[landuse=landfill] {
3064    fill-color: landfill#663300;
3065}
3066area[landuse=basin],
3067area[landuse=reservoir] {
3068    fill-color: basin#0000bf;
3069}
3070area[landuse=forest] {
3071    fill-color: forest#b1efc8;
3072}
3073area[landuse=allotments] {
3074    fill-color: allotments#5dbf80;
3075}
3076area[landuse=greenhouse_horticulture],
3077area[landuse=plant_nursery] {
3078    fill-color: green#b1e0c2;
3079}
3080area[landuse=grass] {
3081    fill-color: grass#97ca96;
3082}
3083area[landuse=residential] {
3084    fill-color: residential#f0f0f0;
3085}
3086area[landuse=garages] {
3087    fill-color: garages#d6c8aa;
3088}
3089area[landuse=farmyard] {
3090    fill-color: farmyard#f0f0f0;
3091}
3092area[landuse=retail],
3093area[landuse=commercial] {
3094    fill-color: retail#ffc4ee;
3095}
3096area[landuse=industrial] {
3097    fill-color: industrial#ecd8ff;
3098}
3099area[landuse=brownfield] {
3100    fill-color: brownfield#ecba32;
3101}
3102area[landuse=greenfield] {
3103    fill-color: greenfield#b1ec5c;
3104}
3105area[landuse=railway] {
3106    fill-color: railland#888888;
3107}
3108area[landuse=construction] {
3109    fill-color: construction#ffff00;
3110}
3111way[landuse=construction] {
3112    width: 1;
3113    color: construction#ffff00;
3114    dashes: 9,9;
3115}
3116area[landuse=military] {
3117    fill-color: military#b62c2c;
3118}
3119area[landuse=religious] {
3120    fill-color: religious#ffd454;
3121}
3122area[landuse=cemetery] {
3123    fill-color: cemetery#b1efc8;
3124}
3125area[landuse=village_green] {
3126    fill-color: green#b1e0c2;
3127}
3128area[landuse=recreation_ground] {
3129    fill-color: green#b1e0c2;
3130}
3131node[landuse] {
3132    icon-image: "misc/deprecated.png";
3133    set icon_z17;
3134    text: auto;
3135}
3136
3137/*****************/
3138/* military tags */
3139/*****************/
3140
3141area[military=airfield],
3142area[military=bunker],
3143area[military=barracks],
3144area[military=danger_area],
3145area[military=range] {
3146    fill-color: military#b62c2c;
3147}
3148node[military=airfield] {
3149    icon-image: "transport/airport/airfield.png";
3150    set icon_z17;
3151    text: auto;
3152}
3153node[military=bunker] {
3154    icon-image: "misc/landmark/bunker.png";
3155    set icon_z17;
3156    text: auto;
3157}
3158node[military=barracks] {
3159    icon-image: "misc/no_icon.png";
3160    set icon_z17;
3161    text: auto;
3162}
3163node[military=danger_area] {
3164    icon-image: "misc/danger.png";
3165    set icon_z17;
3166    text: auto;
3167}
3168node[military=range] {
3169    icon-image: "misc/landmark/range.png";
3170    set icon_z17;
3171    text: auto;
3172}
3173
3174/*************************/
3175/* public_transport tags */
3176/*************************/
3177
3178node[public_transport=stop_position] {
3179    icon-image: "transport/railway_small.png";
3180    set icon_z17;
3181    text: auto;
3182}
3183node[highway=bus_stop] {
3184    icon-image: "transport/bus_small.png";
3185    set icon_z17;
3186    text: auto;
3187}
3188node[public_transport=stop_position][bus=yes] {
3189    icon-image: "transport/bus_small.png";
3190    set icon_z17;
3191    text: auto;
3192}
3193node[public_transport=stop_position][aerial=yes] {
3194    icon-image: "transport/aerialway.png";
3195    set icon_z17;
3196    text: auto;
3197}
3198node[public_transport=stop_position][ferry=yes] {
3199    icon-image: "transport/ferry.png";
3200    set icon_z17;
3201    text: auto;
3202}
3203node[public_transport=stop_position][tram=yes] {
3204    icon-image: "transport/tram.png";
3205    set icon_z17;
3206    text: auto;
3207}
3208node[public_transport=stop_position][train=yes] {
3209    icon-image: "transport/railway_small.png";
3210    set icon_z17;
3211    text: auto;
3212}
3213area[public_transport=platform]:closed {
3214    fill-color: service#809bc0;
3215}
3216way[public_transport=platform]!:closed {
3217    width: 3;
3218    color: service#809bc0;
3219    dashes: 12,3;
3220}
3221node[public_transport=platform] {
3222    icon-image: "transport/bus_small.png";
3223    set icon_z17;
3224    text: auto;
3225}
3226node[public_transport=platform][bus=yes] {
3227    icon-image: "transport/bus_small.png";
3228    set icon_z17;
3229    text: auto;
3230}
3231node[public_transport=platform][aerial=yes] {
3232    icon-image: "transport/aerialway/station.png";
3233    set icon_z17;
3234    text: auto;
3235}
3236node[public_transport=platform][ferry=yes] {
3237    icon-image: "transport/ferry.png";
3238    set icon_z17;
3239    text: auto;
3240}
3241node[public_transport=platform][tram=yes],
3242node[public_transport=platform][train=yes] {
3243    icon-image: "transport/railway_station.png";
3244    set icon_z17;
3245    text: auto;
3246}
3247
3248/****************/
3249/* railway tags */
3250/****************/
3251
3252area[railway=station],
3253area[railway=tram_station],
3254area[railway=subway_entrance] {
3255    fill-color: railwaypoint#f7efb7;
3256}
3257node[railway=station], node[railway=tram_station] {
3258    icon-image: "transport/railway_station.png";
3259    set icon_z17;
3260    text: auto;
3261}
3262node[railway=halt] {
3263    icon-image: "transport/railway_small.png";
3264    set icon_z17;
3265    text: auto;
3266}
3267node[railway=tram_stop] {
3268    icon-image: "transport/tram.png";
3269    set icon_z17;
3270    text: auto;
3271}
3272node[railway=subway_entrance] {
3273    icon-image: "transport/underground.png";
3274    set icon_z17;
3275    text: auto;
3276}
3277node[railway=crossing] {
3278    icon-image: "vehicle/crossing.png";
3279    set icon_z17;
3280    text: auto;
3281}
3282node[railway=level_crossing] {
3283    icon-image: "presets/level_crossing.png";
3284    icon-width: 16;
3285    set icon_z17;
3286    text: auto;
3287}
3288way[railway=rail] {
3289    width: 2;
3290    color: rail#404040;
3291    dashes: 9,9;
3292    dashes-background-color: raildashed#ffffff;
3293}
3294way[railway=rail][service=siding] {
3295    width: 1;
3296}
3297way[railway=rail][service=yard],
3298way[railway=rail][service=spur] {
3299    width: 1;
3300    color: railyard#552200
3301}
3302/* draw tram on top of other way (highway=*) or
3303   as a standalone style */
3304way[highway][railway=tram]::core_railway, way[!highway][railway=tram] {
3305    object-z-index: 1;
3306    modifier: false; /* don't draw default way if there is no line on default layer */
3307    width: 1;
3308    color: railover#202020;
3309    dashes: 9,9;
3310    casing-width: 1;
3311    casing-color: otherrail#808080;
3312    casing-linecap: round;
3313    casing-dashes: 9,9;
3314}
3315way[railway=light_rail] {
3316    width: 2;
3317    color: otherrail#808080;
3318    dashes: 9,9;
3319}
3320way[railway=subway] {
3321    width: 1;
3322    color: subway#606060;
3323    dashes: 9,9;
3324}
3325way[railway=preserved] {
3326    width: 1;
3327    color: oldrail#404040;
3328    dashes: 9,9;
3329}
3330/* disused often appears together with highway=xy */
3331/* -> draw on separate layer with higher z-index, but use */
3332/* modifier: false; to suppress default line when used alone. */
3333/* use default layer when used without highway=* to display bridge correctly */
3334way[railway=disused][highway]::core_railway,
3335way[railway=disused][!highway],
3336way[railway=abandoned][highway]::core_railway,
3337way[railway=abandoned][!highway] {
3338    width: 1;
3339    modifier: false;
3340    z-index: 1;
3341    color: oldrail#404040;
3342    dashes: 9,9;
3343}
3344way[railway=narrow_gauge],
3345way[railway=monorail] {
3346    width: 1;
3347    color: rail#404040;
3348    dashes: 9,9;
3349}
3350area[railway=turntable] {
3351    fill-color: rail#404040;
3352}
3353node[railway=turntable] {
3354    icon-image: "transport/turntable.png";
3355    set icon_z17;
3356    text: auto;
3357}
3358node[railway=buffer_stop] {
3359    icon-image: "transport/buffer_stop.png";
3360    set icon_z17;
3361    text: auto;
3362}
3363area[railway=platform]:closed {
3364    fill-color: rail#404040;
3365}
3366way[railway=platform] {
3367    width: 2;
3368    color: rail#404040;
3369}
3370way[railway=funicular] {
3371    width: 1;
3372    color: rail#404040;
3373    dashes: 9,9;
3374}
3375node[railway=switch] {
3376    icon-image: "presets/railway_switch.png";
3377    icon-width: 16;
3378    set icon_z17;
3379    text: auto;
3380}
3381node[railway=rail], node[railway=tram], node[railway=light_rail],
3382node[railway=subway], node[railway=preserved],
3383node[railway=disused], node[railway=abandoned],
3384node[railway=narrow_gauge], node[railway=monorail],
3385node[railway=platform], node[railway=funicular],
3386node[service=yard], node[service=siding], node[service=spur] {
3387    icon-image: "misc/deprecated.png";
3388    set icon_z17;
3389    text: auto;
3390}
3391way[railway=construction][!highway] {
3392    width: 1;
3393    color: construction#ffff00;
3394    dashes: 9,9;
3395}
3396way[railway=construction][construction=rail] {
3397    width: 2;
3398    color: rail#404040;
3399    dashes: 9,9;
3400    dashes-background-color: construction#ffff00;
3401}
3402way[railway=construction][construction=light_rail] {
3403    width: 2;
3404}
3405way[railway=construction][construction=tram][highway]::core_railway,
3406way[railway=construction][construction=tram][!highway] {
3407    z-index: 1;
3408    width: 1;
3409    color: railover#202020;
3410    dashes: 9,9;
3411    casing-width: 1;
3412    casing-color: construction#ffff00;
3413    casing-linecap: round;
3414    casing-dashes: 9,9;
3415}
3416
3417/****************/
3418/* aeroway tags */
3419/****************/
3420
3421area[aeroway=aerodrome] {
3422    fill-color: aeroway#660000;
3423    width: 2;
3424    dashes: 9,9;
3425}
3426node[aeroway=aerodrome] {
3427    icon-image: "transport/airport.png";
3428    set icon_z17;
3429    text: auto;
3430}
3431area[aeroway=terminal] {
3432    fill-color: terminal#bb0000;
3433}
3434node[aeroway=terminal] {
3435    icon-image: "transport/airport/terminal.png";
3436    set icon_z17;
3437    text: auto;
3438}
3439area[aeroway=helipad] {
3440    fill-color: aeroway_dark#330000;
3441}
3442node[aeroway=helipad] {
3443    icon-image: "transport/airport/helipad.png";
3444    set icon_z17;
3445    text: auto;
3446}
3447area[aeroway=runway]:closed {
3448    fill-color: aeroway_dark#330000;
3449}
3450way[aeroway=runway] {
3451    width: 3;
3452    color: aeroway_dark#330000;
3453}
3454area[aeroway=taxiway]:closed {
3455    fill-color: aeroway#660000;
3456}
3457way[aeroway=taxiway] {
3458    width: 2;
3459    color: aeroway#660000;
3460}
3461way[aeroway=parking_position] {
3462    width: 1;
3463    color: aeroway#660000;
3464}
3465node[aeroway=parking_position] {
3466    icon-image: "transport/airport/parking_position.png";
3467    set icon_z17;
3468    text: auto;
3469}
3470area[aeroway=apron],
3471area[aeroway=hangar] {
3472    fill-color: aeroway_light#990000;
3473}
3474node[aeroway=apron],
3475node[aeroway=runway],
3476node[aeroway=taxiway] {
3477    icon-image: "misc/deprecated.png";
3478    set icon_z17;
3479    text: auto;
3480}
3481node[aeroway=hangar] {
3482    icon-image: "transport/airport/hangar.png";
3483    set icon_z17;
3484    text: auto;
3485}
3486node[aeroway=gate] {
3487    icon-image: "transport/airport/gate.png";
3488    set icon_z17;
3489    text: auto;
3490}
3491node[aeroway=windsock] {
3492    icon-image: "transport/airport/windsock.png";
3493    set icon_z17;
3494    text: auto;
3495}
3496
3497/******************/
3498/* aerialway tags */
3499/******************/
3500
3501way[aerialway=cable_car],
3502way[aerialway=gondola] {
3503    width: 1;
3504    color: aerialway#663300;
3505    dashes: 9,9;
3506}
3507way[aerialway=chair_lift] {
3508    width: 1;
3509    color: aerialway#663300;
3510    dashes: 6,6;
3511}
3512way[aerialway=mixed_lift] {
3513    width: 1;
3514    color: aerialway#663300;
3515    dashes: 6,6,9,6;
3516}
3517way[aerialway=j-bar],
3518way[aerialway=t-bar],
3519way[aerialway=platter],
3520way[aerialway=rope_tow],
3521way[aerialway=drag_lift] {
3522    width: 1;
3523    color: aerialway#663300;
3524    dashes: 3,3;
3525}
3526way[aerialway=magic_carpet] {
3527    width: 1;
3528    color: aerialway#663300;
3529    dashes: 3,3;
3530}
3531way[aerialway=goods] {
3532    width: 1;
3533    color: aerialway#663300;
3534    dashes: 2,2;
3535}
3536area[aerialway=station] {
3537    fill-color: aerialway#663300;
3538}
3539node[aerialway=station] {
3540    icon-image: "transport/aerialway/station.png";
3541    set icon_z17;
3542    text: auto;
3543}
3544node[aerialway=pylon] {
3545    icon-image: "transport/aerialway/pylon.svg";
3546    set icon_z17;
3547    text: auto;
3548}
3549node[aerialway=cable_car],
3550node[aerialway=gondola],
3551node[aerialway=chair_lift],
3552node[aerialway=mixed_lift],
3553node[aerialway=drag_lift],
3554node[aerialway=t-bar],
3555node[aerialway=j-bar],
3556node[aerialway=platter],
3557node[aerialway=magic_carpet],
3558node[aerialway=rope_tow],
3559node[aerialway=goods] {
3560    icon-image: "misc/deprecated.png";
3561    set icon_z17;
3562    text: auto;
3563}
3564
3565/**************/
3566/* sport tags */
3567/**************/
3568
3569area[sport="9pin"],
3570area[sport="10pin"],
3571area[sport=athletics],
3572area[sport=soccer],
3573area[sport=australian_football],
3574area[sport=american_football],
3575area[sport=canadian_football],
3576area[sport=gaelic_games],
3577area[sport=rugby_league],
3578area[sport=rugby_union] {
3579    fill-color: sport#bde3cb;
3580}
3581node[sport="9pin"] {
3582    icon-image: "sport/10pin.png";
3583    set icon_z17;
3584    text: auto;
3585}
3586node[sport="10pin"] {
3587    icon-image: "sport/10pin.png";
3588    set icon_z17;
3589    text: auto;
3590}
3591node[sport=athletics] {
3592    icon-image: "sport/athletics.png";
3593    set icon_z17;
3594    text: auto;
3595}
3596node[sport=soccer],
3597node[sport=gaelic_games] {
3598    icon-image: "sport/soccer.png";
3599    set icon_z17;
3600    text: auto;
3601}
3602node[sport=australian_football],
3603node[sport=american_football],
3604node[sport=canadian_football],
3605node[sport=rugby_league],
3606node[sport=rugby_union] {
3607    icon-image: "sport/football.png";
3608    set icon_z17;
3609    text: auto;
3610}
3611area[sport=baseball],
3612area[sport=basketball],
3613area[sport=boules],
3614area[sport=bowls],
3615area[sport=canoe],
3616area[sport=chess],
3617area[sport=climbing]:closed,
3618area[sport=cricket],
3619area[sport=cricket_nets],
3620area[sport=croquet] {
3621    fill-color: sport#bde3cb;
3622}
3623node[sport=baseball] {
3624    icon-image: "sport/baseball.png";
3625    set icon_z17;
3626    text: auto;
3627}
3628node[sport=basketball] {
3629    icon-image: "sport/basketball.png";
3630    set icon_z17;
3631    text: auto;
3632}
3633node[sport=boules] {
3634    icon-image: "sport/boule.png";
3635    set icon_z17;
3636    text: auto;
3637}
3638node[sport=bowls] {
3639    icon-image: "sport/boule.png";
3640    set icon_z17;
3641    text: auto;
3642}
3643node[sport=canoe] {
3644    icon-image: "sport/canoe.svg";
3645    set icon_z17;
3646    text: auto;
3647}
3648node[sport=chess] {
3649    icon-image: "sport/chess.png";
3650    set icon_z17;
3651    text: auto;
3652}
3653node[sport=climbing] {
3654    icon-image: "sport/climbing.png";
3655    set icon_z17;
3656    text: auto;
3657}
3658node[sport=cricket] {
3659    icon-image: "sport/cricket.png";
3660    set icon_z17;
3661    text: auto;
3662}
3663node[sport=cricket_nets] {
3664    icon-image: "sport/cricket.png";
3665    set icon_z17;
3666    text: auto;
3667}
3668node[sport=croquet] {
3669    icon-image: "sport/croquet.png";
3670    set icon_z17;
3671    text: auto;
3672}
3673area[sport=cycling],
3674area[sport=dog_racing],
3675area[sport=equestrian],
3676area[sport=golf],
3677area[sport=gymnastics],
3678area[sport=field_hockey],
3679area[sport=ice_hockey],
3680area[sport=horse_racing],
3681area[sport=karting][highway!=raceway],
3682area[sport=karting][highway=raceway][area=yes],
3683area[sport=motocross][highway!=raceway],
3684area[sport=motocross][highway=raceway][area=yes],
3685area[sport=motor][highway!=raceway],
3686area[sport=motor][highway=raceway][area=yes] {
3687    fill-color: sport#bde3cb;
3688}
3689node[sport=cycling] {
3690    icon-image: "sport/cycling.png";
3691    set icon_z17;
3692    text: auto;
3693}
3694node[sport=dog_racing] {
3695    icon-image: "leisure/dog.png";
3696    set icon_z17;
3697    text: auto;
3698}
3699node[sport=equestrian] {
3700    icon-image: "presets/equestrian.png";
3701    icon-width: 16;
3702    set icon_z17;
3703    text: auto;
3704}
3705node[sport=golf] {
3706    icon-image: "sport/golf.svg";
3707    set icon_z17;
3708    text: auto;
3709}
3710node[sport=gymnastics] {
3711    icon-image: "presets/gymnastics.png";
3712    icon-width: 16;
3713    set icon_z17;
3714    text: auto;
3715}
3716node[sport=field_hockey] {
3717    icon-image: "sport/field_hockey.png";
3718    set icon_z17;
3719    text: auto;
3720}
3721node[sport=ice_hockey] {
3722    icon-image: "sport/ice_hockey.png";
3723    set icon_z17;
3724    text: auto;
3725}
3726node[sport=horse_racing] {
3727    icon-image: "sport/riding.png";
3728    set icon_z17;
3729    text: auto;
3730}
3731node[sport=karting] {
3732    icon-image: "sport/karting.png";
3733    set icon_z17;
3734    text: auto;
3735}
3736node[sport=motocross] {
3737    icon-image: "sport/motocross.png";
3738    set icon_z17;
3739    text: auto;
3740}
3741node[sport=motor] {
3742    icon-image: "sport/motor.png";
3743    set icon_z17;
3744    text: auto;
3745}
3746area[sport=multi],
3747area[sport=pelota],
3748area[sport=racquet],
3749area[sport=skating],
3750area[sport=skateboard] {
3751    fill-color: sport#bde3cb;
3752}
3753node[sport=multi] {
3754    icon-image: "sport/multi.png";
3755    set icon_z17;
3756    text: auto;
3757}
3758node[sport=pelota] {
3759    icon-image: "sport/pelota.png";
3760    set icon_z17;
3761    text: auto;
3762}
3763node[sport=racquet] {
3764    icon-image: "sport/racquetball.png";
3765    set icon_z17;
3766    text: auto;
3767}
3768node[sport=skating] {
3769    icon-image: "sport/skating.png";
3770    set icon_z17;
3771    text: auto;
3772}
3773node[sport=skateboard] {
3774    icon-image: "sport/skateboard.png";
3775    set icon_z17;
3776    text: auto;
3777}
3778area[sport=swimming] {
3779    fill-color: swimming_pool#51c4ef;
3780}
3781node[sport=swimming] {
3782    icon-image: "sport/pool.png";
3783    set icon_z17;
3784    text: auto;
3785}
3786area[sport=table_tennis],
3787area[sport=tennis],
3788area[sport=paintball] {
3789    fill-color: sport#bde3cb;
3790}
3791node[sport=table_tennis] {
3792    icon-image: "sport/table_tennis.png";
3793    set icon_z17;
3794    text: auto;
3795}
3796node[sport=tennis] {
3797    icon-image: "sport/tennis.png";
3798    set icon_z17;
3799    text: auto;
3800}
3801node[sport=paintball] {
3802    icon-image: "misc/no_icon.png";
3803    set icon_z17;
3804    text: auto;
3805}
3806area[sport=squash],
3807area[sport=shooting],
3808area[sport=volleyball],
3809area[sport=beachvolleyball],
3810area[sport=billiards],
3811area[sport=bowling],
3812area[sport=handball],
3813area[sport=rowing],
3814area[sport=sailing],
3815area[sport=scuba_diving],
3816area[sport=badminton] {
3817    fill-color: sport#bde3cb;
3818}
3819node[sport=squash] {
3820    icon-image: "misc/no_icon.png";
3821    set icon_z17;
3822    text: auto;
3823}
3824node[sport=shooting] {
3825    icon-image: "presets/range.png";
3826    icon-width: 16;
3827    set icon_z17;
3828    text: auto;
3829}
3830node[sport=volleyball] {
3831    icon-image: "sport/volleyball.png";
3832    set icon_z17;
3833    text: auto;
3834}
3835node[sport=beachvolleyball] {
3836    icon-image: "sport/beachvolleyball.png";
3837    set icon_z17;
3838    text: auto;
3839}
3840node[sport=billiards] {
3841    icon-image: "sport/billiards.svg";
3842    set icon_z17;
3843    text: auto;
3844}
3845node[sport=bowling] {
3846    icon-image: "sport/10pin.png";
3847    set icon_z17;
3848    text: auto;
3849}
3850node[sport=handball] {
3851    icon-image: "sport/handball.png";
3852    set icon_z17;
3853    text: auto;
3854}
3855node[sport=rowing] {
3856    icon-image: "sport/rowing.png";
3857    set icon_z17;
3858    text: auto;
3859}
3860node[sport=sailing] {
3861    icon-image: "misc/no_icon.png";
3862    set icon_z17;
3863    text: auto;
3864}
3865node[sport=scuba_diving] {
3866    icon-image: "sport/scuba_diving.svg";
3867    set icon_z17;
3868    text: auto;
3869}
3870node[sport=badminton] {
3871    icon-image: "misc/no_icon.png";
3872    set icon_z17;
3873    text: auto;
3874}
3875area[sport=archery],
3876area[sport=fishing],
3877area[sport=safety_training],
3878area[sport=model_aerodrome],
3879area[sport=rc_car] {
3880    fill-color: sport#bde3cb;
3881}
3882node[sport=archery] {
3883    icon-image: "sport/archery.png";
3884    set icon_z17;
3885    text: auto;
3886}
3887node[sport=fishing] {
3888    icon-image: "sport/fishing.png";
3889    set icon_z17;
3890    text: auto;
3891}
3892node[sport=safety_training] {
3893    icon-image: "sport/safety_training.png";
3894    set icon_z17;
3895    text: auto;
3896}
3897node[sport=model_aerodrome] {
3898    icon-image: "transport/airport.png";
3899    set icon_z17;
3900    text: auto;
3901}
3902node[sport=rc_car] {
3903    icon-image: "transport/car.png";
3904    set icon_z17;
3905    text: auto;
3906}
3907
3908/****************/
3909/* natural tags */
3910/****************/
3911
3912area[natural=spring] {
3913    fill-color: light_water#00005f;
3914}
3915node[natural=spring] {
3916    icon-image: "misc/landmark/spring.png";
3917    set icon_z17;
3918    text: auto;
3919}
3920node[natural=saddle] {
3921    icon-image: "presets/saddle.svg";
3922    set icon_z0;
3923    text: auto;
3924    set text_z0;
3925}
3926node[natural=peak] {
3927    icon-image: "presets/peak.svg";
3928    set icon_z0;
3929    text: auto;
3930    set text_z0;
3931}
3932node[natural=peak][tourism=viewpoint] {
3933    icon-image: "sightseeing/peak_viewpoint.svg";
3934    set icon_z0;
3935    text: auto;
3936    set text_z0;
3937}
3938area[natural=glacier] {
3939    fill-color: glacier#ffffff;
3940}
3941node[natural=glacier] {
3942    icon-image: "misc/landmark/glacier_small.png";
3943    set icon_z0;
3944    text: auto;
3945    set text_z0;
3946}
3947node[natural=volcano] {
3948    icon-image: "misc/landmark/volcano_small.png";
3949    set icon_z0;
3950    text: auto;
3951    set text_z0;
3952}
3953area[natural=cliff]:closed {
3954    fill-color: natural#002f00;
3955}
3956way[natural=cliff] {
3957    repeat-image: "misc/cliff-pattern.png";
3958    repeat-image-align: top;
3959    width: 1;
3960    color: #b2b2b2;
3961}
3962node[natural=cliff] {
3963    icon-image: "misc/cliff.png";
3964    set icon_z17;
3965    text: auto;
3966}
3967way[natural=ridge] {
3968    width: 1;
3969    color: natural#002f00;
3970}
3971way[natural=valley] {
3972    width: 1;
3973    color: natural#002f00;
3974}
3975area[natural=scree] {
3976    fill-color: natural#002f00;
3977}
3978area[natural=scrub] {
3979    fill-color: scrub#007000;
3980}
3981area[natural=fell] {
3982    fill-color: natural#002f00;
3983}
3984area[natural=heath] {
3985    fill-color: heath#ffffc0;
3986}
3987way[natural=tree_row] {
3988    width: 2;
3989    color: woodarea#008000;
3990}
3991area[natural=wood] {
3992    fill-color: woodarea#008000;
3993}
3994area[natural=grassland] {
3995    fill-color: green#b1e0c2;
3996}
3997area[natural=wetland] {
3998    fill-color: marsh#4f4ff3;
3999}
4000area[natural=water] {
4001    fill-color: water#0000ff;
4002}
4003way[natural=coastline] {
4004    width: 1;
4005    color: water#0000ff;
4006}
4007area[natural=mud] {
4008    fill-color: mud#cba762;
4009}
4010area[natural=beach] {
4011    fill-color: beach#f8dba2;
4012}
4013area[natural=sand] {
4014    fill-color: sand#f8dba2;
4015}
4016area[natural=bare_rock] {
4017    fill-color: bare_rock#f8f8c7;
4018}
4019area[natural=rock] {
4020    fill-color: stone#f8f8c7;
4021}
4022node[natural=rock] {
4023    icon-image: "misc/rock.svg";
4024    set icon_z17;
4025    text: auto;
4026}
4027area[natural=stone] {
4028    fill-color: stone#f8f8c7;
4029}
4030node[natural=stone] {
4031    icon-image: "misc/stone.svg";
4032    set icon_z17;
4033    text: auto;
4034}
4035area[natural=bay],
4036area[natural=cave_entrance] {
4037    fill-color: natural#002f00;
4038}
4039node[natural=bay] {
4040    icon-image: "misc/bay.png";
4041    set icon_z17;
4042    text: auto;
4043}
4044node[natural=cave_entrance] {
4045    icon-image: "misc/landmark/cave_entrance.png";
4046    set icon_z17;
4047    text: auto;
4048}
4049node[natural=tree] {
4050    icon-image: "misc/landmark/trees.png";
4051    set icon_z17;
4052    text: auto;
4053}
4054node[natural=tree][type=conifer],
4055node[natural=tree][leaf_type=needleleaved] {
4056    icon-image: "misc/landmark/trees_conifer.png";
4057    set icon_z17;
4058    text: auto;
4059}
4060node[natural=tree][type=broad_leaved],
4061node[natural=tree][leaf_type=broadleaved] {
4062    icon-image: "misc/landmark/trees_broad_leaved.png";
4063    set icon_z17;
4064    text: auto;
4065}
4066node[natural=tree][type=palm] {
4067    icon-image: "misc/landmark/trees_palm.png";
4068    set icon_z17;
4069    text: auto;
4070}
4071node[natural=scree],
4072node[natural=scrub],
4073node[natural=fell],
4074node[natural=heath],
4075node[natural=tree_row],
4076node[natural=wood],
4077node[natural=grassland],
4078node[natural=wetland],
4079node[natural=water],
4080node[natural=coastline],
4081node[natural=mud],
4082node[natural=beach],
4083node[natural=sand],
4084node[natural=land],
4085node[natural=bare_rock],
4086node[natural=ridge],
4087node[natural=valley] {
4088    icon-image: "misc/deprecated.png";
4089    set icon_z17;
4090    text: auto;
4091}
4092/*****************/
4093/* waterway tags */
4094/*****************/
4095
4096way[waterway=river] {
4097    width: 2;
4098    color: water#0000ff;
4099}
4100area[waterway=riverbank] {
4101    fill-color: riverbank#0000cf;
4102    width: 1;
4103    color: riverbank#0000cf;
4104}
4105way[waterway=canal] {
4106    width: 2;
4107    color: water#0000ff;
4108}
4109way[waterway=stream] {
4110    width: 1;
4111    color: stream#6600cc;
4112}
4113way[waterway=ditch], way[waterway=drain] {
4114    width: 1;
4115    color: water#0000ff;
4116}
4117area[waterway=dock] {
4118    fill-color: dock#0000cf;
4119}
4120node[waterway=dock] {
4121    icon-image: "nautical/boatyard.png";
4122    set icon_z17;
4123    text: auto;
4124}
4125node[waterway=lock_gate] {
4126    icon-image: "nautical/lock_gate.png";
4127    set icon_z17;
4128    text: auto;
4129}
4130node[waterway=turning_point] {
4131    icon-image: "nautical/turning.png";
4132    set icon_z17;
4133    text: auto;
4134}
4135area[waterway=boatyard] {
4136    fill-color: manmade#d8d8d8;
4137}
4138node[waterway=boatyard] {
4139    icon-image: "nautical/boatyard.png";
4140    set icon_z17;
4141    text: auto;
4142}
4143node[waterway=water_point],
4144node[waterway=waste_disposal],
4145node[waterway=mooring] {
4146    icon-image: "misc/deprecated.png";
4147    set icon_z17;
4148    text: auto;
4149}
4150node[mooring] {
4151    icon-image: "nautical/marina.png";
4152    set icon_z17;
4153    text: auto;
4154}
4155area[waterway=fuel] {
4156    fill-color: amenity_traffic#f7efb7;
4157}
4158node[waterway=fuel] {
4159    icon-image: "nautical/marine_fuel.png";
4160    icon-width: 16;
4161    set icon_z17;
4162    text: auto;
4163}
4164way[waterway=weir] {
4165    width: 2;
4166    color: manmade#d8d8d8;
4167}
4168node[waterway=weir] {
4169    icon-image: "nautical/weir.png";
4170    set icon_z17;
4171    text: auto;
4172}
4173area[waterway=dam]:closed {
4174    fill-color: manmade#d8d8d8;
4175}
4176way[waterway=dam] {
4177    width: 2;
4178    color: manmade#d8d8d8;
4179}
4180node[waterway=dam] {
4181    icon-image: "nautical/dam.png";
4182    set icon_z17;
4183    text: auto;
4184}
4185/* it's not possible to have both line and area, line seems more likely */
4186way[waterway=waterfall] {
4187    width: 2;
4188    color: manmade#d8d8d8;
4189}
4190node[waterway=waterfall] {
4191    icon-image: "nautical/waterfall.png";
4192    set icon_z17;
4193    text: auto;
4194}
4195node[waterway=river], node[waterway=riverbank],
4196node[waterway=canal], node[waterway=wadi],
4197node[waterway=stream],
4198node[waterway=ditch], node[waterway=drain] {
4199    icon-image: "misc/deprecated.png";
4200    set icon_z17;
4201    text: auto;
4202}
4203
4204/**************/
4205/* route tags */
4206/**************/
4207
4208way[route=ferry] {
4209    width: 1;
4210    color: ferry#809bc0;
4211    dashes: 9,9;
4212}
4213node[route=bus],
4214node[route=ferry],
4215node[route=flight],
4216node[route=ncn],
4217node[route=subsea],
4218node[route=ski],
4219node[route=tour],
4220node[route=pub_crawl] {
4221    icon-image: "misc/deprecated.png";
4222    set icon_z17;
4223    text: auto;
4224}
4225
4226/*******************/
4227/* properties tags */
4228/*******************/
4229
4230node[mountain_pass?] {
4231    icon-image: "misc/landmark/mountain_pass.png";
4232    set icon_z0;
4233    text: auto;
4234    set text_z0;
4235}
4236
4237/*****************/
4238/* boundary tags */
4239/*****************/
4240
4241way[boundary=protected_area]::core_boundary,
4242way[boundary=administrative]::core_boundary,
4243way[boundary=postal_code]::core_boundary,
4244way[boundary=political]::core_boundary,
4245way[boundary=maritime]::core_boundary,
4246way[boundary=national_park]::core_boundary {
4247    z-index: 2;
4248    modifier: false;
4249    width: 1;
4250    color: boundary#FF6600;
4251    dashes: 9,9;
4252}
4253way[admin_level=9]::core_boundary,
4254relation[admin_level=9] > way::core_boundary,
4255way[admin_level=10]::core_boundary,
4256relation[admin_level=10] > way::core_boundary {
4257    z-index: 2;
4258    modifier: false;
4259    width: 1;
4260    color: boundary#FF6600;
4261    dashes: 9,9;
4262}
4263way[admin_level=7]::core_boundary,
4264relation[admin_level=7] > way::core_boundary,
4265way[admin_level=8]::core_boundary,
4266relation[admin_level=8] > way::core_boundary {
4267    z-index: 2;
4268    modifier: false;
4269    width: 2;
4270    color: boundary#FF6600;
4271    dashes: 9,9;
4272}
4273way[admin_level=5]::core_boundary,
4274relation[admin_level=5] > way::core_boundary,
4275way[admin_level=6]::core_boundary,
4276relation[admin_level=6] > way::core_boundary {
4277    z-index: 2;
4278    modifier: false;
4279    width: 3;
4280    color: boundary#FF6600;
4281    dashes: 9,9;
4282}
4283way[admin_level=3]::core_boundary,
4284relation[admin_level=3] > way::core_boundary,
4285way[admin_level=4]::core_boundary,
4286relation[admin_level=4] > way::core_boundary {
4287    z-index: 2;
4288    modifier: false;
4289    width: 4;
4290    color: boundary#FF6600;
4291    dashes: 9,9;
4292}
4293way[admin_level=1]::core_boundary,
4294relation[admin_level=1] > way::core_boundary,
4295way[admin_level=2]::core_boundary,
4296relation[admin_level=2] > way::core_boundary {
4297    z-index: 2;
4298    modifier: false;
4299    width: 5;
4300    color: boundary#FF6600;
4301    dashes: 9,9;
4302}
4303node[boundary=national],
4304node[boundary=administrative],
4305node[boundary=postal_code],
4306node[boundary=political],
4307node[boundary=national_park] {
4308    icon-image: "misc/deprecated.png";
4309    set icon_z17;
4310    text: auto;
4311}
4312
4313/******************/
4314/* maxspeed nodes */
4315/******************/
4316node[traffic_sign][maxspeed=none][!is_prop_set(icon-image)] {
4317    icon-image: "vehicle/restriction/maxspeed_none.svg";
4318    set icon_z17;
4319}
4320node[traffic_sign][maxspeed=~/^[0-9]+$/][!is_prop_set(icon-image)] {
4321    maxspeedprop: tag(maxspeed);
4322    set maxspeedclass;
4323}
4324node[traffic_sign][maxspeed=signals][!is_prop_set(icon-image)] {
4325    maxspeedprop: " ?";
4326    set maxspeedclass;
4327}
4328node[traffic_sign][maxspeed=~/^[0-9]+ mph/][!is_prop_set(icon-image)] {
4329    maxspeedprop: get(split(" mph",tag(maxspeed)),0);
4330    set maxspeedclass;
4331}
4332node[traffic_sign][maxspeed=~/[0-9]+ km\/h/][!is_prop_set(icon-image)] {
4333    maxspeedprop: get(split(" km/h",tag(maxspeed)),0);
4334    set maxspeedclass;
4335}
4336node[traffic_sign][maxspeed=~/[0-9]+ knots/][!is_prop_set(icon-image)] {
4337    maxspeedprop: get(split(" knots",tag(maxspeed)),0);
4338    set maxspeedclass;
4339}
4340node[prop(maxspeedclass, default)][!is_prop_set(icon-image, default)]::core_maxnodebg {
4341    /* background (white) */
4342    symbol-shape: circle;
4343    symbol-size: 17;
4344    symbol-fill-color: white;
4345    major-z-index: 4.2;
4346}
4347node[traffic_sign][maxspeed]["maxspeed:variable"]["maxspeed:variable"!="no"]::core_maxnodebg,
4348node[traffic_sign][maxspeed=signals]::core_maxnodebg {
4349    /* background (black) */
4350    symbol-fill-color: black;
4351}
4352node[prop(maxspeedclass, default)]::core_maxnodefg {
4353    /* foreground (black text and red circle) */
4354    symbol-shape: circle;
4355    symbol-size: 15;
4356    symbol-stroke-color: crimson;
4357    symbol-stroke-width: 2;
4358    text: prop(maxspeedprop, default);
4359    font-size: 8;
4360    font-weight: bold;
4361    text-color: black;
4362    text-anchor-horizontal: center;
4363    text-anchor-vertical: center;
4364    text-offset-x: 0;
4365    text-offset-y: -1;
4366    major-z-index: 4.2;
4367}
4368node[traffic_sign][maxspeed]["maxspeed:variable"]["maxspeed:variable"!="no"]::core_maxnodefg,
4369node[traffic_sign][maxspeed=signals]::core_maxnodefg {
4370    /* foreground (white text) */
4371    text-color: white;
4372}
4373node|z-16[prop(maxspeedclass, default)][setting("hide_icons")]::core_maxnodebg {
4374    symbol-shape: none;
4375}
4376node|z-16[prop(maxspeedclass, default)][setting("hide_icons")]::core_maxnodefg {
4377    text: none;
4378    symbol-shape: none;
4379}
4380
4381/**************/
4382/* place tags */
4383/**************/
4384
4385/* lot's of "openGeoDB:..." tags can be found in germany */
4386node["openGeoDB:type"=Stadt],
4387node["openGeoDB:type"=Kreis],
4388node["openGeoDB:type"=Gemeinde],
4389node["openGeoDB:type"=Ort],
4390node["openGeoDB:type"=District],
4391node["openGeoDB:location"=locality] {
4392    icon-image: "place/settlement/openGeoDB.png";
4393    set icon_z0;
4394    text: auto;
4395    set text_z0;
4396    font-size: 10;
4397    font-weight: bold;
4398    text-color:black;
4399    text-halo-color: white;
4400    text-halo-radius: 1;
4401}
4402area[place=continent],
4403area[place=country],
4404area[place=state],
4405area[place=region],
4406area[place=county],
4407area[place=city],
4408area[place=town],
4409area[place=village],
4410area[place=hamlet],
4411area[place=farm],
4412area[place=isolated_dwelling],
4413area[place=neighbourhood],
4414area[place=suburb],
4415area[place=locality],
4416area[place=island],
4417area[place=islet] {
4418    fill-color: place#8de3cb;
4419}
4420node[place=continent],
4421node[place=country],
4422node[place=state],
4423node[place=region],
4424node[place=county] {
4425    icon-image: "place/settlement/capital.png";
4426    set icon_z0;
4427    text: auto;
4428    set text_z0;
4429    font-size: 10;
4430    font-weight: bold;
4431    text-color:black;
4432    text-halo-color: white;
4433    text-halo-radius: 1;
4434    z-index: 2.9;
4435}
4436node[place=city] {
4437    icon-image: "place/settlement/city.png";
4438    set icon_z0;
4439    text: auto;
4440    set text_z0;
4441    font-size: 10;
4442    font-weight: bold;
4443    text-color:black;
4444    text-halo-color: white;
4445    text-halo-radius: 1;
4446    z-index: 2.8;
4447}
4448node[place=town] {
4449    icon-image: "place/settlement/town.png";
4450    set icon_z0;
4451    text: auto;
4452    set text_z0;
4453    font-size: 10;
4454    font-weight: bold;
4455    text-color:black;
4456    text-halo-color: white;
4457    text-halo-radius: 1;
4458    z-index: 2.7;
4459}
4460node[place=suburb] {
4461    icon-image: "place/settlement/suburb.png";
4462    set icon_z0;
4463    text: auto;
4464    set text_z0;
4465    font-size: 10;
4466    font-weight: bold;
4467    text-color:black;
4468    text-halo-color: white;
4469    text-halo-radius: 1;
4470    z-index: 2.6;
4471}
4472node[place=village] {
4473    icon-image: "place/settlement/village.png";
4474    set icon_z0;
4475    text: auto;
4476    set text_z0;
4477    font-size: 10;
4478    font-weight: bold;
4479    text-color:black;
4480    text-halo-color: white;
4481    text-halo-radius: 1;
4482    z-index: 2.5;
4483}
4484node[place=neighbourhood] {
4485    icon-image: "place/settlement/neighbourhood.png";
4486    set icon_z0;
4487    text: auto;
4488    set text_z0;
4489    font-size: 10;
4490    font-weight: bold;
4491    text-color:black;
4492    text-halo-color: white;
4493    text-halo-radius: 1;
4494    z-index: 2.4;
4495}
4496node[place=hamlet] {
4497    icon-image: "place/settlement/hamlet.png";
4498    set icon_z0;
4499    text: auto;
4500    set text_z0;
4501    font-size: 10;
4502    font-weight: bold;
4503    text-color:black;
4504    text-halo-color: white;
4505    text-halo-radius: 1;
4506    z-index: 2.3;
4507}
4508node[place=isolated_dwelling] {
4509    icon-image: "place/settlement/isolated_dwelling.png";
4510    set icon_z0;
4511    text: auto;
4512    set text_z0;
4513    font-size: 10;
4514    font-weight: bold;
4515    text-color:black;
4516    text-halo-color: white;
4517    text-halo-radius: 1;
4518    z-index: 2.2;
4519}
4520node[place=farm] {
4521    icon-image: "place/settlement/farm.png";
4522    set icon_z0;
4523    text: auto;
4524    set text_z0;
4525    font-size: 10;
4526    font-weight: bold;
4527    text-color:black;
4528    text-halo-color: white;
4529    text-halo-radius: 1;
4530    z-index: 2.1;
4531}
4532node[place=locality] {
4533    icon-image: "place/locality.png";
4534    set icon_z0;
4535    text: auto;
4536    set text_z0;
4537    font-size: 10;
4538    font-weight: bold;
4539    text-color:black;
4540    text-halo-color: white;
4541    text-halo-radius: 1;
4542}
4543node[place=island] {
4544    icon-image: "place/island.png";
4545    set icon_z0;
4546    text: auto;
4547    set text_z0;
4548    font-size: 10;
4549    font-weight: bold;
4550    text-color:black;
4551    text-halo-color: white;
4552    text-halo-radius: 1;
4553}
4554node[place=islet] {
4555    icon-image: "place/islet.png";
4556    set icon_z0;
4557    text: auto;
4558    set text_z0;
4559    font-size: 10;
4560    font-weight: bold;
4561    text-color:black;
4562    text-halo-color: white;
4563    text-halo-radius: 1;
4564}
4565
4566/***************************/
4567/* "work in progress" tags */
4568/***************************/
4569
4570node|z16-[fixme]::core_fixme,
4571node|z-15[fixme][!setting("hide_icons")]::core_fixme,
4572node|z16-[FIXME]::core_fixme,
4573node|z-15[FIXME][!setting("hide_icons")]::core_fixme {
4574    object-z-index: 20;
4575    icon-image: "misc/fixme-annotation.png";
4576}
4577node|z16-[note]::core_note,
4578node|z-15[note][!setting("hide_icons")]::core_note {
4579    object-z-index: 10;
4580    icon-image: "misc/note-annotation.png";
4581}
4582
4583/* special display of unreviewed tiger data (USA) */
4584way["tiger:reviewed"=no]::core_tiger {
4585    major-z-index: -10;
4586    width: 11;
4587    color: tiger_data#808000;
4588    opacity: 0.6;
4589}
4590
4591/****************************************/
4592/* zoom levels and general node display */
4593/****************************************/
4594
4595/*
4596Summary of different zoom levels:
4597  (any zoom)    place=* and a few natural icons with their text is shown
4598  |z-15         untagged way nodes are hidden completely
4599  |z16-         fixme=* and note=* symbols
4600  |z17-         normal POI icons (without text),
4601                street name along highway=* ways
4602  |z18-         text for normal POI icons is shown
4603 
4604 * text size and node size is adapted according to zoom level (see style source below)
4605 * maxspeed icons should not be distinguishable from POIs with "icon-image" property
4606
4607*/
4608
4609node {
4610    text: auto;
4611}
4612node|z-16[setting("hide_icons")],
4613node|z17-[!is_prop_set("icon-image")][setting("hide_icons")]!.maxspeedclass,
4614node[!is_prop_set("icon-image")][!setting("hide_icons")]!.maxspeedclass {
4615    symbol-size: 2;
4616    symbol-shape: square;
4617    symbol-stroke-color: node_standard#ffff00;
4618    major-z-index: 4.95; /* put node squares above line text */
4619}
4620way > node|z-15[setting("shrink_nodes")]!:tagged {
4621    symbol-shape: none;
4622}
4623node:connection {
4624    symbol-stroke-color: node_connection#ffff00;
4625}
4626node:tagged {
4627    symbol-stroke-color: none;
4628    symbol-fill-color: node_tagged#00ffff;
4629}
4630
4631way > node|z16[setting("shrink_nodes")]!:tagged { symbol-size: 1; }
4632
4633node|z17[setting("shrink_nodes")]               { symbol-size: 4; }
4634way > node|z17[setting("shrink_nodes")]         { symbol-size: 2; }
4635node|z17[setting("shrink_nodes")]:connection    { symbol-size: 4; }
4636
4637node|z18[setting("shrink_nodes")]               { symbol-size: 4; }
4638way > node|z18[setting("shrink_nodes")]         { symbol-size: 3; }
4639node|z18[setting("shrink_nodes")]:connection    { symbol-size: 5; }
4640
4641node|z19-[setting("shrink_nodes")]              { symbol-size: 4; }
4642way > node|z19-[setting("shrink_nodes")]        { symbol-size: 4; }
4643node|z19-[setting("shrink_nodes")]:connection   { symbol-size: 6; }
4644
4645node[!setting("shrink_nodes")]                  { symbol-size: 4; }
4646way > node[!setting("shrink_nodes")]            { symbol-size: 4; }
4647node[!setting("shrink_nodes")]:connection       { symbol-size: 6; }
4648
4649node|z-16[setting("hide_icons")].icon_z17!.icon_z0,
4650relation|z-16[type=restriction][setting("hide_icons")] {
4651    icon-image: none;
4652}
4653node|z-17[setting("hide_icons")]!.text_z0 {
4654    text: none;
4655}
4656
4657node|z19,area|z19   { font-size: 9; }
4658node|z20-,area|z20-   { font-size: 10; }
4659
4660/*******************/
4661/* way text labels */
4662/*******************/
4663
4664way|z17-[highway^=motorway][setting("highway_labels")],
4665way|z17-[highway^=trunk][setting("highway_labels")],
4666way|z17-[highway^=primary][setting("highway_labels")],
4667way|z17-[highway^=secondary][setting("highway_labels")],
4668way|z17-[highway^=tertiary][setting("highway_labels")],
4669way|z17-[highway=unclassified][setting("highway_labels")],
4670way|z17-[highway=residential][setting("highway_labels")],
4671way|z17-[highway=living_street][setting("highway_labels")],
4672way|z17-[highway=pedestrian][!area?][setting("highway_labels")],
4673way|z17-[highway=service][setting("highway_labels")],
4674way|z17-[highway=track][setting("highway_labels")] {
4675    text: auto;
4676    text-color: black;
4677    font-size: 9;
4678    text-position: line;
4679    text-halo-opacity: 1;
4680    text-halo-radius: 1.5;
4681}
4682way|z17-[highway^=motorway][setting("highway_labels")] {
4683    text-halo-color: motorway#809bc0;
4684}
4685way|z17-[highway^=trunk][setting("highway_labels")] {
4686    text-halo-color: trunk#7fc97f;
4687}
4688way|z17-[highway^=primary][setting("highway_labels")] {
4689    text-halo-color: primary#fb805f;
4690}
4691way|z17-[highway^=secondary][setting("highway_labels")] {
4692    text-halo-color: secondary#fdbf6f;
4693}
4694way|z17-[highway^=tertiary][setting("highway_labels")] {
4695    text-halo-color: tertiary#f7f496;
4696}
4697way|z17-[highway=unclassified][setting("highway_labels")],
4698way|z17-[highway=residential][setting("highway_labels")],
4699way|z17-[highway=living_street][setting("highway_labels")] {
4700    text-halo-color: street#c0c0c0;
4701}
4702way[highway=pedestrian][!area?][setting("highway_labels")] {
4703    text-halo-color: foot#00ff00;
4704}
4705way|z17-[highway=service][setting("highway_labels")] {
4706    text-halo-color: service#809bc0;
4707}
4708way|z17-[highway=track][setting("highway_labels")] {
4709    text-halo-color: highway_track#6e541c;
4710}
4711way|z18[highway][setting("highway_labels")] {
4712    font-size: 10;
4713}
4714way|z19[highway][setting("highway_labels")] {
4715    font-size: 11;
4716}
4717way|z20-[highway][setting("highway_labels")] {
4718    font-size: 12;
4719}
4720
4721/* "deprecated" tags
4722     historic=museum -> tourism=museum
4723     man_made=power_wind -> power=generator and power_source=wind
4724     man_made=power_hydro -> power=generator and power_source=hydro
4725     man_made=power_fossil -> power=generator and power_source=fossil
4726     man_made=power_nuclear -> power=generator and power_source=nuclear
4727     amenity=park_bench -> amenity=bench
4728     amenity=signpost -> information=guidepost
4729     amenity=emergency_phone -> emergency=phone
4730     highway minor - classification now more detailed
4731     highway=stile -> barrier=stile
4732     highway=gate -> barrier=gate
4733     highway=cattle_grid -> barrier=cattle_grid
4734     highway=toll_booth -> barrier=toll_booth
4735     highway=viaduct -> bridge=viaduct
4736     railway=viaduct -> bridge=viaduct
4737     waterway=aqueduct -> bridge=aqueduct
4738     natural=marsh -> natural=wetland
4739     leisure=zoo -> tourism=zoo
4740     power=station -> power=plant or power=sub_station
4741*/
Note: See TracBrowser for help on using the repository browser.