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

Last change on this file since 9103 was 9103, checked in by bastiK, 4 years ago

mapcss partial fill: adjust threshold parameter for closed areas (see #12104)

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