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

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