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

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

fix #11241 - add man_made=cutline (preset, mappaint, validator); syntax fix (missing comma)

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