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

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

fix #8717 - add highway=milestone and railway=milestone to preset and mappaint style; add numerical validator tests and fix for pk/kp => distance; prefer distance before ref as text in MapView; typo

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