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

Last change on this file since 15533 was 15533, checked in by Klumbumbus, 4 years ago
  • fix #18343 - don't render man_made=embankment pattern on both sides when used on highway/railway/waterway
  • fix #17643 - deprecate barrier=embankment in favor of man_made=embankment
  • Property svn:eol-style set to native
File size: 125.8 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=toys],
2041area[shop=vacuum_cleaner],
2042area[shop=variety_store],
2043area[shop=charity],
2044area[shop=video],
2045area[shop=bookmaker],
2046area[shop=lottery],
2047area[shop=pet],
2048area[shop=pet_grooming],
2049area[shop=photo],
2050area[shop=ticket],
2051area[shop=carpet],
2052area[shop=interior_decoration],
2053area[shop=car_parts],
2054area[shop=video_games],
2055area[shop=bed],
2056area[shop=beauty],
2057area[shop=cosmetics],
2058area[shop=perfumery],
2059area[shop=tea],
2060area[shop=coffee],
2061area[shop=antiques],
2062area[shop=music],
2063area[shop=weapons],
2064area[shop=funeral_directors],
2065area[shop=wine],
2066area[shop=farm],
2067area[shop=tattoo],
2068area[shop=art],
2069area[shop=bag] {
2070    fill-color: shop#00005f;
2071}
2072node[shop=supermarket] {
2073    icon-image: "presets/shop/supermarket.svg";
2074    set icon_z17;
2075}
2076node[shop=convenience] {
2077    icon-image: "presets/shop/convenience.svg";
2078    set icon_z17;
2079}
2080node[shop=bakery] {
2081    icon-image: "presets/shop/groceries/bakery.svg";
2082    set icon_z17;
2083}
2084node[shop=butcher] {
2085    icon-image: "presets/shop/groceries/butcher.svg";
2086    set icon_z17;
2087}
2088node[shop=bicycle] {
2089    icon-image: "presets/shop/bicycle.svg";
2090    set icon_z17;
2091}
2092node[shop=doityourself] {
2093    icon-image: "presets/shop/diy_store.svg";
2094    set icon_z17;
2095}
2096node[shop=dry_cleaning],
2097node[shop=laundry] {
2098    icon-image: "presets/shop/laundry.svg";
2099    set icon_z17;
2100}
2101node[shop=outdoor] {
2102    icon-image: "presets/shop/outdoor.svg";
2103    set icon_z17;
2104}
2105node[shop=kiosk] {
2106    icon-image: "presets/shop/kiosk.svg";
2107    set icon_z17;
2108}
2109node[shop=beverages] {
2110    icon-image: "presets/shop/beverages.svg";
2111    set icon_z17;
2112}
2113node[shop=alcohol] {
2114    icon-image: "presets/shop/alcohol.svg";
2115    set icon_z17;
2116}
2117node[shop=books] {
2118    icon-image: "presets/shop/book.svg";
2119    set icon_z17;
2120}
2121node[shop=boutique] {
2122    icon-image: "presets/shop/boutique.svg";
2123    set icon_z17;
2124}
2125node[shop=car] {
2126    icon-image: "presets/shop/vehicle.svg";
2127    set icon_z17;
2128}
2129node[shop=car_repair] {
2130    icon-image: "presets/vehicle/repair_shop.svg";
2131    set icon_z17;
2132}
2133node[shop=tyres] {
2134    icon-image: "presets/vehicle/tyres.svg";
2135    set icon_z17;
2136}
2137node[shop=chemist] {
2138    icon-image: "presets/shop/chemist.svg";
2139    set icon_z17;
2140}
2141node[shop=tobacco] {
2142    icon-image: "presets/shop/tobacco.svg";
2143    set icon_z17;
2144}
2145node[shop=e-cigarette] {
2146    icon-image: "presets/shop/e-cigarette.svg";
2147    set icon_z17;
2148}
2149node[shop=clothes] {
2150    icon-image: "presets/shop/clothes.svg";
2151    set icon_z17;
2152}
2153node[shop=computer] {
2154    icon-image: "presets/shop/computer.svg";
2155    set icon_z17;
2156}
2157node[shop=confectionery] {
2158    icon-image: "presets/shop/groceries/confectionery.svg";
2159    set icon_z17;
2160}
2161node[shop=pastry] {
2162    icon-image: "presets/shop/groceries/pastry.svg";
2163    set icon_z17;
2164}
2165node[shop=copyshop] {
2166    icon-image: "presets/shop/copyshop.svg";
2167    set icon_z17;
2168}
2169node[shop=curtain] {
2170    icon-image: "presets/shop/curtain.svg";
2171    set icon_z17;
2172}
2173node[shop=cycle_repair] {
2174    icon-image: "presets/shop/bicycle.svg";
2175    set icon_z17;
2176}
2177node[shop=department_store] {
2178    icon-image: "presets/shop/mall.svg";
2179    set icon_z17;
2180}
2181node[shop=deli] {
2182    icon-image: "presets/shop/groceries/deli.svg";
2183    set icon_z17;
2184}
2185node[shop=doors] {
2186    icon-image: "presets/shop/doors.svg";
2187    set icon_z17;
2188}
2189node[shop=electronics] {
2190    icon-image: "presets/shop/electronics.svg";
2191    set icon_z17;
2192}
2193node[shop=erotic] {
2194    icon-image: "presets/shop/erotic.svg";
2195    set icon_z17;
2196}
2197node[shop=furniture] {
2198    icon-image: "presets/shop/furniture.svg";
2199    set icon_z17;
2200}
2201node[shop=fabric] {
2202    icon-image: "presets/shop/fabric.svg";
2203    set icon_z17;
2204}
2205node[shop=florist] {
2206    icon-image: "presets/shop/florist.svg";
2207    set icon_z17;
2208}
2209node[shop=frame] {
2210    icon-image: "presets/shop/frame.svg";
2211    set icon_z17;
2212}
2213node[shop=gas] {
2214    icon-image: "presets/shop/gas.svg";
2215    set icon_z17;
2216}
2217node[shop=gift] {
2218    icon-image: "presets/shop/present.svg";
2219    set icon_z17;
2220}
2221node[shop=greengrocer] {
2222    icon-image: "presets/shop/groceries/greengrocer.svg";
2223    set icon_z17;
2224}
2225node[shop=garden_centre] {
2226    icon-image: "presets/shop/garden_centre.svg";
2227    set icon_z17;
2228}
2229node[shop=hairdresser] {
2230    icon-image: "presets/shop/hairdresser.svg";
2231    set icon_z17;
2232}
2233node[shop=hardware] {
2234    icon-image: "presets/shop/hardware.svg";
2235    set icon_z17;
2236}
2237node[shop=hearing_aids] {
2238    icon-image: "presets/shop/hearing_aids.svg";
2239    set icon_z17;
2240}
2241node[shop=hifi] {
2242    icon-image: "presets/shop/hifi.svg";
2243    set icon_z17;
2244}
2245node[shop=houseware] {
2246    icon-image: "presets/shop/houseware.svg";
2247    set icon_z17;
2248}
2249node[shop=jewelry] {
2250    icon-image: "presets/shop/jewelry.svg";
2251    set icon_z17;
2252}
2253node[shop=kitchen] {
2254    icon-image: "presets/shop/kitchen.svg";
2255    set icon_z17;
2256}
2257node[shop=mall] {
2258    icon-image: "presets/shop/mall.svg";
2259    set icon_z17;
2260}
2261node[shop=massage] {
2262    icon-image: "presets/shop/massage.svg";
2263    set icon_z17;
2264}
2265node[shop=mobile_phone] {
2266    icon-image: "presets/shop/mobile_phone.svg";
2267    set icon_z17;
2268}
2269node[shop=watches] {
2270    icon-image: "presets/shop/watches.svg";
2271    set icon_z17;
2272}
2273node[shop=motorcycle] {
2274    icon-image: "presets/vehicle/motorbike.svg";
2275    set icon_z17;
2276}
2277node[shop=musical_instrument] {
2278    icon-image: "presets/shop/musical_instrument.svg";
2279    set icon_z17;
2280}
2281node[shop=newsagent] {
2282    icon-image: "presets/shop/news.svg";
2283    set icon_z17;
2284}
2285node[shop=optician] {
2286    icon-image: "presets/shop/optician.svg";
2287    set icon_z17;
2288}
2289node[shop=medical_supply] {
2290    icon-image: "presets/shop/medical_supply.svg";
2291    set icon_z17;
2292}
2293node[shop=paint] {
2294    icon-image: "presets/shop/paint.svg";
2295    set icon_z17;
2296}
2297node[shop=party] {
2298    icon-image: "presets/shop/party.svg";
2299    set icon_z17;
2300}
2301node[shop=pawnbroker] {
2302    icon-image: "presets/shop/pawnbroker.svg";
2303    set icon_z17;
2304}
2305node[shop=seafood] {
2306    icon-image: "presets/shop/groceries/seafood.svg";
2307    set icon_z17;
2308}
2309node[shop=dairy] {
2310    icon-image: "presets/shop/groceries/dairy.svg";
2311    set icon_z17;
2312}
2313node[shop=cheese] {
2314    icon-image: "presets/shop/groceries/cheese.svg";
2315    set icon_z17;
2316}
2317node[shop=shoes] {
2318    icon-image: "presets/shop/shoes.svg";
2319    set icon_z17;
2320}
2321node[shop=sports] {
2322    icon-image: "presets/sport/multi.svg";
2323    set icon_z17;
2324}
2325node[shop=stationery] {
2326    icon-image: "presets/shop/stationery.svg";
2327    set icon_z17;
2328}
2329node[shop=tailor] {
2330    icon-image: "presets/shop/tailor.svg";
2331    set icon_z17;
2332}
2333node[shop=travel_agency] {
2334    icon-image: "presets/shop/travel_agency.svg";
2335    set icon_z17;
2336}
2337node[shop=toys] {
2338    icon-image: "presets/shop/toys.svg";
2339    set icon_z17;
2340}
2341node[shop=vacuum_cleaner] {
2342    icon-image: "presets/shop/vacuum_cleaner.svg";
2343    set icon_z17;
2344}
2345node[shop=variety_store] {
2346    icon-image: "presets/shop/variety_store.svg";
2347    set icon_z17;
2348}
2349node[shop=charity] {
2350    icon-image: "presets/shop/charity.svg";
2351    set icon_z17;
2352}
2353node[shop=video] {
2354    icon-image: "presets/shop/video.svg";
2355    set icon_z17;
2356}
2357node[shop=bookmaker] {
2358    icon-image: "presets/shop/lottery.svg";
2359    set icon_z17;
2360}
2361node[shop=lottery] {
2362    icon-image: "presets/shop/lottery.svg";
2363    set icon_z17;
2364}
2365node[shop=pet] {
2366    icon-image: "presets/shop/pet.svg";
2367    set icon_z17;
2368}
2369node[shop=pet_grooming] {
2370    icon-image: "presets/shop/pet_grooming.svg";
2371    set icon_z17;
2372}
2373node[shop=photo] {
2374    icon-image: "presets/shop/photo.svg";
2375    set icon_z17;
2376}
2377node[shop=ticket] {
2378    icon-image: "presets/shop/ticket.svg";
2379    set icon_z17;
2380}
2381node[shop=carpet] {
2382    icon-image: "presets/shop/carpet.svg";
2383    set icon_z17;
2384}
2385node[shop=interior_decoration] {
2386    icon-image: "presets/shop/interior_decoration.svg";
2387    set icon_z17;
2388}
2389node[shop=car_parts] {
2390    icon-image: "presets/vehicle/car_parts.svg";
2391    set icon_z17;
2392}
2393node[shop=video_games] {
2394    icon-image: "presets/shop/video_games.svg";
2395    set icon_z17;
2396}
2397node[shop=bed] {
2398    icon-image: "presets/shop/bed.svg";
2399    set icon_z17;
2400}
2401node[shop=beauty] {
2402    icon-image: "presets/shop/beauty.svg";
2403    set icon_z17;
2404}
2405node[shop=cosmetics] {
2406    icon-image: "presets/shop/cosmetics.svg";
2407    set icon_z17;
2408}
2409node[shop=perfumery] {
2410    icon-image: "presets/shop/perfumery.svg";
2411    set icon_z17;
2412}
2413node[shop=tea] {
2414    icon-image: "presets/shop/groceries/tea.svg";
2415    set icon_z17;
2416}
2417node[shop=coffee] {
2418    icon-image: "presets/shop/groceries/coffee.svg";
2419    set icon_z17;
2420}
2421node[shop=antiques] {
2422    icon-image: "presets/shop/antique.svg";
2423    set icon_z17;
2424}
2425node[shop=music] {
2426    icon-image: "presets/shop/music.svg";
2427    set icon_z17;
2428}
2429node[shop=weapons] {
2430    icon-image: "presets/shop/weapons.svg";
2431    set icon_z17;
2432}
2433node[shop=funeral_directors] {
2434    icon-image: "presets/shop/funeral_directors.svg";
2435    set icon_z17;
2436}
2437node[shop=wine] {
2438    icon-image: "presets/shop/wine.svg";
2439    set icon_z17;
2440}
2441node[shop=farm] {
2442    icon-image: "presets/shop/groceries/farm.svg";
2443    set icon_z17;
2444}
2445node[shop=tattoo] {
2446    icon-image: "presets/shop/tattoo.svg";
2447    set icon_z17;
2448}
2449node[shop=art] {
2450    icon-image: "presets/shop/art.svg";
2451    set icon_z17;
2452}
2453node[shop=bag] {
2454    icon-image: "presets/shop/bag.svg";
2455    set icon_z17;
2456}
2457
2458/******************/
2459/* emergency tags */
2460/******************/
2461area[emergency=ambulance_station],
2462area[emergency=water_tank] {
2463    fill-color: emergency#eeeeee;
2464}
2465node[emergency=ambulance_station] {
2466    icon-image: "presets/emergency/ambulance_station.svg";
2467    set icon_z17;
2468}
2469node[emergency=water_tank] {
2470    icon-image: "presets/emergency/water_tank.svg";
2471    set icon_z17;
2472}
2473node[emergency=emergency_ward_entrance] {
2474    icon-image: "presets/emergency/emergency_ward_entrance.svg";
2475    set icon_z17;
2476}
2477node[emergency=phone] {
2478    icon-image: "presets/vehicle/emergency_phone.svg";
2479    set icon_z17;
2480}
2481node[emergency=defibrillator] {
2482    icon-image: "presets/emergency/aed.svg";
2483    set icon_z17;
2484}
2485node[emergency=fire_hydrant] {
2486    icon-image: "presets/service/fire_hydrant.svg";
2487    set icon_z17;
2488}
2489node[emergency=fire_extinguisher] {
2490    icon-image: "presets/emergency/fire_extinguisher.svg";
2491    set icon_z17;
2492}
2493node[emergency=fire_hose] {
2494    icon-image: "presets/emergency/fire_hose.svg";
2495    set icon_z17;
2496}
2497node[emergency=assembly_point] {
2498    icon-image: "presets/emergency/assembly_point.svg";
2499    set icon_z17;
2500}
2501node[emergency=siren] {
2502    icon-image: "presets/emergency/siren.svg";
2503    set icon_z17;
2504}
2505
2506/****************/
2507/* police tags */
2508/****************/
2509
2510area[police=barracks],
2511area[police=car_pound],
2512area[police=checkpoint],
2513area[police=detention],
2514area[police=naval_base],
2515area[police=offices],
2516area[police=range],
2517area[police=storage],
2518area[police=training_area],
2519area[police=yes] {
2520    fill-color: police#ecba52;
2521}
2522node[police=barracks],
2523node[police=car_pound],
2524node[police=checkpoint],
2525node[police=detention],
2526node[police=naval_base],
2527node[police=offices],
2528node[police=range],
2529node[police=storage],
2530node[police=training_node],
2531node[police=yes] {
2532    icon-image: "presets/service/police_non_public.svg";
2533    set icon_z17;
2534}
2535
2536/****************/
2537/* amenity tags */
2538/****************/
2539
2540area[amenity=pub],
2541area[amenity=biergarten],
2542area[amenity=nightclub],
2543area[amenity=stripclub],
2544area[amenity=casino],
2545area[amenity=brothel],
2546area[amenity=cafe],
2547area[amenity=restaurant],
2548area[amenity=food_court],
2549area[amenity=fast_food],
2550area[amenity=bar],
2551area[amenity=ice_cream] {
2552    fill-color: amenity#ecba52;
2553}
2554node[amenity=pub] {
2555    icon-image: "presets/food/pub.svg";
2556    set icon_z17;
2557}
2558node[amenity=biergarten] {
2559    icon-image: "presets/food/biergarten.svg";
2560    set icon_z17;
2561}
2562node[amenity=nightclub] {
2563    icon-image: "presets/leisure/nightclub.svg";
2564    set icon_z17;
2565}
2566node[amenity=stripclub] {
2567    icon-image: "presets/leisure/stripclub.svg";
2568    set icon_z17;
2569}
2570node[amenity=casino] {
2571    icon-image: "presets/leisure/casino.svg";
2572    set icon_z17;
2573}
2574node[amenity=brothel] {
2575    icon-image: "presets/leisure/brothel.svg";
2576    set icon_z17;
2577}
2578node[amenity=cafe] {
2579    icon-image: "presets/food/cafe.svg";
2580    set icon_z17;
2581}
2582node[amenity=restaurant] {
2583    icon-image: "presets/food/restaurant.svg";
2584    set icon_z17;
2585}
2586node[amenity=food_court] {
2587    icon-image: "presets/food/food_court.svg";
2588    set icon_z17;
2589}
2590node[amenity=fast_food] {
2591    icon-image: "presets/food/fast_food.svg";
2592    set icon_z17;
2593}
2594node[amenity=bar] {
2595    icon-image: "presets/food/bar.svg";
2596    set icon_z17;
2597}
2598node[amenity=ice_cream] {
2599    icon-image: "presets/food/ice_cream.svg";
2600    set icon_z17;
2601}
2602area[amenity=bicycle_parking]:closed {
2603    fill-color: amenity_traffic#f7efb7;
2604}
2605way[amenity=bicycle_parking] {
2606    width: 2;
2607    color: amenity_traffic#f7efb7;
2608}
2609area[amenity=parking_space] {
2610    fill-color: parking_space#f7efb8;
2611}
2612area[amenity=parking],
2613area[amenity=motorcycle_parking],
2614area[amenity=bicycle_rental],
2615area[amenity=bicycle_repair_station],
2616area[amenity=car_rental],
2617area[amenity=car_pooling],
2618area[amenity=car_sharing],
2619area[amenity=car_wash],
2620area[amenity=taxi],
2621area[amenity=fuel] {
2622    fill-color: amenity_traffic#f7efb7;
2623}
2624node[amenity=parking_space] {
2625    icon-image: "presets/vehicle/parking/parking_space.svg";
2626    set icon_z17;
2627}
2628node[amenity=parking] {
2629    icon-image: "presets/vehicle/parking/parking.svg";
2630    set icon_z17;
2631}
2632node[amenity=parking_entrance] {
2633    icon-image: "presets/vehicle/parking/parking.svg";
2634    set icon_z17;
2635}
2636node[amenity=parking_entrance][parking=multi-storey],
2637node[amenity=parking][parking=multi-storey] {
2638    icon-image: "presets/vehicle/parking/multi-storey.svg";
2639    set icon_z17;
2640}
2641node[amenity=parking_entrance][parking=underground],
2642node[amenity=parking][parking=underground] {
2643    icon-image: "presets/vehicle/parking/underground.svg";
2644    set icon_z17;
2645}
2646node[amenity=motorcycle_parking] {
2647    icon-image: "presets/vehicle/parking/motorbike.svg";
2648    set icon_z17;
2649}
2650node[amenity=bicycle_parking] {
2651    icon-image: "presets/vehicle/parking/bicycle.svg";
2652    set icon_z17;
2653}
2654node[park_ride][park_ride!=no] {
2655    icon-image: "presets/vehicle/parking/park_ride.svg";
2656    set icon_z17;
2657}
2658node[amenity=parking_space][wheelchair?] {
2659    icon-image: "presets/vehicle/parking/handicapped.svg";
2660    set icon_z17;
2661}
2662node[amenity=bicycle_rental] {
2663    icon-image: "presets/vehicle/bicycle_rental.svg";
2664    set icon_z17;
2665}
2666node[amenity=bicycle_repair_station] {
2667    icon-image: "presets/vehicle/bicycle_repair_station.svg";
2668    set icon_z17;
2669}
2670node[amenity=car_rental] {
2671    icon-image: "presets/vehicle/car_rental.svg";
2672    set icon_z17;
2673}
2674node[amenity=car_pooling] {
2675    icon-image: "presets/vehicle/car_pooling.svg";
2676    set icon_z17;
2677}
2678node[amenity=car_sharing] {
2679    icon-image: "presets/vehicle/car_sharing.svg";
2680    set icon_z17;
2681}
2682node[amenity=car_wash] {
2683    icon-image: "presets/vehicle/car_wash.svg";
2684    set icon_z17;
2685}
2686node[amenity=taxi] {
2687    icon-image: "presets/transport/taxi.svg";
2688    set icon_z17;
2689}
2690node[amenity=fuel] {
2691    icon-image: "presets/vehicle/fuel.svg";
2692    set icon_z17;
2693}
2694node[amenity=charging_station] {
2695    icon-image: "presets/vehicle/charging_station.svg";
2696    set icon_z17;
2697}
2698node[amenity=grit_bin] {
2699    icon-image: "presets/misc/grit_bin.svg";
2700    set icon_z17;
2701}
2702node[amenity=telephone] {
2703    icon-image: "presets/service/telephone.svg";
2704    set icon_z17;
2705}
2706node[amenity=clock] {
2707    icon-image: "presets/service/clock.svg";
2708    set icon_z17;
2709}
2710node[amenity=photo_booth] {
2711    icon-image: "presets/service/photo_booth.svg";
2712    set icon_z17;
2713}
2714area[amenity=toilets],
2715area[amenity=shower],
2716area[amenity=internet_cafe],
2717area[amenity=recycling],
2718area[amenity=sanitary_dump_station] {
2719    fill-color: amenity_light#f7efb7;
2720}
2721node[amenity=toilets] {
2722    icon-image: "presets/service/toilets.svg";
2723    set icon_z17;
2724}
2725node[amenity=shower] { 
2726    icon-image: "presets/service/shower.svg";
2727    set icon_z17;
2728}
2729node[amenity=internet_cafe] { 
2730    icon-image: "presets/service/internet_cafe.svg";
2731    set icon_z17;
2732}
2733node[amenity=recycling] {
2734    icon-image: "presets/service/recycling/recycling.svg";
2735    set icon_z17;
2736}
2737node[amenity=recycling][recycling_type=container] {
2738    icon-image: "presets/service/recycling/recycling_container.svg";
2739}
2740node[amenity=recycling][recycling_type=centre] {
2741    icon-image: "presets/service/recycling/recycling_centre.svg";
2742}
2743node[amenity=waste_basket] {
2744    icon-image: "presets/service/recycling/waste_basket.svg";
2745    set icon_z17;
2746}
2747node[amenity=waste_disposal] {
2748    icon-image: "presets/service/recycling/waste_disposal.svg";
2749    set icon_z17;
2750}
2751node[amenity=sanitary_dump_station] {
2752    icon-image: "presets/service/recycling/sanitary_dump_station.svg";
2753    set icon_z17;
2754}
2755area[amenity=townhall],
2756area[amenity=embassy],
2757area[amenity=community_centre] {
2758    fill-color: amenity_light#f7efb7;
2759}
2760node[amenity=townhall] {
2761    icon-image: "presets/service/townhall.svg";
2762    set icon_z17;
2763}
2764node[amenity=embassy] {
2765    icon-image: "presets/service/embassy.svg";
2766    set icon_z17;
2767}
2768node[amenity=community_centre] {
2769    icon-image: "presets/service/community_centre.svg";
2770    set icon_z17;
2771}
2772area[amenity=water_point],
2773area[amenity=fountain] {
2774    fill-color: light_water#00005f;
2775}
2776node[amenity=drinking_water] {
2777    icon-image: "presets/food/drinking_water.svg";
2778    set icon_z17;
2779}
2780node[amenity=water_point] {
2781    icon-image: "presets/accommodation/water.svg";
2782    set icon_z17;
2783}
2784node[amenity=fountain] {
2785    icon-image: "presets/misc/fountain.svg";
2786    set icon_z17;
2787}
2788area[amenity=place_of_worship],
2789area[amenity=grave_yard],
2790area[amenity=crematorium],
2791area[amenity=post_office],
2792area[amenity=studio],
2793area[amenity=school],
2794area[amenity=university],
2795area[amenity=college],
2796area[amenity=kindergarten],
2797area[amenity=driving_school] {
2798    fill-color: amenity_light#f7efb7;
2799}
2800node[amenity=place_of_worship] {
2801    icon-image: "presets/religion/religion.svg";
2802    set icon_z17;
2803}
2804node[amenity=place_of_worship][religion=bahai] {
2805    icon-image: "presets/religion/bahai.svg";
2806    set icon_z17;
2807}
2808node[amenity=place_of_worship][religion=buddhist] {
2809    icon-image: "presets/religion/buddhism.svg";
2810    set icon_z17;
2811}
2812node[amenity=place_of_worship][religion=caodaism][!is_prop_set(icon-image)] {
2813    icon-image: "presets/misc/no_icon.svg";
2814    set icon_z17;
2815}
2816node[amenity=place_of_worship][religion=christian] {
2817    icon-image: "presets/religion/church.svg";
2818    set icon_z17;
2819}
2820node[amenity=place_of_worship][religion=confucian] {
2821    icon-image: "presets/religion/confucian.svg";
2822    set icon_z17;
2823}
2824node[amenity=place_of_worship][religion=hindu] {
2825    icon-image: "presets/religion/hinduism.svg";
2826    set icon_z17;
2827}
2828node[amenity=place_of_worship][religion=jain] {
2829    icon-image: "presets/religion/jainism.svg";
2830    set icon_z17;
2831}
2832node[amenity=place_of_worship][religion=jewish] {
2833    icon-image: "presets/religion/jewish.svg";
2834    set icon_z17;
2835}
2836node[amenity=place_of_worship][religion=muslim] {
2837    icon-image: "presets/religion/muslim.svg";
2838    set icon_z17;
2839}
2840node[amenity=place_of_worship][religion=shinto] {
2841    icon-image: "presets/religion/shinto.svg";
2842    set icon_z17;
2843}
2844node[amenity=place_of_worship][religion=sikh] {
2845    icon-image: "presets/religion/sikhism.svg";
2846    set icon_z17;
2847}
2848node[amenity=place_of_worship][religion=spiritualist][!is_prop_set(icon-image)] {
2849    icon-image: "presets/misc/no_icon.svg";
2850    set icon_z17;
2851}
2852node[amenity=place_of_worship][religion=taoist] {
2853    icon-image: "presets/religion/taoism.svg";
2854    set icon_z17;
2855}
2856node[amenity=place_of_worship][religion=tenrikyo] {
2857    icon-image: "presets/religion/tenrikyo.svg";
2858    set icon_z17;
2859}
2860node[amenity=place_of_worship][religion=unitarian_universalist][!is_prop_set(icon-image)] {
2861    icon-image: "presets/misc/no_icon.svg";
2862    set icon_z17;
2863}
2864node[amenity=place_of_worship][religion=zoroastrian][!is_prop_set(icon-image)] {
2865    icon-image: "presets/misc/no_icon.svg";
2866    set icon_z17;
2867}
2868node[amenity=grave_yard] {
2869    icon-image: "presets/landuse/graveyard.svg";
2870    set icon_z17;
2871}
2872node[amenity=crematorium][!is_prop_set(icon-image)] {
2873    icon-image: "presets/misc/no_icon.svg";
2874    set icon_z17;
2875}
2876node[amenity=post_office] {
2877    icon-image: "presets/service/post_office.svg";
2878    set icon_z17;
2879}
2880node[amenity=post_box] {
2881    icon-image: "presets/service/post_box.svg";
2882    set icon_z17;
2883}
2884node[amenity=studio] {
2885    icon-image: "presets/service/studio.svg";
2886    set icon_z17;
2887}
2888node[amenity=school] {
2889    icon-image: "presets/education/school.svg";
2890    set icon_z17;
2891}
2892node[amenity=university] {
2893    icon-image: "presets/education/university.svg";
2894    set icon_z17;
2895}
2896node[amenity=college] {
2897    icon-image: "presets/education/college.svg";
2898    set icon_z17;
2899}
2900node[amenity=kindergarten] {
2901    icon-image: "presets/education/kindergarten.svg";
2902    set icon_z17;
2903}
2904node[amenity=driving_school] {
2905    icon-image: "presets/education/driving_school.svg";
2906    set icon_z17;
2907}
2908area[amenity=pharmacy],
2909area[amenity=hospital],
2910area[amenity=clinic],
2911area[amenity=nursing_home],
2912area[amenity=social_facility],
2913area[amenity=baby_hatch],
2914area[amenity=doctors],
2915area[amenity=dentist],
2916area[amenity=veterinary] {
2917    fill-color: health#eeeeee;
2918}
2919node[amenity=pharmacy] {
2920    icon-image: "presets/health/pharmacy.svg";
2921    set icon_z17;
2922}
2923node[amenity=hospital] {
2924    icon-image: "presets/health/hospital.svg";
2925    set icon_z17;
2926}
2927node[amenity=clinic] {
2928    icon-image: "presets/health/clinic.svg";
2929    set icon_z17;
2930}
2931node[amenity=social_facility][social_facility=nursing_home],
2932node[amenity=nursing_home] {
2933    icon-image: "presets/social_facility/nursing_home.svg";
2934    set icon_z17;
2935}
2936node[amenity=social_facility][social_facility=group_home] {
2937    icon-image: "presets/social_facility/group_home.svg";
2938    set icon_z17;
2939}
2940node[amenity=social_facility][social_facility=assisted_living] {
2941    icon-image: "presets/social_facility/assisted_living.svg";
2942    set icon_z17;
2943}
2944node[amenity=social_facility][social_facility=outreach] {
2945    icon-image: "presets/social_facility/outreach.svg";
2946    set icon_z17;
2947}
2948node[amenity=social_facility][social_facility=shelter] {
2949    icon-image: "presets/social_facility/shelter.svg";
2950    set icon_z17;
2951}
2952node[amenity=social_facility][social_facility=food_bank] {
2953    icon-image: "presets/social_facility/food_bank.svg";
2954    set icon_z17;
2955}
2956node[amenity=baby_hatch] {
2957    icon-image: "presets/health/baby_hatch.svg";
2958    set icon_z17;
2959}
2960node[amenity=doctors] {
2961    icon-image: "presets/health/doctors.svg";
2962    set icon_z17;
2963}
2964node[amenity=dentist] {
2965    icon-image: "presets/health/dentist.svg";
2966    set icon_z17;
2967}
2968node[amenity=veterinary] {
2969    icon-image: "presets/health/veterinary.svg";
2970    set icon_z17;
2971}
2972area[amenity=library],
2973area[amenity=police],
2974area[amenity=ranger_station],
2975area[amenity=fire_station],
2976area[amenity=bus_station],
2977area[amenity=ferry_terminal],
2978area[amenity=theatre],
2979area[amenity=cinema],
2980area[amenity=arts_centre],
2981area[amenity=courthouse],
2982area[amenity=prison],
2983area[amenity=bank],
2984area[amenity=bureau_de_change],
2985area[amenity=money_transfer],
2986area[amenity=bbq],
2987area[amenity=watering_place] {
2988    fill-color: amenity_light#f7efb7;
2989}
2990node[amenity=library] {
2991    icon-image: "presets/education/library.svg";
2992    set icon_z17;
2993}
2994node[amenity=police] {
2995    icon-image: "presets/service/police.svg";
2996    set icon_z17;
2997}
2998node[amenity=ranger_station] {
2999    icon-image: "presets/service/ranger_station.svg";
3000    set icon_z17;
3001}
3002node[amenity=fire_station] {
3003    icon-image: "presets/service/firebrigade.svg";
3004    set icon_z17;
3005}
3006node[amenity=bus_station] {
3007    icon-image: "presets/transport/bus_old.svg";
3008    set icon_z17;
3009}
3010node[amenity=ferry_terminal] {
3011    icon-image: "presets/nautical/ferry.svg";
3012    set icon_z17;
3013}
3014node[amenity=theatre] {
3015    icon-image: "presets/leisure/theater.svg";
3016    set icon_z17;
3017}
3018node[amenity=cinema] {
3019    icon-image: "presets/leisure/cinema.svg";
3020    set icon_z17;
3021}
3022node[amenity=arts_centre] {
3023    icon-image: "presets/sightseeing/arts_centre.svg";
3024    set icon_z17;
3025}
3026node[amenity=courthouse] {
3027    icon-image: "presets/service/courthouse.svg";
3028    set icon_z17;
3029}
3030node[amenity=prison] {
3031    icon-image: "presets/service/prison.svg";
3032    set icon_z17;
3033}
3034node[amenity=bank] {
3035    icon-image: "presets/money/bank.svg";
3036    set icon_z17;
3037}
3038node[amenity=bureau_de_change] {
3039    icon-image: "presets/money/exchange.svg";
3040    set icon_z17;
3041}
3042node[amenity=money_transfer] {
3043    icon-image: "presets/money/money_transfer.svg";
3044    set icon_z17;
3045}
3046node[amenity=atm] {
3047    icon-image: "presets/money/atm.svg";
3048    set icon_z17;
3049}
3050way[amenity=bench] {
3051    width: 2;
3052    color: amenity_light#f7efb7;
3053}
3054node[amenity=bench] {
3055    icon-image: "presets/leisure/bench.svg";
3056    set icon_z17;
3057}
3058node[amenity=bbq] {
3059    icon-image: "presets/leisure/bbq.svg";
3060    set icon_z17;
3061}
3062node[amenity=compressed_air] {
3063    icon-image: "presets/vehicle/compressed_air.svg";
3064    set icon_z17;
3065}
3066node[amenity=watering_place] {
3067    icon-image: "presets/misc/watering_place.svg";
3068    set icon_z17;
3069}
3070area[amenity=shelter],
3071area[amenity=marketplace],
3072area[amenity=wlan] {
3073    fill-color: amenity_light#f7efb7;
3074}
3075node[amenity=shelter] {
3076    icon-image: "presets/accommodation/shelter.svg";
3077    set icon_z17;
3078}
3079node[amenity=shelter][shelter_type=public_transport] {
3080    icon-image: "presets/accommodation/shelter_public_transport.svg";
3081    set icon_z17;
3082}
3083node[amenity=shelter][shelter_type=picnic_shelter] {
3084    icon-image: "presets/accommodation/shelter_picnic.svg";
3085    set icon_z17;
3086}
3087node[amenity=shelter][shelter_type=basic_hut] {
3088    icon-image: "presets/accommodation/basic_hut.svg";
3089    set icon_z17;
3090}
3091node[amenity=shelter][shelter_type=lean_to] {
3092    icon-image: "presets/accommodation/shelter_lean_to.svg";
3093    set icon_z17;
3094}
3095node[amenity=hunting_stand] {
3096    icon-image: "presets/landmark/hunting_stand.svg";
3097    set icon_z17;
3098}
3099node[amenity=marketplace] {
3100    icon-image: "presets/shop/marketplace.svg";
3101    set icon_z17;
3102}
3103node[amenity=vending_machine] {
3104    icon-image: "presets/transport/ticket-machine.svg";
3105    set icon_z17;
3106}
3107node[vending=excrement_bags] {
3108    icon-image: "presets/service/excrement_bags.svg";
3109    set icon_z17;
3110}
3111
3112/**************/
3113/* craft tags */
3114/**************/
3115
3116area[craft=carpenter],
3117area[craft=shoemaker],
3118area[craft=photographer],
3119area[craft=metal_construction],
3120area[craft=electrician],
3121area[craft=brewery],
3122area[craft=plumber],
3123area[craft=sawmill],
3124area[craft=gardener],
3125area[craft=winery],
3126area[craft=hvac],
3127area[craft=painter],
3128area[craft=stonemason],
3129area[craft=handicraft],
3130area[craft=pottery],
3131area[craft=key_cutter],
3132area[craft=caterer],
3133area[craft=roofer],
3134area[craft=beekeeper],
3135area[craft=blacksmith],
3136area[craft=locksmith],
3137area[craft=window_construction],
3138area[craft=upholsterer],
3139area[craft=tiler] {
3140    fill-color: craft#999900;
3141}
3142node[craft=carpenter] {
3143    icon-image: "presets/craft/carpenter.svg";
3144    set icon_z17;
3145}
3146node[craft=shoemaker][!is_prop_set(icon-image)] {
3147    icon-image: "presets/misc/no_icon.svg";
3148    set icon_z17;
3149}
3150node[craft=photographer][!is_prop_set(icon-image)] {
3151    icon-image: "presets/misc/no_icon.svg";
3152    set icon_z17;
3153}
3154node[craft=metal_construction] {
3155    icon-image: "presets/craft/metal_construction.svg";
3156    set icon_z17;
3157}node[craft=electrician] {
3158    icon-image: "presets/craft/electrician.svg";
3159    set icon_z17;
3160}
3161node[craft=brewery][!is_prop_set(icon-image)] {
3162    icon-image: "presets/misc/no_icon.svg";
3163    set icon_z17;
3164}
3165node[craft=plumber] {
3166    icon-image: "presets/craft/plumber.svg";
3167    set icon_z17;
3168}
3169node[craft=sawmill] {
3170    icon-image: "presets/craft/sawmill.svg";
3171    set icon_z17;
3172}
3173node[craft=gardener][!is_prop_set(icon-image)] {
3174    icon-image: "presets/misc/no_icon.svg";
3175    set icon_z17;
3176}
3177node[craft=winery][!is_prop_set(icon-image)] {
3178    icon-image: "presets/misc/no_icon.svg";
3179    set icon_z17;
3180}
3181node[craft=hvac] {
3182    icon-image: "presets/craft/hvac.svg";
3183    set icon_z17;
3184}
3185node[craft=painter] {
3186    icon-image: "presets/craft/painter.svg";
3187    set icon_z17;
3188}
3189node[craft=stonemason][!is_prop_set(icon-image)] {
3190    icon-image: "presets/misc/no_icon.svg";
3191    set icon_z17;
3192}
3193node[craft=handicraft][!is_prop_set(icon-image)] {
3194    icon-image: "presets/misc/no_icon.svg";
3195    set icon_z17;
3196}
3197node[craft=pottery] {
3198    icon-image: "presets/craft/pottery.svg";
3199    set icon_z17;
3200}
3201node[craft=key_cutter] {
3202    icon-image: "presets/craft/key_cutter.svg";
3203    set icon_z17;
3204}
3205node[craft=caterer][!is_prop_set(icon-image)] {
3206    icon-image: "presets/misc/no_icon.svg";
3207    set icon_z17;
3208}
3209node[craft=roofer] {
3210    icon-image: "presets/craft/roofer.svg";
3211    set icon_z17;
3212}
3213node[craft=beekeeper] {
3214    icon-image: "presets/craft/beekeeper.svg";
3215    set icon_z17;
3216}
3217node[craft=blacksmith][!is_prop_set(icon-image)] {
3218    icon-image: "presets/misc/no_icon.svg";
3219    set icon_z17;
3220}
3221node[craft=locksmith] {
3222    icon-image: "presets/craft/locksmith.svg";
3223    set icon_z17;
3224}
3225node[craft=window_construction] {
3226    icon-image: "presets/craft/window_construction.svg";
3227    set icon_z17;
3228}
3229node[craft=upholsterer][!is_prop_set(icon-image)] {
3230    icon-image: "presets/misc/no_icon.svg";
3231    set icon_z17;
3232}
3233node[craft=tiler] {
3234    icon-image: "presets/craft/tiler.svg";
3235    set icon_z17;
3236}
3237
3238/****************/
3239/* tourism tags */
3240/****************/
3241
3242area[tourism=hotel],
3243area[tourism=motel],
3244area[tourism=guest_house],
3245area[tourism=apartment],
3246area[tourism=hostel],
3247area[tourism=chalet],
3248area[tourism=alpine_hut],
3249area[tourism=wilderness_hut],
3250area[tourism=camp_site],
3251area[tourism=caravan_site] {
3252    fill-color: hotel#feced0;
3253}
3254node[tourism=hotel] {
3255    icon-image: "presets/accommodation/hotel.svg";
3256    set icon_z17;
3257}
3258node[tourism=motel] {
3259    icon-image: "presets/accommodation/motel.svg";
3260    set icon_z17;
3261}
3262node[tourism=guest_house] {
3263    icon-image: "presets/accommodation/guest_house.svg";
3264    set icon_z17;
3265}
3266node[tourism=apartment] {
3267    icon-image: "presets/accommodation/apartment.svg";
3268    set icon_z17;
3269}
3270node[tourism=hostel] {
3271    icon-image: "presets/accommodation/hostel.svg";
3272    set icon_z17;
3273}
3274node[tourism=chalet] {
3275    icon-image: "presets/accommodation/chalet.svg";
3276    set icon_z17;
3277}
3278node[tourism=alpine_hut] {
3279    icon-image: "presets/accommodation/alpine_hut.svg";
3280    set icon_z17;
3281}
3282node[tourism=wilderness_hut] {
3283    icon-image: "presets/accommodation/wilderness_hut.svg";
3284    set icon_z17;
3285}
3286node[tourism=camp_site] {
3287    icon-image: "presets/accommodation/camping.svg";
3288    set icon_z17;
3289}
3290node[tourism=caravan_site] {
3291    icon-image: "presets/accommodation/caravan.svg";
3292    set icon_z17;
3293}
3294area[tourism=attraction]:closed {
3295    fill-color: tourism#e180a2;
3296}
3297way[tourism=attraction] {
3298    width: 2;
3299    color: tourism#e180a2;
3300}
3301node[tourism=attraction] {
3302    icon-image: "presets/sightseeing/attraction.svg";
3303    set icon_z17;
3304}
3305area[tourism=picnic_site],
3306area[tourism=viewpoint],
3307area[tourism=theme_park],
3308area[tourism=zoo],
3309area[tourism=museum] {
3310    fill-color: tourism#e180a2;
3311}
3312node[tourism=picnic_site] {
3313    icon-image: "presets/leisure/picnic.svg";
3314    set icon_z17;
3315}
3316node[tourism=viewpoint] {
3317    icon-image: "presets/sightseeing/viewpoint.svg";
3318    set icon_z17;
3319}
3320node[tourism=theme_park] {
3321    icon-image: "presets/leisure/theme_park.svg";
3322    set icon_z17;
3323}
3324node[tourism=zoo] {
3325    icon-image: "presets/leisure/zoo.svg";
3326    set icon_z17;
3327}
3328area[tourism=artwork]:closed {
3329    fill-color: tourism#e180a2;
3330}
3331way[tourism=artwork] {
3332    width: 2;
3333    color: tourism#e180a2;
3334}
3335node[tourism=artwork] {
3336    icon-image: "presets/sightseeing/arts_centre.svg";
3337    set icon_z17;
3338}
3339node[tourism=museum] {
3340    icon-image: "presets/sightseeing/museum.svg";
3341    set icon_z17;
3342}
3343
3344/********************/
3345/* attraction tags */
3346/********************/
3347
3348area[attraction=animal] {
3349    fill-color: attraction#ffbfd3;
3350    color: attraction#ffbfd3; /* color explizitly needed here to overwrite the color already set by (a lot of wrongly tagged) tourism=attraction */
3351}
3352node[attraction=animal] {
3353    icon-image: "presets/attraction/animal.svg";
3354    set icon_z17;
3355}
3356
3357/********************/
3358/* information tags */
3359/********************/
3360
3361area[tourism=information] {
3362    fill-color: tourism#e180a2;
3363}
3364node[tourism=information] {
3365    icon-image: "presets/misc/information/information.svg";
3366    set icon_z17;
3367}
3368node[tourism=information][information=guidepost] {
3369    icon-image: "presets/misc/information/guidepost.svg";
3370    set icon_z17;
3371}
3372area[tourism=information][information=office] {
3373    fill-color: tourism#e180a2;
3374}
3375node[tourism=information][information=office] {
3376    icon-image: "presets/misc/information/informationoffice.svg";
3377    set icon_z17;
3378}
3379node[tourism=information][information=map] {
3380    icon-image: "presets/misc/information/map.svg";
3381    set icon_z17;
3382}
3383node[tourism=information][information=board] {
3384    icon-image: "presets/misc/information/board.svg";
3385    set icon_z17;
3386}
3387
3388/*****************/
3389/* historic tags */
3390/*****************/
3391
3392area[historic=castle],
3393area[historic=monument],
3394area[historic=memorial],
3395area[historic=tomb],
3396area[historic=archaeological_site],
3397area[historic=ruins],
3398area[historic=battlefield],
3399area[geological=palaeontological_site],
3400area[historic=wayside_cross],
3401area[historic=wayside_shrine],
3402area[historic=boundary_stone] {
3403    fill-color: historic#663300;
3404}
3405node[historic=castle] {
3406    icon-image: "presets/sightseeing/castle.svg";
3407    set icon_z17;
3408}
3409node[historic=monument] {
3410    icon-image: "presets/sightseeing/monument.svg";
3411    set icon_z17;
3412}
3413node[historic=memorial] {
3414    icon-image: "presets/sightseeing/memorial.svg";
3415    set icon_z17;
3416}
3417node[historic=archaeological_site] {
3418    icon-image: "presets/sightseeing/archaeological.svg";
3419    set icon_z17;
3420}
3421node[historic=ruins] {
3422    icon-image: "presets/sightseeing/ruins.svg";
3423    set icon_z17;
3424}
3425node[historic=battlefield] {
3426    icon-image: "presets/sightseeing/battlefield.svg";
3427    set icon_z17;
3428}
3429node[geological=palaeontological_site] {
3430    icon-image: "presets/sightseeing/palaeontological_site.svg";
3431    set icon_z17;
3432}
3433node[historic=wayside_cross] {
3434    icon-image: "presets/religion/wayside_cross.svg";
3435    set icon_z17;
3436}
3437node[historic=wayside_shrine] {
3438    icon-image: "presets/religion/wayside_shrine.svg";
3439    set icon_z17;
3440}
3441node[historic=boundary_stone] {
3442    icon-image: "presets/landmark/boundary_stone.svg";
3443    set icon_z17;
3444}
3445area[cemetery=grave] {
3446    fill-color: grave#663300;
3447}
3448node[cemetery=grave] {
3449    icon-image: "presets/misc/grave.svg";
3450    set icon_z17;
3451}
3452area[cemetery=sector] {
3453    fill-color: cemetery_sector#dbf8e6;
3454}
3455node[cemetery=sector] {
3456    icon-image: "presets/misc/cemetery_sector.svg";
3457    set icon_z17;
3458}
3459node[historic=tomb] {
3460    icon-image: "presets/misc/tomb.svg";
3461    set icon_z17;
3462}
3463
3464/****************/
3465/* landuse tags */
3466/****************/
3467
3468area[landuse],
3469area[leisure],
3470area[amenity],
3471area[place],
3472area[natural],
3473area[man_made] {
3474    z-index: -2; /* put areas that can have other areas inside (e.g. building) a little lower, see #9606 */
3475}
3476area[landuse=farmland] {
3477    fill-color: farmland#b8e0b1;
3478}
3479area[landuse=meadow] {
3480    fill-color: meadow#b1e0b6;
3481}
3482area[landuse=vineyard],
3483area[landuse=orchard] {
3484    fill-color: green#b1e0c2;
3485}
3486area[landuse=quarry] {
3487    fill-color: quarry#888888;
3488}
3489area[landuse=landfill] {
3490    fill-color: landfill#663300;
3491}
3492area[landuse=basin],
3493area[landuse=reservoir] {
3494    fill-color: basin#0000bf;
3495}
3496area[landuse=forest] {
3497    fill-color: forest#b1efc8;
3498}
3499area[landuse=allotments] {
3500    fill-color: allotments#5dbf80;
3501}
3502area[landuse=greenhouse_horticulture],
3503area[landuse=plant_nursery] {
3504    fill-color: green#b1e0c2;
3505}
3506area[landuse=salt_pond] {
3507    fill-color: salt_pond#eeeeee;
3508}
3509area[landuse=aquaculture] {
3510    fill-color: aquaculture#189dff;
3511}
3512area[landuse=grass] {
3513    fill-color: grass#97ca96;
3514}
3515area[landuse=residential] {
3516    fill-color: residential#f0f0f0;
3517}
3518area[landuse=garages] {
3519    fill-color: garages#d6c8aa;
3520}
3521area[landuse=farmyard] {
3522    fill-color: farmyard#f0f0f0;
3523}
3524area[landuse=retail],
3525area[landuse=commercial] {
3526    fill-color: retail#ffc4ee;
3527}
3528area[landuse=industrial] {
3529    fill-color: industrial#ecd8ff;
3530}
3531area[landuse=brownfield] {
3532    fill-color: brownfield#ecba32;
3533}
3534area[landuse=greenfield] {
3535    fill-color: greenfield#b1ec5c;
3536}
3537area[landuse=railway] {
3538    fill-color: railland#888888;
3539}
3540area[landuse=construction] {
3541    fill-color: construction#ffff00;
3542}
3543way[landuse=construction] {
3544    width: 1;
3545    color: construction#ffff00;
3546    dashes: 9,9;
3547}
3548area[landuse=military] {
3549    fill-color: military#b62c2c;
3550}
3551area[landuse=religious] {
3552    fill-color: religious#ffd454;
3553}
3554area[landuse=cemetery] {
3555    fill-color: cemetery#b1efc8;
3556}
3557area[landuse=village_green] {
3558    fill-color: green#b1e0c2;
3559}
3560area[landuse=recreation_ground] {
3561    fill-color: green#b1e0c2;
3562}
3563node[landuse] {
3564    icon-image: "presets/misc/deprecated.svg";
3565    set icon_z17;
3566}
3567
3568/*****************/
3569/* military tags */
3570/*****************/
3571
3572area[military=airfield],
3573area[military=bunker],
3574area[military=barracks],
3575area[military=danger_area],
3576area[military=range] {
3577    fill-color: military#b62c2c;
3578}
3579node[military=airfield] {
3580    icon-image: "presets/transport/airport/airfield.svg";
3581    set icon_z17;
3582}
3583node[military=bunker] {
3584    icon-image: "presets/landmark/bunker.svg";
3585    set icon_z17;
3586}
3587node[military=barracks][!is_prop_set(icon-image)] {
3588    icon-image: "presets/misc/no_icon.svg";
3589    set icon_z17;
3590}
3591node[military=danger_area] {
3592    icon-image: "presets/misc/danger.svg";
3593    set icon_z17;
3594}
3595node[military=range] {
3596    icon-image: "presets/sport/range.svg";
3597    set icon_z17;
3598}
3599
3600/****************/
3601/* railway tags */
3602/****************/
3603
3604area[railway=station] {
3605    fill-color: railwaypoint#f7efb7;
3606}
3607node[railway=station] {
3608    icon-image: "presets/transport/railway_station.svg";
3609    set icon_z17;
3610}
3611node[railway=halt] {
3612    icon-image: "presets/transport/railway_halt.svg";
3613    set icon_z17;
3614}
3615node[railway=tram_stop] {
3616    icon-image: "presets/transport/tram.svg";
3617    set icon_z17;
3618}
3619node[railway=subway_entrance] {
3620    icon-image: "presets/transport/underground.svg";
3621    set icon_z17;
3622}
3623node[railway=crossing] {
3624    icon-image: "presets/transport/railway/crossing.svg";
3625    set icon_z17;
3626}
3627node[railway=level_crossing] {
3628    icon-image: "presets/transport/railway/level_crossing.svg";
3629    set icon_z17;
3630}
3631way[railway=rail] {
3632    width: 2;
3633    color: rail#404040;
3634    dashes: 9,9;
3635    dashes-background-color: raildashed#ffffff;
3636}
3637way[railway=rail][service=crossover],
3638way[railway=rail][service=siding] {
3639    width: 1;
3640}
3641way[railway=rail][service=yard],
3642way[railway=rail][service=spur] {
3643    width: 1;
3644    color: railyard#552200;
3645}
3646/* draw tram and light_rail on top of other way (highway=*) or
3647   as a standalone style */
3648way[highway][railway=tram]::core_railway,
3649way[!highway][railway=tram] {
3650    z-index: 1;
3651    modifier: false; /* don't draw default way if there is no line on default layer */
3652    width: 1;
3653    color: railover#202020;
3654    dashes: 9,9;
3655    casing-width: 1;
3656    casing-color: otherrail#808080;
3657    casing-linecap: round;
3658    casing-dashes: 9,9;
3659}
3660way[highway][railway=tram][service=crossover]::core_railway,
3661way[!highway][railway=tram][service=crossover],
3662way[highway][railway=tram][service=siding]::core_railway,
3663way[!highway][railway=tram][service=siding],
3664way[highway][railway=tram][service=yard]::core_railway,
3665way[!highway][railway=tram][service=yard],
3666way[highway][railway=tram][service=spur]::core_railway,
3667way[!highway][railway=tram][service=spur] {
3668    dashes: 6,6;
3669    casing-dashes: 6,6;
3670}
3671
3672way[highway][railway=light_rail]::core_railway,
3673way[!highway][railway=light_rail] {
3674    z-index: 1;
3675    modifier: false; /* don't draw default way if there is no line on default layer */
3676    width: 2;
3677    color: otherrail#808080;
3678    dashes: 9,9;
3679}
3680way[railway=subway] {
3681    width: 1;
3682    color: subway#606060;
3683    dashes: 9,9;
3684}
3685way[railway=preserved] {
3686    width: 1;
3687    color: oldrail#404040;
3688    dashes: 9,9;
3689}
3690way[railway=light_rail][service=crossover],
3691way[railway=light_rail][service=siding],
3692way[railway=light_rail][service=yard],
3693way[railway=light_rail][service=spur],
3694way[railway=subway][service=crossover],
3695way[railway=subway][service=siding],
3696way[railway=subway][service=yard],
3697way[railway=subway][service=spur],
3698way[railway=preserved][service=crossover],
3699way[railway=preserved][service=siding],
3700way[railway=preserved][service=yard],
3701way[railway=preserved][service=spur] {
3702    dashes: 6,6;
3703}
3704/* disused often appears together with highway=xy */
3705/* -> draw on separate layer with higher z-index, but use */
3706/* modifier: false; to suppress default line when used alone. */
3707/* use default layer when used without highway=* to display bridge correctly */
3708way[railway=disused][highway]::core_railway,
3709way[railway=disused][!highway],
3710way[railway=abandoned][highway]::core_railway,
3711way[railway=abandoned][!highway] {
3712    width: 1;
3713    modifier: false;
3714    z-index: 1;
3715    color: oldrail#404040;
3716    dashes: 9,9;
3717}
3718way[railway=narrow_gauge],
3719way[railway=monorail] {
3720    width: 1;
3721    color: rail#404040;
3722    dashes: 9,9;
3723}
3724way[railway=narrow_gauge][service=crossover],
3725way[railway=narrow_gauge][service=siding],
3726way[railway=narrow_gauge][service=yard],
3727way[railway=narrow_gauge][service=spur],
3728way[railway=monorail][service=crossover],
3729way[railway=monorail][service=siding],
3730way[railway=monorail][service=yard],
3731way[railway=monorail][service=spur] {
3732    dashes: 6,6;
3733}
3734area[railway=turntable] {
3735    fill-color: rail#404040;
3736}
3737node[railway=turntable] {
3738    icon-image: "presets/transport/railway/turntable.svg";
3739    set icon_z17;
3740}
3741node[railway=buffer_stop] {
3742    icon-image: "presets/transport/railway/buffer_stop.svg";
3743    set icon_z17;
3744}
3745area[railway=platform]:closed {
3746    fill-color: rail#404040;
3747}
3748way[railway=platform] {
3749    width: 2;
3750    color: rail#404040;
3751}
3752way[railway=funicular] {
3753    width: 1;
3754    color: rail#404040;
3755    dashes: 9,9;
3756}
3757node[railway=switch] {
3758    icon-image: "presets/transport/railway/switch.svg";
3759    set icon_z17;
3760}
3761node[railway=railway_crossing] {
3762    icon-image: "presets/transport/railway/railway_crossing.svg";
3763    set icon_z17;
3764}
3765node[railway=signal] {
3766    icon-image: "presets/transport/railway/signal.svg";
3767    set icon_z17;
3768}
3769node[railway=milestone] {
3770    icon-image: "presets/transport/railway/milestone.svg";
3771    set icon_z17;
3772}
3773node[railway=rail], node[railway=tram], node[railway=light_rail],
3774node[railway=subway], node[railway=preserved],
3775node[railway=disused], node[railway=abandoned],
3776node[railway=narrow_gauge], node[railway=monorail],
3777node[railway=platform], node[railway=funicular],
3778node[service=yard], node[service=siding], node[service=spur] {
3779    icon-image: "presets/misc/deprecated.svg";
3780    set icon_z17;
3781}
3782way[railway=construction][!highway] {
3783    width: 1;
3784    color: construction#ffff00;
3785    dashes: 9,9;
3786}
3787way[railway=construction][construction=rail] {
3788    width: 2;
3789    color: rail#404040;
3790    dashes: 9,9;
3791    dashes-background-color: construction#ffff00;
3792}
3793way[railway=construction][construction=light_rail][highway]::core_railway,
3794way[railway=construction][construction=light_rail][!highway] {
3795    z-index: 1;
3796    width: 2;
3797    dashes: 9,9;
3798    color: construction#ffff00;
3799}
3800way[railway=construction][construction=tram][highway]::core_railway,
3801way[railway=construction][construction=tram][!highway] {
3802    z-index: 1;
3803    width: 1;
3804    color: railover#202020;
3805    dashes: 9,9;
3806    casing-width: 1;
3807    casing-color: construction#ffff00;
3808    casing-linecap: round;
3809    casing-dashes: 9,9;
3810}
3811
3812/****************/
3813/* aeroway tags */
3814/****************/
3815
3816area[aeroway=aerodrome] {
3817    fill-color: aeroway#660000;
3818    width: 2;
3819    dashes: 9,9;
3820}
3821node[aeroway=aerodrome][military!=airfield] {
3822    icon-image: "presets/transport/airport.svg";
3823    set icon_z17;
3824}
3825area[aeroway=terminal] {
3826    fill-color: terminal#bb0000;
3827}
3828node[aeroway=terminal] {
3829    icon-image: "presets/transport/airport/terminal.svg";
3830    set icon_z17;
3831}
3832area[aeroway=helipad] {
3833    fill-color: aeroway_dark#330000;
3834}
3835node[aeroway=helipad] {
3836    icon-image: "presets/transport/airport/helipad.svg";
3837    set icon_z17;
3838}
3839area[aeroway=runway]:closed {
3840    fill-color: aeroway_dark#330000;
3841}
3842way[aeroway=runway] {
3843    width: 3;
3844    color: aeroway_dark#330000;
3845}
3846area[aeroway=taxiway]:closed {
3847    fill-color: aeroway#660000;
3848}
3849way[aeroway=taxiway] {
3850    width: 2;
3851    color: aeroway#660000;
3852}
3853way[aeroway=parking_position] {
3854    width: 1;
3855    color: aeroway#660000;
3856}
3857node[aeroway=parking_position] {
3858    icon-image: "presets/transport/airport/parking_position.svg";
3859    set icon_z17;
3860}
3861area[aeroway=apron],
3862area[aeroway=hangar] {
3863    fill-color: aeroway_light#990000;
3864}
3865node[aeroway=apron],
3866node[aeroway=runway],
3867node[aeroway=taxiway] {
3868    icon-image: "presets/misc/deprecated.svg";
3869    set icon_z17;
3870}
3871node[aeroway=holding_position] {
3872    icon-image: "presets/transport/airport/holding_position.svg";
3873    set icon_z17;
3874}
3875node[aeroway=hangar] {
3876    icon-image: "presets/transport/airport/hangar.svg";
3877    set icon_z17;
3878}
3879node[aeroway=gate] {
3880    icon-image: "presets/transport/airport/gate.svg";
3881    set icon_z17;
3882}
3883node[airmark=beacon] {
3884    icon-image: "presets/transport/airport/airmark_beacon.svg";
3885    set icon_z17;
3886}
3887node[aeroway=navigationaid] {
3888    icon-image: "presets/transport/airport/navigationaid.svg";
3889    set icon_z17;
3890}
3891node[aeroway=windsock] {
3892    icon-image: "presets/transport/airport/windsock.svg";
3893    set icon_z17;
3894}
3895
3896/******************/
3897/* aerialway tags */
3898/******************/
3899
3900way[aerialway=cable_car],
3901way[aerialway=gondola] {
3902    width: 1;
3903    color: aerialway#663300;
3904    dashes: 9,9;
3905}
3906way[aerialway=chair_lift] {
3907    width: 1;
3908    color: aerialway#663300;
3909    dashes: 6,6;
3910}
3911way[aerialway=mixed_lift] {
3912    width: 1;
3913    color: aerialway#663300;
3914    dashes: 6,6,9,6;
3915}
3916way[aerialway=j-bar],
3917way[aerialway=t-bar],
3918way[aerialway=platter],
3919way[aerialway=rope_tow],
3920way[aerialway=drag_lift] {
3921    width: 1;
3922    color: aerialway#663300;
3923    dashes: 3,3;
3924}
3925way[aerialway=magic_carpet] {
3926    width: 1;
3927    color: aerialway#663300;
3928    dashes: 3,3;
3929}
3930way[aerialway=goods] {
3931    width: 1;
3932    color: aerialway#663300;
3933    dashes: 2,2;
3934}
3935way[aerialway=zip_line] {
3936    width: 1;
3937    color: aerialway#663300;
3938    dashes: 3,3;
3939}
3940area[aerialway=station] {
3941    fill-color: aerialway#663300;
3942}
3943node[aerialway=station] {
3944    icon-image: "presets/transport/aerialway/station.svg";
3945    set icon_z17;
3946}
3947node[aerialway=pylon] {
3948    icon-image: "presets/transport/aerialway/pylon.svg";
3949    set icon_z17;
3950}
3951node[aerialway=cable_car],
3952node[aerialway=gondola],
3953node[aerialway=chair_lift],
3954node[aerialway=mixed_lift],
3955node[aerialway=drag_lift],
3956node[aerialway=t-bar],
3957node[aerialway=j-bar],
3958node[aerialway=platter],
3959node[aerialway=magic_carpet],
3960node[aerialway=rope_tow],
3961node[aerialway=goods],
3962node[aerialway=zip_line] {
3963    icon-image: "presets/misc/deprecated.svg";
3964    set icon_z17;
3965}
3966
3967/*************************/
3968/* public_transport tags */
3969/*************************/
3970
3971node[highway=bus_stop] {
3972    icon-image: "presets/transport/bus_small.svg";
3973    set icon_z17;
3974}
3975node[public_transport=stop_position] {
3976    icon-image: "presets/transport/stop_position.svg";
3977    set icon_z17;
3978}
3979node[public_transport=stop_position][share_taxi=yes] {
3980    icon-image: "presets/transport/share_taxi.svg";
3981    set icon_z17;
3982}
3983node[public_transport=stop_position][bus=yes] {
3984    icon-image: "presets/transport/bus.svg";
3985    set icon_z17;
3986}
3987node[public_transport=stop_position][train=yes] {
3988    icon-image: "presets/transport/train.svg";
3989    set icon_z17;
3990}
3991node[public_transport=stop_position][light_rail=yes] {
3992    icon-image: "presets/transport/railway/light_rail.svg";
3993    set icon_z17;
3994}
3995node[public_transport=stop_position][tram=yes] {
3996    icon-image: "presets/transport/railway/tram.svg";
3997    set icon_z17;
3998}
3999node[public_transport=stop_position][subway=yes] {
4000    icon-image: "presets/transport/railway/subway.svg";
4001    set icon_z17;
4002}
4003node[public_transport=stop_position][monorail=yes] {
4004    icon-image: "presets/transport/railway/monorail.svg";
4005    set icon_z17;
4006}
4007node[public_transport=stop_position][trolleybus=yes] {
4008    icon-image: "presets/transport/trolleybus.svg";
4009    set icon_z17;
4010}
4011node[public_transport=stop_position][funicular=yes] {
4012    icon-image: "presets/transport/railway/funicular.svg";
4013    set icon_z17;
4014}
4015node[public_transport=stop_position][aerialway=yes] {
4016    icon-image: "presets/transport/aerialway/station.svg";
4017    set icon_z17;
4018}
4019node[public_transport=stop_position][ferry=yes] {
4020    icon-image: "presets/nautical/ferry.svg";
4021    set icon_z17;
4022}
4023area[public_transport=platform]:closed {
4024    fill-color: service#809bc0;
4025}
4026way[public_transport=platform]!:closed {
4027    width: 3;
4028    color: service#809bc0;
4029    dashes: 12,3;
4030}
4031node[public_transport=platform] {
4032    icon-image: "presets/transport/platform.svg";
4033    set icon_z17;
4034}
4035area[public_transport=station] {
4036    fill-color: railwaypoint#f7efb7;
4037}
4038node[public_transport=station] {
4039    icon-image: "presets/transport/station.svg";
4040    set icon_z17;
4041}
4042
4043/**************/
4044/* sport tags */
4045/**************/
4046
4047area[sport="9pin"],
4048area[sport="10pin"],
4049area[sport=soccer],
4050area[sport=australian_football],
4051area[sport=american_football],
4052area[sport=canadian_football],
4053area[sport=gaelic_games],
4054area[sport=rugby_league],
4055area[sport=rugby_union] {
4056    fill-color: sport#bde3cb;
4057}
4058node[sport="9pin"] {
4059    icon-image: "presets/sport/9pin.svg";
4060    set icon_z17;
4061}
4062node[sport="10pin"] {
4063    icon-image: "presets/sport/10pin.svg";
4064    set icon_z17;
4065}
4066node[sport=soccer],
4067node[sport=gaelic_games] {
4068    icon-image: "presets/sport/soccer.svg";
4069    set icon_z17;
4070}
4071node[sport=australian_football],
4072node[sport=american_football],
4073node[sport=canadian_football],
4074node[sport=rugby_league],
4075node[sport=rugby_union] {
4076    icon-image: "presets/sport/football.svg";
4077    set icon_z17;
4078}
4079area[sport=baseball],
4080area[sport=basketball],
4081area[sport=boules],
4082area[sport=bowls],
4083area[sport=canoe],
4084area[sport=chess],
4085area[sport=climbing]:closed,
4086area[sport=cricket],
4087area[sport=croquet] {
4088    fill-color: sport#bde3cb;
4089}
4090node[sport=baseball] {
4091    icon-image: "presets/sport/baseball.svg";
4092    set icon_z17;
4093}
4094node[sport=basketball] {
4095    icon-image: "presets/sport/basketball.svg";
4096    set icon_z17;
4097}
4098node[sport=boules] {
4099    icon-image: "presets/sport/boule.svg";
4100    set icon_z17;
4101}
4102node[sport=bowls] {
4103    icon-image: "presets/sport/boule.svg";
4104    set icon_z17;
4105}
4106node[sport=canoe] {
4107    icon-image: "presets/sport/canoe.svg";
4108    set icon_z17;
4109}
4110node[sport=chess] {
4111    icon-image: "presets/sport/chess.svg";
4112    set icon_z17;
4113}
4114node[sport=climbing] {
4115    icon-image: "presets/sport/climbing.svg";
4116    set icon_z17;
4117}
4118node[sport=cricket] {
4119    icon-image: "presets/sport/cricket.svg";
4120    set icon_z17;
4121}
4122node[sport=croquet] {
4123    icon-image: "presets/sport/croquet.svg";
4124    set icon_z17;
4125}
4126area[sport=cycling],
4127area[sport=dog_racing],
4128area[sport=equestrian],
4129area[sport=golf],
4130area[sport=gymnastics],
4131area[sport=field_hockey],
4132area[sport=ice_hockey],
4133area[sport=horse_racing],
4134area[sport=karting][highway!=raceway],
4135area[sport=karting][highway=raceway][area=yes],
4136area[sport=motocross][highway!=raceway],
4137area[sport=motocross][highway=raceway][area=yes],
4138area[sport=motor][highway!=raceway],
4139area[sport=motor][highway=raceway][area=yes] {
4140    fill-color: sport#bde3cb;
4141}
4142node[sport=cycling] {
4143    icon-image: "presets/sport/cycling.svg";
4144    set icon_z17;
4145}
4146node[sport=dog_racing] {
4147    icon-image: "presets/sport/dog_racing.svg";
4148    set icon_z17;
4149}
4150node[sport=equestrian] {
4151    icon-image: "presets/sport/equestrian.svg";
4152    set icon_z17;
4153}
4154node[sport=golf] {
4155    icon-image: "presets/sport/golf.svg";
4156    set icon_z17;
4157}
4158node[sport=gymnastics] {
4159    icon-image: "presets/sport/gymnastics.svg";
4160    set icon_z17;
4161}
4162node[sport=field_hockey] {
4163    icon-image: "presets/sport/field_hockey.svg";
4164    set icon_z17;
4165}
4166node[sport=ice_hockey] {
4167    icon-image: "presets/sport/ice_hockey.svg";
4168    set icon_z17;
4169}
4170node[sport=horse_racing] {
4171    icon-image: "presets/sport/riding.svg";
4172    set icon_z17;
4173}
4174node[sport=karting] {
4175    icon-image: "presets/sport/karting.svg";
4176    set icon_z17;
4177}
4178node[sport=motocross] {
4179    icon-image: "presets/sport/motocross.svg";
4180    set icon_z17;
4181}
4182node[sport=motor] {
4183    icon-image: "presets/sport/motor.svg";
4184    set icon_z17;
4185}
4186area[sport=athletics] {
4187    fill-color: sport_athletics#cfebd7;
4188}
4189node[sport=athletics] {
4190    icon-image: "presets/sport/athletics.svg";
4191    set icon_z17;
4192}
4193area[sport=running] {
4194    fill-color: sport_running#cfebd8;
4195}
4196node[sport=running] {
4197    icon-image: "presets/sport/running.svg";
4198    set icon_z17;
4199}
4200area[sport=multi] {
4201    fill-color: sport_multi#cfebd9;
4202}
4203node[sport=multi] {
4204    icon-image: "presets/sport/multi.svg";
4205    set icon_z17;
4206}
4207area[sport=pelota],
4208area[sport=racquet],
4209area[sport=ice_skating],
4210area[sport=roller_skating],
4211area[sport=skateboard] {
4212    fill-color: sport#bde3cb;
4213}
4214node[sport=pelota] {
4215    icon-image: "presets/sport/pelota.svg";
4216    set icon_z17;
4217}
4218node[sport=racquet] {
4219    icon-image: "presets/sport/racquetball.svg";
4220    set icon_z17;
4221}
4222node[sport=ice_skating] {
4223    icon-image: "presets/sport/ice_skating.svg";
4224    set icon_z17;
4225}
4226node[sport=roller_skating] {
4227    icon-image: "presets/sport/roller_skating.svg";
4228    set icon_z17;
4229}
4230node[sport=skating] {
4231    icon-image: "presets/misc/deprecated.svg";
4232    set icon_z17;
4233}
4234node[sport=skateboard] {
4235    icon-image: "presets/sport/skateboard.svg";
4236    set icon_z17;
4237}
4238area[sport=swimming] {
4239    fill-color: swimming_pool#51c4ef;
4240}
4241node[sport=swimming] {
4242    icon-image: "presets/sport/swimming.svg";
4243    set icon_z17;
4244}
4245area[sport=table_tennis],
4246area[sport=tennis],
4247area[sport=paintball] {
4248    fill-color: sport#bde3cb;
4249}
4250node[sport=table_tennis] {
4251    icon-image: "presets/sport/table_tennis.svg";
4252    set icon_z17;
4253}
4254node[sport=tennis] {
4255    icon-image: "presets/sport/tennis.svg";
4256    set icon_z17;
4257}
4258node[sport=paintball][!is_prop_set(icon-image)] {
4259    icon-image: "presets/misc/no_icon.svg";
4260    set icon_z17;
4261}
4262area[sport=squash],
4263area[sport=shooting],
4264area[sport=volleyball],
4265area[sport=beachvolleyball],
4266area[sport=billiards],
4267area[sport=bowling],
4268area[sport=handball],
4269area[sport=rowing],
4270area[sport=sailing],
4271area[sport=scuba_diving],
4272area[sport=badminton] {
4273    fill-color: sport#bde3cb;
4274}
4275node[sport=squash][!is_prop_set(icon-image)] {
4276    icon-image: "presets/misc/no_icon.svg";
4277    set icon_z17;
4278}
4279node[sport=shooting] {
4280    icon-image: "presets/sport/range.svg";
4281    set icon_z17;
4282}
4283node[sport=volleyball] {
4284    icon-image: "presets/sport/volleyball.svg";
4285    set icon_z17;
4286}
4287node[sport=beachvolleyball] {
4288    icon-image: "presets/sport/beachvolleyball.svg";
4289    set icon_z17;
4290}
4291node[sport=billiards] {
4292    icon-image: "presets/sport/billiards.svg";
4293    set icon_z17;
4294}
4295node[sport=bowling] {
4296    icon-image: "presets/sport/9pin.svg";
4297    set icon_z17;
4298}
4299node[sport=handball] {
4300    icon-image: "presets/sport/handball.svg";
4301    set icon_z17;
4302}
4303node[sport=rowing] {
4304    icon-image: "presets/sport/rowing.svg";
4305    set icon_z17;
4306}
4307node[sport=sailing][!is_prop_set(icon-image)] {
4308    icon-image: "presets/misc/no_icon.svg";
4309    set icon_z17;
4310}
4311node[sport=scuba_diving] {
4312    icon-image: "presets/sport/scuba_diving.svg";
4313    set icon_z17;
4314}
4315node[sport=badminton][!is_prop_set(icon-image)] {
4316    icon-image: "presets/misc/no_icon.svg";
4317    set icon_z17;
4318}
4319area[sport=archery],
4320area[sport=fishing],
4321area[sport=model_aerodrome],
4322area[sport=rc_car] {
4323    fill-color: sport#bde3cb;
4324}
4325node[sport=archery] {
4326    icon-image: "presets/sport/archery.svg";
4327    set icon_z17;
4328}
4329node[sport=fishing] {
4330    icon-image: "presets/sport/fishing.svg";
4331    set icon_z17;
4332}
4333node[sport=model_aerodrome] {
4334    icon-image: "presets/transport/airport.svg";
4335    set icon_z17;
4336}
4337node[sport=rc_car] {
4338    icon-image: "presets/sport/rc_car.svg";
4339    set icon_z17;
4340}
4341
4342/****************/
4343/* natural tags */
4344/****************/
4345
4346area[natural=spring] {
4347    fill-color: light_water#00005f;
4348}
4349node[natural=spring] {
4350    icon-image: "presets/landmark/spring.svg";
4351    set icon_z17;
4352}
4353node[natural=saddle] {
4354    icon-image: "presets/landmark/saddle.svg";
4355    set icon_z0;
4356    set text_z0;
4357}
4358node[natural=peak] {
4359    icon-image: "presets/landmark/peak.svg";
4360    set icon_z0;
4361    set text_z0;
4362}
4363node[natural=peak][tourism=viewpoint] {
4364    icon-image: "presets/sightseeing/peak_viewpoint.svg";
4365    set icon_z0;
4366    set text_z0;
4367}
4368area[natural=glacier] {
4369    fill-color: glacier#ffffff;
4370}
4371node[natural=volcano] {
4372    icon-image: "presets/landmark/volcano.svg";
4373    set icon_z0;
4374    set text_z0;
4375}
4376area[natural=cliff]:closed {
4377    fill-color: natural#002f00;
4378}
4379way[natural=cliff] {
4380    repeat-image: "presets/misc/cliff_pattern.svg";
4381    repeat-image-align: top;
4382    width: 1;
4383    color: #b2b2b2;
4384}
4385node[natural=cliff] {
4386    icon-image: "presets/misc/cliff.svg";
4387    set icon_z17;
4388}
4389way[natural=ridge] {
4390    width: 1;
4391    color: natural#002f00;
4392}
4393way[natural=valley] {
4394    width: 1;
4395    color: natural#002f00;
4396}
4397area[natural=scree] {
4398    fill-color: scree#c3c3c3;
4399}
4400area[natural=shingle] {
4401    fill-color: shingle#c3c3c3;
4402}
4403area[natural=scrub] {
4404    fill-color: scrub#007000;
4405}
4406area[natural=fell] {
4407    fill-color: natural#002f00;
4408}
4409area[natural=heath] {
4410    fill-color: heath#ffffc0;
4411}
4412way[natural=tree_row] {
4413    width: 2;
4414    color: woodarea#008000;
4415}
4416area[natural=wood] {
4417    fill-color: woodarea#008000;
4418}
4419area[natural=grassland] {
4420    fill-color: green#b1e0c2;
4421}
4422area[natural=wetland] {
4423    fill-color: marsh#4f4ff3;
4424}
4425area[natural=water] {
4426    fill-color: water#0000ff;
4427}
4428area[natural=water][intermittent=yes] {
4429    width: 2;
4430    dashes: 15, 5;
4431}
4432way[natural=coastline] {
4433    width: 2;
4434    color: water#0000ff;
4435    right-casing-color: water#0000ff;
4436    right-casing-width: 8;
4437    right-casing-opacity: 0.35;
4438}
4439area[natural=mud] {
4440    fill-color: mud#cba762;
4441}
4442area[natural=beach] {
4443    fill-color: beach#f8dba2;
4444}
4445area[natural=sand] {
4446    fill-color: sand#f8dba2;
4447}
4448area[natural=bare_rock] {
4449    fill-color: bare_rock#f8f8c7;
4450}
4451area[natural=rock] {
4452    fill-color: stone#f8f8c7;
4453}
4454node[natural=rock] {
4455    icon-image: "presets/misc/rock.svg";
4456    set icon_z17;
4457}
4458area[natural=stone] {
4459    fill-color: stone#f8f8c7;
4460}
4461node[natural=stone] {
4462    icon-image: "presets/misc/stone.svg";
4463    set icon_z17;
4464}
4465area[natural=bay]:closed {
4466    fill-color: natural#002f00;
4467}
4468way[natural=bay] {
4469    width: 2;
4470    color: natural#002f00;
4471}
4472node[natural=bay] {
4473    icon-image: "presets/nautical/bay.svg";
4474    set icon_z17;
4475}
4476area[natural=strait]:closed {
4477    fill-color: natural#002f00;
4478}
4479way[natural=strait] {
4480    width: 2;
4481    color: natural#002f00;
4482}
4483node[natural=strait] {
4484    icon-image: "presets/nautical/strait.svg";
4485    set icon_z17;
4486}
4487area[natural=cape],
4488area[natural=cave_entrance] {
4489    fill-color: natural#002f00;
4490}
4491node[natural=cape] {
4492    icon-image: "presets/nautical/cape.svg";
4493    set icon_z17;
4494}
4495node[natural=cave_entrance] {
4496    icon-image: "presets/landmark/cave_entrance.svg";
4497    set icon_z17;
4498}
4499area[natural=reef] {
4500    fill-color: reef#80c9ff;
4501}
4502node[natural=reef] {
4503    icon-image: "presets/landmark/reef.svg";
4504    set icon_z17;
4505}
4506node[natural=tree] {
4507    icon-image: "presets/landmark/trees.svg";
4508    set icon_z17;
4509}
4510node[natural=tree][leaf_type=needleleaved] {
4511    icon-image: "presets/landmark/trees_conifer.svg";
4512    set icon_z17;
4513}
4514node[natural=tree][leaf_type=broadleaved] {
4515    icon-image: "presets/landmark/trees_broad_leaved.svg";
4516    set icon_z17;
4517}
4518node[natural=glacier],
4519node[natural=scree],
4520node[natural=shingle],
4521node[natural=scrub],
4522node[natural=fell],
4523node[natural=heath],
4524node[natural=tree_row],
4525node[natural=wood],
4526node[natural=grassland],
4527node[natural=wetland],
4528node[natural=water],
4529node[natural=coastline],
4530node[natural=mud],
4531node[natural=beach],
4532node[natural=sand],
4533node[natural=land],
4534node[natural=bare_rock],
4535node[natural=ridge],
4536node[natural=valley] {
4537    icon-image: "presets/misc/deprecated.svg";
4538    set icon_z17;
4539}
4540/*****************/
4541/* waterway tags */
4542/*****************/
4543
4544way[waterway=river] {
4545    width: 2;
4546    color: water#0000ff;
4547}
4548area[waterway=riverbank] {
4549    fill-color: riverbank#0000cf;
4550    width: 1;
4551    color: riverbank#0000cf;
4552}
4553way[waterway=pressurised],
4554way[waterway=canal] {
4555    width: 2;
4556    color: water#0000ff;
4557}
4558way[waterway=river][lock=yes],
4559way[waterway=canal][lock=yes] {
4560    casing-width: 2;
4561    casing-color: lock#303030;
4562    casing-dashes: 5,20;
4563}
4564way[waterway=pressurised][tunnel] {
4565    casing-width: 1;
4566    casing-color: tunnel#964B00;
4567}
4568way[waterway=pressurised][man_made=pipeline] {
4569    casing-width: 1;
4570    casing-color: pipeline#660000;
4571}
4572way[waterway=stream] {
4573    width: 1;
4574    color: stream#6600cc;
4575}
4576way[waterway=ditch],
4577way[waterway=drain] {
4578    width: 1;
4579    color: water#0000ff;
4580}
4581way[waterway=river][intermittent=yes],
4582area[waterway=riverbank][intermittent=yes],
4583way[waterway=canal][intermittent=yes],
4584way[waterway=stream][intermittent=yes],
4585way[waterway=ditch][intermittent=yes],
4586way[waterway=drain][intermittent=yes] {
4587    dashes: 15, 5;
4588}
4589area[waterway=dock] {
4590    fill-color: dock#0000cf;
4591}
4592node[waterway=dock] {
4593    icon-image: "presets/nautical/boatyard.svg";
4594    set icon_z17;
4595}
4596way[waterway=lock_gate] {
4597    width: 3;
4598    color: lock_gate#303030;
4599}
4600node[waterway=lock_gate] {
4601    icon-image: "presets/nautical/lock_gate.svg";
4602    set icon_z17;
4603}
4604node[waterway=turning_point] {
4605    icon-image: "presets/nautical/turning.svg";
4606    set icon_z17;
4607}
4608area[waterway=boatyard] {
4609    fill-color: manmade#d8d8d8;
4610}
4611node[waterway=boatyard] {
4612    icon-image: "presets/nautical/boatyard.svg";
4613    set icon_z17;
4614}
4615node[waterway=water_point],
4616node[waterway=waste_disposal],
4617node[waterway=mooring] {
4618    icon-image: "presets/misc/deprecated.svg";
4619    set icon_z17;
4620}
4621node[mooring] {
4622    icon-image: "presets/nautical/marina.svg";
4623    set icon_z17;
4624}
4625area[waterway=fuel] {
4626    fill-color: amenity_traffic#f7efb7;
4627}
4628node[waterway=fuel] {
4629    icon-image: "presets/nautical/marine_fuel.svg";
4630    set icon_z17;
4631}
4632way[waterway=weir] {
4633    width: 2;
4634    color: manmade#d8d8d8;
4635}
4636node[waterway=weir] {
4637    icon-image: "presets/nautical/weir.svg";
4638    set icon_z17;
4639}
4640area[waterway=dam]:closed {
4641    fill-color: manmade#d8d8d8;
4642}
4643way[waterway=dam] {
4644    width: 2;
4645    color: manmade#d8d8d8;
4646}
4647node[waterway=dam] {
4648    icon-image: "presets/nautical/dam.svg";
4649    set icon_z17;
4650}
4651/* it's not possible to have both line and area, line seems more likely */
4652way[waterway=waterfall] {
4653    width: 2;
4654    color: manmade#d8d8d8;
4655}
4656node[waterway=waterfall] {
4657    icon-image: "presets/nautical/waterfall.svg";
4658    set icon_z17;
4659}
4660node[waterway=river], node[waterway=riverbank],
4661node[waterway=canal], node[waterway=wadi],
4662node[waterway=stream],
4663node[waterway=ditch], node[waterway=drain] {
4664    icon-image: "presets/misc/deprecated.svg";
4665    set icon_z17;
4666}
4667
4668/**************/
4669/* route tags */
4670/**************/
4671
4672way[route=ferry] {
4673    width: 1;
4674    color: ferry#809bc0;
4675    dashes: 9,9;
4676}
4677node[route=bus],
4678node[route=ferry],
4679node[route=flight],
4680node[route=ncn],
4681node[route=subsea],
4682node[route=ski],
4683node[route=tour],
4684node[route=pub_crawl] {
4685    icon-image: "presets/misc/deprecated.svg";
4686    set icon_z17;
4687}
4688
4689/*******************/
4690/* properties tags */
4691/*******************/
4692
4693node[mountain_pass?] {
4694    icon-image: "presets/landmark/mountain_pass.svg";
4695    set icon_z0;
4696    set text_z0;
4697}
4698
4699/*****************/
4700/* boundary tags */
4701/*****************/
4702
4703relation[boundary=protected_area] > way::core_boundary,
4704relation[boundary=administrative] > way::core_boundary,
4705relation[boundary=postal_code] > way::core_boundary,
4706relation[boundary=political] > way::core_boundary,
4707relation[boundary=maritime] > way::core_boundary,
4708relation[boundary=national_park] > way::core_boundary,
4709way[boundary=protected_area]::core_boundary,
4710way[boundary=administrative]::core_boundary,
4711way[boundary=postal_code]::core_boundary,
4712way[boundary=political]::core_boundary,
4713way[boundary=maritime]::core_boundary,
4714way[boundary=national_park]::core_boundary {
4715    z-index: 2;
4716    modifier: false;
4717    width: 1;
4718    color: boundary#FF6600;
4719    dashes: 9,9;
4720}
4721/* admin_level >=9 use the default width of 1 defined above */
4722way[boundary=administrative][admin_level=7]::core_boundary,
4723relation[boundary=administrative][admin_level=7] > way::core_boundary,
4724way[boundary=administrative][admin_level=8]::core_boundary,
4725relation[boundary=administrative][admin_level=8] > way::core_boundary {
4726    width: 2;
4727}
4728way[boundary=administrative][admin_level=5]::core_boundary,
4729relation[boundary=administrative][admin_level=5] > way::core_boundary,
4730way[boundary=administrative][admin_level=6]::core_boundary,
4731relation[boundary=administrative][admin_level=6] > way::core_boundary {
4732    width: 3;
4733}
4734way[boundary=administrative][admin_level=3]::core_boundary,
4735relation[boundary=administrative][admin_level=3] > way::core_boundary,
4736way[boundary=administrative][admin_level=4]::core_boundary,
4737relation[boundary=administrative][admin_level=4] > way::core_boundary {
4738    width: 4;
4739}
4740way[boundary=administrative][admin_level=1]::core_boundary,
4741relation[boundary=administrative][admin_level=1] > way::core_boundary,
4742way[boundary=administrative][admin_level=2]::core_boundary,
4743relation[boundary=administrative][admin_level=2] > way::core_boundary {
4744    width: 5;
4745}
4746node[boundary=national],
4747node[boundary=administrative],
4748node[boundary=postal_code],
4749node[boundary=political],
4750node[boundary=national_park] {
4751    icon-image: "presets/misc/deprecated.svg";
4752    set icon_z17;
4753}
4754
4755/******************/
4756/* maxspeed nodes */
4757/******************/
4758node[traffic_sign][maxspeed=none][!is_prop_set(icon-image)] {
4759    icon-image: "presets/vehicle/restriction/maxspeed_none.svg";
4760    set icon_z17;
4761}
4762node[traffic_sign][maxspeed=~/^[0-9]+$/][!is_prop_set(icon-image)] {
4763    maxspeedprop: tag(maxspeed);
4764    set maxspeedclass;
4765}
4766node[traffic_sign][maxspeed=signals][!is_prop_set(icon-image)] {
4767    maxspeedprop: " ?";
4768    set maxspeedclass;
4769}
4770node[traffic_sign][maxspeed=~/^[0-9]+ mph/][!is_prop_set(icon-image)] {
4771    maxspeedprop: get(split(" mph",tag(maxspeed)),0);
4772    set maxspeedclass;
4773}
4774node[traffic_sign][maxspeed=~/[0-9]+ km\/h/][!is_prop_set(icon-image)] {
4775    maxspeedprop: get(split(" km/h",tag(maxspeed)),0);
4776    set maxspeedclass;
4777}
4778node[traffic_sign][maxspeed=~/[0-9]+ knots/][!is_prop_set(icon-image)] {
4779    maxspeedprop: get(split(" knots",tag(maxspeed)),0);
4780    set maxspeedclass;
4781}
4782node[prop(maxspeedclass, default)][!is_prop_set(icon-image, default)]::core_maxnodebg {
4783    /* background (white) */
4784    symbol-shape: circle;
4785    symbol-size: 17;
4786    symbol-fill-color: white;
4787    major-z-index: 4.2;
4788}
4789node[traffic_sign][maxspeed]["maxspeed:variable"]["maxspeed:variable"!="no"]::core_maxnodebg,
4790node[traffic_sign][maxspeed=signals]::core_maxnodebg {
4791    /* background (black) */
4792    symbol-fill-color: black;
4793}
4794node[prop(maxspeedclass, default)]::core_maxnodefg {
4795    /* foreground (black text and red circle) */
4796    symbol-shape: circle;
4797    symbol-size: 15;
4798    symbol-stroke-color: crimson;
4799    symbol-stroke-width: 2;
4800    text: prop(maxspeedprop, default);
4801    font-size: 8;
4802    font-weight: bold;
4803    text-color: black;
4804    text-anchor-horizontal: center;
4805    text-anchor-vertical: center;
4806    text-offset-x: 0;
4807    text-offset-y: -1;
4808    major-z-index: 4.2;
4809}
4810node[traffic_sign][maxspeed]["maxspeed:variable"]["maxspeed:variable"!="no"]::core_maxnodefg,
4811node[traffic_sign][maxspeed=signals]::core_maxnodefg {
4812    /* foreground (white text) */
4813    text-color: white;
4814}
4815node|z-16[prop(maxspeedclass, default)][setting("hide_icons")]::core_maxnodebg {
4816    symbol-shape: none;
4817}
4818node|z-16[prop(maxspeedclass, default)][setting("hide_icons")]::core_maxnodefg {
4819    text: none;
4820    symbol-shape: none;
4821}
4822
4823/**************/
4824/* place tags */
4825/**************/
4826
4827area[setting("place_fill_colour")][place=continent],
4828area[setting("place_fill_colour")][place=country],
4829area[setting("place_fill_colour")][place=state],
4830area[setting("place_fill_colour")][place=region],
4831area[setting("place_fill_colour")][place=county],
4832area[setting("place_fill_colour")][place=city],
4833area[setting("place_fill_colour")][place=town],
4834area[setting("place_fill_colour")][place=village],
4835area[setting("place_fill_colour")][place=hamlet],
4836area[setting("place_fill_colour")][place=farm],
4837area[setting("place_fill_colour")][place=isolated_dwelling],
4838area[setting("place_fill_colour")][place=neighbourhood],
4839area[setting("place_fill_colour")][place=suburb],
4840area[setting("place_fill_colour")][place=locality],
4841area[place=island],
4842area[place=islet] {
4843    fill-color: place#8de3cb;
4844    set place;
4845}
4846node[place=continent],
4847node[place=country],
4848node[place=state],
4849node[place=region],
4850node[place=county],
4851node[place=city],
4852node[place=town],
4853node[place=suburb],
4854node[place=village],
4855node[place=quarter],
4856node[place=neighbourhood],
4857node[place=hamlet],
4858node[place=isolated_dwelling],
4859node[place=farm],
4860node[place=island],
4861node[place=islet] {
4862    set icon_z0;
4863    set text_z0;
4864    font-weight: bold;
4865    text-color:black;
4866    text-halo-color: white;
4867    text-halo-radius: 1;
4868    set place;
4869}
4870
4871node[place=continent],
4872node[place=country],
4873node[place=state],
4874node[place=region],
4875node[place=county] {
4876    icon-image: "presets/place/capital.svg";
4877    z-index: 2.9;
4878}
4879node[place=city] {
4880    icon-image: "presets/place/city.svg";
4881    z-index: 2.8;
4882}
4883node[place=town] {
4884    icon-image: "presets/place/town.svg";
4885    z-index: 2.7;
4886}
4887node[place=suburb] {
4888    icon-image: "presets/place/suburb.svg";
4889    z-index: 2.6;
4890}
4891node[place=village] {
4892    icon-image: "presets/place/village.svg";
4893    z-index: 2.5;
4894}
4895node[place=quarter] {
4896    icon-image: "presets/place/quarter.svg";
4897    z-index: 2.5;
4898}
4899node[place=neighbourhood] {
4900    icon-image: "presets/place/neighbourhood.svg";
4901    z-index: 2.4;
4902}
4903node[place=hamlet] {
4904    icon-image: "presets/place/hamlet.svg";
4905    z-index: 2.3;
4906}
4907node[place=isolated_dwelling] {
4908    icon-image: "presets/place/isolated_dwelling.svg";
4909    z-index: 2.2;
4910}
4911node[place=farm] {
4912    icon-image: "presets/place/farm.svg";
4913    z-index: 2.1;
4914}
4915node|z15-[place=locality],
4916node|z-14[place=locality][!setting("hide_icons")] {
4917    icon-image: "presets/place/locality.svg";
4918    font-weight: bold;
4919    text-color: black;
4920    text-halo-color: white;
4921    text-halo-radius: 1;
4922}
4923node[place=island] {
4924    icon-image: "presets/place/island.svg";
4925}
4926node[place=islet] {
4927    icon-image: "presets/place/islet.svg";
4928}
4929
4930area[place=square] {
4931    fill-color: place#8de3cb;
4932}
4933node[place=square] {
4934    icon-image: "presets/place/square.svg";
4935    set icon_z17;
4936}
4937
4938/***************************/
4939/* "work in progress" tags */
4940/***************************/
4941
4942node|z16-[fixme]::core_note_fixme,
4943node|z-15[fixme][!setting("hide_icons")]::core_note_fixme,
4944node|z16-[FIXME]::core_note_fixme,
4945node|z-15[FIXME][!setting("hide_icons")]::core_note_fixme {
4946    object-z-index: 10;
4947    icon-image: "presets/misc/fixme_annotation.svg";
4948}
4949node|z16-[note]::core_note_fixme,
4950node|z-15[note][!setting("hide_icons")]::core_note_fixme {
4951    object-z-index: 10;
4952    icon-image: "presets/misc/note_annotation.svg";
4953}
4954node|z16-[note][fixme]::core_note_fixme,
4955node|z-15[note][fixme][!setting("hide_icons")]::core_note_fixme,
4956node|z16-[note][FIXME]::core_note_fixme,
4957node|z-15[note][FIXME][!setting("hide_icons")]::core_note_fixme {
4958    icon-image: "presets/misc/note_fixme_annotation.svg";
4959}
4960
4961/****************************************/
4962/* zoom levels and general node display */
4963/****************************************/
4964
4965/*
4966Summary of different zoom levels:
4967  (any zoom)    place=* (except locality and square) and a few natural icons with their text is shown
4968  |z-14         tagged way nodes are hidden completely
4969  |z-15         untagged way nodes are hidden completely
4970  |z15          place=locality icon
4971  |z16-         fixme=* and note=* symbols; place=locality text
4972  |z17-         normal POI icons (without text),
4973                street name along highway=* ways
4974  |z18-         text for normal POI icons is shown
4975 
4976 * 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
4977 * all these zoom features are modifiable via style settings
4978 * maxspeed icons should not be distinguishable from POIs with "icon-image" property
4979
4980*/
4981
4982node|z-16[setting("hide_icons")],
4983node|z17-[!is_prop_set("icon-image")][setting("hide_icons")]!.maxspeedclass,
4984node[!is_prop_set("icon-image")][!setting("hide_icons")]!.maxspeedclass {
4985    symbol-size: 2;
4986    symbol-shape: square;
4987    symbol-stroke-color: node_standard#ffff00;
4988    major-z-index: 4.95; /* put node squares above line text */
4989}
4990way > node|z-15[setting("shrink_nodes")]!:tagged {
4991    symbol-shape: none;
4992}
4993node:connection {
4994    symbol-stroke-color: node_connection#ffff00;
4995}
4996node:tagged {
4997    symbol-stroke-color: none;
4998    symbol-fill-color: node_tagged#00ffff;
4999}
5000node:tagged[!is_prop_set("icon-image")]!.maxspeedclass {
5001    symbol-fill-color: node_tagged_without_icon#00ffff; /* by default same color as above but user configurable */
5002}
5003way > 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 */
5004    symbol-shape: none;
5005}
5006
5007way > node|z16[setting("shrink_nodes")]!:tagged { symbol-size: 1; }
5008
5009node|z17[setting("shrink_nodes")]               { symbol-size: 4; }
5010way > node|z17[setting("shrink_nodes")]         { symbol-size: 2; }
5011node|z17[setting("shrink_nodes")]:connection    { symbol-size: 4; }
5012
5013node|z18[setting("shrink_nodes")]               { symbol-size: 4; }
5014way > node|z18[setting("shrink_nodes")]         { symbol-size: 3; }
5015node|z18[setting("shrink_nodes")]:connection    { symbol-size: 5; }
5016
5017node|z19-[setting("shrink_nodes")]              { symbol-size: 4; }
5018way > node|z19-[setting("shrink_nodes")]        { symbol-size: 4; }
5019node|z19-[setting("shrink_nodes")]:connection   { symbol-size: 6; }
5020
5021node[!setting("shrink_nodes")]                  { symbol-size: 4; }
5022way > node[!setting("shrink_nodes")]            { symbol-size: 4; }
5023node[!setting("shrink_nodes")]:connection       { symbol-size: 6; }
5024
5025node:selected {
5026    symbol-shape: square;
5027    symbol-size: 6;
5028    symbol-fill-color: node_selected#ff0000;
5029    symbol-stroke-color: node_selected#ff0000;
5030}
5031
5032node|z-16[setting("hide_icons")].icon_z17!.icon_z0,
5033relation|z-16[type=restriction][setting("hide_icons")] {
5034    icon-image: none;
5035}
5036node|z-17[setting("hide_icons")]!.text_z0 {
5037    text: none;
5038}
5039node|z16-17[setting("hide_icons")][place=locality] {
5040    text: auto;
5041}
5042
5043node|z-18,area|z-18 { font-size: 8; }
5044node|z19,area|z19   { font-size: 9; }
5045node|z20-,area|z20- { font-size: 11; }
5046
5047node.place, way.place, area.place { font-size: 11; }
5048
5049
5050/*******************/
5051/* way text labels */
5052/*******************/
5053
5054way|z18-[highway=motorway][setting("highway_labels")],
5055way|z18-[highway=motorway_link][setting("highway_labels")],
5056way|z18-[highway=trunk][setting("highway_labels")],
5057way|z18-[highway=trunk_link][setting("highway_labels")],
5058way|z18-[highway=primary][setting("highway_labels")],
5059way|z18-[highway=primary_link][setting("highway_labels")],
5060way|z18-[highway=secondary][setting("highway_labels")],
5061way|z18-[highway=secondary_link][setting("highway_labels")],
5062way|z18-[highway=tertiary][setting("highway_labels")],
5063way|z18-[highway=tertiary_link][setting("highway_labels")],
5064way|z18-[highway=unclassified][setting("highway_labels")],
5065way|z18-[highway=residential][setting("highway_labels")],
5066way|z18-[highway=living_street][setting("highway_labels")],
5067way|z18-[highway=escape][setting("highway_labels")],
5068way|z18-[highway=pedestrian][!area?][setting("highway_labels")],
5069way|z18-[highway=steps][setting("highway_labels")],
5070way|z18-[highway=footway][setting("highway_labels")],
5071way|z18-[highway=path][setting("highway_labels")],
5072way|z18-[highway=service][setting("highway_labels")],
5073way|z18-[highway=track][setting("highway_labels")],
5074way|z18-[highway=cycleway][setting("highway_labels")],
5075way|z18-[highway=bridleway][setting("highway_labels")],
5076way|z18-[highway=bus_guideway][setting("highway_labels")],
5077way|z18-[highway=raceway][setting("highway_labels")],
5078way|z18-[highway=construction][setting("highway_labels")],
5079way|z18-[highway=road][setting("highway_labels")] {
5080    text: auto;
5081    text-color: black;
5082    font-size: 10;
5083    text-position: line;
5084    text-halo-opacity: 1;
5085    text-halo-radius: 1.5;
5086}
5087way|z18-[highway=motorway][setting("highway_labels")],
5088way|z18-[highway=motorway_link][setting("highway_labels")] {
5089    text-halo-color: motorway#809bc0;
5090}
5091way|z18-[highway=trunk][setting("highway_labels")],
5092way|z18-[highway=trunk_link][setting("highway_labels")] {
5093    text-halo-color: trunk#7fc97f;
5094}
5095way|z18-[highway=primary][setting("highway_labels")],
5096way|z18-[highway=primary_link][setting("highway_labels")] {
5097    text-halo-color: primary#fb805f;
5098}
5099way|z18-[highway=secondary][setting("highway_labels")],
5100way|z18-[highway=secondary_link][setting("highway_labels")] {
5101    text-halo-color: secondary#fdbf6f;
5102}
5103way|z18-[highway=tertiary][setting("highway_labels")],
5104way|z18-[highway=tertiary_link][setting("highway_labels")] {
5105    text-halo-color: tertiary#f7f496;
5106}
5107way|z18-[highway=unclassified][setting("highway_labels")],
5108way|z18-[highway=residential][setting("highway_labels")],
5109way|z18-[highway=living_street][setting("highway_labels")],
5110way|z18-[highway=escape][setting("highway_labels")] {
5111    text-halo-color: street#c0c0c0;
5112}
5113way|z18-[highway=pedestrian][!area?][setting("highway_labels")],
5114way|z18-[highway=steps][setting("highway_labels")],
5115way|z18-[highway=footway][setting("highway_labels")],
5116way|z18-[highway=path][setting("highway_labels")] {
5117    text-halo-color: foot#00ff00;
5118}
5119way|z18-[highway=service][setting("highway_labels")] {
5120    text-halo-color: service#809bc0;
5121}
5122way|z18-[highway=track][setting("highway_labels")] {
5123    text-halo-color: highway_track#6e541c;
5124}
5125way|z18-[highway=cycleway][setting("highway_labels")],
5126way|z18-[highway=path][setting("highway_labels")].cyclecolor {
5127    text-halo-color: bicycle#b100ff;
5128}
5129way|z18-[highway=bridleway][setting("highway_labels")] {
5130    text-halo-color: horse#a18559;
5131}
5132way|z18-[highway=bus_guideway][setting("highway_labels")] {
5133    text-halo-color: rail#404040;
5134}
5135way|z18-[highway=raceway][setting("highway_labels")] {
5136    text-halo-color: raceway#ff80ff;
5137}
5138way|z18-[highway=construction][setting("highway_labels")] {
5139    text-halo-color: construction#ffff00;
5140}
5141way|z18-[highway=road][setting("highway_labels")] {
5142    text-halo-color: highway_road#770000;
5143}
5144way|z18-[highway][railway=platform][setting("highway_labels")] {
5145    text-halo-color: rail#404040;
5146}
5147way|z18-[highway][public_transport=platform][setting("highway_labels")] {
5148    text-halo-color: service#809bc0;
5149}
5150way|z19[highway][setting("highway_labels")] {
5151    font-size: 11;
5152}
5153way|z20-[highway][setting("highway_labels")] {
5154    font-size: 12;
5155}
5156
5157/*************/
5158/* Area fill */
5159/*************/
5160
5161/* small extent for unclosed area (see below for closed) */
5162area[setting("partial_fill")] {
5163    fill-extent: 15;
5164}
5165
5166/* Turn partial fill off and use plain fill, when the partial fill covers about
5167   100% of the area. This reduces artifacts (typically for incomplete multipolygons).
5168   Switching between full and partial fill while drawing an area might be irritating,
5169   so only do this at low zoom. */
5170area|z-13[setting("partial_fill")] {
5171    fill-extent-threshold: 1.0;
5172}
5173
5174/* Larger extent for closed areas.
5175   Turn partial fill off, when it covers more than about 50% of the area. This avoids
5176   areas with small unfilled patches in the center. */
5177area[setting("partial_fill")]:closed2 {
5178    fill-extent: 25;
5179    fill-extent-threshold: JOSM_pref("draw.area.extent_threshold", 0.5);
5180}
5181
Note: See TracBrowser for help on using the repository browser.