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

Last change on this file since 8050 was 8050, checked in by Klumbumbus, 4 years ago

fix #4927 - add new turn restriction icon set which fits better to the used tags. You can switch back to the old icon set in the style settings of the stale. There is a new option.

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