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

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