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

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