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

Last change on this file since 15536 was 15536, checked in by Klumbumbus, 2 months ago

fix #18337 - add shop=scuba_diving (icon retrieved from internal sport=scuba_diving icon, CC0 and PD licensed)

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