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

Last change on this file was 13454, checked in by Don-vip, 8 weeks ago

see #16009 - fix last http -> https links

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