1 /* http://meyerweb.com/eric/tools/css/reset/
3 License: none (public domain)
6 html, body, div, span, applet, object, iframe,
7 h1, h2, h3, h4, h5, h6, p, blockquote, pre,
8 a, abbr, acronym, address, big, cite, code,
9 del, dfn, em, img, ins, kbd, q, s, samp,
10 small, strike, strong, sub, sup, tt, var,
12 dl, dt, dd, ol, ul, li,
13 fieldset, form, label, legend,
14 table, caption, tbody, tfoot, thead, tr, th, td,
15 article, aside, canvas, details, embed,
16 figure, figcaption, footer, header, hgroup,
17 menu, nav, output, ruby, section, summary,
18 time, mark, audio, video {
24 vertical-align: baseline;
26 /* HTML5 display-role reset for older browsers */
27 article, aside, details, figcaption, figure,
28 footer, header, hgroup, menu, nav, section {
40 blockquote:before, blockquote:after,
46 border-collapse: collapse;
49 a { text-decoration: none;}
51 * 1. Corrects font family not being inherited in all browsers.
52 * 2. Corrects font size not being inherited in all browsers.
53 * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
60 font-family: inherit; /* 1 */
61 font-size: 100%; /* 2 */
67 * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
76 /* Hide default number spinner controls */
77 input[type="number"]::-webkit-inner-spin-button,
78 input[type="number"]::-webkit-outer-spin-button {
83 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
84 * and `video` controls.
85 * 2. Corrects inability to style clickable `input` types in iOS.
86 * 3. Improves usability and consistency of cursor style between image-type
91 html input[type="button"], /* 1 */
93 input[type="submit"] {
94 -webkit-appearance: button; /* 2 */
95 cursor: pointer; /* 3 */
99 * Re-set default cursor for disabled elements.
108 * 1. Addresses box sizing set to `content-box` in IE 8/9.
109 * 2. Removes excess padding in IE 8/9.
112 input[type="checkbox"],
113 input[type="radio"] {
114 box-sizing: border-box; /* 1 */
119 * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
120 * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
121 * (include `-moz` to future-proof).
124 input[type="search"] {
125 -webkit-appearance: textfield; /* 1 */
126 -moz-box-sizing: border-box;
127 -webkit-box-sizing: border-box; /* 2 */
128 box-sizing: border-box;
132 * Removes inner padding and search cancel button in Safari 5 and Chrome
136 input[type="search"]::-webkit-search-cancel-button,
137 input[type="search"]::-webkit-search-decoration {
138 -webkit-appearance: none;
142 * Removes inner padding and border in Firefox 4+.
145 button::-moz-focus-inner,
146 input::-moz-focus-inner {
152 ** Markup free clearing
153 ** Details: http://www.positioniseverything.net/easyclearing.html
157 content: " "; /* 1 */
158 display: table; /* 2 */
165 .layer-osm path:not(.oneway-marker-path) { /* IE/Edge needs :not(.oneway) */
168 .layer-osm path.viewfield-marker-path { /* IE/Edge rule for <use> marker style */
173 stroke-opacity: 0.75;
175 .fill-wireframe .layer-osm path.viewfield-marker-path { /* IE/Edge rule for <use> marker style */
179 /* the above fill: none rule affects paths in <use> shadow dom only in Firefox */
180 .layer-osm use.icon path { fill: #333; } /* FF svg Maki icons */
181 .layer-osm .turn use path { fill: #000; } /* FF turn restriction icons */
182 #turn-only-shape2, #turn-only-u-shape2 { fill: #7092ff; } /* FF turn-only, turn-only-u */
183 #turn-no-shape2, #turn-no-u-shape2 { fill: #e06d5f; } /* FF turn-no, turn-no-u */
184 #turn-yes-shape2, #turn-yes-u-shape2 { fill: #8cd05f; } /* FF turn-yes, turn-yes-u */
187 /* No interactivity except what we specifically allow */
189 pointer-events: none;
193 pointer-events: visibleStroke;
197 /* `.target` objects are interactive */
198 /* They can be picked up, clicked, hovered, or things can connect to them */
200 pointer-events: fill;
207 pointer-events: stroke;
211 stroke: currentColor;
212 stroke-linecap: round;
213 stroke-linejoin: round;
216 /* `.target-nope` objects are explicitly forbidden to join to */
217 .surface:not(.nope-disabled) .node.target.target-nope,
218 .surface:not(.nope-disabled) .way.target.target-nope {
223 /* `.active` objects (currently being drawn or dragged) are not interactive */
224 /* This is important to allow the events to drop through to whatever is */
225 /* below them on the map, so you can still hover and connect to other things. */
227 pointer-events: none !important;
246 g.point.related:not(.selected) .shadow,
247 g.point.hover:not(.selected) .shadow {
251 g.point.selected .shadow {
255 g.point ellipse.stroke {
259 .mode-drag-node g.point.active ellipse.stroke {
264 /* vertices and midpoints */
276 g.vertex.shared .stroke {
294 g.vertex.related:not(.selected) .shadow,
295 g.vertex.hover:not(.selected) .shadow,
296 g.midpoint.related:not(.selected) .shadow,
297 g.midpoint.hover:not(.selected) .shadow {
301 g.vertex.selected .shadow {
308 .preset-icon .icon.iD-other-line {
314 stroke-linecap: round;
315 stroke-linejoin: round;
329 path.shadow.related:not(.selected),
330 path.shadow.hover:not(.selected) {
334 path.shadow.selected {
344 /* Labels / Markers */
352 .oneway .textpath.tag-waterway {
356 .onewaygroup path.oneway,
357 .viewfieldgroup path.viewfield {
363 text.pointlabel-halo,
367 dominant-baseline: middle;
372 -webkit-transition: opacity 100ms linear;
373 transition: opacity 100ms linear;
374 -moz-transition: opacity 100ms linear;
377 /* Opera doesn't support dominant-baseline. See #715 */
378 /* Safari 10 seems to have regressed too */
379 .linelabel-halo .textpath,
380 .linelabel .textpath {
381 baseline-shift: -33%;
382 dominant-baseline: auto;
385 .layer-labels-halo text {
389 stroke-miterlimit: 1;
400 .icon.areaicon-halo {
404 stroke-miterlimit: 1;
413 /* Turn Restrictions */
421 .form-field-restrictions .vertex {
422 cursor: auto !important;
423 pointer-events: none;
426 /* Turn restriction paths and vertices */
427 .surface.tr .way.target,
428 .surface.tr path.shadow.selected,
429 .surface.tr path.shadow.related {
433 .surface.tr path.shadow.selected,
434 .surface.tr path.shadow.related,
435 .surface.tr g.vertex.selected .shadow,
436 .surface.tr g.vertex.related .shadow {
440 .surface.tr path.shadow.related.allow,
441 .surface.tr g.vertex.related.allow .shadow {
444 .surface.tr path.shadow.related.restrict,
445 .surface.tr g.vertex.related.restrict .shadow {
448 .surface.tr path.shadow.related.only,
449 .surface.tr g.vertex.related.only .shadow {
457 pointer-events: none;
470 dominant-baseline: middle;
481 stroke-miterlimit: 1;
485 /* Default - light gray */
492 stroke: rgba(255, 255, 255, 0.3);
493 fill: rgba(255, 255, 255, 0.3);
496 .preset-icon-fill-area {
497 border: 1px solid rgb(170, 170, 170);
498 background-color: rgba(170, 170, 170, 0.3);
501 path.shadow.old-multipolygon,
502 path.stroke.old-multipolygon {
503 stroke-dasharray: 100, 5;
504 stroke-linecap: butt;
508 path.stroke.tag-landuse,
509 path.stroke.tag-natural,
510 path.stroke.tag-leisure-nature_reserve,
511 path.stroke.tag-leisure-pitch,
512 path.stroke.tag-leisure-park {
513 stroke: rgb(140, 208, 95);
515 path.fill.tag-landuse,
516 path.fill.tag-natural,
517 path.fill.tag-leisure-nature_reserve,
518 path.fill.tag-leisure-pitch,
519 path.fill.tag-leisure-park {
520 stroke: rgba(140, 208, 95, 0.3);
521 fill: rgba(140, 208, 95, 0.3);
523 .preset-icon-fill-area.tag-landuse,
524 .preset-icon-fill-area.tag-natural,
525 .preset-icon-fill-area.tag-leisure-nature_reserve,
526 .preset-icon-fill-area.tag-leisure-pitch,
527 .preset-icon-fill-area.tag-leisure-park {
528 border-color: rgb(140, 208, 95);
529 background-color: rgba(140, 208, 95, 0.3);
533 path.stroke.tag-amenity-swimming_pool,
534 path.stroke.tag-leisure-swimming_pool,
535 path.stroke.tag-natural-water,
536 path.stroke.tag-landuse-aquaculture,
537 path.stroke.tag-landuse-basin,
538 path.stroke.tag-landuse-harbour,
539 path.stroke.tag-landuse-reservoir {
540 stroke: rgb(119, 211, 222);
542 path.fill.tag-amenity-swimming_pool,
543 path.fill.tag-leisure-swimming_pool,
544 path.fill.tag-landuse-aquaculture,
545 path.fill.tag-landuse-basin,
546 path.fill.tag-landuse-harbour,
547 path.fill.tag-landuse-reservoir,
548 path.fill.tag-natural-water {
549 stroke: rgba(119, 211, 222, 0.3);
550 fill: rgba(119, 211, 222, 0.3);
552 .preset-icon-fill-area.tag-amenity-swimming_pool,
553 .preset-icon-fill-area.tag-leisure-swimming_pool,
554 .preset-icon-fill-area.tag-landuse-aquaculture,
555 .preset-icon-fill-area.tag-landuse-basin,
556 .preset-icon-fill-area.tag-landuse-harbour,
557 .preset-icon-fill-area.tag-landuse-reservoir,
558 .preset-icon-fill-area.tag-natural-water {
559 border-color: rgb(119, 211, 222);
560 background-color: rgba(119, 211, 222, 0.3);
564 .pattern-color-beach,
566 .pattern-color-scrub {
567 fill: rgba(255, 255, 148, 0.2);
569 path.stroke.tag-leisure-pitch.tag-sport-beachvolleyball,
570 path.stroke.tag-natural-beach,
571 path.stroke.tag-natural-sand,
572 path.stroke.tag-natural-scrub,
573 path.stroke.tag-amenity-childcare,
574 path.stroke.tag-amenity-kindergarten,
575 path.stroke.tag-amenity-school,
576 path.stroke.tag-amenity-college,
577 path.stroke.tag-amenity-university {
578 stroke: rgba(255, 255, 148, 0.75);
580 path.fill.tag-leisure-pitch.tag-sport-beachvolleyball,
581 path.fill.tag-natural-beach,
582 path.fill.tag-natural-sand,
583 path.fill.tag-natural-scrub,
584 path.fill.tag-amenity-childcare,
585 path.fill.tag-amenity-kindergarten,
586 path.fill.tag-amenity-school,
587 path.fill.tag-amenity-college,
588 path.fill.tag-amenity-university {
589 stroke: rgba(255, 255, 148, 0.15);
590 fill: rgba(255, 255, 148, 0.15);
592 .preset-icon-fill-area.tag-leisure-pitch.tag-sport-beachvolleyball,
593 .preset-icon-fill-area.tag-natural-beach,
594 .preset-icon-fill-area.tag-natural-sand,
595 .preset-icon-fill-area.tag-natural-scrub,
596 .preset-icon-fill-area.tag-amenity-childcare,
597 .preset-icon-fill-area.tag-amenity-kindergarten,
598 .preset-icon-fill-area.tag-amenity-school,
599 .preset-icon-fill-area.tag-amenity-college,
600 .preset-icon-fill-area.tag-amenity-university {
601 border-color: rgb(232, 232, 0);
602 background-color: rgba(255, 255, 148, 0.15);
606 .pattern-color-construction {
607 fill: rgba(196, 189, 25, 0.3);
609 path.stroke.tag-landuse-residential,
610 path.stroke.tag-landuse.tag-status,
611 path.stroke.tag-landuse-construction {
612 stroke: rgb(196, 189, 25);
614 path.fill.tag-landuse-residential {
615 stroke: rgba(196, 189, 25, 0.3);
616 fill: rgba(196, 189, 25, 0.3);
618 .preset-icon-fill-area.tag-landuse-residential,
619 .preset-icon-fill-area.tag-landuse.tag-status,
620 .preset-icon-fill-area.tag-landuse-construction {
621 border-color: rgb(196, 189, 25);
622 background: rgba(196, 189, 25, 0.3);
626 path.stroke.tag-landuse-retail,
627 path.stroke.tag-landuse-commercial,
628 path.stroke.tag-landuse-landfill,
629 path.stroke.tag-military,
630 path.stroke.tag-landuse-military {
631 stroke: rgb(214, 136, 26);
633 path.fill.tag-landuse-retail,
634 path.fill.tag-landuse-commercial,
635 path.fill.tag-landuse-landfill,
636 path.fill.tag-military,
637 path.fill.tag-landuse-military {
638 stroke: rgba(214, 136, 26, 0.3);
639 fill: rgba(214, 136, 26, 0.3);
641 .preset-icon-fill-area.tag-landuse-retail,
642 .preset-icon-fill-area.tag-landuse-commercial,
643 .preset-icon-fill-area.tag-landuse-landfill,
644 .preset-icon-fill-area.tag-military,
645 .preset-icon-fill-area.tag-landuse-military {
646 border-color: rgb(214, 136, 26);
647 background-color: rgba(214, 136, 26, 0.3);
651 path.stroke.tag-landuse-industrial,
652 path.stroke.tag-power-plant {
653 stroke: rgb(228, 164, 245);
655 path.fill.tag-landuse-industrial,
656 path.fill.tag-power-plant {
657 stroke: rgba(228, 164, 245, 0.3);
658 fill: rgba(228, 164, 245, 0.3);
660 .preset-icon-fill-area.tag-landuse-industrial,
661 .preset-icon-fill-area.tag-power-plant {
662 border-color: rgb(228, 164, 245);
663 background-color: rgba(228, 164, 245, 0.3);
667 .pattern-color-wetland {
668 fill: rgba(153, 225, 170, 0.3);
670 path.stroke.tag-natural-wetland {
671 stroke: rgb(153, 225, 170);
673 .preset-icon-fill-area.tag-natural-wetland {
674 border-color: rgb(153, 225, 170);
675 background-color: rgba(153, 225, 170, 0.2);
678 /* Light Green things */
679 .pattern-color-cemetery,
680 .pattern-color-orchard,
681 .pattern-color-meadow,
683 .pattern-color-farmland {
684 fill: rgba(191, 232, 63, 0.2);
686 path.stroke.tag-landuse-cemetery,
687 path.stroke.tag-landuse-orchard,
688 path.stroke.tag-landuse-meadow,
689 path.stroke.tag-landuse-farm,
690 path.stroke.tag-landuse-farmland {
691 stroke: rgb(191, 232, 63);
693 .preset-icon-fill-area.tag-landuse-cemetery,
694 .preset-icon-fill-area.tag-landuse-orchard,
695 .preset-icon-fill-area.tag-landuse-meadow,
696 .preset-icon-fill-area.tag-landuse-farm,
697 .preset-icon-fill-area.tag-landuse-farmland {
698 background-color: rgba(191, 232, 63, 0.2);
702 path.stroke.tag-landuse-farmyard {
703 stroke: rgb(245, 220, 186);
705 path.fill.tag-landuse-farmyard {
706 stroke: rgba(245, 220, 186, 0.3);
707 fill: rgba(245, 220, 186, 0.3);
709 .preset-icon-fill-area.tag-landuse-farmyard {
710 border-color: rgb(226, 177, 111);
711 background: rgba(245, 220, 186, 0.3);
714 /* Dark Gray things */
715 path.stroke.tag-amenity-parking,
716 path.stroke.tag-leisure-pitch.tag-sport-basketball,
717 path.stroke.tag-leisure-pitch.tag-sport-skateboard,
718 path.stroke.tag-natural-bare_rock,
719 path.stroke.tag-natural-scree,
720 path.stroke.tag-landuse-railway,
721 path.stroke.tag-landuse-quarry {
724 path.fill.tag-amenity-parking,
725 path.fill.tag-leisure-pitch.tag-sport-basketball,
726 path.fill.tag-leisure-pitch.tag-sport-skateboard,
727 path.fill.tag-natural-bare_rock,
728 path.fill.tag-natural-scree,
729 path.fill.tag-landuse-railway,
730 path.fill.tag-landuse-quarry {
731 stroke: rgba(140, 140, 140, 0.5);
732 fill: rgba(140, 140, 140, 0.5);
734 .preset-icon-fill-area.tag-amenity-parking,
735 .preset-icon-fill-area.tag-leisure-pitch.tag-sport-basketball,
736 .preset-icon-fill-area.tag-leisure-pitch.tag-sport-skateboard,
737 .preset-icon-fill-area.tag-natural-bare_rock,
738 .preset-icon-fill-area.tag-natural-scree,
739 .preset-icon-fill-area.tag-landuse-railway,
740 .preset-icon-fill-area.tag-landuse-quarry {
741 border-color: rgb(170, 170, 170);
742 background-color: rgba(140, 140, 140, 0.5);
745 /* Light gray overrides */
746 path.stroke.tag-natural-cave_entrance,
747 path.stroke.tag-natural-glacier {
750 path.fill.tag-natural-cave_entrance,
751 path.fill.tag-natural-glacier {
752 stroke: rgba(255, 255, 255, 0.3);
753 fill: rgba(255, 255, 255, 0.3);
755 .preset-icon-fill-area.tag-natural-cave_entrance,
756 .preset-icon-fill-area.tag-natural-glacier {
757 border-color: rgb(170, 170, 170);
758 background: rgba(170, 170, 170, 0.3);
763 .preset-icon .icon.tag-highway.other-line {
767 path.casing.tag-highway {
770 path.stroke.tag-highway {
776 path.stroke.area.tag-highway,
777 .low-zoom path.stroke.area.tag-highway {
779 stroke-dasharray: none;
785 path.shadow.tag-highway {
788 path.casing.tag-highway {
791 path.stroke.tag-highway {
795 .low-zoom path.shadow.tag-highway {
798 .low-zoom path.casing.tag-highway {
801 .low-zoom path.stroke.tag-highway {
805 .preset-icon .icon.iD-highway-motorway,
806 .preset-icon .icon.iD-highway-motorway-link {
810 path.stroke.tag-highway-motorway,
811 path.stroke.tag-highway-motorway_link,
812 path.stroke.tag-motorway {
815 path.casing.tag-highway-motorway,
816 path.casing.tag-highway-motorway_link,
817 path.casing.tag-motorway {
821 .preset-icon .icon.iD-highway-trunk,
822 .preset-icon .icon.iD-highway-trunk-link {
826 path.stroke.tag-highway-trunk,
827 path.stroke.tag-highway-trunk_link,
828 path.stroke.tag-trunk {
831 path.casing.tag-highway-trunk,
832 path.casing.tag-highway-trunk_link,
833 path.casing.tag-trunk {
837 .preset-icon .icon.iD-highway-primary,
838 .preset-icon .icon.iD-highway-primary-link {
842 path.stroke.tag-highway-primary,
843 path.stroke.tag-highway-primary_link,
844 path.stroke.tag-primary {
847 path.casing.tag-highway-primary,
848 path.casing.tag-highway-primary_link,
849 path.casing.tag-primary {
853 .preset-icon .icon.iD-highway-secondary,
854 .preset-icon .icon.iD-highway-secondary-link {
858 path.stroke.tag-highway-secondary,
859 path.stroke.tag-highway-secondary_link,
860 path.stroke.tag-secondary {
863 path.casing.tag-highway-secondary,
864 path.casing.tag-highway-secondary_link,
865 path.casing.tag-secondary {
869 .preset-icon .icon.iD-highway-tertiary,
870 .preset-icon .icon.iD-highway-tertiary-link {
874 path.stroke.tag-highway-tertiary,
875 path.stroke.tag-highway-tertiary_link,
876 path.stroke.tag-tertiary {
879 path.casing.tag-highway-tertiary,
880 path.casing.tag-highway-tertiary_link,
881 path.casing.tag-tertiary {
885 .legacy-carto .preset-icon .icon.iD-highway-motorway,
886 .legacy-carto .preset-icon .icon.iD-highway-motorway-link {
890 .legacy-carto path.stroke.tag-highway-motorway,
891 .legacy-carto path.stroke.tag-highway-motorway_link,
892 .legacy-carto path.stroke.tag-motorway {
895 .legacy-carto path.casing.tag-highway-motorway,
896 .legacy-carto path.casing.tag-highway-motorway_link,
897 .legacy-carto path.casing.tag-motorway {
901 .legacy-carto .preset-icon .icon.iD-highway-trunk,
902 .legacy-carto .preset-icon .icon.iD-highway-trunk-link {
906 .legacy-carto path.stroke.tag-highway-trunk,
907 .legacy-carto path.stroke.tag-highway-trunk_link,
908 .legacy-carto path.stroke.tag-trunk {
911 .legacy-carto path.casing.tag-highway-trunk,
912 .legacy-carto path.casing.tag-highway-trunk_link,
913 .legacy-carto path.casing.tag-trunk {
917 .legacy-carto .preset-icon .icon.iD-highway-primary,
918 .legacy-carto .preset-icon .icon.iD-highway-primary-link {
922 .legacy-carto path.stroke.tag-highway-primary,
923 .legacy-carto path.stroke.tag-highway-primary_link,
924 .legacy-carto path.stroke.tag-primary {
927 .legacy-carto path.casing.tag-highway-primary,
928 .legacy-carto path.casing.tag-highway-primary_link,
929 .legacy-carto path.casing.tag-primary {
933 .legacy-carto .preset-icon .icon.iD-highway-secondary,
934 .legacy-carto .preset-icon .icon.iD-highway-secondary-link {
938 .legacy-carto path.stroke.tag-highway-secondary,
939 .legacy-carto path.stroke.tag-highway-secondary_link,
940 .legacy-carto path.stroke.tag-secondary {
943 .legacy-carto path.casing.tag-highway-secondary,
944 .legacy-carto path.casing.tag-highway-secondary_link,
945 .legacy-carto path.casing.tag-secondary {
949 .legacy-carto .preset-icon .icon.iD-highway-tertiary,
950 .legacy-carto .preset-icon .icon.iD-highway-tertiary-link {
954 .legacy-carto path.stroke.tag-highway-tertiary,
955 .legacy-carto path.stroke.tag-highway-tertiary_link,
956 .legacy-carto path.stroke.tag-tertiary {
959 .legacy-carto path.casing.tag-highway-tertiary,
960 .legacy-carto path.casing.tag-highway-tertiary_link,
961 .legacy-carto path.casing.tag-tertiary {
965 .preset-icon .icon.iD-highway-residential {
969 path.stroke.tag-highway-residential,
970 path.stroke.tag-residential {
973 path.casing.tag-highway-residential,
974 path.casing.tag-residential {
978 .preset-icon .icon.iD-highway-unclassified {
982 path.stroke.tag-highway-unclassified,
983 path.stroke.tag-unclassified {
986 path.casing.tag-highway-unclassified,
987 path.casing.tag-unclassified {
992 /* narrow highways */
994 path.shadow.tag-highway-living_street,
995 path.shadow.tag-highway-bus_guideway,
996 path.shadow.tag-highway-service,
997 path.shadow.tag-highway-track,
998 path.shadow.tag-highway-road,
999 path.shadow.tag-living_street,
1000 path.shadow.tag-service,
1001 path.shadow.tag-track,
1002 path.shadow.tag-road {
1005 path.casing.tag-highway-living_street,
1006 path.casing.tag-highway-bus_guideway,
1007 path.casing.tag-highway-service,
1008 path.casing.tag-highway-track,
1009 path.casing.tag-highway-road,
1010 path.casing.tag-living_street,
1011 path.casing.tag-service,
1012 path.casing.tag-track,
1013 path.casing.tag-road {
1016 path.stroke.tag-highway-living_street,
1017 path.stroke.tag-highway-bus_guideway,
1018 path.stroke.tag-highway-service,
1019 path.stroke.tag-highway-track,
1020 path.stroke.tag-highway-road,
1021 path.stroke.tag-living_street,
1022 path.stroke.tag-service,
1023 path.stroke.tag-track,
1024 path.stroke.tag-road {
1028 path.shadow.tag-highway-path,
1029 path.shadow.tag-highway-footway,
1030 path.shadow.tag-highway-cycleway,
1031 path.shadow.tag-highway-bridleway,
1032 path.shadow.tag-highway-corridor,
1033 path.shadow.tag-highway-pedestrian,
1034 path.shadow.tag-highway-steps,
1035 path.shadow.tag-path,
1036 path.shadow.tag-footway,
1037 path.shadow.tag-cycleway,
1038 path.shadow.tag-bridleway,
1039 path.shadow.tag-corridor,
1040 path.shadow.tag-pedestrian,
1041 path.shadow.tag-steps {
1044 path.casing.tag-highway-path,
1045 path.casing.tag-highway-footway,
1046 path.casing.tag-highway-cycleway,
1047 path.casing.tag-highway-bridleway,
1048 path.casing.tag-highway-corridor,
1049 path.casing.tag-highway-pedestrian,
1050 path.casing.tag-highway-steps,
1051 path.casing.tag-path,
1052 path.casing.tag-footway,
1053 path.casing.tag-cycleway,
1054 path.casing.tag-bridleway,
1055 path.casing.tag-corridor,
1056 path.casing.tag-pedestrian,
1057 path.casing.tag-steps {
1060 path.stroke.tag-highway-path,
1061 path.stroke.tag-highway-footway,
1062 path.stroke.tag-highway-cycleway,
1063 path.stroke.tag-highway-bridleway,
1064 path.stroke.tag-highway-corridor,
1065 path.stroke.tag-highway-pedestrian,
1066 path.stroke.tag-highway-steps,
1067 path.stroke.tag-path,
1068 path.stroke.tag-footway,
1069 path.stroke.tag-cycleway,
1070 path.stroke.tag-bridleway,
1071 path.stroke.tag-corridor,
1072 path.stroke.tag-pedestrian,
1073 path.stroke.tag-steps {
1077 .low-zoom path.shadow.tag-highway-living_street,
1078 .low-zoom path.shadow.tag-highway-bus_guideway,
1079 .low-zoom path.shadow.tag-highway-service,
1080 .low-zoom path.shadow.tag-highway-track,
1081 .low-zoom path.shadow.tag-highway-road,
1082 .low-zoom path.shadow.tag-living_street,
1083 .low-zoom path.shadow.tag-service,
1084 .low-zoom path.shadow.tag-track,
1085 .low-zoom path.shadow.tag-road {
1088 .low-zoom path.casing.tag-highway-living_street,
1089 .low-zoom path.casing.tag-highway-bus_guideway,
1090 .low-zoom path.casing.tag-highway-service,
1091 .low-zoom path.casing.tag-highway-track,
1092 .low-zoom path.casing.tag-highway-road,
1093 .low-zoom path.casing.tag-living_street,
1094 .low-zoom path.casing.tag-service,
1095 .low-zoom path.casing.tag-track,
1096 .low-zoom path.casing.tag-road {
1099 .low-zoom path.stroke.tag-highway-living_street,
1100 .low-zoom path.stroke.tag-highway-bus_guideway,
1101 .low-zoom path.stroke.tag-highway-service,
1102 .low-zoom path.stroke.tag-highway-track,
1103 .low-zoom path.stroke.tag-highway-road,
1104 .low-zoom path.stroke.tag-living_street,
1105 .low-zoom path.stroke.tag-service,
1106 .low-zoom path.stroke.tag-track,
1107 .low-zoom path.stroke.tag-road {
1111 .low-zoom path.shadow.tag-highway-path,
1112 .low-zoom path.shadow.tag-highway-footway,
1113 .low-zoom path.shadow.tag-highway-cycleway,
1114 .low-zoom path.shadow.tag-highway-bridleway,
1115 .low-zoom path.shadow.tag-highway-corridor,
1116 .low-zoom path.shadow.tag-highway-pedestrian,
1117 .low-zoom path.shadow.tag-highway-steps,
1118 .low-zoom path.shadow.tag-path,
1119 .low-zoom path.shadow.tag-footway,
1120 .low-zoom path.shadow.tag-cycleway,
1121 .low-zoom path.shadow.tag-bridleway,
1122 .low-zoom path.shadow.tag-corridor,
1123 .low-zoom path.shadow.tag-pedestrian,
1124 .low-zoom path.shadow.tag-steps {
1127 .low-zoom path.casing.tag-highway-path,
1128 .low-zoom path.casing.tag-highway-footway,
1129 .low-zoom path.casing.tag-highway-cycleway,
1130 .low-zoom path.casing.tag-highway-bridleway,
1131 .low-zoom path.casing.tag-highway-corridor,
1132 .low-zoom path.casing.tag-highway-pedestrian,
1133 .low-zoom path.casing.tag-highway-steps,
1134 .low-zoom path.casing.tag-path,
1135 .low-zoom path.casing.tag-footway,
1136 .low-zoom path.casing.tag-cycleway,
1137 .low-zoom path.casing.tag-bridleway,
1138 .low-zoom path.casing.tag-corridor,
1139 .low-zoom path.casing.tag-pedestrian,
1140 .low-zoom path.casing.tag-steps {
1143 .low-zoom path.stroke.tag-highway-path,
1144 .low-zoom path.stroke.tag-highway-footway,
1145 .low-zoom path.stroke.tag-highway-cycleway,
1146 .low-zoom path.stroke.tag-highway-bridleway,
1147 .low-zoom path.stroke.tag-highway-corridor,
1148 .low-zoom path.stroke.tag-highway-pedestrian,
1149 .low-zoom path.stroke.tag-highway-steps,
1150 .low-zoom path.stroke.tag-path,
1151 .low-zoom path.stroke.tag-footway,
1152 .low-zoom path.stroke.tag-cycleway,
1153 .low-zoom path.stroke.tag-bridleway,
1154 .low-zoom path.stroke.tag-corridor,
1155 .low-zoom path.stroke.tag-pedestrian,
1156 .low-zoom path.stroke.tag-steps {
1161 .preset-icon .icon.iD-highway-living-street {
1165 path.stroke.tag-highway-living_street,
1166 path.stroke.tag-living_street {
1169 path.casing.tag-highway-living_street,
1170 path.casing.tag-living_street {
1174 .preset-icon .icon.iD-highway-footway.tag-highway-corridor,
1175 .preset-icon .icon.iD-highway-footway.tag-highway-pedestrian {
1179 path.stroke.tag-highway-corridor,
1180 path.stroke.tag-highway-pedestrian,
1181 path.stroke.tag-corridor,
1182 path.stroke.tag-pedestrian {
1184 stroke-dasharray: 2, 8;
1186 .low-zoom path.stroke.tag-highway-corridor,
1187 .low-zoom path.stroke.tag-highway-pedestrian,
1188 .low-zoom path.stroke.tag-corridor,
1189 .low-zoom path.stroke.tag-pedestrian {
1190 stroke-dasharray: 1, 4;
1192 path.casing.tag-highway-corridor,
1193 path.casing.tag-highway-pedestrian,
1194 path.casing.tag-corridor,
1195 path.casing.tag-pedestrian,
1196 path.casing.tag-highway-corridor.tag-unpaved,
1197 path.casing.tag-highway-pedestrian.tag-unpaved,
1198 path.casing.tag-corridor.tag-unpaved,
1199 path.casing.tag-pedestrian.tag-unpaved {
1201 stroke-linecap: round;
1202 stroke-dasharray: none;
1205 .preset-icon .icon.iD-highway-road {
1209 path.stroke.tag-highway-road,
1210 path.stroke.tag-road {
1213 path.casing.tag-highway-road,
1214 path.casing.tag-road {
1218 .preset-icon .icon.iD-highway-service {
1222 path.stroke.tag-highway-service,
1223 path.stroke.tag-service {
1226 path.casing.tag-highway-service,
1227 path.casing.tag-service {
1231 /* special service roads and bus guideways */
1232 /* with `service=* tag` (e.g. parking_aisle, alley, drive-through */
1233 .preset-icon .icon.iD-highway-bus_guideway,
1234 .preset-icon .icon.iD-highway-service.tag-service {
1238 path.stroke.tag-highway-bus_guideway,
1239 path.stroke.tag-highway-service.tag-service,
1240 path.stroke.tag-service.tag-service {
1243 path.casing.tag-highway-bus_guideway,
1244 path.casing.tag-highway-service.tag-service,
1245 path.casing.tag-service.tag-service {
1249 .preset-icon .icon.iD-highway-track {
1253 path.stroke.tag-highway-track,
1254 path.stroke.tag-track {
1257 path.casing.tag-highway-track,
1258 path.casing.tag-track {
1262 path.stroke.tag-highway-path,
1263 path.stroke.tag-highway-footway,
1264 path.stroke.tag-highway-cycleway,
1265 path.stroke.tag-highway-bridleway {
1266 stroke-linecap: butt;
1267 stroke-dasharray: 6, 6;
1269 .low-zoom path.stroke.tag-highway-path,
1270 .low-zoom path.stroke.tag-highway-footway,
1271 .low-zoom path.stroke.tag-highway-cycleway,
1272 .low-zoom path.stroke.tag-highway-bridleway {
1273 stroke-linecap: butt;
1274 stroke-dasharray: 3, 3;
1277 path.casing.tag-highway-path,
1278 path.casing.tag-highway-path.tag-unpaved {
1280 stroke-linecap: round;
1281 stroke-dasharray: none;
1283 path.casing.tag-highway-footway,
1284 path.casing.tag-highway-cycleway,
1285 path.casing.tag-highway-bridleway,
1286 path.casing.tag-highway-footway.tag-unpaved,
1287 path.casing.tag-highway-cycleway.tag-unpaved,
1288 path.casing.tag-highway-bridleway.tag-unpaved {
1290 stroke-linecap: round;
1291 stroke-dasharray: none;
1294 .preset-icon .icon.iD-category-path,
1295 .preset-icon .icon.iD-highway-path {
1299 path.stroke.tag-highway-path {
1303 .preset-icon .icon.tag-route-foot,
1304 .preset-icon .icon.tag-route-hiking,
1305 .preset-icon .icon.iD-highway-footway {
1309 path.stroke.tag-highway-footway {
1313 .preset-icon .icon.iD-highway-footway.tag-crossing {
1316 path.stroke.tag-highway-footway.tag-crossing {
1318 stroke-dasharray: 6, 4;
1320 .low-zoom path.stroke.tag-highway-footway.tag-crossing {
1321 stroke-dasharray: 3, 2;
1324 .preset-icon .icon.tag-route-bicycle,
1325 .preset-icon .icon.iD-highway-cycleway {
1329 path.stroke.tag-highway-cycleway {
1333 .preset-icon .icon.tag-route-horse,
1334 .preset-icon .icon.iD-highway-bridleway {
1338 path.stroke.tag-highway-bridleway {
1342 .preset-icon .icon.iD-highway-steps {
1346 path.stroke.tag-highway-steps {
1348 stroke-linecap: butt;
1349 stroke-dasharray: 3, 3;
1351 .low-zoom path.stroke.tag-highway-steps {
1352 stroke-dasharray: 2, 2;
1354 path.casing.tag-highway-steps,
1355 path.casing.tag-highway-steps.tag-unpaved {
1357 stroke-linecap: round;
1358 stroke-dasharray: none;
1361 /* highway midpoints */
1363 g.midpoint.tag-highway-corridor .fill,
1364 g.midpoint.tag-highway-pedestrian .fill,
1365 g.midpoint.tag-highway-steps .fill,
1366 g.midpoint.tag-highway-path .fill,
1367 g.midpoint.tag-highway-footway .fill,
1368 g.midpoint.tag-highway-cycleway .fill,
1369 g.midpoint.tag-highway-bridleway .fill {
1378 path.stroke.area.tag-aeroway,
1379 .low-zoom path.stroke.area.tag-aeroway {
1381 stroke-dasharray: none;
1385 /* narrow aeroways (taxiway) */
1387 path.shadow.tag-aeroway-taxiway,
1388 path.shadow.tag-taxiway {
1391 path.casing.tag-aeroway-taxiway,
1392 path.casing.tag-taxiway {
1395 path.stroke.tag-aeroway-taxiway,
1396 path.stroke.tag-taxiway {
1400 .low-zoom path.shadow.tag-aeroway-taxiway,
1401 .low-zoom path.shadow.tag-taxiway {
1404 .low-zoom path.casing.tag-aeroway-taxiway,
1405 .low-zoom path.casing.tag-taxiway {
1408 .low-zoom path.stroke.tag-aeroway-taxiway,
1409 .low-zoom path.stroke.tag-taxiway {
1413 .preset-icon .icon.tag-aeroway-taxiway,
1414 .preset-icon .icon.tag-taxiway {
1418 path.stroke.tag-aeroway-taxiway,
1419 path.stroke.tag-taxiway {
1422 path.casing.tag-aeroway-taxiway,
1423 path.casing.tag-taxiway {
1428 /* wide aeroways (runway) */
1430 .preset-icon .icon.tag-aeroway-runway,
1431 .preset-icon .icon.tag-runway {
1435 path.shadow.tag-aeroway-runway {
1438 path.casing.tag-aeroway-runway {
1441 stroke-linecap: square;
1443 path.stroke.tag-aeroway-runway {
1446 stroke-linecap: butt;
1447 stroke-dasharray: 24, 48;
1450 .low-zoom path.shadow.tag-aeroway-runway {
1453 .low-zoom path.casing.tag-aeroway-runway {
1456 .low-zoom path.stroke.tag-aeroway-runway {
1458 stroke-dasharray: 12, 24;
1461 path.fill.tag-aeroway-runway {
1462 stroke: rgba(0, 0, 0, 0.6);
1463 fill: rgba(0, 0, 0, 0.6);
1468 .preset-icon .icon.tag-railway.other-line {
1472 .preset-icon .icon.tag-railway {
1479 path.stroke.area.tag-railway,
1480 .low-zoom path.stroke.area.tag-railway {
1483 stroke-dasharray: none;
1486 path.casing.area.tag-railway,
1487 .low-zoom path.casing.area.tag-railway {
1493 path.shadow.tag-railway {
1496 path.casing.tag-railway {
1499 path.stroke.tag-railway {
1501 stroke-linecap: butt;
1502 stroke-dasharray: 12,12;
1505 .low-zoom path.shadow.tag-railway {
1508 .low-zoom path.casing.tag-railway {
1511 .low-zoom path.stroke.tag-railway {
1513 stroke-dasharray: 6,6;
1519 path.casing.tag-railway {
1522 path.stroke.tag-railway {
1527 .preset-icon .icon.tag-railway-disused,
1528 .preset-icon .icon.tag-railway-abandoned {
1532 path.casing.tag-railway-abandoned {
1535 path.stroke.tag-railway-abandoned {
1540 .preset-icon .icon.tag-railway-subway {
1544 path.casing.tag-railway-subway {
1547 path.stroke.tag-railway-subway {
1552 /* railway platforms - like sidewalks */
1554 .preset-icon .icon.iD-highway-footway.tag-railway-platform {
1558 path.shadow.tag-railway-platform {
1561 path.casing.tag-railway-platform {
1564 stroke-linecap: round;
1565 stroke-dasharray: none;
1567 path.stroke.tag-railway-platform {
1570 stroke-linecap: butt;
1571 stroke-dasharray: 6, 6;
1574 .low-zoom path.shadow.tag-railway-platform {
1577 .low-zoom path.casing.tag-railway-platform {
1580 .low-zoom path.stroke.tag-railway-platform {
1582 stroke-linecap: butt;
1583 stroke-dasharray: 3, 3;
1586 g.midpoint.tag-railway-platform .fill {
1594 .preset-icon .icon.tag-waterway.other-line {
1598 .preset-icon .icon.iD-category-water,
1599 .preset-icon .icon.tag-route-ferry,
1600 .preset-icon .icon.tag-type-waterway,
1601 .preset-icon .icon.tag-waterway {
1606 path.fill.tag-waterway {
1607 stroke: rgba(119, 211, 222, 0.3);
1608 fill: rgba(119, 211, 222, 0.3);
1610 path.casing.tag-waterway {
1613 path.stroke.tag-waterway {
1618 /* narrow waterways (default) */
1620 path.shadow.tag-waterway {
1623 path.casing.tag-waterway {
1626 path.stroke.tag-waterway {
1630 .low-zoom path.shadow.tag-waterway {
1633 .low-zoom path.casing.tag-waterway {
1636 .low-zoom path.stroke.tag-waterway {
1641 /* wide waterways (river) */
1643 path.shadow.tag-waterway-river {
1646 path.casing.tag-waterway-river {
1649 path.stroke.tag-waterway-river {
1653 .low-zoom path.shadow.tag-waterway-river {
1656 .low-zoom path.casing.tag-waterway-river {
1659 .low-zoom path.stroke.tag-waterway-river {
1666 .preset-icon .icon.tag-waterway-ditch {
1669 path.stroke.tag-waterway-ditch {
1674 /* waterway areas */
1676 path.area.stroke.tag-waterway-dock,
1677 path.area.stroke.tag-waterway-boatyard,
1678 path.area.stroke.tag-waterway-fuel {
1682 path.area.casing.tag-waterway-dock,
1683 path.area.casing.tag-waterway-boatyard,
1684 path.area.casing.tag-waterway-fuel {
1687 path.area.fill.tag-waterway-dock,
1688 path.area.fill.tag-waterway-boatyard,
1689 path.area.fill.tag-waterway-fuel {
1690 stroke: rgba(255, 255, 255, 0.3);
1691 fill: rgba(255, 255, 255, 0.3);
1695 .preset-icon .icon.tag-man_made-pipeline,
1696 .preset-icon .icon.tag-power {
1701 path.stroke.tag-power {
1705 path.casing.tag-power {
1711 path.stroke.tag-boundary {
1714 stroke-linecap: butt;
1715 stroke-dasharray: 20, 5, 5, 5;
1717 path.casing.tag-boundary {
1722 path.casing.tag-boundary-protected_area,
1723 path.casing.tag-boundary-national_park {
1729 path.shadow.tag-natural-tree_row {
1732 path.casing.tag-natural-tree_row {
1735 path.stroke.tag-natural-tree_row {
1739 .low-zoom path.shadow.tag-natural-tree_row {
1742 .low-zoom path.casing.tag-natural-tree_row {
1745 .low-zoom path.stroke.tag-natural-tree_row {
1751 path.stroke.tag-barrier {
1754 stroke-linecap: round;
1755 stroke-dasharray: 15, 5, 1, 5;
1757 .low-zoom path.stroke.tag-barrier {
1759 stroke-linecap: butt;
1760 stroke-dasharray: 8, 2, 2, 2;
1765 path.casing.tag-bridge {
1766 stroke-opacity: 0.6;
1768 stroke-linecap: butt;
1769 stroke-dasharray: none;
1772 path.shadow.tag-bridge {
1775 path.casing.tag-bridge {
1778 .low-zoom path.shadow.tag-bridge {
1781 .low-zoom path.casing.tag-bridge {
1785 path.shadow.line.tag-railway.tag-bridge,
1786 path.shadow.tag-highway-living_street.tag-bridge,
1787 path.shadow.tag-highway-path.tag-bridge,
1788 path.shadow.tag-highway-corridor.tag-bridge,
1789 path.shadow.line.tag-highway-pedestrian.tag-bridge,
1790 path.shadow.tag-highway-service.tag-bridge,
1791 path.shadow.tag-highway-track.tag-bridge,
1792 path.shadow.tag-highway-steps.tag-bridge,
1793 path.shadow.tag-highway-footway.tag-bridge,
1794 path.shadow.tag-highway-cycleway.tag-bridge,
1795 path.shadow.tag-highway-bridleway.tag-bridge {
1798 path.casing.line.tag-railway.tag-bridge,
1799 path.casing.tag-highway-living_street.tag-bridge,
1800 path.casing.tag-highway-path.tag-bridge,
1801 path.casing.tag-highway-corridor.tag-bridge,
1802 path.casing.line.tag-highway-pedestrian.tag-bridge,
1803 path.casing.tag-highway-service.tag-bridge,
1804 path.casing.tag-highway-track.tag-bridge,
1805 path.casing.tag-highway-steps.tag-bridge,
1806 path.casing.tag-highway-footway.tag-bridge,
1807 path.casing.tag-highway-cycleway.tag-bridge,
1808 path.casing.tag-highway-bridleway.tag-bridge {
1812 .low-zoom path.shadow.line.tag-railway.tag-bridge,
1813 .low-zoom path.shadow.tag-highway-living_street.tag-bridge,
1814 .low-zoom path.shadow.tag-highway-path.tag-bridge,
1815 .low-zoom path.shadow.tag-highway-corridor.tag-bridge,
1816 .low-zoom path.shadow.line.tag-highway-pedestrian.tag-bridge,
1817 .low-zoom path.shadow.tag-highway-service.tag-bridge,
1818 .low-zoom path.shadow.tag-highway-track.tag-bridge,
1819 .low-zoom path.shadow.tag-highway-steps.tag-bridge,
1820 .low-zoom path.shadow.tag-highway-footway.tag-bridge,
1821 .low-zoom path.shadow.tag-highway-cycleway.tag-bridge,
1822 .low-zoom path.shadow.tag-highway-bridleway.tag-bridge {
1825 .low-zoom path.casing.line.tag-railway.tag-bridge,
1826 .low-zoom path.casing.tag-highway-living_street.tag-bridge,
1827 .low-zoom path.casing.tag-highway-path.tag-bridge,
1828 .low-zoom path.casing.tag-highway-corridor.tag-bridge,
1829 .low-zoom path.casing.line.tag-highway-pedestrian.tag-bridge,
1830 .low-zoom path.casing.tag-highway-service.tag-bridge,
1831 .low-zoom path.casing.tag-highway-track.tag-bridge,
1832 .low-zoom path.casing.tag-highway-steps.tag-bridge,
1833 .low-zoom path.casing.tag-highway-footway.tag-bridge,
1834 .low-zoom path.casing.tag-highway-cycleway.tag-bridge,
1835 .low-zoom path.casing.tag-highway-bridleway.tag-bridge {
1841 path.stroke.tag-tunnel {
1842 stroke-opacity: 0.3;
1844 path.casing.tag-tunnel {
1845 stroke-opacity: 0.5;
1846 stroke-linecap: butt;
1847 stroke-dasharray: none;
1851 /* embankments / cuttings */
1852 path.shadow.tag-embankment,
1853 path.shadow.tag-cutting {
1856 path.casing.tag-embankment,
1857 path.casing.tag-cutting {
1858 stroke-opacity: 0.5;
1861 stroke-dasharray: 2, 4;
1862 stroke-linecap: butt;
1865 .low-zoom path.shadow.tag-embankment,
1866 .low-zoom path.shadow.tag-cutting {
1869 .low-zoom path.casing.tag-embankment,
1870 .low-zoom path.casing.tag-cutting {
1875 /* Surface - unpaved */
1876 path.casing.tag-unpaved {
1878 stroke-linecap: butt;
1879 stroke-dasharray: 4, 3;
1881 .low-zoom path.casing.tag-unpaved {
1882 stroke-dasharray: 3, 2;
1884 path.casing.tag-bridge.tag-unpaved {
1886 stroke-dasharray: 4, 3;
1888 .low-zoom path.casing.tag-bridge.tag-unpaved {
1890 stroke-dasharray: 3, 2;
1894 /* Status (e.g. construction, proposed, abandoned) */
1895 path.stroke.tag-status,
1896 path.casing.tag-status {
1897 stroke-linecap: butt;
1898 stroke-dasharray: 7, 3;
1900 .low-zoom path.stroke.tag-status,
1901 .low-zoom path.casing.tag-status {
1902 stroke-dasharray: 5, 2;
1907 path.stroke.tag-building {
1908 stroke: rgb(224, 110, 95);
1910 path.fill.tag-building {
1911 stroke: rgba(224, 110, 95, 0.3);
1912 fill: rgba(224, 110, 95, 0.3);
1914 .preset-icon-fill-area.tag-building {
1915 border-color: rgb(224, 110, 95);
1916 background-color: rgba(224, 110, 95, 0.3);
1920 .preset-icon .icon.tag-man_made-pier {
1925 .preset-icon-fill-area.tag-man_made-pier {
1926 border-color: #ae8681;
1927 background-color: #dcd9b9;
1930 path.shadow.tag-man_made-pier {
1933 path.casing.tag-man_made-pier {
1936 stroke-linecap: round;
1937 stroke-dasharray: none;
1939 path.stroke.tag-man_made-pier {
1942 stroke-linecap: butt;
1943 stroke-dasharray: 6, 6;
1946 .low-zoom path.shadow.tag-man_made-pier {
1949 .low-zoom path.casing.tag-man_made-pier {
1952 .low-zoom path.stroke.tag-man_made-pier {
1954 stroke-linecap: butt;
1955 stroke-dasharray: 3, 3;
1961 cursor: not-allowed !important;
1966 cursor: auto; /* Opera */
1967 cursor: url(<%= asset_path("iD/img/cursor-grab.png") %>) 9 9, auto; /* FF */
1970 .mode-browse .point,
1971 .mode-select .point {
1972 cursor: pointer; /* Opera */
1973 cursor: url(<%= asset_path("iD/img/cursor-select-point.png") %>), pointer; /* FF */
1976 .mode-select .vertex,
1977 .mode-browse .vertex {
1978 cursor: pointer; /* Opera */
1979 cursor: url(<%= asset_path("iD/img/cursor-select-vertex.png") %>), pointer; /* FF */
1983 .mode-select .line {
1984 cursor: pointer; /* Opera */
1985 cursor: url(<%= asset_path("iD/img/cursor-select-line.png") %>), pointer; /* FF */
1989 .mode-browse .area {
1990 cursor: pointer; /* Opera */
1991 cursor: url(<%= asset_path("iD/img/cursor-select-area.png") %>), pointer; /* FF */
1994 .mode-select .midpoint,
1995 .mode-browse .midpoint {
1996 cursor: pointer; /* Opera */
1997 cursor: url(<%= asset_path("iD/img/cursor-select-split.png") %>), pointer; /* FF */
2000 .mode-select .behavior-multiselect .point,
2001 .mode-select .behavior-multiselect .vertex,
2002 .mode-select .behavior-multiselect .line,
2003 .mode-select .behavior-multiselect .area {
2004 cursor: pointer; /* Opera */
2005 cursor: url(<%= asset_path("iD/img/cursor-select-add.png") %>), pointer; /* FF */
2008 .mode-select .behavior-multiselect .selected {
2009 cursor: pointer; /* Opera */
2010 cursor: url(<%= asset_path("iD/img/cursor-select-remove.png") %>), pointer; /* FF */
2013 .mode-draw-line #map,
2014 .mode-draw-area #map,
2015 .mode-add-line #map,
2016 .mode-add-area #map,
2017 .mode-drag-node #map {
2018 cursor: crosshair; /* Opera */
2019 cursor: url(<%= asset_path("iD/img/cursor-draw.png") %>) 9 9, crosshair; /* FF */
2022 .mode-draw-line .way.target,
2023 .mode-draw-area .way.target,
2024 .mode-add-line .way.target,
2025 .mode-add-area .way.target,
2026 .mode-drag-node .way.target {
2027 cursor: crosshair; /* Opera */
2028 cursor: url(<%= asset_path("iD/img/cursor-draw-connect-line.png") %>) 9 9, crosshair; /* FF */
2031 .mode-draw-line .vertex.target,
2032 .mode-draw-area .vertex.target,
2033 .mode-add-line .vertex.target,
2034 .mode-add-area .vertex.target,
2035 .mode-drag-node .vertex.target {
2036 cursor: crosshair; /* Opera */
2037 cursor: url(<%= asset_path("iD/img/cursor-draw-connect-vertex.png") %>) 9 9, crosshair; /* FF */
2040 .mode-add-point #map,
2041 .mode-browse.lasso #map,
2042 .mode-browse.lasso .way,
2043 .mode-browse.lasso .vertex,
2044 .mode-browse.lasso .midpoint,
2045 .mode-select.lasso #map,
2046 .mode-select.lasso .way,
2047 .mode-select.lasso .vertex,
2048 .mode-select.lasso .midpoint {
2049 cursor: crosshair; /* Opera */
2050 cursor: url(<%= asset_path("iD/img/cursor-draw.png") %>) 9 9, crosshair; /* FF */
2057 /* photo viewer div */
2064 background-color: #fff;
2067 #photoviewer button.thumb-hide {
2077 .photo-wrapper img {
2083 .photo-wrapper .photo-attribution {
2095 .photo-attribution a,
2096 .photo-attribution a:visited,
2097 .photo-attribution span {
2102 /* markers and sequences */
2104 pointer-events: visible;
2108 .viewfield-group.selected * {
2109 fill: #ffee00 !important;
2111 .viewfield-group.hovered * {
2112 fill: #eebb00 !important;
2115 .viewfield-group circle {
2118 stroke-opacity: 0.4;
2121 .viewfield-group.highlighted circle {
2123 stroke-opacity: 0.9;
2126 .viewfield-group.highlighted.hovered circle {
2129 stroke-opacity: 0.9;
2132 .viewfield-group.highlighted.selected circle {
2139 .viewfield-group .viewfield {
2144 .viewfield-group.highlighted .viewfield {
2148 .viewfield-group.highlighted.hovered .viewfield {
2152 .viewfield-group.highlighted.selected .viewfield {
2157 .viewfield-group.selected .viewfield-scale {
2158 transform: scale(2,2);
2164 stroke-opacity: 0.4;
2166 .sequence.highlighted,
2167 .sequence.selected {
2173 /* Streetside Image Layer */
2174 .layer-streetside-images {
2175 pointer-events: none;
2177 .layer-streetside-images .viewfield-group * {
2180 .layer-streetside-images .sequence {
2182 stroke-opacity: 0.85; /* bump opacity - only one per road */
2186 /* Mapillary Image Layer */
2187 .layer-mapillary-images {
2188 pointer-events: none;
2190 .layer-mapillary-images .viewfield-group * {
2193 .layer-mapillary-images .sequence {
2198 /* Mapillary Sign Layer */
2199 .layer-mapillary-signs {
2200 pointer-events: none;
2202 .layer-mapillary-signs .icon-sign {
2203 outline: 2px solid transparent;
2204 pointer-events: visible;
2207 .layer-mapillary-signs .icon-sign:hover {
2208 outline: 5px solid #eebb00;
2209 background-color: #eebb00;
2211 .layer-mapillary-signs .icon-sign.selected {
2212 outline: 5px solid #ffee00;
2213 background-color: #ffee00;
2217 /* OpenStreetCam Image Layer */
2218 .layer-openstreetcam-images {
2219 pointer-events: none;
2221 .layer-openstreetcam-images .viewfield-group * {
2224 .layer-openstreetcam-images .sequence {
2229 /* Streetside Viewer (pannellum) */
2230 .ms-wrapper .photo-attribution .image_link {
2233 .ms-wrapper .photo-attribution a:active,
2234 .ms-wrapper .photo-attribution a:hover {
2238 .ms-wrapper .pnlm-compass.pnlm-control {
2243 background-size: contain;
2244 background-repeat: no-repeat no-repeat;
2247 label.streetside-hires {
2252 .streetside-hires span {
2255 .streetside-hires input[type="checkbox"] {
2263 /* Mapillary viewer */
2264 #mly .domRenderer .TagSymbol {
2266 background-color: rgba(0,0,0,0.4);
2271 #mly .domRenderer .Attribution {
2272 /* we will roll our own to avoid async update issues like #4526 */
2276 .mly-wrapper .photo-attribution a:active,
2277 .mly-wrapper .photo-attribution a:hover {
2281 .mly-wrapper .mapillary-js-dom {
2286 /* OpenStreetCam viewer */
2289 background-color: #000;
2290 background-image: url(<%= asset_path("iD/img/loader-black.gif") %>);
2291 background-position: center;
2292 background-repeat: no-repeat;
2295 .osc-wrapper .photo-attribution a:active,
2296 .osc-wrapper .photo-attribution a:hover {
2300 .osc-controls-wrap {
2309 display: inline-block;
2313 .osc-controls button {
2316 background: rgba(0,0,0,0.65);
2320 .osc-controls button:first-of-type {
2321 border-radius: 3px 0 0 3px;
2323 .osc-controls button:last-of-type {
2324 border-radius: 0 3px 3px 0;
2326 .osc-controls button:hover,
2327 .osc-controls button:active,
2328 .osc-controls button:focus {
2329 background: rgba(0,0,0,0.85);
2334 transform-origin:0 0;
2335 -ms-transform-origin:0 0;
2336 -webkit-transform-origin:0 0;
2337 -moz-transform-origin:0 0;
2338 -o-transform-origin:0 0;
2342 .low-zoom.fill-wireframe path.stroke,
2343 .fill-wireframe path.stroke {
2344 stroke-width: 1 !important;
2345 stroke-opacity: 0.5 !important;
2346 stroke-dasharray: none !important;
2347 fill: none !important;
2350 .low-zoom.fill-wireframe path.shadow,
2351 .fill-wireframe path.shadow {
2355 .fill-wireframe path.shadow.related:not(.selected),
2356 .fill-wireframe path.shadow.hover:not(.selected) {
2357 stroke-opacity: 0.4;
2359 .fill-wireframe path.shadow.selected {
2360 stroke-opacity: 0.6;
2363 .fill-wireframe .point,
2364 .fill-wireframe .vertex.active,
2365 .fill-wireframe .areaicon,
2366 .fill-wireframe .areaicon-halo,
2367 .fill-wireframe path.casing,
2368 .fill-wireframe path.fill,
2369 .fill-wireframe path.oneway {
2370 display: none !important;
2373 .fill-partial path.area.fill {
2376 pointer-events: none;
2378 .mode-browse .fill-partial path.area.fill,
2379 .mode-select .fill-partial path.area.fill {
2380 pointer-events: visibleStroke;
2383 ------------------------------------------------------- */
2386 Opera misbehaves when the window is resized vertically unless 100% width + height are
2387 applied to both html and body. https://gist.github.com/jfirebaugh/bd225bcfdd3a633850c4
2395 font: normal 12px/1.6667 "-apple-system", BlinkMacSystemFont,
2396 "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell",
2397 "Fira Sans", "Droid Sans", "Helvetica Neue", "Arial",
2404 -ms-user-select: none;
2409 vertical-align: middle;
2427 -webkit-filter: none !important;
2428 filter: none !important;
2429 -webkit-duration: 200ms;
2430 transition-duration: 200ms;
2434 -webkit-filter: grayscale(80%) brightness(80%);
2435 filter: grayscale(80%) brightness(80%);
2436 -webkit-duration: 200ms;
2437 transition-duration: 200ms;
2440 /* Firefox has its own ideas about fixed positioning when a css filter is active - #4348 */
2441 /* https://stackoverflow.com/questions/37949942/firefox-position-bug-by-parent-with-filter */
2442 @-moz-document url-prefix() {
2446 #content.inactive > #bar > .spacer.col4 {
2449 #content.active > #bar > .spacer.col4 {
2451 transition-duration: 200ms;
2452 transition-timing-function: step-end;
2457 /* Can't be display: none or the clippaths are ignored. */
2477 [dir='rtl'] .spinner {
2488 [dir='rtl'] .spinner img {
2491 -moz-transform: scaleX(-1);
2492 -o-transform: scaleX(-1);
2493 -webkit-transform: scaleX(-1);
2494 transform: scaleX(-1);
2496 -ms-filter: "FlipH";
2500 div, textarea, label, input, form, span, ul, li, ol, a, button, h1, h2, h3, h4, h5, p, img {
2501 -moz-box-sizing: border-box;
2502 -webkit-box-sizing: border-box;
2503 box-sizing: border-box;
2506 a, button, input, textarea {
2507 -webkit-tap-highlight-color:rgba(0,0,0,0);
2508 -webkit-touch-callout:none;
2513 .checkselect label:hover,
2522 margin-bottom: 20px;
2527 h4:last-child { margin-bottom: 0;}
2533 margin-bottom: 10px;
2539 padding-bottom: 10px;
2543 outline-color: transparent;
2544 outline-style: none;
2547 ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
2549 opacity: 1; /* Firefox */
2551 :-ms-input-placeholder { /* Internet Explorer 10-11 */
2554 ::-ms-input-placeholder { /* Microsoft Edge */
2585 ------------------------------------------------------- */
2589 font:normal 12px/20px "-apple-system", BlinkMacSystemFont,
2590 "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell",
2591 "Fira Sans", "Droid Sans", "Helvetica Neue", "Arial",
2602 background-color: white;
2604 border:1px solid #ccc;
2605 padding:5px 20px 5px 10px;
2609 text-overflow: ellipsis;
2611 [dir='rtl'] textarea,
2612 [dir='rtl'] input[type=text],
2613 [dir='rtl'] input[type=search],
2614 [dir='rtl'] input[type=number],
2615 [dir='rtl'] input[type=url],
2616 [dir='rtl'] input[type=tel],
2617 [dir='rtl'] input[type=email] {
2618 padding:5px 10px 5px 20px;
2623 background-color: #F1F1F1;
2626 input[type="checkbox"],
2627 input[type="radio"] {
2634 [dir='rtl'] input[type="checkbox"],
2635 [dir='rtl'] input[type="radio"] {
2641 /* remove bottom border radius when combobox is open */
2642 .combobox + * textarea:focus,
2643 .combobox + * input:focus {
2644 border-bottom-left-radius: 0 !important;
2645 border-bottom-right-radius: 0 !important;
2651 background-color: white;
2652 border-collapse: collapse;
2661 table.tags, table.tags td, table.tags th {
2662 border: 1px solid #ccc;
2671 ------------------------------------------------------- */
2673 .col0 { float:left; width:04.1666%; }
2674 .col1 { float:left; width:08.3333%; }
2675 .col2 { float:left; width:16.6666%; }
2676 .col3 { float:left; width:25.0000%; max-width: 300px; }
2677 .col4 { float:left; width:33.3333%; max-width: 400px; }
2678 .col5 { float:left; width:41.6666%; max-width: 500px; }
2679 .col6 { float:left; width:50.0000%; max-width: 600px; }
2680 .col7 { float:left; width:58.3333%; }
2681 .col8 { float:left; width:66.6666%; }
2682 .col9 { float:left; width:75.0000%; }
2683 .col10 { float:left; width:83.3333%; }
2684 .col11 { float:left; width:91.6666%; }
2685 .col12 { float:left; width:100.0000%; }
2688 ------------------------------------------------------- */
2690 ul li { list-style: none;}
2692 .toggle-list > label {
2697 background-color: white;
2702 .toggle-list > label:hover {
2703 background-color: #ececec;
2706 .toggle-list > label:not(:last-child) {
2707 border-bottom: 1px solid #ccc;
2710 .toggle-list > label:last-child {
2711 border-radius: 0 0 3px 3px;
2714 .toggle-list label > span {
2717 white-space: nowrap;
2718 text-overflow: ellipsis;
2721 .toggle-list > label.active {
2722 background: #E8EBFF;
2727 ------------------------------------------------------- */
2734 background: #f6f6f6;
2739 background: #ececec;
2744 background:rgba(0,0,0,.5);
2749 background:rgba(0,0,0,.75);
2754 .fr { float: right;}
2772 box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.25);
2776 background: url(<%= asset_path("iD/img/loader_bg.gif") %>);
2777 background-size:5px 5px;
2813 display: inline-block;
2820 background-color: #ececec;
2825 background-color: rgba(255,255,255,.25);
2826 color: rgba(0,0,0,.4);
2831 background: #7092ff;
2841 background-color: #fafafa;
2843 [dir='rtl'] button.minor {
2847 button.minor .icon {
2851 button.minor:hover {
2852 background-color: #f1f1f1;
2856 display: inline-block;
2861 .button-wrap button:only-child {
2865 .button-wrap:last-of-type {
2868 [dir='rtl'] .button-wrap:last-of-type {
2870 padding-right: 10px;
2875 border-right: 1px solid rgba(0,0,0,.5);
2877 [dir='rtl'] .joined button {
2878 border-left: 1px solid rgba(0,0,0,.5);
2882 .fillL .joined button {
2883 border-right: 1px solid white;
2886 .joined button:first-child {
2887 border-radius: 4px 0 0 4px;
2889 [dir='rtl'] .joined button:first-child {
2890 border-radius: 0 4px 4px 0;
2893 .joined button:last-child {
2894 border-right-width: 0;
2895 border-radius: 0 4px 4px 0;
2897 [dir='rtl'] .joined button:last-child {
2898 border-radius: 4px 0 0 4px;
2902 background: #7092ff;
2906 button[disabled].action,
2907 button[disabled].action:hover {
2908 background: #cccccc;
2912 button.action:focus,
2913 button.action:hover {
2914 background: #597BE7;
2917 button.secondary-action {
2918 background: #ececec;
2921 button.secondary-action:focus,
2922 button.secondary-action:hover {
2923 background: #cccccc;
2926 button.save .count {
2930 button.save.has-count .count {
2943 margin-left: 9.3333%;
2945 [dir='rtl'] button.save.has-count .count {
2950 button.save.has-count .count::before {
2959 border-top: 6px solid transparent;
2960 border-bottom: 6px solid transparent;
2961 border-right-width: 6px;
2962 border-right-style: solid;
2963 border-right-color: inherit;
2965 [dir='rtl'] button.save.has-count .count::before {
2966 border-left: 6px solid rgba(255,255,255,.5);
2975 vertical-align: top;
2981 vertical-align: text-top;
2990 [dir='rtl'] .icon.pre-text {
3020 /* ToolBar / Persistent UI Elements
3021 ------------------------------------------------------- */
3034 [dir='rtl'] #bar .spacer,
3035 [dir='rtl'] #bar .button-wrap,
3036 [dir='rtl'] #bar .button-wrap button {
3041 /* Header for modals / panes
3042 ------------------------------------------------------- */
3045 border-bottom: 1px solid #ccc;
3053 white-space: nowrap;
3054 text-overflow: ellipsis;
3072 .field-help-title button.close,
3073 .entity-editor-pane .header button.preset-close,
3074 .preset-list-pane .header button.preset-choose {
3079 [dir='rtl'] .field-help-title button.close,
3080 [dir='rtl'] .entity-editor-pane .header button.preset-close,
3081 [dir='rtl'] .preset-list-pane .header button.preset-choose {
3086 .entity-editor-pane .header button.preset-choose {
3091 [dir='rtl'] .entity-editor-pane .header button.preset-choose {
3109 [dir='rtl'] .modal > button {
3117 padding: 5px 20px 5px 20px;
3118 border-top: 1px solid #ccc;
3119 background-color: #fafafa;
3124 .sidebar-component .body {
3134 ------------------------------------------------------- */
3136 .hide-toggle .icon.pre-text {
3137 vertical-align: text-top;
3142 [dir='rtl'] .hide-toggle .icon.pre-text {
3147 a:visited.hide-toggle,
3149 display: inline-block;
3152 padding-bottom: 5px;
3157 ------------------------------------------------------- */
3165 background: #f6f6f6;
3166 -ms-user-select: element;
3168 [dir='rtl'] #sidebar {
3172 .sidebar-component {
3198 .feature-list-pane .inspector-body {
3202 .preset-list-pane .inspector-body {
3206 .entity-editor-pane .inspector-body {
3210 .selection-list-pane .inspector-body {
3219 #sidebar .search-header .icon {
3224 pointer-events: none;
3226 [dir='rtl'] #sidebar .search-header .icon {
3231 #sidebar .search-header input {
3239 border-bottom-width: 1px;
3253 .feature-list-item {
3256 border-bottom: 1px solid #ccc;
3260 .feature-list-item {
3261 background-color: white;
3267 .feature-list-item:hover {
3268 background-color: #ececec;
3271 .feature-list-item button {
3272 background: transparent;
3275 .feature-list-item .label {
3278 white-space: nowrap;
3279 text-overflow: ellipsis;
3281 border-left: 1px solid rgba(0, 0, 0, .1);
3283 [dir='rtl'] .feature-list-item .label {
3287 .feature-list-item .label .icon {
3291 .feature-list-item .close {
3296 .feature-list-item .close .icon {
3300 .feature-list-item .entity-type {
3304 .feature-list-item:hover .entity-type {
3308 .feature-list-item .entity-name {
3309 font-weight: normal;
3313 [dir='rtl'] .feature-list-item .entity-name {
3315 padding-right: 10px;
3320 ------------------------------------------------------- */
3326 padding: 20px 20px 10px 20px;
3327 border-bottom: 1px solid #ccc;
3330 .preset-list-button-wrap {
3332 margin-bottom: 10px;
3336 .preset-list-button {
3340 border: 1px solid #ccc;
3343 .preset-list.filtered .preset-list-item:first-child .preset-list-button {
3344 background: #ececec;
3347 .preset-icon-fill-area {
3357 .preset-icon-fill-vertex {
3364 border: 1.5px solid #333;
3365 border-radius: 20px;
3366 background-color: #efefef;
3367 backface-visibility: hidden;
3370 [dir='rtl'] .preset-icon-fill-vertex,
3371 [dir='rtl'] .preset-icon-fill-area {
3376 .preset-icon-frame {
3382 [dir='rtl'] .preset-icon-frame {
3387 .preset-icon-frame .icon {
3399 .preset-icon-60 .icon {
3411 .preset-icon-44 .icon {
3423 .preset-icon-28 .icon {
3435 .preset-icon-24 .icon {
3440 [dir='rtl'] .preset-list-button-wrap .preset-icon {
3445 [dir='rtl'] .preset-list-button-wrap .preset-icon-28 {
3449 [dir='rtl'] .preset-list-button-wrap .preset-icon-24 {
3453 .preset-list-button .label {
3454 background-color: #f6f6f6;
3463 white-space: nowrap;
3464 text-overflow: ellipsis;
3466 border-left: 1px solid rgba(0, 0, 0, .1);
3467 border-radius: 0 3px 3px 0;
3469 [dir='rtl'] .preset-list-button .label {
3474 border-right: 1px solid rgba(0, 0, 0, .1);
3475 border-radius: 3px 0 0 3px;
3478 .preset-list-button:hover .label {
3479 background-color: #ececec;
3482 .preset-list-item button.tag-reference-button {
3484 border: 1px solid #ccc;
3485 border-radius: 0 3px 3px 0;
3490 background: #fafafa;
3492 [dir='rtl'] .preset-list-item button.tag-reference-button {
3495 border-radius: 3px 0 0 3px;
3498 .preset-list-item button.tag-reference-button:hover {
3499 background: #f1f1f1;
3502 .preset-list-item button.tag-reference-button .icon {
3506 .current .preset-list-button,
3507 .current .preset-list-button .label {
3508 background-color: #E8EBFF;
3511 .category .preset-list-button:after,
3512 .category .preset-list-button:before {
3516 left: -1px; right: -1px;
3517 border: 1px solid #ccc;
3518 border-bottom: none;
3519 border-radius: 6px 6px 0 0;
3523 .category .preset-list-button:before {
3527 .subgrid .preset-list {
3528 padding: 10px 10px 0 10px;
3532 width: -webkit-calc(100% + 20px);
3537 border: solid rgba(0, 0, 0, 0);
3539 border-bottom-color: #f1f1f1;
3543 margin-left: -webkit-calc(50% - 10px);
3548 /* preset form basics */
3552 padding-bottom: 10px;
3555 .preset-editor a.hide-toggle {
3556 margin: 0 20px 5px 20px;
3559 .preset-editor .form-fields-container {
3561 margin: 0 10px 10px 10px;
3565 .preset-editor .form-fields-container:empty {
3569 .entity-editor-pane .preset-list-item .preset-list-button-wrap {
3574 margin-bottom: 10px;
3576 -webkit-transition: margin-bottom 200ms;
3577 -moz-transition: margin-bottom 200ms;
3578 -o-transition: margin-bottom 200ms;
3579 transition: margin-bottom 200ms;
3583 .wrap-form-field:last-child .form-field {
3590 border: 1px solid #cfcfcf;
3591 padding: 5px 0 5px 10px;
3592 background: #f6f6f6;
3594 border-radius: 4px 4px 0 0;
3597 [dir='rtl'] .form-label {
3598 padding: 5px 10px 5px 0;
3601 .form-label-button-wrap {
3607 background: transparent;
3610 [dir='rtl'] .form-label-button-wrap {
3614 .form-label-button-wrap .tag-reference-button {
3615 border-radius: 0 3px 0 0;
3618 .form-label-button-wrap .icon {
3622 .form-label button {
3623 border-left: 1px solid #ccc;
3627 background: #f6f6f6;
3629 [dir='rtl'] .form-label button {
3631 border-right: 1px solid #ccc;
3632 border-radius: 4px 0 0 0;
3635 .form-label button:hover {
3636 background: #f1f1f1;
3639 .form-label .modified-icon,
3640 .form-field .remove-icon {
3644 .modified .form-label .modified-icon,
3645 .present .form-label .remove-icon {
3646 display: inline-block;
3649 .form-field > input,
3650 .form-field > textarea,
3651 .form-field .preset-input-wrap {
3652 border: 1px solid #ccc;
3655 border-radius: 0 0 4px 4px;
3660 .form-field textarea {
3665 border-bottom: 1px solid #ccc
3668 /* Preset form (hover mode) */
3670 .inspector-hover .checkselect label:last-of-type,
3671 .inspector-hover .preset-input-wrap .label,
3672 .inspector-hover .form-field-multicombo,
3673 .inspector-hover .structure-extras-wrap,
3674 .inspector-hover input,
3675 .inspector-hover textarea,
3676 .inspector-hover label {
3677 background: #ececec;
3681 .inspector-hover .form-field-multicombo .chips,
3682 .inspector-hover .checkselect label:last-of-type {
3686 .inspector-hover .form-field-multicombo .chips {
3688 border: 1px solid #ccc;
3691 /* hide and remove from layout */
3693 .inspector-hover label input[type="checkbox"],
3694 .inspector-hover label input[type="radio"],
3695 .inspector-hover .toggle-list label,
3696 .inspector-hover .toggle-list label span,
3697 .inspector-hover .inspector-inner .add-tag,
3698 .inspector-hover .inspector-inner .add-relation,
3699 .inspector-hover .form-field-multicombo .combobox-input,
3700 .inspector-hover .toggle-list label.remove .icon {
3704 opacity: 0 !important;
3710 /* hide but preserve in layout */
3711 .inspector-hover .entity-editor-pane button.minor,
3712 .inspector-hover .combobox-caret,
3713 .inspector-hover .entity-editor-pane .header button,
3714 .inspector-hover .spin-control,
3715 .inspector-hover .form-field-multicombo .chips .remove,
3716 .inspector-hover .hide-toggle:before,
3717 .inspector-hover .more-fields,
3718 .inspector-hover .form-label-button-wrap,
3719 .inspector-hover .tag-reference-button,
3720 .inspector-hover .view-on-osm {
3724 /* Styles for raw tag inspector on hover */
3725 .inspector-hover .tag-row .key-wrap,
3726 .inspector-hover .tag-row .form-field.input-wrap-position {
3730 .inspector-hover .tag-row:first-child input.value {
3731 border-top-right-radius: 4px;
3733 [dir='rtl'] .inspector-hover .tag-row:first-child input.value {
3734 border-top-right-radius: 0;
3735 border-top-left-radius: 4px;
3738 .inspector-hover .tag-row:last-child input.value {
3739 border-bottom-right-radius: 4px;
3741 [dir='rtl'] .inspector-hover .tag-row:last-child input.value {
3742 border-bottom-right-radius: 0;
3743 border-bottom-left-radius: 4px;
3746 .inspector-hover .tag-row:last-child input.key {
3747 border-bottom-left-radius: 4px;
3749 [dir='rtl'] .inspector-hover .tag-row:last-child input.key {
3750 border-bottom-left-radius: 0;
3751 border-bottom-right-radius: 4px;
3754 .inspector-hover .more-fields {
3756 margin-bottom: -10px;
3759 /* Unstyle button fields */
3760 .inspector-hover .toggle-list label.active,
3761 .inspector-hover .entity-editor-pane a.hide-toggle {
3763 background-color: transparent;
3769 .inspector-hover .toggle-list button.active {
3773 /* Add placeholder only on hover for radio buttons */
3774 .inspector-hover .toggle-list .placeholder {
3782 /* Hide placeholder for radio buttons if another is active, or not in hover state */
3783 .toggle-list label.active ~ .placeholder,
3784 .toggle-list .placeholder {
3793 /* adding additional preset fields */
3796 padding: 0 20px 20px 20px;
3799 .changeset-editor .more-fields {
3800 padding: 15px 20px 0 20px;
3803 .more-fields label {
3805 flex-flow: row nowrap;
3806 justify-content: space-between;
3807 align-items: center;
3810 .more-fields input {
3814 [dir='rtl'] .more-fields input {
3819 .preset-input-wrap .label {
3821 background: #F6F6F6;
3825 [dir='rtl'] .preset-input-wrap .col6 {
3830 /* preset form access */
3831 /* preset form cycleway */
3832 /* preset form structure extras */
3834 .structure-extras-wrap li,
3835 .form-field-cycleway .preset-input-wrap li,
3836 .form-field-access .preset-input-wrap li {
3837 border-bottom: 1px solid #ccc;
3839 .structure-extras-wrap li:last-child,
3840 .form-field-cycleway .preset-input-wrap li:last-child,
3841 .form-field-access .preset-input-wrap li:last-child {
3844 .structure-input-type-wrap input,
3845 .structure-input-layer-wrap input,
3846 .preset-input-cycleway-wrap input,
3847 .preset-input-access-wrap input {
3850 border-left-width: 1px;
3852 [dir='rtl'] .structure-input-type-wrap input,
3853 [dir='rtl'] .structure-input-layer-wrap input,
3854 [dir='rtl'] .preset-input-cycleway-wrap input,
3855 [dir='rtl'] .preset-input-access-wrap input {
3856 border-left-width: 0;
3857 border-right-width: 1px;
3860 .preset-input-wrap li:last-child input {
3861 border-bottom-right-radius: 4px;
3864 .structure-extras-wrap {
3868 .structure-extras-wrap ul {
3869 border: 1px solid #ccc;
3872 .structure-extras-wrap li:first-child span {
3873 border-top-left-radius: 4px;
3875 .structure-extras-wrap li:first-child input {
3876 border-top-right-radius: 4px;
3878 .structure-extras-wrap li:last-child span {
3879 border-bottom-left-radius: 4px;
3881 .structure-extras-wrap li:last-child input {
3882 border-bottom-right-radius: 4px;
3884 [dir='rtl'] .structure-extras-wrap li:first-child span {
3885 border-top-left-radius: 0;
3886 border-top-right-radius: 4px;
3888 [dir='rtl'] .structure-extras-wrap li:first-child input {
3889 border-top-right-radius: 0;
3890 border-top-left-radius: 4px;
3892 [dir='rtl'] .structure-extras-wrap li:last-child span {
3893 border-bottom-left-radius: 0;
3894 border-bottom-right-radius: 4px;
3896 [dir='rtl'] .structure-extras-wrap li:last-child input {
3897 border-bottom-right-radius: 0;
3898 border-bottom-left-radius: 4px;
3902 /* preset form multicombo */
3904 .form-field-multicombo {
3905 border: 1px solid #cfcfcf;
3907 padding: 5px 0 5px 10px;
3910 border-radius: 0 0 4px 4px;
3914 .form-field-multicombo:focus {
3918 .form-field-multicombo.active {
3919 border-bottom-left-radius: 0px;
3920 border-bottom-right-radius: 0px;
3923 .form-field-multicombo li {
3924 display: inline-flex;
3925 flex-flow: row nowrap;
3926 align-items: center;
3927 background-color: #eff2f7;
3928 border: 1px solid #ccd5e3;
3935 .form-field-multicombo a {
3936 font-family: Arial, Helvetica, sans-serif !important;
3937 font-size: 16px !important;
3940 margin: 1px 0 0 5px;
3946 .form-field-multicombo input {
3947 border: 1px solid #ddd;
3953 .form-field-multicombo .combobox-caret {
3954 margin: 3px 3px 3px -30px;
3957 .form-field-multicombo input:focus {
3958 border-radius: 4px !important;
3962 /* preset form numbers */
3964 input[type=number] {
3972 display: inline-block;
3974 margin-bottom: -11px;
3977 [dir='rtl'] .spin-control{
3979 margin-right: -64px;
3982 .spin-control button {
3988 border-left: 1px solid #ccc;
3990 background: rgba(0, 0, 0, 0);
3992 [dir='rtl'] .spin-control button{
3994 border-right: 1px solid #ccc;
3997 .spin-control button.decrement {
3998 border-bottom-right-radius: 3px;
4000 [dir='rtl'] .spin-control button.decrement {
4001 border-bottom-right-radius: 0;
4003 [dir='rtl'] .spin-control button.increment {
4004 border-bottom-left-radius: 3px;
4008 .spin-control button.decrement::after,
4009 .spin-control button.increment::after {
4011 height: 0; width: 0;
4013 left: 0; right: 0; bottom: 0; top: 0;
4017 .spin-control button.decrement::after {
4018 border-top: 5px solid #ccc;
4019 border-left: 5px solid transparent;
4020 border-right: 5px solid transparent;
4023 .spin-control button.increment::after {
4024 border-bottom: 5px solid #ccc;
4025 border-left: 5px solid transparent;
4026 border-right: 5px solid transparent;
4030 /* preset form checkbox */
4032 .checkselect label:last-of-type {
4039 .checkselect label:hover {
4040 background: #f1f1f1;
4047 .checkselect label:not(.set) input[type="checkbox"] {
4051 .checkselect .reverser.button {
4054 background-color: #eff2f7;
4055 border: 1px solid #ccd5e3;
4059 [dir='rtl'] .checkselect .reverser.button {
4062 .checkselect .reverser.button.hide {
4066 /* Preset form radio button */
4068 .toggle-list button.remove {
4069 border-radius: 0 0 3px 3px;
4072 .toggle-list button.remove .icon {
4077 .toggle-list button.remove::before {
4081 #preset-input-maxspeed_advisory,
4082 #preset-input-maxspeed {
4084 border-radius: 0 0 0 4px;
4087 [dir='rtl'] #preset-input-maxspeed_advisory,
4088 [dir='rtl'] #preset-input-maxspeed {
4089 border-right: 1px solid #ccc;
4090 border-radius: 0 0 4px 0;
4093 .form-field .maxspeed-unit {
4094 border-radius: 0 0 4px 0;
4097 [dir='rtl'] .form-field .maxspeed-unit {
4099 border-radius: 0 0 0 4px;
4102 /* Wikipedia field */
4103 .form-field .wiki-lang {
4106 .form-field .wiki-title {
4109 [dir='rtl'] .form-field .wiki-title {
4111 padding-right: 10px;
4114 .form-field .wiki-title ~ .combobox-caret {
4117 [dir='rtl'] .form-field .wiki-title ~ .combobox-caret {
4122 /* Localized field */
4123 .form-field .localized-main {
4126 [dir='rtl'] .form-field .localized-main {
4128 padding-right: 10px;
4131 .form-field .button-input-action {
4136 border: 1px solid #ccc;
4137 border-top-width: 0;
4138 border-right-width: 0;
4139 border-radius: 0 0 4px 0;
4141 vertical-align: top;
4143 [dir='rtl'] .form-field .button-input-action {
4145 margin-right: -32px;
4146 border-right-width: 1px;
4147 border-radius: 0 0 0 4px;
4150 .form-field .localized-wrap {
4154 .form-field .localized-wrap .entry {
4159 .form-field .localized-wrap .entry::before {
4172 .form-field .localized-wrap .entry .localized-lang {
4174 border-top-width: 0;
4177 .form-field .localized-wrap .entry .localized-value {
4178 border-top-width: 0;
4179 border-radius: 0 0 4px 4px;
4182 .form-field .localized-wrap .form-label button {
4183 border-top-right-radius: 3px;
4186 /* Preset form address */
4192 [dir='rtl'] .addr-row input {
4193 border-right: 1px solid #ccc;
4197 .addr-row:first-of-type input {
4201 .addr-row input:first-of-type {
4204 [dir='rtl'] .addr-row input:first-of-type {
4212 .addr-row:last-of-type input:first-of-type {
4213 border-radius: 0 0 0 4px;
4215 [dir='rtl'] .addr-row:last-of-type input:first-of-type {
4216 border-radius: 0 0 4px 0;
4219 .addr-row:last-of-type input:last-of-type {
4220 border-radius: 0 0 4px 0;
4222 [dir='rtl'] .addr-row:last-of-type input:last-of-type {
4223 border-radius: 0 0 0 4px;
4226 /* Restrictions editor */
4228 .form-field-restrictions .restriction-controls-container {
4229 background-color: #fff;
4230 border-top: 1px solid #ccc;
4235 .restriction-controls-container .restriction-controls {
4237 -moz-user-select: none;
4238 -webkit-user-select: none;
4239 -ms-user-select: none;
4243 .restriction-controls .restriction-control {
4249 .restriction-control input,
4250 .restriction-control span {
4251 display: table-cell;
4256 .restriction-control span.restriction-control-label {
4260 .restriction-control input {
4264 vertical-align: middle;
4267 .form-field-restrictions .restriction-container {
4271 /* zero width space, so container takes up space */
4272 .form-field-restrictions .restriction-container:after {
4276 .form-field-restrictions svg.surface {
4281 .restriction-container .restriction-help {
4288 background-color: rgba(255, 255, 255, .8);
4291 pointer-events: none;
4293 -moz-user-select: none;
4294 -webkit-user-select: none;
4295 -ms-user-select: none;
4299 .restriction-help span {
4303 .restriction-help .qualifier {
4307 .restriction-help .qualifier.allow {
4310 .restriction-help .qualifier.restrict {
4313 .restriction-help .qualifier.only {
4317 /* Changeset editor while comment text is empty */
4319 .form-field-comment:not(.present) #preset-input-comment {
4320 border-color: rgb(230, 100, 100);
4323 .form-field-comment:not(.present) .form-label {
4324 border-color: rgb(230, 100, 100);
4325 background: rgba(230, 100, 100, 0.2);
4328 .form-field-comment:not(.present) .form-label {
4331 .form-field-comment:not(.present) .form-label-button-wrap {
4332 border-color: rgb(230, 100, 100);
4335 .form-field-comment:not(.present) button {
4336 border-color: rgb(230, 100, 100);
4339 /* combobox dropdown */
4344 box-shadow: 0 4px 10px 1px rgba(0,0,0,.2);
4350 border: 1px solid #ccc;
4351 border-radius: 0 0 4px 4px;
4357 border-top: 1px solid #ccc;
4358 text-overflow: ellipsis;
4359 white-space: nowrap;
4363 .combobox a.selected,
4365 background: #ececec;
4368 .combobox a:first-child {
4374 display: inline-block;
4379 vertical-align: top;
4381 [dir='rtl'] .combobox-caret {
4383 margin-right: -30px;
4386 .combobox-caret::after {
4388 height: 0; width: 0;
4390 left: 0; right: 0; bottom: 0; top: 0;
4392 border-top: 5px solid #ccc;
4393 border-left: 5px solid transparent;
4394 border-right: 5px solid transparent;
4407 border: 1px solid #ccc;
4409 border-radius: 0 0 4px 4px;
4411 background: rgba(255,255,255,0.95);
4412 box-shadow: 0 0 30px 5px rgba(0,0,0,.4);
4415 .field-help-title h2 {
4420 .field-help-title button {
4429 margin-bottom: 10px;
4431 .field-help-nav-item {
4432 display: inline-block;
4437 .field-help-nav-item.active {
4440 .field-help-nav-item:hover {
4442 background-color: #efefef;
4445 .field-help-content {
4450 .field-help-content h3 {
4454 .field-help-content p {
4455 margin-bottom: 15px;
4457 .field-help-content ul li {
4462 .field-help-content .field-help-image {
4464 margin-bottom: 15px;
4467 .field-help-content svg.turn {
4471 .field-help-content svg.shadow {
4476 .field-help-content svg.from {
4479 .field-help-content svg.allow {
4482 .field-help-content svg.restrict {
4485 .field-help-content svg.only {
4489 .field-help-content p.from_shadow,
4490 .field-help-content p.allow_shadow,
4491 .field-help-content p.restrict_shadow,
4492 .field-help-content p.allow_turn,
4493 .field-help-content p.restrict_turn {
4498 /* Raw Tag Editor */
4511 .tag-row.readonly input.key,
4512 .tag-row.readonly input.value,
4513 .tag-row.readonly button.remove {
4515 background-color: #eee;
4516 cursor: not-allowed;
4523 border-bottom: 1px solid #ccc;
4524 border-left: 1px solid #ccc;
4526 [dir='rtl'] .tag-row input {
4528 border-right: 1px solid #ccc;
4532 .tag-row .input-wrap-position {
4537 [dir='rtl'] .tag-row .key-wrap,
4538 [dir='rtl'] .tag-row .input-wrap-position {
4542 .tag-row input.key {
4544 background-color: #f6f6f6;
4547 .tag-row input.value {
4548 border-right: 1px solid #ccc;
4550 [dir='rtl'] .tag-row input.value {
4551 border-left: 1px solid #ccc;
4554 .tag-row:first-child input.key {
4555 border-top: 1px solid #ccc;
4556 border-top-left-radius: 4px;
4558 [dir='rtl'] .tag-row:first-child input.key {
4559 border-top-left-radius: 0;
4560 border-top-right-radius: 4px;
4563 .tag-row:first-child input.value {
4564 border-top: 1px solid #ccc;
4571 border: 1px solid #ccc;
4572 border-top-width: 0;
4573 border-left-width: 0;
4575 [dir='rtl'] .tag-row button {
4577 border-left-width: 1px;
4578 border-right-width: 0;
4581 .tag-row button:hover {
4582 background: #f1f1f1;
4585 .tag-row button .icon {
4589 .tag-row:first-child button {
4590 border-top-width: 1px;
4593 .tag-row:first-child .tag-reference-button {
4594 border-top-right-radius: 4px;
4596 [dir='rtl'] .tag-row:first-child .tag-reference-button {
4597 border-top-left-radius: 4px;
4598 border-top-right-radius: 0;
4601 .tag-row:last-child .tag-reference-button {
4602 border-bottom-right-radius: 4px;
4604 [dir='rtl'] .tag-row:last-child .tag-reference-button {
4605 border-bottom-left-radius: 4px;
4606 border-bottom-right-radius: 0;
4609 .tag-row .tag-reference-button {
4614 background: #fafafa;
4616 [dir='rtl'] .tag-row .tag-reference-button {
4620 border-left-width: 1px;
4621 border-right-width: 0;
4624 /* Adding form fields to tag editor */
4626 .raw-tag-editor .add-tag {
4630 background: rgba(0,0,0,.5);
4631 border-radius: 0 0 4px 4px;
4634 .raw-tag-editor .add-tag:hover {
4635 background: rgba(0,0,0,.8);
4638 .raw-tag-editor .add-tag .label {
4644 button.minor.tag-reference-loading {
4645 background-color: #f5f5f5;
4648 .tag-reference-loading .icon {
4649 background-image: url(<%= asset_path("iD/img/mini-loader.gif") %>);
4650 background-position: 0 0;
4653 .tag-reference-body {
4658 .tag-reference-body .tag-reference-description {
4659 margin: 10px 5px 0 5px;
4662 .tag-reference-body a {
4666 .tag-reference-body .tag-reference-description:last-child,
4667 .tag-reference-body a:last-child {
4668 margin-bottom: 15px;
4671 .preset-list .tag-reference-body {
4676 .raw-tag-editor .tag-reference-body {
4681 .raw-tag-editor .tag-row.readonly .tag-reference-body {
4682 background: #f6f6f6;
4686 .raw-tag-editor .tag-row:not(:last-child) .tag-reference-body {
4687 border-bottom: 1px solid #ccc;
4690 .raw-tag-editor .tag-row.readonly .tag-reference-body.expanded {
4691 border-top: 1px solid #ccc;
4694 img.tag-reference-wiki-image {
4697 width: -webkit-calc(33.3333% - 10px);
4698 width: calc(33.3333% - 10px);
4701 margin: 10px 5px 15px 20px;
4705 /* Raw relation membership editor */
4707 .raw-member-editor .member-list li:first-child,
4708 .raw-membership-editor .member-list li:first-child {
4712 .raw-member-editor .member-row,
4713 .raw-membership-editor .member-row {
4717 .raw-member-editor .member-row .member-entity-name,
4718 .raw-membership-editor .member-row .member-entity-name {
4719 font-weight: normal;
4723 .member-incomplete .member-delete {
4727 .member-row-new .member-entity-input {
4728 border-radius: 4px 4px 0 0;
4729 border: 1px solid #cfcfcf;
4735 background: rgba(0,0,0,.5);
4740 .add-relation:hover {
4741 background: rgba(0,0,0,.8);
4744 /* hidden field to prevent user from tabbing out of the sidebar */
4749 border: 1px solid rgba(0,0,0,0);
4752 /* Fullscreen button */
4759 div.full-screen .tooltip {
4763 div.full-screen > button, div.full-screen > button.active {
4766 background: transparent;
4769 div.full-screen > button:hover {
4770 background-color: rgba(0, 0, 0, .8);
4782 [dir='rtl'] .map-controls {
4787 .map-control > button {
4789 background: rgba(0,0,0,.5);
4793 .map-control > button:hover {
4794 background: rgba(0, 0, 0, .8);
4797 .map-control > button.active,
4798 .map-control > button.active:hover {
4799 background: #7092ff;
4803 .zoombuttons > button.zoom-in {
4804 border-radius: 4px 0 0 0;
4806 [dir='rtl'] .zoombuttons > button.zoom-in {
4807 border-radius: 0 4px 0 0;
4811 .geolocate-control {
4812 margin-bottom: 10px;
4814 .geolocate-control > button {
4815 border-radius: 0 0 0 4px;
4817 [dir='rtl'] .geolocate-control > button {
4818 border-radius: 0 0 4px 0;
4822 .help-control > button {
4823 border-radius: 0 0 0 4px;
4825 [dir='rtl'] .help-control > button {
4826 border-radius: 0 0 4px 0;
4829 .map-data-control button {
4833 .background-control > button {
4834 border-radius: 4px 0 0 0;
4836 [dir='rtl'] .background-control > button {
4837 border-radius: 0 4px 0 0;
4841 /* Background / Map Data Settings */
4844 .background-control {
4849 margin-bottom: 10px;
4850 white-space: nowrap;
4853 .layer-list, .controls-list {
4854 margin-bottom: 10px;
4855 border: 1px solid #ccc;
4862 background-color: white;
4870 .layer-list > li:first-child {
4871 border-radius: 3px 3px 0 0;
4874 .layer-list > li:last-child {
4875 border-radius: 0 0 3px 3px;
4878 .layer-list > li:only-child {
4882 .layer-list li:not(:last-child) {
4883 border-bottom: 1px solid #ccc;
4886 .layer-list li:hover {
4887 background-color: #ececec;
4890 .layer-list li.active,
4891 .layer-list li.switch {
4892 background: #e8ebff;
4895 .layer-list li.best > div.best {
4896 display: inline-block;
4901 [dir='rtl'] .list-item-gpx-browse svg {
4902 transform: rotateY(180deg);
4905 /* make sure tooltip fits in map-control panel */
4906 /* if too wide, placement will be wrong the first time it displays */
4907 .layer-list li.best .tooltip-inner {
4917 .layer-list label > span {
4920 white-space: nowrap;
4921 text-overflow: ellipsis;
4925 /* Background Display Options */
4927 .display-options-container {
4931 .display-control h5 {
4936 .display-control h5 span {
4940 .display-control .display-option-input {
4945 .display-control button {
4950 vertical-align: text-bottom;
4953 [dir='rtl'] .display-control button {
4959 /* Adjust Alignment controls */
4961 .background-control .nudge-container {
4962 border: 1px solid #ccc;
4967 .nudge-container .nudge-instructions {
4968 padding-bottom: 15px;
4971 .nudge-container .nudge-outer-rect {
4972 background-color: #eee;
4973 border: 1px solid #ccc;
4978 justify-content: center;
4979 align-items: center;
4985 .nudge-container .nudge-inner-rect {
4986 background-color: #fff;
4987 border: 1px solid #ccc;
4993 .nudge-container .nudge::after {
4998 left: 0; right: 0; top: 0; bottom: 0;
5003 .nudge-container input {
5010 .nudge-container input.error {
5011 border: 1px solid #ff7878;
5016 .nudge-container input:focus {
5017 background-color: transparent;
5020 .nudge-container button {
5025 background-color: transparent;
5028 .nudge-container button.right {
5033 .nudge-container button.left {
5038 .nudge-container button.top {
5043 .nudge-container button.bottom {
5047 .nudge-container button.nudge-reset {
5058 background-color: transparent;
5062 .background-control .nudge.right::after {
5063 border-top: 5px solid transparent;
5064 border-bottom: 5px solid transparent;
5065 border-left: 5px solid #222;
5068 .background-control .nudge.left::after {
5069 border-top: 5px solid transparent;
5070 border-bottom: 5px solid transparent;
5071 border-right: 5px solid #222;
5074 .background-control .nudge.top::after {
5075 border-right: 5px solid transparent;
5076 border-left: 5px solid transparent;
5077 border-bottom: 5px solid #222;
5080 .background-control .nudge.bottom::after {
5081 border-right: 5px solid transparent;
5082 border-left: 5px solid transparent;
5083 border-top: 5px solid #222;
5087 .map-data-control .layer-list button,
5088 .background-control .layer-list button {
5092 border-left: 1px solid #ccc;
5095 [dir='rtl'] .map-data-control .layer-list button,
5096 [dir='rtl'] .background-control .layer-list button {
5099 border-right: 1px solid #ccc;
5102 .map-data-control .layer-list button .icon,
5103 .background-control .layer-list button .icon {
5107 .map-data-control .layer-list button:first-of-type,
5108 .background-control .layer-list button:first-of-type {
5109 border-radius: 0 3px 3px 0;
5111 [dir='rtl'] .map-data-control .layer-list button:first-of-type,
5112 [dir='rtl'] .background-control .layer-list button:first-of-type {
5113 border-radius: 3px 0 0 3px;
5118 /*.map-data-control .map-pane,
5119 .background-control .map-pane,
5120 .help-control .map-pane {
5128 padding-bottom: 50px;
5132 [dir='rtl'] .map-pane {
5134 right: auto !important;
5139 flex-flow: row nowrap;
5140 justify-content: space-between;
5141 border-bottom: 1px solid #ccc;
5148 .pane-heading button {
5156 padding: 10px 50px 20px 20px;
5160 [dir='rtl'] .pane-content {
5161 padding: 10px 20px 20px 50px;
5164 .pane-content > div {
5165 padding-bottom: 15px;
5173 margin-bottom: 20px;
5176 .help-wrap .left-content .body p code {
5180 vertical-align: baseline;
5181 background-color: #f6f6f6;
5182 border: solid 1px #ccc;
5184 border-bottom-color: #bbb;
5186 box-shadow: inset 0 -1px 0 #bbb;
5189 .help-wrap .left-content .icon.pre-text {
5190 vertical-align: text-top;
5193 display: inline-block;
5200 margin-bottom: 20px;
5204 .help-wrap .toc li a,
5207 border: 1px solid #ccc;
5211 .help-wrap .toc li a {
5215 .help-wrap .toc li a:hover,
5216 .help-wrap .nav a:hover {
5217 background: #ececec;
5220 .help-wrap .toc li a.selected {
5221 background: #e8ebff;
5224 .help-wrap .toc li:first-child a {
5225 border-radius: 4px 4px 0 0;
5228 .help-wrap .toc li:nth-last-child(3) a {
5229 border-bottom: 1px solid #ccc;
5230 border-radius: 0 0 4px 4px
5233 .help-wrap .toc li.shortcuts a,
5234 .help-wrap .toc li.walkthrough a {
5237 border-bottom: 1px solid #ccc;
5241 .help-wrap .toc li.walkthrough a {
5247 padding-bottom: 30px;
5256 .help-wrap .nav a:first-child {
5257 border-radius: 4px 0 0 4px;
5260 .help-wrap .nav a:last-child:not(:only-child) {
5261 border-radius: 0 4px 4px 0;
5265 .help-wrap .nav a:only-child {
5272 ------------------------------------------------------- */
5276 transform-origin: 0 0;
5277 -ms-transform-origin: 0 0;
5278 -webkit-transform-origin: 0 0;
5279 -moz-transform-origin: 0 0;
5280 -o-transform-origin: 0 0;
5282 -moz-user-select: none;
5283 -webkit-user-select: none;
5284 -ms-user-select: none;
5289 -webkit-transition: opacity 200ms linear;
5290 -moz-transition: opacity 200ms linear;
5291 transition: opacity 200ms linear;
5304 background: rgba(0, 0, 0, 0.7);
5314 transform-origin: 0 0;
5315 -ms-transform-origin: 0 0;
5316 -webkit-transform-origin: 0 0;
5317 -moz-transform-origin: 0 0;
5318 -o-transform-origin: 0 0;
5320 -moz-user-select: none;
5321 -webkit-user-select: none;
5322 -ms-user-select: none;
5327 outline: 1px solid red;
5332 ------------------------------------------------------- */
5339 -moz-user-select: none;
5340 -webkit-user-select: none;
5341 -ms-user-select: none;
5346 transform-origin: 0 0;
5347 -ms-transform-origin: 0 0;
5348 -webkit-transform-origin: 0 0;
5349 -moz-transform-origin: 0 0;
5350 -o-transform-origin: 0 0;
5353 #supersurface, .layer {
5362 ------------------------------------------------------- */
5371 border: #aaa 1px solid;
5372 box-shadow: 0 0 2em black;
5376 transform-origin:0 0;
5377 -ms-transform-origin:0 0;
5378 -webkit-transform-origin:0 0;
5379 -moz-transform-origin:0 0;
5380 -o-transform-origin:0 0;
5382 -moz-user-select: none;
5383 -webkit-user-select: none;
5384 -ms-user-select: none;
5388 .map-in-map-viewport,
5397 .map-in-map-viewport {
5408 stroke: rgba(255, 255, 0, 0.75);
5410 shape-rendering: crispEdges;
5413 .map-in-map-bbox.thick {
5419 ------------------------------------------------------- */
5421 stroke: currentColor;
5425 .map-in-map-data .debug {
5429 .nocolor { color: rgba(0, 0, 0, 0); }
5430 .red { color: rgba(255, 0, 0, 0.75); }
5431 .green { color: rgba(0, 255, 0, 0.75); }
5432 .blue { color: rgba(176, 176, 255, 0.75); }
5433 .yellow { color: rgba(255, 255, 0, 0.75); }
5434 .cyan { color: rgba(0, 255, 255, 0.75); }
5435 .magenta { color: rgba(255, 0, 255, 0.75); }
5436 .orange { color: rgba(255, 153, 0, 0.75); }
5437 .pink { color: rgba(255, 0, 153, 0.75); }
5438 .purple { color: rgba(153, 0, 255, 0.75); }
5446 pointer-events: none;
5449 .debug-legend-item {
5452 .debug-legend-item:before {
5458 ------------------------------------------------------- */
5461 flex-flow: row-reverse wrap-reverse;
5466 -ms-user-select: element;
5474 display: inline-block;
5486 margin: 2px 0 0 2px;
5488 border: 1px solid rgba(0, 0, 0, 0.75);
5489 padding-bottom: 10px;
5493 .panel-container .panel-title {
5494 border-radius: 4px 4px 0 0;
5501 .panel-title button.close {
5507 [dir='rtl'] .panel-title button.close {
5511 .panel-title button.close:hover {
5515 .panel-title button.close .icon {
5525 .panel-content li span {
5526 display: inline-block;
5527 white-space: nowrap;
5531 .panel-content .button {
5532 display: inline-block;
5533 background: #7092ff;
5540 [dir='rtl'] .panel-content .button {
5545 .panel-content-history .links a {
5548 [dir='rtl'] .panel-content-history .links a {
5553 .panel-content-history .view-history-on-osm {
5558 .panel-content-location .location-info {
5564 ------------------------------------------------------- */
5572 pointer-events: none;
5574 flex-direction: column;
5575 -ms-user-select: element;
5584 #attrib * { pointer-events: all; }
5586 .base-layer-attribution,
5587 .overlay-layer-attribution {
5593 .base-layer-attribution {
5597 .overlay-layer-attribution {
5601 .overlay-layer-attribution .attribution:not(:last-child):after {
5606 .attribution a:visited {
5610 .attribution a:hover {
5614 .attribution .source-image {
5616 vertical-align: middle;
5625 pointer-events: all;
5630 /* footer flash message */
5635 flex-flow: row nowrap;
5636 justify-content: space-between;
5646 flex-flow: row nowrap;
5647 align-items: center;
5659 .flash-icon circle {
5662 .flash-icon.disabled circle {
5664 fill: rgba(255,255,255,0.7);
5670 .flash-icon.disabled use {
5671 color: rgba(32,32,32,0.7);
5674 .flash-icon.operation use {
5678 .flash-icon.operation.disabled use {
5679 fill: rgba(32,32,32,0.7);
5680 color: rgba(40,40,40,0.7);
5690 flex-flow: row nowrap;
5691 justify-content: space-between;
5700 transition: bottom 75ms linear;
5701 -moz-transition: bottom 75ms linear;
5702 -webkit-transition: bottom 75ms linear;
5707 transition: bottom 75ms linear;
5708 -moz-transition: bottom 75ms linear;
5709 -webkit-transition: bottom 75ms linear;
5716 vertical-align: bottom;
5720 -moz-user-select: none;
5721 -webkit-user-select: none;
5722 -ms-user-select: none;
5735 [dir='rtl'] #scale {
5736 transform: scaleX(-1);
5744 font: 12px sans-serif;
5749 [dir='rtl'] #scale text {
5750 transform: scaleX(-1);
5757 shape-rendering: crispEdges;
5767 [dir='rtl'] #about-list {
5776 border-left: 1px solid rgba(255,255,255,.5);
5777 padding: 5px 0 5px 5px;
5780 [dir='rtl'] #about-list li {
5783 border-right: 1px solid rgba(255,255,255,.5);
5786 padding: 5px 5px 5px 0;
5790 #about-list li:last-child {
5795 [dir='rtl'] #about-list li:last-child {
5800 padding: 2px 4px 4px 4px;
5803 .source-switch a.live {
5804 background: #d32232;
5808 .feature-warning a {
5809 background: #1e90ff;
5810 padding: 2px 4px 4px 4px;
5815 .user-list a:not(:last-child):after {
5825 [dir='rtl'] .api-status {
5829 .api-status.offline,
5830 .api-status.readonly,
5838 .api-status-login:hover {
5842 /* Notification Badges */
5844 /* For an icon (e.g. new version) */
5846 display: inline-block;
5847 background: #d32232;
5850 border-radius: 11px;
5853 [dir='rtl'] .badge {
5860 [dir='rtl'] .badge a {
5865 vertical-align: baseline;
5871 /* For text (e.g. upcoming events) */
5873 display: inline-block;
5884 [dir='rtl'] .badge-text {
5891 ------------------------------------------------------- */
5895 display: inline-block;
5906 margin-bottom: 10px;
5909 .modal .description {
5925 background:rgba(0,0,0,0.5);
5927 left:0px; right:0px; top:0px; bottom:0px;
5932 border-bottom: 1px solid #ccc;
5935 .modal-section.header h3 {
5939 .modal-section.buttons {
5943 .modal-section.buttons .action {
5944 display: inline-block;
5947 vertical-align: middle;
5950 .save-section .buttons .action,
5951 .save-section .buttons .secondary-action {
5952 display: inline-block;
5955 vertical-align: middle;
5962 .modal-actions button {
5963 font-weight: normal;
5965 border-bottom: 1px solid #ccc;
5969 display: inline-block;
5971 .modal-actions button:hover {
5972 background-color: #ececec;
5988 .modal-actions > :first-child {
5989 border-right: 1px solid #ccc;
5992 .modal-section:last-child {
5997 ------------------------------------------------------- */
5998 .modal-actions .logo-restore {
6001 .modal-actions .logo-reset {
6006 ------------------------------------------------------- */
6007 .save-success.body {
6012 .save-success .link-out {
6014 white-space: nowrap;
6018 .save-communityLinks {
6019 padding: 0px 20px 15px 20px;
6022 .save-communityLinks {
6023 border-top: 1px solid #ccc;
6026 .save-success table,
6037 vertical-align: top;
6039 .save-success td.cell-icon {
6042 .save-success td.cell-detail {
6045 .save-success td.community-detail {
6046 padding-bottom: 15px;
6049 .summary-view-on-osm,
6054 .community-languages {
6058 .community-languages:only-child {
6062 .community-detail a.hide-toggle,
6063 .community-detail a:visited.hide-toggle {
6065 font-weight: normal;
6068 .community-detail .hide-toggle svg.icon.pre-text {
6079 background-color: #efefef;
6085 .community-event-name {
6089 .community-event-when {
6093 .community-missing {
6100 ------------------------------------------------------- */
6101 .modal-actions .logo-walkthrough,
6102 .modal-actions .logo-features {
6108 ------------------------------------------------------- */
6114 .modal-shortcuts .modal-section:last-child {
6119 .modal-shortcuts .tabs-bar {
6121 padding-bottom: 5px;
6126 .modal-shortcuts .tab {
6127 display: inline-block;
6133 .modal-shortcuts .tab.active {
6136 .modal-shortcuts .tab:hover {
6138 background-color: #efefef;
6141 .modal-shortcuts .shortcut-tab {
6143 flex-flow: row wrap;
6146 .modal-shortcuts .shortcut-column {
6151 .modal-shortcuts .shortcut-tab-tools .shortcut-column {
6156 .modal-shortcuts td {
6157 padding-bottom: 5px;
6160 .modal-shortcuts .shortcut-section {
6161 padding: 20px 0 10px 0;
6164 .modal-shortcuts .shortcut-keys {
6165 padding-right: 10px;
6169 [dir='rtl'] .modal-shortcuts .shortcut-keys {
6170 padding-right: auto;
6175 .modal-shortcuts .shortcut-keys kbd {
6176 display: inline-block;
6183 vertical-align: baseline;
6184 background-color: #fcfcfc;
6185 border: solid 1px #ccc;
6187 border-bottom-color: #bbb;
6189 box-shadow: inset 0 -1px 0 #bbb;
6192 svg.mouseclick use.left {
6193 fill: rgba(112, 146, 255, 1);
6194 color: rgba(112, 146, 255, 0);
6196 svg.mouseclick use.right {
6197 fill: rgba(112, 146, 255, 0);
6198 color: rgba(112, 146, 255, 1);
6201 .modal-shortcuts .shortcut-keys .gesture {
6209 ------------------------------------------------------- */
6210 .mode-save a.user-info {
6211 display: inline-block;
6214 .mode-save .commit-form {
6218 .mode-save .user-info img {
6222 .mode-save h3 small.count {
6230 border-radius: 24px;
6232 background: #7092ff;
6236 .mode-save .field-warning {
6238 border: 1px solid #ccc;
6243 .mode-save .field-warning:empty {
6247 .mode-save .field-warning,
6248 .mode-save .changeset-info,
6249 .mode-save .request-review,
6250 .mode-save .commit-info {
6251 margin-bottom: 10px;
6254 .mode-save .request-review label {
6258 .mode-save .changeset-list {
6259 border: 1px solid #ccc;
6262 margin-bottom: 10px;
6265 .mode-save .warning-section {
6269 .mode-save .warning-section .changeset-list button {
6270 border-left: 1px solid #ccc;
6273 .mode-save .changeset-list li {
6275 border-top: 1px solid #ccc;
6280 .mode-save .changeset-list li:hover {
6281 background-color: #ececec;
6284 .mode-save .changeset-list .alert {
6288 .changeset-list li span.count {
6293 .mode-save .commit-section .changeset-list button {
6294 border-left: 1px solid #ccc;
6297 .changeset-list li span.count:before { content: '('; }
6299 .changeset-list li span.count:after { content: ')'; }
6301 .changeset-list li:first-child { border-top: 0;}
6303 /* Conflict resolution
6304 ------------------------------------------------------- */
6308 background-color: #ffffbb;
6309 border-bottom: 1px solid #ccc;
6312 .conflicts-buttons {
6316 .mode-save button.conflicts-button {
6320 .conflict-container {
6321 border-bottom: 1px solid #ccc;
6324 .conflict-description {
6330 padding: 20px 20px 0 20px;
6333 .conflict-detail-container {
6345 .conflict-nav-buttons {
6346 padding: 10px 0 20px 0;
6349 .conflict-nav-button {
6354 ------------------------------------------------------- */
6372 .notice .zoom-to:hover {
6373 background: rgba(0,0,0,0.6);
6376 .notice .zoom-to .icon {
6379 vertical-align: middle;
6382 [dir='rtl'] .notice .zoom-to .icon {
6388 ------------------------------------------------------- */
6425 display: inline-block;
6430 font-weight: normal;
6431 background-color: white;
6437 pointer-events: none;
6441 background: transparent;
6449 border-color: transparent;
6450 border-style: solid;
6454 border-left-color: white;
6455 border-width: 5px 0 5px 5px;
6474 border-color: transparent;
6475 border-style: solid;
6479 border-right-color: white;
6480 border-width: 5px 5px 5px 0;
6487 border-color: transparent;
6488 border-style: solid;
6491 .tooltip.top .tooltip-arrow {
6495 border-top-color: white;
6496 border-width: 5px 5px 0;
6499 .tooltip.right .tooltip-arrow {
6503 border-right-color: white;
6504 border-width: 5px 5px 5px 0;
6507 .tooltip.left .tooltip-arrow {
6511 border-left-color: white;
6512 border-width: 5px 0 5px 5px;
6515 .tooltip.bottom .tooltip-arrow {
6519 border-bottom-color: white;
6520 border-width: 0 5px 5px;
6525 background: #F6F6F6;
6527 margin: -10px -10px 10px -10px;
6528 border-radius: 3px 3px 0 0;
6533 background: #F6F6F6;
6535 margin: 10px -10px -10px -10px;
6536 border-radius: 0 0 3px 3px;
6539 .tooltip-inner .keyhint {
6544 /* Exceptions for tooltip layouts */
6546 /* make tooltips in panels dark */
6547 .map-pane .tooltip.top .tooltip-arrow,
6548 .entity-editor-pane .tooltip.top .tooltip-arrow,
6549 .warning-section .tooltip.top .tooltip-arrow {
6550 border-top-color: #000;
6553 .map-pane .tooltip.bottom .tooltip-arrow,
6554 .entity-editor-pane .tooltip.bottom .tooltip-arrow,
6555 .warning-section .tooltip.bottom .tooltip-arrow {
6556 border-bottom-color: #000;
6559 .map-pane .tooltip.left .tooltip-arrow,
6560 .entity-editor-pane .tooltip.left .tooltip-arrow,
6561 .warning-section .tooltip.left .tooltip-arrow {
6562 border-left-color: #000;
6565 .map-pane .tooltip.right .tooltip-arrow,
6566 .entity-editor-pane .tooltip.right .tooltip-arrow,
6567 .warning-section .tooltip.right .tooltip-arrow {
6568 border-right-color: #000;
6571 .map-pane .tooltip-inner,
6572 .map-pane .tooltip-heading,
6573 .map-pane .keyhint-wrap,
6574 .entity-editor-pane .tooltip-inner,
6575 .warning-section .tooltip-inner {
6579 /* commit warning tooltips need to be closer */
6580 .warning-section .tooltip.top {
6584 /* Uncramp map-control tooltips */
6585 .map-control .tooltip {
6588 .map-control .shortcuts .tooltip {
6592 /* Move over tooltips that are near the edge of screen */
6593 .add-point .tooltip {
6594 left: 33.3333% !important;
6596 [dir='rtl'] .add-point .tooltip {
6597 left: inherit !important;
6600 .add-point .tooltip .tooltip-arrow {
6603 [dir='rtl'] .add-point .tooltip .tooltip-arrow {
6608 li:first-of-type .badge .tooltip,
6609 li.hide + li.version .badge .tooltip {
6610 left: auto !important;
6611 right: 5px !important;
6613 [dir='rtl'] li:first-of-type .badge .tooltip,
6614 [dir='rtl'] li.hide + li.version .badge .tooltip {
6615 left: 5px !important;
6616 right: auto !important;
6618 li:first-of-type .badge .tooltip .tooltip-arrow,
6619 li.hide + li.version .badge .tooltip .tooltip-arrow {
6620 right: 15px !important;
6621 left: auto !important;
6623 [dir='rtl'] li:first-of-type .badge .tooltip .tooltip-arrow,
6624 [dir='rtl'] li.hide + li.version .badge .tooltip .tooltip-arrow {
6625 left: 15px !important;
6626 right: auto !important;
6630 /* radial menu (deprecated) */
6632 .radial-menu-tooltip {
6639 .radial-menu-background {
6642 stroke-opacity: 0.5;
6645 .radial-menu-item circle {
6649 .radial-menu-item circle:active,
6650 .radial-menu-item circle:hover {
6654 .radial-menu-item.disabled circle {
6656 fill: rgba(255,255,255,.5);
6659 .radial-menu-item use {
6664 .radial-menu-item.disabled use {
6665 fill: rgba(32,32,32,.5);
6666 color: rgba(40,40,40,.5);
6671 .edit-menu-tooltip {
6677 .edit-menu-background {
6681 .edit-menu-item rect {
6686 .edit-menu-item rect:active,
6687 .edit-menu-item rect:hover {
6691 .edit-menu-item.disabled rect {
6692 cursor: not-allowed;
6694 .edit-menu-item.disabled rect:hover {
6695 cursor: not-allowed;
6699 .edit-menu-item use {
6702 pointer-events: none;
6705 .edit-menu-item.disabled use {
6706 fill: rgba(32,32,32,.2);
6707 color: rgba(40,40,40,.2);
6716 stroke-dasharray: 5, 5;
6720 ------------------------------------------------------- */
6722 @media only screen and (max-width: 840px) {
6723 /* override hide for save button */
6724 #bar .save .label { display: block;}
6727 @media screen and (max-width: 1200px) {
6728 .user-list { display: none !important; }
6731 @media screen and (max-width: 1000px) {
6732 #userLink { display: none !important; }
6735 @media screen and (max-width: 900px) {
6736 #scale-block { display: none !important; }
6741 ----------------------------------------------------- */
6743 ::-webkit-scrollbar {
6748 border-left: 1px solid #DDD;
6751 ::-webkit-scrollbar-track {
6752 background-clip: padding-box;
6753 border: solid transparent;
6757 ::-webkit-scrollbar-thumb {
6758 background-color: rgba(0,0,0,.2);
6759 background-clip: padding-box;
6760 border: solid transparent;
6761 border-width: 3px 3px 3px 4px;
6764 ::-webkit-scrollbar-track:hover,
6765 ::-webkit-scrollbar-track:active {
6766 background-color: rgba(0,0,0,.05);
6769 /* Intro walkthrough
6770 ----------------------------------------------------- */
6773 pointer-events: all;
6781 flex-direction: row;
6790 .intro-nav-wrap .intro-nav-wrap-logo {
6796 vertical-align: middle;
6799 .intro-nav-wrap .joined {
6802 flex-direction: row;
6805 .intro-nav-wrap button.chapter {
6810 .intro-nav-wrap button.chapter.next {
6811 animation-duration: 1s;
6812 animation-name: pulse;
6813 animation-iteration-count: infinite;
6814 animation-direction: alternate;
6817 from { background: #7092ff; }
6818 to { background: #c6d4ff; }
6821 .intro-nav-wrap button.chapter.finished {
6822 background: #8cd05f;
6825 .intro-nav-wrap button.chapter .status {
6829 .intro-nav-wrap button.chapter.finished .status {
6830 display: inline-block;
6833 .curtain-tooltip.tooltip.in {
6836 .curtain-tooltip.tooltip {
6839 [dir='rtl'] .curtain-tooltip.tooltip {
6843 .curtain-tooltip .tooltip-inner {
6849 .curtain-tooltip .tooltip-inner .button-section,
6850 .curtain-tooltip .tooltip-inner .instruction {
6853 border-top: 1px solid #ccc;
6856 margin-right: -20px;
6857 padding: 10px 20px 0 20px;
6860 [dir='rtl'] .curtain-tooltip .tooltip-inner .button-section button.col8 {
6864 .curtain-tooltip .tooltip-inner .instruction:only-child {
6870 .curtain-tooltip .tooltip-inner .icon.pre-text {
6871 vertical-align: text-top;
6874 display: inline-block;
6877 .curtain-tooltip.intro-points-describe ,
6878 .curtain-tooltip.intro-lines-name_road {
6879 top: 133px !important;
6882 .tooltip-illustration {
6888 [dir='rtl'] .tooltip-illustration {
6890 margin-right: -20px;
6893 .curtain-tooltip.intro-mouse {
6894 -moz-user-select: none;
6895 -webkit-user-select: none;
6896 -ms-user-select: none;
6900 .curtain-tooltip.intro-mouse .counter {
6911 .curtain-tooltip.intro-mouse .tooltip-illustration use {
6912 fill: rgba(112, 146, 255, 0);
6913 color: rgba(112, 146, 255, 0);
6915 .curtain-tooltip.intro-mouse.leftclick .tooltip-illustration use {
6916 fill: rgba(112, 146, 255, 1);
6918 .curtain-tooltip.intro-mouse.rightclick .tooltip-illustration use {
6919 color: rgba(112, 146, 255, 1);
6922 .huge-modal-button {
6928 .huge-modal-button .illustration {