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

Last change on this file since 13125 was 13125, checked in by Klumbumbus, 4 weeks ago

see #15483 - improve mappaint by layering highways (patch by naoliv)

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