source: josm/trunk/resources/styles/standard/elemstyles.mapcss @ 16265

Last change on this file since 16265 was 16265, checked in by Klumbumbus, 19 months ago

fix #19072 - Add shop=storage_rental (icon from https://publicdomainvectors.org/en/free-clipart/Isometric-cardboard-box/72917.html, modified, CC0 and PD licensed)

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