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;
192 /* `.target` objects are interactive */
193 /* They can be picked up, clicked, hovered, or things can connect to them */
195 pointer-events: fill;
202 pointer-events: stroke;
206 stroke: currentColor;
207 stroke-linecap: round;
208 stroke-linejoin: round;
211 /* `.target-nope` objects are explicitly forbidden to join to */
212 .surface:not(.nope-disabled) .node.target.target-nope,
213 .surface:not(.nope-disabled) .way.target.target-nope {
218 /* `.active` objects (currently being drawn or dragged) are not interactive */
219 /* This is important to allow the events to drop through to whatever is */
220 /* below them on the map, so you can still hover and connect to other things. */
222 pointer-events: none !important;
241 g.point.related:not(.selected) .shadow,
242 g.point.hover:not(.selected) .shadow {
246 g.point.selected .shadow {
250 g.point ellipse.stroke {
254 .mode-drag-node g.point.active ellipse.stroke {
259 /* vertices and midpoints */
271 g.vertex.shared .stroke {
289 g.vertex.related:not(.selected) .shadow,
290 g.vertex.hover:not(.selected) .shadow,
291 g.midpoint.related:not(.selected) .shadow,
292 g.midpoint.hover:not(.selected) .shadow {
296 g.vertex.selected .shadow {
303 .preset-icon .icon.other-line {
309 stroke-linecap: round;
310 stroke-linejoin: round;
324 path.shadow.related:not(.selected),
325 path.shadow.hover:not(.selected) {
329 path.shadow.selected {
339 /* Labels / Markers */
347 .oneway .textpath.tag-waterway {
351 .onewaygroup path.oneway,
352 .viewfieldgroup path.viewfield {
358 text.pointlabel-halo,
362 dominant-baseline: middle;
367 -webkit-transition: opacity 100ms linear;
368 transition: opacity 100ms linear;
369 -moz-transition: opacity 100ms linear;
372 /* Opera doesn't support dominant-baseline. See #715 */
373 /* Safari 10 seems to have regressed too */
374 .linelabel-halo .textpath,
375 .linelabel .textpath {
376 baseline-shift: -33%;
377 dominant-baseline: auto;
380 .layer-labels-halo text {
384 stroke-miterlimit: 1;
395 .icon.areaicon-halo {
399 stroke-miterlimit: 1;
416 .form-field-restrictions .vertex {
417 cursor: auto !important;
418 pointer-events: none;
422 pointer-events: visibleStroke;
428 pointer-events: none;
441 /* Default - light gray */
448 stroke: rgba(255, 255, 255, 0.3);
449 fill: rgba(255, 255, 255, 0.3);
452 .preset-icon-fill-area {
453 border: 1px solid rgb(170, 170, 170);
454 background-color: rgba(170, 170, 170, 0.3);
457 path.shadow.old-multipolygon,
458 path.stroke.old-multipolygon {
459 stroke-dasharray: 100, 5;
460 stroke-linecap: butt;
464 path.stroke.tag-landuse,
465 path.stroke.tag-natural,
466 path.stroke.tag-leisure-nature_reserve,
467 path.stroke.tag-leisure-pitch,
468 path.stroke.tag-leisure-park {
469 stroke: rgb(140, 208, 95);
471 path.fill.tag-landuse,
472 path.fill.tag-natural,
473 path.fill.tag-leisure-nature_reserve,
474 path.fill.tag-leisure-pitch,
475 path.fill.tag-leisure-park {
476 stroke: rgba(140, 208, 95, 0.3);
477 fill: rgba(140, 208, 95, 0.3);
479 .preset-icon-fill-area.tag-landuse,
480 .preset-icon-fill-area.tag-natural,
481 .preset-icon-fill-area.tag-leisure-nature_reserve,
482 .preset-icon-fill-area.tag-leisure-pitch,
483 .preset-icon-fill-area.tag-leisure-park {
484 border-color: rgb(140, 208, 95);
485 background-color: rgba(140, 208, 95, 0.3);
489 path.stroke.tag-amenity-swimming_pool,
490 path.stroke.tag-leisure-swimming_pool,
491 path.stroke.tag-natural-water,
492 path.stroke.tag-landuse-aquaculture,
493 path.stroke.tag-landuse-basin,
494 path.stroke.tag-landuse-harbour,
495 path.stroke.tag-landuse-reservoir {
496 stroke: rgb(119, 211, 222);
498 path.fill.tag-amenity-swimming_pool,
499 path.fill.tag-leisure-swimming_pool,
500 path.fill.tag-landuse-aquaculture,
501 path.fill.tag-landuse-basin,
502 path.fill.tag-landuse-harbour,
503 path.fill.tag-landuse-reservoir,
504 path.fill.tag-natural-water {
505 stroke: rgba(119, 211, 222, 0.3);
506 fill: rgba(119, 211, 222, 0.3);
508 .preset-icon-fill-area.tag-amenity-swimming_pool,
509 .preset-icon-fill-area.tag-leisure-swimming_pool,
510 .preset-icon-fill-area.tag-landuse-aquaculture,
511 .preset-icon-fill-area.tag-landuse-basin,
512 .preset-icon-fill-area.tag-landuse-harbour,
513 .preset-icon-fill-area.tag-landuse-reservoir,
514 .preset-icon-fill-area.tag-natural-water {
515 border-color: rgb(119, 211, 222);
516 background-color: rgba(119, 211, 222, 0.3);
520 .pattern-color-beach,
522 .pattern-color-scrub {
523 fill: rgba(255, 255, 148, 0.2);
525 path.stroke.tag-leisure-pitch.tag-sport-beachvolleyball,
526 path.stroke.tag-natural-beach,
527 path.stroke.tag-natural-sand,
528 path.stroke.tag-natural-scrub,
529 path.stroke.tag-amenity-childcare,
530 path.stroke.tag-amenity-kindergarten,
531 path.stroke.tag-amenity-school,
532 path.stroke.tag-amenity-college,
533 path.stroke.tag-amenity-university {
534 stroke: rgba(255, 255, 148, 0.75);
536 path.fill.tag-leisure-pitch.tag-sport-beachvolleyball,
537 path.fill.tag-natural-beach,
538 path.fill.tag-natural-sand,
539 path.fill.tag-natural-scrub,
540 path.fill.tag-amenity-childcare,
541 path.fill.tag-amenity-kindergarten,
542 path.fill.tag-amenity-school,
543 path.fill.tag-amenity-college,
544 path.fill.tag-amenity-university {
545 stroke: rgba(255, 255, 148, 0.15);
546 fill: rgba(255, 255, 148, 0.15);
548 .preset-icon-fill-area.tag-leisure-pitch.tag-sport-beachvolleyball,
549 .preset-icon-fill-area.tag-natural-beach,
550 .preset-icon-fill-area.tag-natural-sand,
551 .preset-icon-fill-area.tag-natural-scrub,
552 .preset-icon-fill-area.tag-amenity-childcare,
553 .preset-icon-fill-area.tag-amenity-kindergarten,
554 .preset-icon-fill-area.tag-amenity-school,
555 .preset-icon-fill-area.tag-amenity-college,
556 .preset-icon-fill-area.tag-amenity-university {
557 border-color: rgb(232, 232, 0);
558 background-color: rgba(255, 255, 148, 0.15);
562 .pattern-color-construction {
563 fill: rgba(196, 189, 25, 0.3);
565 path.stroke.tag-landuse-residential,
566 path.stroke.tag-landuse.tag-status,
567 path.stroke.tag-landuse-construction {
568 stroke: rgb(196, 189, 25);
570 path.fill.tag-landuse-residential {
571 stroke: rgba(196, 189, 25, 0.3);
572 fill: rgba(196, 189, 25, 0.3);
574 .preset-icon-fill-area.tag-landuse-residential,
575 .preset-icon-fill-area.tag-landuse.tag-status,
576 .preset-icon-fill-area.tag-landuse-construction {
577 border-color: rgb(196, 189, 25);
578 background: rgba(196, 189, 25, 0.3);
582 path.stroke.tag-landuse-retail,
583 path.stroke.tag-landuse-commercial,
584 path.stroke.tag-landuse-landfill,
585 path.stroke.tag-military,
586 path.stroke.tag-landuse-military {
587 stroke: rgb(214, 136, 26);
589 path.fill.tag-landuse-retail,
590 path.fill.tag-landuse-commercial,
591 path.fill.tag-landuse-landfill,
592 path.fill.tag-military,
593 path.fill.tag-landuse-military {
594 stroke: rgba(214, 136, 26, 0.3);
595 fill: rgba(214, 136, 26, 0.3);
597 .preset-icon-fill-area.tag-landuse-retail,
598 .preset-icon-fill-area.tag-landuse-commercial,
599 .preset-icon-fill-area.tag-landuse-landfill,
600 .preset-icon-fill-area.tag-military,
601 .preset-icon-fill-area.tag-landuse-military {
602 border-color: rgb(214, 136, 26);
603 background-color: rgba(214, 136, 26, 0.3);
607 path.stroke.tag-landuse-industrial,
608 path.stroke.tag-power-plant {
609 stroke: rgb(228, 164, 245);
611 path.fill.tag-landuse-industrial,
612 path.fill.tag-power-plant {
613 stroke: rgba(228, 164, 245, 0.3);
614 fill: rgba(228, 164, 245, 0.3);
616 .preset-icon-fill-area.tag-landuse-industrial,
617 .preset-icon-fill-area.tag-power-plant {
618 border-color: rgb(228, 164, 245);
619 background-color: rgba(228, 164, 245, 0.3);
623 .pattern-color-wetland {
624 fill: rgba(153, 225, 170, 0.3);
626 path.stroke.tag-natural-wetland {
627 stroke: rgb(153, 225, 170);
629 .preset-icon-fill-area.tag-natural-wetland {
630 border-color: rgb(153, 225, 170);
631 background-color: rgba(153, 225, 170, 0.2);
634 /* Light Green things */
635 .pattern-color-cemetery,
636 .pattern-color-orchard,
637 .pattern-color-meadow,
639 .pattern-color-farmland {
640 fill: rgba(191, 232, 63, 0.2);
642 path.stroke.tag-landuse-cemetery,
643 path.stroke.tag-landuse-orchard,
644 path.stroke.tag-landuse-meadow,
645 path.stroke.tag-landuse-farm,
646 path.stroke.tag-landuse-farmland {
647 stroke: rgb(191, 232, 63);
649 .preset-icon-fill-area.tag-landuse-cemetery,
650 .preset-icon-fill-area.tag-landuse-orchard,
651 .preset-icon-fill-area.tag-landuse-meadow,
652 .preset-icon-fill-area.tag-landuse-farm,
653 .preset-icon-fill-area.tag-landuse-farmland {
654 background-color: rgba(191, 232, 63, 0.2);
658 path.stroke.tag-landuse-farmyard {
659 stroke: rgb(245, 220, 186);
661 path.fill.tag-landuse-farmyard {
662 stroke: rgba(245, 220, 186, 0.3);
663 fill: rgba(245, 220, 186, 0.3);
665 .preset-icon-fill-area.tag-landuse-farmyard {
666 border-color: rgb(226, 177, 111);
667 background: rgba(245, 220, 186, 0.3);
670 /* Dark Gray things */
671 path.stroke.tag-amenity-parking,
672 path.stroke.tag-leisure-pitch.tag-sport-basketball,
673 path.stroke.tag-leisure-pitch.tag-sport-skateboard,
674 path.stroke.tag-natural-bare_rock,
675 path.stroke.tag-natural-scree,
676 path.stroke.tag-landuse-railway,
677 path.stroke.tag-landuse-quarry {
680 path.fill.tag-amenity-parking,
681 path.fill.tag-leisure-pitch.tag-sport-basketball,
682 path.fill.tag-leisure-pitch.tag-sport-skateboard,
683 path.fill.tag-natural-bare_rock,
684 path.fill.tag-natural-scree,
685 path.fill.tag-landuse-railway,
686 path.fill.tag-landuse-quarry {
687 stroke: rgba(140, 140, 140, 0.5);
688 fill: rgba(140, 140, 140, 0.5);
690 .preset-icon-fill-area.tag-amenity-parking,
691 .preset-icon-fill-area.tag-leisure-pitch.tag-sport-basketball,
692 .preset-icon-fill-area.tag-leisure-pitch.tag-sport-skateboard,
693 .preset-icon-fill-area.tag-natural-bare_rock,
694 .preset-icon-fill-area.tag-natural-scree,
695 .preset-icon-fill-area.tag-landuse-railway,
696 .preset-icon-fill-area.tag-landuse-quarry {
697 border-color: rgb(170, 170, 170);
698 background-color: rgba(140, 140, 140, 0.5);
701 /* Light gray overrides */
702 path.stroke.tag-natural-cave_entrance,
703 path.stroke.tag-natural-glacier {
706 path.fill.tag-natural-cave_entrance,
707 path.fill.tag-natural-glacier {
708 stroke: rgba(255, 255, 255, 0.3);
709 fill: rgba(255, 255, 255, 0.3);
711 .preset-icon-fill-area.tag-natural-cave_entrance,
712 .preset-icon-fill-area.tag-natural-glacier {
713 border-color: rgb(170, 170, 170);
714 background: rgba(170, 170, 170, 0.3);
719 .preset-icon .icon.tag-highway.other-line {
723 path.casing.tag-highway {
726 path.stroke.tag-highway {
732 path.stroke.area.tag-highway,
733 .low-zoom path.stroke.area.tag-highway {
735 stroke-dasharray: none;
741 path.shadow.tag-highway {
744 path.casing.tag-highway {
747 path.stroke.tag-highway {
751 .low-zoom path.shadow.tag-highway {
754 .low-zoom path.casing.tag-highway {
757 .low-zoom path.stroke.tag-highway {
761 .preset-icon .icon.highway-motorway,
762 .preset-icon .icon.highway-motorway-link {
766 path.stroke.tag-highway-motorway,
767 path.stroke.tag-highway-motorway_link,
768 path.stroke.tag-motorway {
771 path.casing.tag-highway-motorway,
772 path.casing.tag-highway-motorway_link,
773 path.casing.tag-motorway {
777 .preset-icon .icon.highway-trunk,
778 .preset-icon .icon.highway-trunk-link {
782 path.stroke.tag-highway-trunk,
783 path.stroke.tag-highway-trunk_link,
784 path.stroke.tag-trunk {
787 path.casing.tag-highway-trunk,
788 path.casing.tag-highway-trunk_link,
789 path.casing.tag-trunk {
793 .preset-icon .icon.highway-primary,
794 .preset-icon .icon.highway-primary-link {
798 path.stroke.tag-highway-primary,
799 path.stroke.tag-highway-primary_link,
800 path.stroke.tag-primary {
803 path.casing.tag-highway-primary,
804 path.casing.tag-highway-primary_link,
805 path.casing.tag-primary {
809 .preset-icon .icon.highway-secondary,
810 .preset-icon .icon.highway-secondary-link {
814 path.stroke.tag-highway-secondary,
815 path.stroke.tag-highway-secondary_link,
816 path.stroke.tag-secondary {
819 path.casing.tag-highway-secondary,
820 path.casing.tag-highway-secondary_link,
821 path.casing.tag-secondary {
825 .preset-icon .icon.highway-tertiary,
826 .preset-icon .icon.highway-tertiary-link {
830 path.stroke.tag-highway-tertiary,
831 path.stroke.tag-highway-tertiary_link,
832 path.stroke.tag-tertiary {
835 path.casing.tag-highway-tertiary,
836 path.casing.tag-highway-tertiary_link,
837 path.casing.tag-tertiary {
841 .legacy-carto .preset-icon .icon.highway-motorway,
842 .legacy-carto .preset-icon .icon.highway-motorway-link {
846 .legacy-carto path.stroke.tag-highway-motorway,
847 .legacy-carto path.stroke.tag-highway-motorway_link,
848 .legacy-carto path.stroke.tag-motorway {
851 .legacy-carto path.casing.tag-highway-motorway,
852 .legacy-carto path.casing.tag-highway-motorway_link,
853 .legacy-carto path.casing.tag-motorway {
857 .legacy-carto .preset-icon .icon.highway-trunk,
858 .legacy-carto .preset-icon .icon.highway-trunk-link {
862 .legacy-carto path.stroke.tag-highway-trunk,
863 .legacy-carto path.stroke.tag-highway-trunk_link,
864 .legacy-carto path.stroke.tag-trunk {
867 .legacy-carto path.casing.tag-highway-trunk,
868 .legacy-carto path.casing.tag-highway-trunk_link,
869 .legacy-carto path.casing.tag-trunk {
873 .legacy-carto .preset-icon .icon.highway-primary,
874 .legacy-carto .preset-icon .icon.highway-primary-link {
878 .legacy-carto path.stroke.tag-highway-primary,
879 .legacy-carto path.stroke.tag-highway-primary_link,
880 .legacy-carto path.stroke.tag-primary {
883 .legacy-carto path.casing.tag-highway-primary,
884 .legacy-carto path.casing.tag-highway-primary_link,
885 .legacy-carto path.casing.tag-primary {
889 .legacy-carto .preset-icon .icon.highway-secondary,
890 .legacy-carto .preset-icon .icon.highway-secondary-link {
894 .legacy-carto path.stroke.tag-highway-secondary,
895 .legacy-carto path.stroke.tag-highway-secondary_link,
896 .legacy-carto path.stroke.tag-secondary {
899 .legacy-carto path.casing.tag-highway-secondary,
900 .legacy-carto path.casing.tag-highway-secondary_link,
901 .legacy-carto path.casing.tag-secondary {
905 .legacy-carto .preset-icon .icon.highway-tertiary,
906 .legacy-carto .preset-icon .icon.highway-tertiary-link {
910 .legacy-carto path.stroke.tag-highway-tertiary,
911 .legacy-carto path.stroke.tag-highway-tertiary_link,
912 .legacy-carto path.stroke.tag-tertiary {
915 .legacy-carto path.casing.tag-highway-tertiary,
916 .legacy-carto path.casing.tag-highway-tertiary_link,
917 .legacy-carto path.casing.tag-tertiary {
921 .preset-icon .icon.highway-residential {
925 path.stroke.tag-highway-residential,
926 path.stroke.tag-residential {
929 path.casing.tag-highway-residential,
930 path.casing.tag-residential {
934 .preset-icon .icon.highway-unclassified {
938 path.stroke.tag-highway-unclassified,
939 path.stroke.tag-unclassified {
942 path.casing.tag-highway-unclassified,
943 path.casing.tag-unclassified {
948 /* narrow highways */
950 path.shadow.tag-highway-living_street,
951 path.shadow.tag-highway-bus_guideway,
952 path.shadow.tag-highway-service,
953 path.shadow.tag-highway-track,
954 path.shadow.tag-highway-road,
955 path.shadow.tag-living_street,
956 path.shadow.tag-service,
957 path.shadow.tag-track,
958 path.shadow.tag-road {
961 path.casing.tag-highway-living_street,
962 path.casing.tag-highway-bus_guideway,
963 path.casing.tag-highway-service,
964 path.casing.tag-highway-track,
965 path.casing.tag-highway-road,
966 path.casing.tag-living_street,
967 path.casing.tag-service,
968 path.casing.tag-track,
969 path.casing.tag-road {
972 path.stroke.tag-highway-living_street,
973 path.stroke.tag-highway-bus_guideway,
974 path.stroke.tag-highway-service,
975 path.stroke.tag-highway-track,
976 path.stroke.tag-highway-road,
977 path.stroke.tag-living_street,
978 path.stroke.tag-service,
979 path.stroke.tag-track,
980 path.stroke.tag-road {
984 path.shadow.tag-highway-path,
985 path.shadow.tag-highway-footway,
986 path.shadow.tag-highway-cycleway,
987 path.shadow.tag-highway-bridleway,
988 path.shadow.tag-highway-corridor,
989 path.shadow.tag-highway-pedestrian,
990 path.shadow.tag-highway-steps,
991 path.shadow.tag-path,
992 path.shadow.tag-footway,
993 path.shadow.tag-cycleway,
994 path.shadow.tag-bridleway,
995 path.shadow.tag-corridor,
996 path.shadow.tag-pedestrian,
997 path.shadow.tag-steps {
1000 path.casing.tag-highway-path,
1001 path.casing.tag-highway-footway,
1002 path.casing.tag-highway-cycleway,
1003 path.casing.tag-highway-bridleway,
1004 path.casing.tag-highway-corridor,
1005 path.casing.tag-highway-pedestrian,
1006 path.casing.tag-highway-steps,
1007 path.casing.tag-path,
1008 path.casing.tag-footway,
1009 path.casing.tag-cycleway,
1010 path.casing.tag-bridleway,
1011 path.casing.tag-corridor,
1012 path.casing.tag-pedestrian,
1013 path.casing.tag-steps {
1016 path.stroke.tag-highway-path,
1017 path.stroke.tag-highway-footway,
1018 path.stroke.tag-highway-cycleway,
1019 path.stroke.tag-highway-bridleway,
1020 path.stroke.tag-highway-corridor,
1021 path.stroke.tag-highway-pedestrian,
1022 path.stroke.tag-highway-steps,
1023 path.stroke.tag-path,
1024 path.stroke.tag-footway,
1025 path.stroke.tag-cycleway,
1026 path.stroke.tag-bridleway,
1027 path.stroke.tag-corridor,
1028 path.stroke.tag-pedestrian,
1029 path.stroke.tag-steps {
1033 .low-zoom path.shadow.tag-highway-living_street,
1034 .low-zoom path.shadow.tag-highway-bus_guideway,
1035 .low-zoom path.shadow.tag-highway-service,
1036 .low-zoom path.shadow.tag-highway-track,
1037 .low-zoom path.shadow.tag-highway-road,
1038 .low-zoom path.shadow.tag-living_street,
1039 .low-zoom path.shadow.tag-service,
1040 .low-zoom path.shadow.tag-track,
1041 .low-zoom path.shadow.tag-road {
1044 .low-zoom path.casing.tag-highway-living_street,
1045 .low-zoom path.casing.tag-highway-bus_guideway,
1046 .low-zoom path.casing.tag-highway-service,
1047 .low-zoom path.casing.tag-highway-track,
1048 .low-zoom path.casing.tag-highway-road,
1049 .low-zoom path.casing.tag-living_street,
1050 .low-zoom path.casing.tag-service,
1051 .low-zoom path.casing.tag-track,
1052 .low-zoom path.casing.tag-road {
1055 .low-zoom path.stroke.tag-highway-living_street,
1056 .low-zoom path.stroke.tag-highway-bus_guideway,
1057 .low-zoom path.stroke.tag-highway-service,
1058 .low-zoom path.stroke.tag-highway-track,
1059 .low-zoom path.stroke.tag-highway-road,
1060 .low-zoom path.stroke.tag-living_street,
1061 .low-zoom path.stroke.tag-service,
1062 .low-zoom path.stroke.tag-track,
1063 .low-zoom path.stroke.tag-road {
1067 .low-zoom path.shadow.tag-highway-path,
1068 .low-zoom path.shadow.tag-highway-footway,
1069 .low-zoom path.shadow.tag-highway-cycleway,
1070 .low-zoom path.shadow.tag-highway-bridleway,
1071 .low-zoom path.shadow.tag-highway-corridor,
1072 .low-zoom path.shadow.tag-highway-pedestrian,
1073 .low-zoom path.shadow.tag-highway-steps,
1074 .low-zoom path.shadow.tag-path,
1075 .low-zoom path.shadow.tag-footway,
1076 .low-zoom path.shadow.tag-cycleway,
1077 .low-zoom path.shadow.tag-bridleway,
1078 .low-zoom path.shadow.tag-corridor,
1079 .low-zoom path.shadow.tag-pedestrian,
1080 .low-zoom path.shadow.tag-steps {
1083 .low-zoom path.casing.tag-highway-path,
1084 .low-zoom path.casing.tag-highway-footway,
1085 .low-zoom path.casing.tag-highway-cycleway,
1086 .low-zoom path.casing.tag-highway-bridleway,
1087 .low-zoom path.casing.tag-highway-corridor,
1088 .low-zoom path.casing.tag-highway-pedestrian,
1089 .low-zoom path.casing.tag-highway-steps,
1090 .low-zoom path.casing.tag-path,
1091 .low-zoom path.casing.tag-footway,
1092 .low-zoom path.casing.tag-cycleway,
1093 .low-zoom path.casing.tag-bridleway,
1094 .low-zoom path.casing.tag-corridor,
1095 .low-zoom path.casing.tag-pedestrian,
1096 .low-zoom path.casing.tag-steps {
1099 .low-zoom path.stroke.tag-highway-path,
1100 .low-zoom path.stroke.tag-highway-footway,
1101 .low-zoom path.stroke.tag-highway-cycleway,
1102 .low-zoom path.stroke.tag-highway-bridleway,
1103 .low-zoom path.stroke.tag-highway-corridor,
1104 .low-zoom path.stroke.tag-highway-pedestrian,
1105 .low-zoom path.stroke.tag-highway-steps,
1106 .low-zoom path.stroke.tag-path,
1107 .low-zoom path.stroke.tag-footway,
1108 .low-zoom path.stroke.tag-cycleway,
1109 .low-zoom path.stroke.tag-bridleway,
1110 .low-zoom path.stroke.tag-corridor,
1111 .low-zoom path.stroke.tag-pedestrian,
1112 .low-zoom path.stroke.tag-steps {
1117 .preset-icon .icon.highway-living-street {
1121 path.stroke.tag-highway-living_street,
1122 path.stroke.tag-living_street {
1125 path.casing.tag-highway-living_street,
1126 path.casing.tag-living_street {
1130 .preset-icon .icon.highway-footway.tag-highway-corridor,
1131 .preset-icon .icon.highway-footway.tag-highway-pedestrian {
1135 path.stroke.tag-highway-corridor,
1136 path.stroke.tag-highway-pedestrian,
1137 path.stroke.tag-corridor,
1138 path.stroke.tag-pedestrian {
1140 stroke-dasharray: 2, 8;
1142 .low-zoom path.stroke.tag-highway-corridor,
1143 .low-zoom path.stroke.tag-highway-pedestrian,
1144 .low-zoom path.stroke.tag-corridor,
1145 .low-zoom path.stroke.tag-pedestrian {
1146 stroke-dasharray: 1, 4;
1148 path.casing.tag-highway-corridor,
1149 path.casing.tag-highway-pedestrian,
1150 path.casing.tag-corridor,
1151 path.casing.tag-pedestrian,
1152 path.casing.tag-highway-corridor.tag-unpaved,
1153 path.casing.tag-highway-pedestrian.tag-unpaved,
1154 path.casing.tag-corridor.tag-unpaved,
1155 path.casing.tag-pedestrian.tag-unpaved {
1157 stroke-linecap: round;
1158 stroke-dasharray: none;
1161 .preset-icon .icon.highway-road {
1165 path.stroke.tag-highway-road,
1166 path.stroke.tag-road {
1169 path.casing.tag-highway-road,
1170 path.casing.tag-road {
1174 .preset-icon .icon.highway-service {
1178 path.stroke.tag-highway-service,
1179 path.stroke.tag-service {
1182 path.casing.tag-highway-service,
1183 path.casing.tag-service {
1187 /* special service roads and bus guideways */
1188 /* with `service=* tag` (e.g. parking_aisle, alley, drive-through */
1189 .preset-icon .icon.highway-bus_guideway,
1190 .preset-icon .icon.highway-service.tag-service {
1194 path.stroke.tag-highway-bus_guideway,
1195 path.stroke.tag-highway-service.tag-service,
1196 path.stroke.tag-service.tag-service {
1199 path.casing.tag-highway-bus_guideway,
1200 path.casing.tag-highway-service.tag-service,
1201 path.casing.tag-service.tag-service {
1205 .preset-icon .icon.highway-track {
1209 path.stroke.tag-highway-track,
1210 path.stroke.tag-track {
1213 path.casing.tag-highway-track,
1214 path.casing.tag-track {
1218 path.stroke.tag-highway-path,
1219 path.stroke.tag-highway-footway,
1220 path.stroke.tag-highway-cycleway,
1221 path.stroke.tag-highway-bridleway {
1222 stroke-linecap: butt;
1223 stroke-dasharray: 6, 6;
1225 .low-zoom path.stroke.tag-highway-path,
1226 .low-zoom path.stroke.tag-highway-footway,
1227 .low-zoom path.stroke.tag-highway-cycleway,
1228 .low-zoom path.stroke.tag-highway-bridleway {
1229 stroke-linecap: butt;
1230 stroke-dasharray: 3, 3;
1233 path.casing.tag-highway-path,
1234 path.casing.tag-highway-path.tag-unpaved {
1236 stroke-linecap: round;
1237 stroke-dasharray: none;
1239 path.casing.tag-highway-footway,
1240 path.casing.tag-highway-cycleway,
1241 path.casing.tag-highway-bridleway,
1242 path.casing.tag-highway-footway.tag-unpaved,
1243 path.casing.tag-highway-cycleway.tag-unpaved,
1244 path.casing.tag-highway-bridleway.tag-unpaved {
1246 stroke-linecap: round;
1247 stroke-dasharray: none;
1250 .preset-icon .icon.category-path,
1251 .preset-icon .icon.highway-path {
1255 path.stroke.tag-highway-path {
1259 .preset-icon .icon.tag-route-foot,
1260 .preset-icon .icon.tag-route-hiking,
1261 .preset-icon .icon.highway-footway {
1265 path.stroke.tag-highway-footway {
1269 .preset-icon .icon.highway-footway.tag-crossing {
1272 path.stroke.tag-highway-footway.tag-crossing {
1274 stroke-dasharray: 6, 4;
1276 .low-zoom path.stroke.tag-highway-footway.tag-crossing {
1277 stroke-dasharray: 3, 2;
1280 .preset-icon .icon.tag-route-bicycle,
1281 .preset-icon .icon.highway-cycleway {
1285 path.stroke.tag-highway-cycleway {
1289 .preset-icon .icon.tag-route-horse,
1290 .preset-icon .icon.highway-bridleway {
1294 path.stroke.tag-highway-bridleway {
1298 .preset-icon .icon.highway-steps {
1302 path.stroke.tag-highway-steps {
1304 stroke-linecap: butt;
1305 stroke-dasharray: 3, 3;
1307 .low-zoom path.stroke.tag-highway-steps {
1308 stroke-dasharray: 2, 2;
1310 path.casing.tag-highway-steps,
1311 path.casing.tag-highway-steps.tag-unpaved {
1313 stroke-linecap: round;
1314 stroke-dasharray: none;
1317 /* highway midpoints */
1319 g.midpoint.tag-highway-corridor .fill,
1320 g.midpoint.tag-highway-pedestrian .fill,
1321 g.midpoint.tag-highway-steps .fill,
1322 g.midpoint.tag-highway-path .fill,
1323 g.midpoint.tag-highway-footway .fill,
1324 g.midpoint.tag-highway-cycleway .fill,
1325 g.midpoint.tag-highway-bridleway .fill {
1334 path.stroke.area.tag-aeroway,
1335 .low-zoom path.stroke.area.tag-aeroway {
1337 stroke-dasharray: none;
1341 /* narrow aeroways (taxiway) */
1343 path.shadow.tag-aeroway-taxiway,
1344 path.shadow.tag-taxiway {
1347 path.casing.tag-aeroway-taxiway,
1348 path.casing.tag-taxiway {
1351 path.stroke.tag-aeroway-taxiway,
1352 path.stroke.tag-taxiway {
1356 .low-zoom path.shadow.tag-aeroway-taxiway,
1357 .low-zoom path.shadow.tag-taxiway {
1360 .low-zoom path.casing.tag-aeroway-taxiway,
1361 .low-zoom path.casing.tag-taxiway {
1364 .low-zoom path.stroke.tag-aeroway-taxiway,
1365 .low-zoom path.stroke.tag-taxiway {
1369 .preset-icon .icon.tag-aeroway-taxiway,
1370 .preset-icon .icon.tag-taxiway {
1374 path.stroke.tag-aeroway-taxiway,
1375 path.stroke.tag-taxiway {
1378 path.casing.tag-aeroway-taxiway,
1379 path.casing.tag-taxiway {
1384 /* wide aeroways (runway) */
1386 .preset-icon .icon.tag-aeroway-runway,
1387 .preset-icon .icon.tag-runway {
1391 path.shadow.tag-aeroway-runway {
1394 path.casing.tag-aeroway-runway {
1397 stroke-linecap: square;
1399 path.stroke.tag-aeroway-runway {
1402 stroke-linecap: butt;
1403 stroke-dasharray: 24, 48;
1406 .low-zoom path.shadow.tag-aeroway-runway {
1409 .low-zoom path.casing.tag-aeroway-runway {
1412 .low-zoom path.stroke.tag-aeroway-runway {
1414 stroke-dasharray: 12, 24;
1417 path.fill.tag-aeroway-runway {
1418 stroke: rgba(0, 0, 0, 0.6);
1419 fill: rgba(0, 0, 0, 0.6);
1424 .preset-icon .icon.tag-railway.other-line {
1428 .preset-icon .icon.tag-railway {
1435 path.stroke.area.tag-railway,
1436 .low-zoom path.stroke.area.tag-railway {
1439 stroke-dasharray: none;
1442 path.casing.area.tag-railway,
1443 .low-zoom path.casing.area.tag-railway {
1449 path.shadow.tag-railway {
1452 path.casing.tag-railway {
1455 path.stroke.tag-railway {
1457 stroke-linecap: butt;
1458 stroke-dasharray: 12,12;
1461 .low-zoom path.shadow.tag-railway {
1464 .low-zoom path.casing.tag-railway {
1467 .low-zoom path.stroke.tag-railway {
1469 stroke-dasharray: 6,6;
1475 path.casing.tag-railway {
1478 path.stroke.tag-railway {
1483 .preset-icon .icon.tag-railway-disused,
1484 .preset-icon .icon.tag-railway-abandoned {
1488 path.casing.tag-railway-abandoned {
1491 path.stroke.tag-railway-abandoned {
1496 .preset-icon .icon.tag-railway-subway {
1500 path.casing.tag-railway-subway {
1503 path.stroke.tag-railway-subway {
1508 /* railway platforms - like sidewalks */
1510 .preset-icon .icon.highway-footway.tag-railway-platform {
1514 path.shadow.tag-railway-platform {
1517 path.casing.tag-railway-platform {
1520 stroke-linecap: round;
1521 stroke-dasharray: none;
1523 path.stroke.tag-railway-platform {
1526 stroke-linecap: butt;
1527 stroke-dasharray: 6, 6;
1530 .low-zoom path.shadow.tag-railway-platform {
1533 .low-zoom path.casing.tag-railway-platform {
1536 .low-zoom path.stroke.tag-railway-platform {
1538 stroke-linecap: butt;
1539 stroke-dasharray: 3, 3;
1542 g.midpoint.tag-railway-platform .fill {
1550 .preset-icon .icon.tag-waterway.other-line {
1554 .preset-icon .icon.category-water,
1555 .preset-icon .icon.tag-route-ferry,
1556 .preset-icon .icon.tag-type-waterway,
1557 .preset-icon .icon.tag-waterway {
1562 path.fill.tag-waterway {
1563 stroke: rgba(119, 211, 222, 0.3);
1564 fill: rgba(119, 211, 222, 0.3);
1566 path.casing.tag-waterway {
1569 path.stroke.tag-waterway {
1574 /* narrow waterways (default) */
1576 path.shadow.tag-waterway {
1579 path.casing.tag-waterway {
1582 path.stroke.tag-waterway {
1586 .low-zoom path.shadow.tag-waterway {
1589 .low-zoom path.casing.tag-waterway {
1592 .low-zoom path.stroke.tag-waterway {
1597 /* wide waterways (river) */
1599 path.shadow.tag-waterway-river {
1602 path.casing.tag-waterway-river {
1605 path.stroke.tag-waterway-river {
1609 .low-zoom path.shadow.tag-waterway-river {
1612 .low-zoom path.casing.tag-waterway-river {
1615 .low-zoom path.stroke.tag-waterway-river {
1622 .preset-icon .icon.tag-waterway-ditch {
1625 path.stroke.tag-waterway-ditch {
1630 /* waterway areas */
1632 path.area.stroke.tag-waterway-dock,
1633 path.area.stroke.tag-waterway-boatyard,
1634 path.area.stroke.tag-waterway-fuel {
1638 path.area.casing.tag-waterway-dock,
1639 path.area.casing.tag-waterway-boatyard,
1640 path.area.casing.tag-waterway-fuel {
1643 path.area.fill.tag-waterway-dock,
1644 path.area.fill.tag-waterway-boatyard,
1645 path.area.fill.tag-waterway-fuel {
1646 stroke: rgba(255, 255, 255, 0.3);
1647 fill: rgba(255, 255, 255, 0.3);
1651 .preset-icon .icon.tag-man_made-pipeline,
1652 .preset-icon .icon.tag-power {
1657 path.stroke.tag-power {
1661 path.casing.tag-power {
1667 path.stroke.tag-boundary {
1670 stroke-linecap: butt;
1671 stroke-dasharray: 20, 5, 5, 5;
1673 path.casing.tag-boundary {
1678 path.casing.tag-boundary-protected_area,
1679 path.casing.tag-boundary-national_park {
1685 path.stroke.tag-barrier {
1688 stroke-linecap: round;
1689 stroke-dasharray: 15, 5, 1, 5;
1691 .low-zoom path.stroke.tag-barrier {
1693 stroke-linecap: butt;
1694 stroke-dasharray: 8, 2, 2, 2;
1699 path.casing.tag-bridge {
1700 stroke-opacity: 0.6;
1702 stroke-linecap: butt;
1703 stroke-dasharray: none;
1706 path.shadow.tag-bridge {
1709 path.casing.tag-bridge {
1712 .low-zoom path.shadow.tag-bridge {
1715 .low-zoom path.casing.tag-bridge {
1719 path.shadow.line.tag-railway.tag-bridge,
1720 path.shadow.tag-highway-living_street.tag-bridge,
1721 path.shadow.tag-highway-path.tag-bridge,
1722 path.shadow.tag-highway-corridor.tag-bridge,
1723 path.shadow.line.tag-highway-pedestrian.tag-bridge,
1724 path.shadow.tag-highway-service.tag-bridge,
1725 path.shadow.tag-highway-track.tag-bridge,
1726 path.shadow.tag-highway-steps.tag-bridge,
1727 path.shadow.tag-highway-footway.tag-bridge,
1728 path.shadow.tag-highway-cycleway.tag-bridge,
1729 path.shadow.tag-highway-bridleway.tag-bridge {
1732 path.casing.line.tag-railway.tag-bridge,
1733 path.casing.tag-highway-living_street.tag-bridge,
1734 path.casing.tag-highway-path.tag-bridge,
1735 path.casing.tag-highway-corridor.tag-bridge,
1736 path.casing.line.tag-highway-pedestrian.tag-bridge,
1737 path.casing.tag-highway-service.tag-bridge,
1738 path.casing.tag-highway-track.tag-bridge,
1739 path.casing.tag-highway-steps.tag-bridge,
1740 path.casing.tag-highway-footway.tag-bridge,
1741 path.casing.tag-highway-cycleway.tag-bridge,
1742 path.casing.tag-highway-bridleway.tag-bridge {
1746 .low-zoom path.shadow.line.tag-railway.tag-bridge,
1747 .low-zoom path.shadow.tag-highway-living_street.tag-bridge,
1748 .low-zoom path.shadow.tag-highway-path.tag-bridge,
1749 .low-zoom path.shadow.tag-highway-corridor.tag-bridge,
1750 .low-zoom path.shadow.line.tag-highway-pedestrian.tag-bridge,
1751 .low-zoom path.shadow.tag-highway-service.tag-bridge,
1752 .low-zoom path.shadow.tag-highway-track.tag-bridge,
1753 .low-zoom path.shadow.tag-highway-steps.tag-bridge,
1754 .low-zoom path.shadow.tag-highway-footway.tag-bridge,
1755 .low-zoom path.shadow.tag-highway-cycleway.tag-bridge,
1756 .low-zoom path.shadow.tag-highway-bridleway.tag-bridge {
1759 .low-zoom path.casing.line.tag-railway.tag-bridge,
1760 .low-zoom path.casing.tag-highway-living_street.tag-bridge,
1761 .low-zoom path.casing.tag-highway-path.tag-bridge,
1762 .low-zoom path.casing.tag-highway-corridor.tag-bridge,
1763 .low-zoom path.casing.line.tag-highway-pedestrian.tag-bridge,
1764 .low-zoom path.casing.tag-highway-service.tag-bridge,
1765 .low-zoom path.casing.tag-highway-track.tag-bridge,
1766 .low-zoom path.casing.tag-highway-steps.tag-bridge,
1767 .low-zoom path.casing.tag-highway-footway.tag-bridge,
1768 .low-zoom path.casing.tag-highway-cycleway.tag-bridge,
1769 .low-zoom path.casing.tag-highway-bridleway.tag-bridge {
1775 path.stroke.tag-tunnel {
1776 stroke-opacity: 0.3;
1778 path.casing.tag-tunnel {
1779 stroke-opacity: 0.5;
1780 stroke-linecap: butt;
1781 stroke-dasharray: none;
1785 /* embankments / cuttings */
1786 path.shadow.tag-embankment,
1787 path.shadow.tag-cutting {
1790 path.casing.tag-embankment,
1791 path.casing.tag-cutting {
1792 stroke-opacity: 0.5;
1795 stroke-dasharray: 2, 4;
1796 stroke-linecap: butt;
1799 .low-zoom path.shadow.tag-embankment,
1800 .low-zoom path.shadow.tag-cutting {
1803 .low-zoom path.casing.tag-embankment,
1804 .low-zoom path.casing.tag-cutting {
1809 /* Surface - unpaved */
1810 path.casing.tag-unpaved {
1812 stroke-linecap: butt;
1813 stroke-dasharray: 4, 3;
1815 .low-zoom path.casing.tag-unpaved {
1816 stroke-dasharray: 3, 2;
1818 path.casing.tag-bridge.tag-unpaved {
1820 stroke-dasharray: 4, 3;
1822 .low-zoom path.casing.tag-bridge.tag-unpaved {
1824 stroke-dasharray: 3, 2;
1828 /* Status (e.g. construction, proposed, abandoned) */
1829 path.stroke.tag-status,
1830 path.casing.tag-status {
1831 stroke-linecap: butt;
1832 stroke-dasharray: 7, 3;
1834 .low-zoom path.stroke.tag-status,
1835 .low-zoom path.casing.tag-status {
1836 stroke-dasharray: 5, 2;
1841 path.stroke.tag-building,
1842 path.stroke.tag-amenity-shelter {
1843 stroke: rgb(224, 110, 95);
1845 path.fill.tag-building,
1846 path.fill.tag-amenity-shelter {
1847 stroke: rgba(224, 110, 95, 0.3);
1848 fill: rgba(224, 110, 95, 0.3);
1850 .preset-icon-fill-area.tag-building,
1851 .preset-icon-fill-area.tag-amenity-shelter {
1852 border-color: rgb(224, 110, 95);
1853 background-color: rgba(224, 110, 95, 0.3);
1859 cursor: not-allowed !important;
1864 cursor: auto; /* Opera */
1865 cursor: url(<%= asset_path("iD/img/cursor-grab.png") %>) 9 9, auto; /* FF */
1868 .mode-browse .point,
1869 .mode-select .point {
1870 cursor: pointer; /* Opera */
1871 cursor: url(<%= asset_path("iD/img/cursor-select-point.png") %>), pointer; /* FF */
1874 .mode-select .vertex,
1875 .mode-browse .vertex {
1876 cursor: pointer; /* Opera */
1877 cursor: url(<%= asset_path("iD/img/cursor-select-vertex.png") %>), pointer; /* FF */
1881 .mode-select .line {
1882 cursor: pointer; /* Opera */
1883 cursor: url(<%= asset_path("iD/img/cursor-select-line.png") %>), pointer; /* FF */
1887 .mode-browse .area {
1888 cursor: pointer; /* Opera */
1889 cursor: url(<%= asset_path("iD/img/cursor-select-area.png") %>), pointer; /* FF */
1892 .mode-select .midpoint,
1893 .mode-browse .midpoint {
1894 cursor: pointer; /* Opera */
1895 cursor: url(<%= asset_path("iD/img/cursor-select-split.png") %>), pointer; /* FF */
1898 .mode-select .behavior-multiselect .point,
1899 .mode-select .behavior-multiselect .vertex,
1900 .mode-select .behavior-multiselect .line,
1901 .mode-select .behavior-multiselect .area {
1902 cursor: pointer; /* Opera */
1903 cursor: url(<%= asset_path("iD/img/cursor-select-add.png") %>), pointer; /* FF */
1906 .mode-select .behavior-multiselect .selected {
1907 cursor: pointer; /* Opera */
1908 cursor: url(<%= asset_path("iD/img/cursor-select-remove.png") %>), pointer; /* FF */
1911 .mode-draw-line #map,
1912 .mode-draw-area #map,
1913 .mode-add-line #map,
1914 .mode-add-area #map,
1915 .mode-drag-node #map {
1916 cursor: crosshair; /* Opera */
1917 cursor: url(<%= asset_path("iD/img/cursor-draw.png") %>) 9 9, crosshair; /* FF */
1920 .mode-draw-line .way.hover,
1921 .mode-draw-area .way.hover,
1922 .mode-add-line .way.hover,
1923 .mode-add-area .way.hover,
1924 .mode-drag-node .way.hover {
1925 cursor: crosshair; /* Opera */
1926 cursor: url(<%= asset_path("iD/img/cursor-draw-connect-line.png") %>) 9 9, crosshair; /* FF */
1929 .mode-draw-line .vertex.hover,
1930 .mode-draw-area .vertex.hover,
1931 .mode-add-line .vertex.hover,
1932 .mode-add-area .vertex.hover,
1933 .mode-drag-node .vertex.hover {
1934 cursor: crosshair; /* Opera */
1935 cursor: url(<%= asset_path("iD/img/cursor-draw-connect-vertex.png") %>) 9 9, crosshair; /* FF */
1938 .mode-add-point #map,
1939 .mode-browse.lasso #map,
1940 .mode-browse.lasso .way,
1941 .mode-browse.lasso .vertex,
1942 .mode-browse.lasso .midpoint,
1943 .mode-select.lasso #map,
1944 .mode-select.lasso .way,
1945 .mode-select.lasso .vertex,
1946 .mode-select.lasso .midpoint {
1947 cursor: crosshair; /* Opera */
1948 cursor: url(<%= asset_path("iD/img/cursor-draw.png") %>) 9 9, crosshair; /* FF */
1955 /* photo viewer div */
1962 background-color: #fff;
1965 #photoviewer button.thumb-hide {
1975 .photo-wrapper img {
1981 .photo-wrapper .photo-attribution {
1992 .photo-attribution a,
1993 .photo-attribution a:visited,
1994 .photo-attribution span {
1999 /* markers and sequences */
2001 pointer-events: visible;
2005 .viewfield-group.selected * {
2006 fill: #ffee00 !important;
2008 .viewfield-group.hovered * {
2009 fill: #eebb00 !important;
2012 .viewfield-group circle {
2015 stroke-opacity: 0.4;
2018 .viewfield-group.highlighted circle {
2020 stroke-opacity: 0.9;
2023 .viewfield-group.highlighted.hovered circle {
2026 stroke-opacity: 0.9;
2029 .viewfield-group.highlighted.selected circle {
2036 .viewfield-group .viewfield {
2041 .viewfield-group.highlighted .viewfield {
2045 .viewfield-group.highlighted.hovered .viewfield {
2049 .viewfield-group.highlighted.selected .viewfield {
2054 .viewfield-group.selected .viewfield-scale {
2055 transform: scale(2,2);
2061 stroke-opacity: 0.4;
2063 .sequence.highlighted,
2064 .sequence.selected {
2070 /* Mapillary Image Layer */
2071 .layer-mapillary-images {
2072 pointer-events: none;
2074 .layer-mapillary-images .viewfield-group * {
2077 .layer-mapillary-images .sequence {
2082 /* Mapillary Sign Layer */
2083 .layer-mapillary-signs {
2084 pointer-events: none;
2086 .layer-mapillary-signs .icon-sign .icon-sign-body {
2090 outline: 2px solid transparent;
2091 pointer-events: visible;
2096 .layer-mapillary-signs .icon-sign:hover .icon-sign-body {
2097 outline: 5px solid #eebb00;
2098 background-color: #eebb00;
2101 .layer-mapillary-signs .icon-sign.selected .icon-sign-body {
2102 outline: 5px solid #ffee00;
2103 background-color: #ffee00;
2108 /* OpenStreetCam Image Layer */
2109 .layer-openstreetcam-images {
2110 pointer-events: none;
2112 .layer-openstreetcam-images .viewfield-group * {
2115 .layer-openstreetcam-images .sequence {
2120 /* Mapillary viewer */
2121 #mly .domRenderer .TagSymbol {
2123 background-color: rgba(0,0,0,0.4);
2128 #mly .domRenderer .Attribution {
2129 /* we will roll our own to avoid async update issues like #4526 */
2133 .mly-wrapper .photo-attribution a:active,
2134 .mly-wrapper .photo-attribution a:hover {
2138 .mly-wrapper .mapillary-js-dom {
2142 /* OpenStreetCam viewer */
2145 background-color: #000;
2146 background-image: url(<%= asset_path("iD/img/loader-black.gif") %>);
2147 background-position: center;
2148 background-repeat: no-repeat;
2151 .osc-wrapper .photo-attribution a:active,
2152 .osc-wrapper .photo-attribution a:hover {
2156 .osc-controls-wrap {
2165 display: inline-block;
2169 .osc-controls button {
2172 background: rgba(0,0,0,0.65);
2176 .osc-controls button:first-of-type {
2177 border-radius: 3px 0 0 3px;
2179 .osc-controls button:last-of-type {
2180 border-radius: 0 3px 3px 0;
2182 .osc-controls button:hover,
2183 .osc-controls button:active,
2184 .osc-controls button:focus {
2185 background: rgba(0,0,0,0.85);
2190 transform-origin:0 0;
2191 -ms-transform-origin:0 0;
2192 -webkit-transform-origin:0 0;
2193 -moz-transform-origin:0 0;
2194 -o-transform-origin:0 0;
2198 .low-zoom.fill-wireframe path.stroke,
2199 .fill-wireframe path.stroke {
2200 stroke-width: 1 !important;
2201 stroke-opacity: 0.5 !important;
2202 stroke-dasharray: none !important;
2203 fill: none !important;
2206 .low-zoom.fill-wireframe path.shadow,
2207 .fill-wireframe path.shadow {
2211 .fill-wireframe path.shadow.related:not(.selected),
2212 .fill-wireframe path.shadow.hover:not(.selected) {
2213 stroke-opacity: 0.4;
2215 .fill-wireframe path.shadow.selected {
2216 stroke-opacity: 0.6;
2219 .fill-wireframe .point,
2220 .fill-wireframe .areaicon,
2221 .fill-wireframe .areaicon-halo,
2222 .fill-wireframe path.casing,
2223 .fill-wireframe path.fill,
2224 .fill-wireframe path.oneway {
2225 display: none !important;
2228 .fill-partial path.area.fill {
2231 pointer-events: none;
2233 .mode-browse .fill-partial path.area.fill,
2234 .mode-select .fill-partial path.area.fill {
2235 pointer-events: visibleStroke;
2238 ------------------------------------------------------- */
2241 Opera misbehaves when the window is resized vertically unless 100% width + height are
2242 applied to both html and body. https://gist.github.com/jfirebaugh/bd225bcfdd3a633850c4
2250 font: normal 12px/1.6667 "-apple-system", BlinkMacSystemFont,
2251 "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell",
2252 "Fira Sans", "Droid Sans", "Helvetica Neue", "Arial",
2259 -ms-user-select: none;
2264 vertical-align: middle;
2282 -webkit-filter: none !important;
2283 filter: none !important;
2284 -webkit-duration: 200ms;
2285 transition-duration: 200ms;
2289 -webkit-filter: grayscale(80%) brightness(80%);
2290 filter: grayscale(80%) brightness(80%);
2291 -webkit-duration: 200ms;
2292 transition-duration: 200ms;
2295 /* Firefox has its own ideas about fixed positioning when a css filter is active - #4348 */
2296 /* https://stackoverflow.com/questions/37949942/firefox-position-bug-by-parent-with-filter */
2297 @-moz-document url-prefix() {
2301 #content.inactive > #bar > .spacer.col4 {
2304 #content.active > #bar > .spacer.col4 {
2306 transition-duration: 200ms;
2307 transition-timing-function: step-end;
2312 /* Can't be display: none or the clippaths are ignored. */
2332 [dir='rtl'] .spinner {
2343 [dir='rtl'] .spinner img {
2346 -moz-transform: scaleX(-1);
2347 -o-transform: scaleX(-1);
2348 -webkit-transform: scaleX(-1);
2349 transform: scaleX(-1);
2351 -ms-filter: "FlipH";
2355 div, textarea, label, input, form, span, ul, li, ol, a, button, h1, h2, h3, h4, h5, p, img {
2356 -moz-box-sizing: border-box;
2357 -webkit-box-sizing: border-box;
2358 box-sizing: border-box;
2361 a, button, input, textarea {
2362 -webkit-tap-highlight-color:rgba(0,0,0,0);
2363 -webkit-touch-callout:none;
2368 .checkselect label:hover,
2377 margin-bottom: 20px;
2382 h4:last-child { margin-bottom: 0;}
2388 margin-bottom: 10px;
2394 padding-bottom: 10px;
2398 outline-color: transparent;
2399 outline-style: none;
2429 ------------------------------------------------------- */
2433 font:normal 12px/20px "-apple-system", BlinkMacSystemFont,
2434 "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell",
2435 "Fira Sans", "Droid Sans", "Helvetica Neue", "Arial",
2446 background-color: white;
2448 border:1px solid #ccc;
2449 padding:5px 20px 5px 10px;
2453 text-overflow: ellipsis;
2455 [dir='rtl'] textarea,
2456 [dir='rtl'] input[type=text],
2457 [dir='rtl'] input[type=search],
2458 [dir='rtl'] input[type=number],
2459 [dir='rtl'] input[type=url],
2460 [dir='rtl'] input[type=tel],
2461 [dir='rtl'] input[type=email] {
2462 padding:5px 10px 5px 20px;
2467 background-color: #F1F1F1;
2470 input[type="checkbox"],
2471 input[type="radio"] {
2478 [dir='rtl'] input[type="checkbox"],
2479 [dir='rtl'] input[type="radio"] {
2485 /* remove bottom border radius when combobox is open */
2486 .combobox + * textarea:focus,
2487 .combobox + * input:focus {
2488 border-bottom-left-radius: 0 !important;
2489 border-bottom-right-radius: 0 !important;
2495 background-color: white;
2496 border-collapse: collapse;
2505 table.tags, table.tags td, table.tags th {
2506 border: 1px solid #ccc;
2515 ------------------------------------------------------- */
2517 .col0 { float:left; width:04.1666%; }
2518 .col1 { float:left; width:08.3333%; }
2519 .col2 { float:left; width:16.6666%; }
2520 .col3 { float:left; width:25.0000%; max-width: 300px; }
2521 .col4 { float:left; width:33.3333%; max-width: 400px; }
2522 .col5 { float:left; width:41.6666%; max-width: 500px; }
2523 .col6 { float:left; width:50.0000%; max-width: 600px; }
2524 .col7 { float:left; width:58.3333%; }
2525 .col8 { float:left; width:66.6666%; }
2526 .col9 { float:left; width:75.0000%; }
2527 .col10 { float:left; width:83.3333%; }
2528 .col11 { float:left; width:91.6666%; }
2529 .col12 { float:left; width:100.0000%; }
2532 ------------------------------------------------------- */
2534 ul li { list-style: none;}
2536 .toggle-list > label {
2541 background-color: white;
2546 .toggle-list > label:hover {
2547 background-color: #ececec;
2550 .toggle-list > label:not(:last-child) {
2551 border-bottom: 1px solid #ccc;
2554 .toggle-list > label:last-child {
2555 border-radius: 0 0 3px 3px;
2558 .toggle-list label > span {
2561 white-space: nowrap;
2562 text-overflow: ellipsis;
2565 .toggle-list > label.active {
2566 background: #E8EBFF;
2571 ------------------------------------------------------- */
2578 background: #f6f6f6;
2583 background: #ececec;
2588 background:rgba(0,0,0,.5);
2593 background:rgba(0,0,0,.75);
2598 .fr { float: right;}
2616 box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.25);
2620 background: url(<%= asset_path("iD/img/loader_bg.gif") %>);
2621 background-size:5px 5px;
2657 display: inline-block;
2664 background-color: #ececec;
2669 background-color: rgba(255,255,255,.25);
2670 color: rgba(0,0,0,.4);
2675 background: #7092ff;
2685 background-color: #fafafa;
2687 [dir='rtl'] button.minor {
2691 button.minor .icon {
2695 button.minor:hover {
2696 background-color: #f1f1f1;
2700 display: inline-block;
2705 .button-wrap button:only-child {
2709 .button-wrap:last-of-type {
2712 [dir='rtl'] .button-wrap:last-of-type {
2714 padding-right: 10px;
2719 border-right: 1px solid rgba(0,0,0,.5);
2721 [dir='rtl'] .joined button {
2722 border-left: 1px solid rgba(0,0,0,.5);
2726 .fillL .joined button {
2727 border-right: 1px solid white;
2730 .joined button:first-child {
2731 border-radius: 4px 0 0 4px;
2733 [dir='rtl'] .joined button:first-child {
2734 border-radius: 0 4px 4px 0;
2737 .joined button:last-child {
2738 border-right-width: 0;
2739 border-radius: 0 4px 4px 0;
2741 [dir='rtl'] .joined button:last-child {
2742 border-radius: 4px 0 0 4px;
2746 background: #7092ff;
2750 button[disabled].action,
2751 button[disabled].action:hover {
2752 background: #cccccc;
2756 button.action:focus,
2757 button.action:hover {
2758 background: #597BE7;
2761 button.secondary-action {
2762 background: #ececec;
2765 button.secondary-action:focus,
2766 button.secondary-action:hover {
2767 background: #cccccc;
2770 button.save .count {
2774 button.save.has-count .count {
2787 margin-left: 9.3333%;
2789 [dir='rtl'] button.save.has-count .count {
2794 button.save.has-count .count::before {
2803 border-top: 6px solid transparent;
2804 border-bottom: 6px solid transparent;
2805 border-right-width: 6px;
2806 border-right-style: solid;
2807 border-right-color: inherit;
2809 [dir='rtl'] button.save.has-count .count::before {
2810 border-left: 6px solid rgba(255,255,255,.5);
2819 vertical-align: top;
2825 vertical-align: text-top;
2834 [dir='rtl'] .icon.pre-text {
2864 /* ToolBar / Persistent UI Elements
2865 ------------------------------------------------------- */
2878 [dir='rtl'] #bar .spacer,
2879 [dir='rtl'] #bar .button-wrap,
2880 [dir='rtl'] #bar .button-wrap button {
2885 /* Header for modals / panes
2886 ------------------------------------------------------- */
2889 border-bottom: 1px solid #ccc;
2897 white-space: nowrap;
2898 text-overflow: ellipsis;
2900 padding: 20px 20px 20px 40px;
2902 [dir='rtl'] .header h3 {
2904 padding: 20px 40px 20px 20px;
2920 .entity-editor-pane .header button.preset-close,
2921 .preset-list-pane .header button.preset-choose {
2926 [dir='rtl'] .entity-editor-pane .header button.preset-close,
2927 [dir='rtl'] .preset-list-pane .header button.preset-choose {
2932 .entity-editor-pane .header button.preset-choose {
2937 [dir='rtl'] .entity-editor-pane .header button.preset-choose {
2955 [dir='rtl'] .modal > button {
2963 padding: 5px 20px 5px 20px;
2964 border-top: 1px solid #ccc;
2965 background-color: #fafafa;
2970 .sidebar-component .body {
2980 ------------------------------------------------------- */
2982 .hide-toggle .icon.pre-text {
2983 vertical-align: text-top;
2988 [dir='rtl'] .hide-toggle .icon.pre-text {
2993 a:visited.hide-toggle,
2995 display: inline-block;
2998 padding-bottom: 5px;
3003 ------------------------------------------------------- */
3011 background: #f6f6f6;
3012 -ms-user-select: element;
3014 [dir='rtl'] #sidebar {
3018 .sidebar-component {
3044 .feature-list-pane .inspector-body {
3048 .preset-list-pane .inspector-body {
3052 .entity-editor-pane .inspector-body {
3056 .selection-list-pane .inspector-body {
3065 #sidebar .search-header .icon {
3070 pointer-events: none;
3072 [dir='rtl'] #sidebar .search-header .icon {
3077 #sidebar .search-header input {
3085 border-bottom-width: 1px;
3099 .feature-list-item {
3102 border-bottom: 1px solid #ccc;
3106 .feature-list-item {
3107 background-color: white;
3113 .feature-list-item:hover {
3114 background-color: #ececec;
3117 .feature-list-item button {
3118 background: transparent;
3121 .feature-list-item .label {
3124 white-space: nowrap;
3125 text-overflow: ellipsis;
3127 border-left: 1px solid rgba(0, 0, 0, .1);
3129 [dir='rtl'] .feature-list-item .label {
3133 .feature-list-item .label .icon {
3137 .feature-list-item .close {
3142 .feature-list-item .close .icon {
3146 .feature-list-item .entity-type {
3150 .feature-list-item:hover .entity-type {
3154 .feature-list-item .entity-name {
3155 font-weight: normal;
3159 [dir='rtl'] .feature-list-item .entity-name {
3161 padding-right: 10px;
3166 ------------------------------------------------------- */
3172 padding: 20px 20px 10px 20px;
3173 border-bottom: 1px solid #ccc;
3176 .preset-list-button-wrap {
3178 margin-bottom: 10px;
3182 .preset-list-button {
3186 border: 1px solid #ccc;
3189 .preset-list.filtered .preset-list-item:first-child .preset-list-button {
3190 background: #ececec;
3193 .preset-icon-fill-area {
3203 .preset-icon-fill-vertex {
3210 border: 1.5px solid #333;
3211 border-radius: 20px;
3212 background-color: #efefef;
3213 backface-visibility: hidden;
3216 [dir='rtl'] .preset-icon-fill-vertex,
3217 [dir='rtl'] .preset-icon-fill-area {
3222 .preset-icon-frame {
3230 [dir='rtl'] .preset-icon-frame {
3235 .preset-icon-frame .icon {
3247 .preset-icon-60 .icon {
3259 .preset-icon-44 .icon {
3271 .preset-icon-28 .icon {
3283 .preset-icon-24 .icon {
3288 [dir='rtl'] .preset-list-button-wrap .preset-icon {
3293 [dir='rtl'] .preset-list-button-wrap .preset-icon-28 {
3297 [dir='rtl'] .preset-list-button-wrap .preset-icon-24 {
3301 .preset-list-button .label {
3302 background-color: #f6f6f6;
3311 white-space: nowrap;
3312 text-overflow: ellipsis;
3314 border-left: 1px solid rgba(0, 0, 0, .1);
3315 border-radius: 0 3px 3px 0;
3317 [dir='rtl'] .preset-list-button .label {
3322 border-right: 1px solid rgba(0, 0, 0, .1);
3323 border-radius: 3px 0 0 3px;
3326 .preset-list-button:hover .label {
3327 background-color: #ececec;
3330 .preset-list-item button.tag-reference-button {
3332 border: 1px solid #ccc;
3333 border-radius: 0 3px 3px 0;
3338 background: #fafafa;
3340 [dir='rtl'] .preset-list-item button.tag-reference-button {
3343 border-radius: 3px 0 0 3px;
3346 .preset-list-item button.tag-reference-button:hover {
3347 background: #f1f1f1;
3350 .preset-list-item button.tag-reference-button .icon {
3354 .current .preset-list-button,
3355 .current .preset-list-button .label {
3356 background-color: #E8EBFF;
3359 .category .preset-list-button:after,
3360 .category .preset-list-button:before {
3364 left: -1px; right: -1px;
3365 border: 1px solid #ccc;
3366 border-bottom: none;
3367 border-radius: 6px 6px 0 0;
3371 .category .preset-list-button:before {
3375 .subgrid .preset-list {
3376 padding: 10px 10px 0 10px;
3380 width: -webkit-calc(100% + 20px);
3385 border: solid rgba(0, 0, 0, 0);
3387 border-bottom-color: #f1f1f1;
3391 margin-left: -webkit-calc(50% - 10px);
3396 /* preset form basics */
3400 padding-bottom: 10px;
3403 .preset-editor a.hide-toggle {
3404 margin: 0 20px 5px 20px;
3407 .preset-editor .form-fields-container {
3409 margin: 0 10px 10px 10px;
3413 .preset-editor .form-fields-container:empty {
3417 .entity-editor-pane .preset-list-item .preset-list-button-wrap {
3422 margin-bottom: 10px;
3424 -webkit-transition: margin-bottom 200ms;
3425 -moz-transition: margin-bottom 200ms;
3426 -o-transition: margin-bottom 200ms;
3427 transition: margin-bottom 200ms;
3431 .wrap-form-field:last-child .form-field {
3438 border: 1px solid #cfcfcf;
3439 padding: 5px 0 5px 10px;
3440 background: #f6f6f6;
3442 border-radius: 4px 4px 0 0;
3445 [dir='rtl'] .form-label {
3446 padding: 5px 10px 5px 0;
3449 .form-label-button-wrap {
3455 background: transparent;
3458 [dir='rtl'] .form-label-button-wrap {
3462 .form-label-button-wrap .tag-reference-button {
3463 border-radius: 0 3px 0 0;
3466 .form-label-button-wrap .icon {
3470 .form-label button {
3471 border-left: 1px solid #ccc;
3475 background: #f6f6f6;
3477 [dir='rtl'] .form-label button {
3479 border-right: 1px solid #ccc;
3480 border-radius: 4px 0 0 0;
3483 .form-label button:hover {
3484 background: #f1f1f1;
3487 .form-label .modified-icon,
3488 .form-field .remove-icon {
3492 .modified .form-label .modified-icon,
3493 .present .form-label .remove-icon {
3494 display: inline-block;
3497 .form-field > input,
3498 .form-field > textarea,
3499 .form-field .preset-input-wrap {
3500 border: 1px solid #ccc;
3503 border-radius: 0 0 4px 4px;
3507 .form-field textarea {
3512 border-bottom: 1px solid #ccc
3515 /* Preset form (hover mode) */
3517 .inspector-hover .checkselect label:last-of-type,
3518 .inspector-hover .preset-input-wrap .label,
3519 .inspector-hover .form-field-multicombo,
3520 .inspector-hover .structure-extras-wrap,
3521 .inspector-hover input,
3522 .inspector-hover textarea,
3523 .inspector-hover label {
3524 background: #ececec;
3528 .inspector-hover .form-field-multicombo .chips,
3529 .inspector-hover .checkselect label:last-of-type {
3533 .inspector-hover .form-field-multicombo .chips {
3535 border: 1px solid #ccc;
3538 /* hide and remove from layout */
3540 .inspector-hover label input[type="checkbox"],
3541 .inspector-hover label input[type="radio"],
3542 .inspector-hover .toggle-list label,
3543 .inspector-hover .toggle-list label span,
3544 .inspector-hover .inspector-inner .add-tag,
3545 .inspector-hover .inspector-inner .add-relation,
3546 .inspector-hover .form-field-multicombo .combobox-input,
3547 .inspector-hover .toggle-list label.remove .icon {
3551 opacity: 0 !important;
3557 /* hide but preserve in layout */
3558 .inspector-hover .entity-editor-pane button.minor,
3559 .inspector-hover .combobox-caret,
3560 .inspector-hover .entity-editor-pane .header button,
3561 .inspector-hover .spin-control,
3562 .inspector-hover .form-field-multicombo .chips .remove,
3563 .inspector-hover .hide-toggle:before,
3564 .inspector-hover .more-fields,
3565 .inspector-hover .form-label-button-wrap,
3566 .inspector-hover .tag-reference-button,
3567 .inspector-hover .view-on-osm {
3571 /* Styles for raw tag inspector on hover */
3572 .inspector-hover .tag-row .key-wrap,
3573 .inspector-hover .tag-row .form-field.input-wrap-position {
3577 .inspector-hover .tag-row:first-child input.value {
3578 border-top-right-radius: 4px;
3580 [dir='rtl'] .inspector-hover .tag-row:first-child input.value {
3581 border-top-right-radius: 0;
3582 border-top-left-radius: 4px;
3585 .inspector-hover .tag-row:last-child input.value {
3586 border-bottom-right-radius: 4px;
3588 [dir='rtl'] .inspector-hover .tag-row:last-child input.value {
3589 border-bottom-right-radius: 0;
3590 border-bottom-left-radius: 4px;
3593 .inspector-hover .tag-row:last-child input.key {
3594 border-bottom-left-radius: 4px;
3596 [dir='rtl'] .inspector-hover .tag-row:last-child input.key {
3597 border-bottom-left-radius: 0;
3598 border-bottom-right-radius: 4px;
3601 .inspector-hover .more-fields {
3603 margin-bottom: -10px;
3606 /* Unstyle button fields */
3607 .inspector-hover .toggle-list label.active,
3608 .inspector-hover .entity-editor-pane a.hide-toggle {
3610 background-color: transparent;
3616 .inspector-hover .toggle-list button.active {
3620 /* Add placeholder only on hover for radio buttons */
3621 .inspector-hover .toggle-list .placeholder {
3629 /* Hide placeholder for radio buttons if another is active, or not in hover state */
3630 .toggle-list label.active ~ .placeholder,
3631 .toggle-list .placeholder {
3640 /* adding additional preset fields */
3643 padding: 0 20px 20px 20px;
3646 .changeset-editor .more-fields {
3647 padding: 15px 20px 0 20px;
3650 .more-fields label {
3652 flex-flow: row nowrap;
3653 justify-content: space-between;
3654 align-items: center;
3657 .more-fields input {
3661 [dir='rtl'] .more-fields input {
3666 .preset-input-wrap .label {
3668 background: #F6F6F6;
3672 [dir='rtl'] .preset-input-wrap .col6 {
3677 /* preset form access */
3678 /* preset form cycleway */
3679 /* preset form structure extras */
3681 .structure-extras-wrap li,
3682 .form-field-cycleway .preset-input-wrap li,
3683 .form-field-access .preset-input-wrap li {
3684 border-bottom: 1px solid #ccc;
3686 .structure-extras-wrap li:last-child,
3687 .form-field-cycleway .preset-input-wrap li:last-child,
3688 .form-field-access .preset-input-wrap li:last-child {
3691 .structure-input-type-wrap input,
3692 .structure-input-layer-wrap input,
3693 .preset-input-cycleway-wrap input,
3694 .preset-input-access-wrap input {
3697 border-left-width: 1px;
3699 [dir='rtl'] .structure-input-type-wrap input,
3700 [dir='rtl'] .structure-input-layer-wrap input,
3701 [dir='rtl'] .preset-input-cycleway-wrap input,
3702 [dir='rtl'] .preset-input-access-wrap input {
3703 border-left-width: 0;
3704 border-right-width: 1px;
3707 .preset-input-wrap li:last-child input {
3708 border-bottom-right-radius: 4px;
3711 .structure-extras-wrap {
3715 .structure-extras-wrap ul {
3716 border: 1px solid #ccc;
3719 .structure-extras-wrap li:first-child span {
3720 border-top-left-radius: 4px;
3722 .structure-extras-wrap li:first-child input {
3723 border-top-right-radius: 4px;
3725 .structure-extras-wrap li:last-child span {
3726 border-bottom-left-radius: 4px;
3728 .structure-extras-wrap li:last-child input {
3729 border-bottom-right-radius: 4px;
3731 [dir='rtl'] .structure-extras-wrap li:first-child span {
3732 border-top-left-radius: 0;
3733 border-top-right-radius: 4px;
3735 [dir='rtl'] .structure-extras-wrap li:first-child input {
3736 border-top-right-radius: 0;
3737 border-top-left-radius: 4px;
3739 [dir='rtl'] .structure-extras-wrap li:last-child span {
3740 border-bottom-left-radius: 0;
3741 border-bottom-right-radius: 4px;
3743 [dir='rtl'] .structure-extras-wrap li:last-child input {
3744 border-bottom-right-radius: 0;
3745 border-bottom-left-radius: 4px;
3749 /* preset form multicombo */
3751 .form-field-multicombo {
3752 border: 1px solid #cfcfcf;
3754 padding: 5px 0 5px 10px;
3757 border-radius: 0 0 4px 4px;
3761 .form-field-multicombo:focus {
3765 .form-field-multicombo.active {
3766 border-bottom-left-radius: 0px;
3767 border-bottom-right-radius: 0px;
3770 .form-field-multicombo li {
3771 display: inline-flex;
3772 flex-flow: row nowrap;
3773 align-items: center;
3774 background-color: #eff2f7;
3775 border: 1px solid #ccd5e3;
3782 .form-field-multicombo a {
3783 font-family: Arial, Helvetica, sans-serif !important;
3784 font-size: 16px !important;
3787 margin: 1px 0 0 5px;
3793 .form-field-multicombo input {
3794 border: 1px solid #ddd;
3800 .form-field-multicombo .combobox-caret {
3801 margin: 3px 3px 3px -30px;
3804 .form-field-multicombo input:focus {
3805 border-radius: 4px !important;
3809 /* preset form numbers */
3811 input[type=number] {
3819 display: inline-block;
3821 margin-bottom: -11px;
3824 [dir='rtl'] .spin-control{
3826 margin-right: -64px;
3829 .spin-control button {
3835 border-left: 1px solid #ccc;
3837 background: rgba(0, 0, 0, 0);
3839 [dir='rtl'] .spin-control button{
3841 border-right: 1px solid #ccc;
3844 .spin-control button.decrement {
3845 border-bottom-right-radius: 3px;
3847 [dir='rtl'] .spin-control button.decrement {
3848 border-bottom-right-radius: 0;
3850 [dir='rtl'] .spin-control button.increment {
3851 border-bottom-left-radius: 3px;
3855 .spin-control button.decrement::after,
3856 .spin-control button.increment::after {
3858 height: 0; width: 0;
3860 left: 0; right: 0; bottom: 0; top: 0;
3864 .spin-control button.decrement::after {
3865 border-top: 5px solid #ccc;
3866 border-left: 5px solid transparent;
3867 border-right: 5px solid transparent;
3870 .spin-control button.increment::after {
3871 border-bottom: 5px solid #ccc;
3872 border-left: 5px solid transparent;
3873 border-right: 5px solid transparent;
3877 /* preset form checkbox */
3879 .checkselect label:last-of-type {
3886 .checkselect label:hover {
3887 background: #f1f1f1;
3894 .checkselect label:not(.set) input[type="checkbox"] {
3898 .checkselect .reverser.button {
3901 background-color: #eff2f7;
3902 border: 1px solid #ccd5e3;
3906 [dir='rtl'] .checkselect .reverser.button {
3909 .checkselect .reverser.button.hide {
3913 /* Preset form radio button */
3915 .toggle-list button.remove {
3916 border-radius: 0 0 3px 3px;
3919 .toggle-list button.remove .icon {
3924 .toggle-list button.remove::before {
3928 #preset-input-maxspeed {
3930 border-radius: 0 0 0 4px;
3933 [dir='rtl'] #preset-input-maxspeed {
3934 border-right: 1px solid #ccc;
3935 border-radius: 0 0 4px 0;
3938 .form-field .maxspeed-unit {
3939 border-radius: 0 0 4px 0;
3942 [dir='rtl'] .form-field .maxspeed-unit {
3944 border-radius: 0 0 0 4px;
3947 /* Wikipedia field */
3948 .form-field .wiki-lang {
3951 .form-field .wiki-title {
3954 [dir='rtl'] .form-field .wiki-title {
3956 padding-right: 10px;
3959 .form-field .wiki-title ~ .combobox-caret {
3962 [dir='rtl'] .form-field .wiki-title ~ .combobox-caret {
3967 /* Localized field */
3968 .form-field .localized-main {
3971 [dir='rtl'] .form-field .localized-main {
3973 padding-right: 10px;
3976 .form-field .button-input-action {
3981 border: 1px solid #ccc;
3982 border-top-width: 0;
3983 border-right-width: 0;
3984 border-radius: 0 0 4px 0;
3986 vertical-align: top;
3988 [dir='rtl'] .form-field .button-input-action {
3990 margin-right: -32px;
3991 border-right-width: 1px;
3992 border-radius: 0 0 0 4px;
3995 .form-field .localized-wrap {
3999 .form-field .localized-wrap .entry {
4004 .form-field .localized-wrap .entry::before {
4017 .form-field .localized-wrap .entry .localized-lang {
4019 border-top-width: 0;
4022 .form-field .localized-wrap .entry .localized-value {
4023 border-top-width: 0;
4024 border-radius: 0 0 4px 4px;
4027 .form-field .localized-wrap .form-label button {
4028 border-top-right-radius: 3px;
4031 /* Preset form address */
4037 [dir='rtl'] .addr-row input {
4038 border-right: 1px solid #ccc;
4042 .addr-row:first-of-type input {
4046 .addr-row input:first-of-type {
4049 [dir='rtl'] .addr-row input:first-of-type {
4057 .addr-row:last-of-type input:first-of-type {
4058 border-radius: 0 0 0 4px;
4060 [dir='rtl'] .addr-row:last-of-type input:first-of-type {
4061 border-radius: 0 0 4px 0;
4064 .addr-row:last-of-type input:last-of-type {
4065 border-radius: 0 0 4px 0;
4067 [dir='rtl'] .addr-row:last-of-type input:last-of-type {
4068 border-radius: 0 0 0 4px;
4071 /* Restrictions editor */
4073 .form-field-restrictions .preset-input-wrap {
4078 .form-field-restrictions svg.surface {
4083 .form-field-restrictions .restriction-help {
4090 background-color: rgba(255, 255, 255, .8);
4095 /* Changeset editor while comment text is empty */
4097 .form-field-comment:not(.present) #preset-input-comment {
4098 border-color: rgb(230, 100, 100);
4101 .form-field-comment:not(.present) .form-label {
4102 border-color: rgb(230, 100, 100);
4103 background: rgba(230, 100, 100, 0.2);
4106 .form-field-comment:not(.present) .form-label {
4109 .form-field-comment:not(.present) .form-label-button-wrap {
4110 border-color: rgb(230, 100, 100);
4113 .form-field-comment:not(.present) button {
4114 border-color: rgb(230, 100, 100);
4117 /* combobox dropdown */
4122 box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
4128 border: 1px solid #ccc;
4129 border-radius: 0 0 4px 4px;
4135 border-top:1px solid #ccc;
4136 text-overflow: ellipsis;
4137 white-space: nowrap;
4141 .combobox a.selected,
4143 background: #ececec;
4146 .combobox a:first-child {
4151 display: inline-block;
4156 vertical-align: top;
4158 [dir='rtl'] .combobox-caret {
4160 margin-right: -30px;
4163 .combobox-caret::after {
4165 height: 0; width: 0;
4167 left: 0; right: 0; bottom: 0; top: 0;
4169 border-top: 5px solid #ccc;
4170 border-left: 5px solid transparent;
4171 border-right: 5px solid transparent;
4174 /* Raw Tag Editor */
4187 .tag-row.readonly input.key,
4188 .tag-row.readonly input.value,
4189 .tag-row.readonly button.remove {
4191 background-color: #eee;
4192 cursor: not-allowed;
4199 border-bottom: 1px solid #ccc;
4200 border-left: 1px solid #ccc;
4202 [dir='rtl'] .tag-row input {
4204 border-right: 1px solid #ccc;
4208 .tag-row .input-wrap-position {
4213 [dir='rtl'] .tag-row .key-wrap,
4214 [dir='rtl'] .tag-row .input-wrap-position {
4218 .tag-row input.key {
4220 background-color: #f6f6f6;
4223 .tag-row input.value {
4224 border-right: 1px solid #ccc;
4226 [dir='rtl'] .tag-row input.value {
4227 border-left: 1px solid #ccc;
4230 .tag-row:first-child input.key {
4231 border-top: 1px solid #ccc;
4232 border-top-left-radius: 4px;
4234 [dir='rtl'] .tag-row:first-child input.key {
4235 border-top-left-radius: 0;
4236 border-top-right-radius: 4px;
4239 .tag-row:first-child input.value {
4240 border-top: 1px solid #ccc;
4247 border: 1px solid #ccc;
4248 border-top-width: 0;
4249 border-left-width: 0;
4251 [dir='rtl'] .tag-row button {
4253 border-left-width: 1px;
4254 border-right-width: 0;
4257 .tag-row button:hover {
4258 background: #f1f1f1;
4261 .tag-row button .icon {
4265 .tag-row:first-child button {
4266 border-top-width: 1px;
4269 .tag-row:first-child .tag-reference-button {
4270 border-top-right-radius: 4px;
4272 [dir='rtl'] .tag-row:first-child .tag-reference-button {
4273 border-top-left-radius: 4px;
4274 border-top-right-radius: 0;
4277 .tag-row:last-child .tag-reference-button {
4278 border-bottom-right-radius: 4px;
4280 [dir='rtl'] .tag-row:last-child .tag-reference-button {
4281 border-bottom-left-radius: 4px;
4282 border-bottom-right-radius: 0;
4285 .tag-row .tag-reference-button {
4290 background: #fafafa;
4292 [dir='rtl'] .tag-row .tag-reference-button {
4296 border-left-width: 1px;
4297 border-right-width: 0;
4300 /* Adding form fields to tag editor */
4302 .raw-tag-editor .add-tag {
4306 background: rgba(0,0,0,.5);
4307 border-radius: 0 0 4px 4px;
4310 .raw-tag-editor .add-tag:hover {
4311 background: rgba(0,0,0,.8);
4314 .raw-tag-editor .add-tag .label {
4320 button.minor.tag-reference-loading {
4321 background-color: #f5f5f5;
4324 .tag-reference-loading .icon {
4325 background-image: url(<%= asset_path("iD/img/mini-loader.gif") %>);
4326 background-position: 0 0;
4329 .tag-reference-body {
4334 .tag-reference-body .tag-reference-description {
4335 margin: 10px 5px 0 5px;
4338 .tag-reference-body a {
4342 .tag-reference-body .tag-reference-description:last-child,
4343 .tag-reference-body a:last-child {
4344 margin-bottom: 15px;
4347 .preset-list .tag-reference-body {
4352 .raw-tag-editor .tag-reference-body {
4357 .raw-tag-editor .tag-row.readonly .tag-reference-body {
4358 background: #f6f6f6;
4362 .raw-tag-editor .tag-row:not(:last-child) .tag-reference-body {
4363 border-bottom: 1px solid #ccc;
4366 .raw-tag-editor .tag-row.readonly .tag-reference-body.expanded {
4367 border-top: 1px solid #ccc;
4370 img.tag-reference-wiki-image {
4373 width: -webkit-calc(33.3333% - 10px);
4374 width: calc(33.3333% - 10px);
4377 margin: 10px 5px 15px 20px;
4381 /* Raw relation membership editor */
4383 .raw-member-editor .member-list li:first-child,
4384 .raw-membership-editor .member-list li:first-child {
4388 .raw-member-editor .member-row,
4389 .raw-membership-editor .member-row {
4393 .raw-member-editor .member-row .member-entity-name,
4394 .raw-membership-editor .member-row .member-entity-name {
4395 font-weight: normal;
4399 .member-incomplete .member-delete {
4403 .member-row-new .member-entity-input {
4404 border-radius: 4px 4px 0 0;
4405 border: 1px solid #cfcfcf;
4411 background: rgba(0,0,0,.5);
4416 .add-relation:hover {
4417 background: rgba(0,0,0,.8);
4420 /* hidden field to prevent user from tabbing out of the sidebar */
4425 border: 1px solid rgba(0,0,0,0);
4428 /* Fullscreen button */
4435 div.full-screen .tooltip {
4439 div.full-screen > button, div.full-screen > button.active {
4442 background: transparent;
4445 div.full-screen > button:hover {
4446 background-color: rgba(0, 0, 0, .8);
4458 [dir='rtl'] .map-controls {
4463 .map-control > button {
4465 background: rgba(0,0,0,.5);
4469 .map-control > button:hover {
4470 background: rgba(0, 0, 0, .8);
4473 .map-control > button.active,
4474 .map-control > button.active:hover {
4475 background: #7092ff;
4480 .zoombuttons button.zoom-in {
4481 border-radius: 4px 0 0 0;
4483 [dir='rtl'] .zoombuttons button.zoom-in {
4484 border-radius: 0 4px 0 0;
4487 /* Background / Map Data Settings */
4489 .map-data-control button {
4493 .background-control button {
4494 border-radius: 4px 0 0 0;
4496 [dir='rtl'] .background-control button {
4497 border-radius: 0 4px 0 0;
4501 .background-control {
4506 margin-bottom: 10px;
4507 white-space: nowrap;
4510 .layer-list, .controls-list {
4511 margin-bottom: 10px;
4512 border: 1px solid #ccc;
4519 background-color: white;
4527 .layer-list > li:first-child {
4528 border-radius: 3px 3px 0 0;
4531 .layer-list > li:last-child {
4532 border-radius: 0 0 3px 3px;
4535 .layer-list > li:only-child {
4539 .layer-list li:not(:last-child) {
4540 border-bottom: 1px solid #ccc;
4543 .layer-list li:hover {
4544 background-color: #ececec;
4547 .layer-list li.active,
4548 .layer-list li.switch {
4549 background: #e8ebff;
4552 .layer-list li.best > div.best {
4553 display: inline-block;
4558 [dir='rtl'] .list-item-gpx-browse svg {
4559 transform: rotateY(180deg);
4562 /* make sure tooltip fits in map-control panel */
4563 /* if too wide, placement will be wrong the first time it displays */
4564 .layer-list li.best .tooltip-inner {
4574 .layer-list label > span {
4577 white-space: nowrap;
4578 text-overflow: ellipsis;
4582 /* Background Display Options */
4584 .display-options-container {
4588 .display-control h5 {
4593 .display-control h5 span {
4597 .display-control .display-option-input {
4602 .display-control button {
4607 vertical-align: text-bottom;
4610 [dir='rtl'] .display-control button {
4616 /* Adjust Alignment controls */
4618 .background-control .nudge-container {
4619 border: 1px solid #ccc;
4624 .nudge-container .nudge-instructions {
4625 padding-bottom: 15px;
4628 .nudge-container .nudge-outer-rect {
4629 background-color: #eee;
4630 border: 1px solid #ccc;
4635 justify-content: center;
4636 align-items: center;
4642 .nudge-container .nudge-inner-rect {
4643 background-color: #fff;
4644 border: 1px solid #ccc;
4650 .nudge-container .nudge::after {
4655 left: 0; right: 0; top: 0; bottom: 0;
4660 .nudge-container input {
4667 .nudge-container input.error {
4668 border: 1px solid #ff7878;
4673 .nudge-container input:focus {
4674 background-color: transparent;
4677 .nudge-container button {
4682 background-color: transparent;
4685 .nudge-container button.right {
4690 .nudge-container button.left {
4695 .nudge-container button.top {
4700 .nudge-container button.bottom {
4704 .nudge-container button.nudge-reset {
4715 background-color: transparent;
4719 .background-control .nudge.right::after {
4720 border-top: 5px solid transparent;
4721 border-bottom: 5px solid transparent;
4722 border-left: 5px solid #222;
4725 .background-control .nudge.left::after {
4726 border-top: 5px solid transparent;
4727 border-bottom: 5px solid transparent;
4728 border-right: 5px solid #222;
4731 .background-control .nudge.top::after {
4732 border-right: 5px solid transparent;
4733 border-left: 5px solid transparent;
4734 border-bottom: 5px solid #222;
4737 .background-control .nudge.bottom::after {
4738 border-right: 5px solid transparent;
4739 border-left: 5px solid transparent;
4740 border-top: 5px solid #222;
4744 .map-data-control .layer-list button,
4745 .background-control .layer-list button {
4749 border-left: 1px solid #ccc;
4752 [dir='rtl'] .map-data-control .layer-list button,
4753 [dir='rtl'] .background-control .layer-list button {
4756 border-right: 1px solid #ccc;
4759 .map-data-control .layer-list button .icon,
4760 .background-control .layer-list button .icon {
4764 .map-data-control .layer-list button:first-of-type,
4765 .background-control .layer-list button:first-of-type {
4766 border-radius: 0 3px 3px 0;
4768 [dir='rtl'] .map-data-control .layer-list button:first-of-type,
4769 [dir='rtl'] .background-control .layer-list button:first-of-type {
4770 border-radius: 3px 0 0 3px;
4773 .map-data-control .map-overlay,
4774 .background-control .map-overlay,
4775 .help-control .map-overlay {
4781 .geolocate-control {
4782 margin-bottom: 10px;
4785 .geolocate-control button {
4786 border-radius: 0 0 0 4px;
4788 [dir='rtl'] .geolocate-control button {
4789 border-radius: 0 0 4px 0;
4792 .map-overlay.content {
4796 padding: 20px 50px 20px 20px;
4800 [dir='rtl'] .map-overlay.content {
4801 padding: 20px 20px 20px 50px;
4803 right: auto !important;
4806 .map-overlay.content > div {
4807 padding-bottom: 15px;
4812 .help-control button {
4813 border-radius: 0 0 0 4px;
4815 [dir='rtl'] .help-control button {
4816 border-radius: 0 0 4px 0;
4821 margin-bottom: 20px;
4824 .help-wrap .left-content .body p code {
4828 vertical-align: baseline;
4829 background-color: #f6f6f6;
4830 border: solid 1px #ccc;
4832 border-bottom-color: #bbb;
4834 box-shadow: inset 0 -1px 0 #bbb;
4837 .help-wrap .left-content .icon.pre-text {
4838 vertical-align: text-top;
4841 display: inline-block;
4848 margin-bottom: 20px;
4852 .help-wrap .toc li a,
4855 border: 1px solid #ccc;
4859 .help-wrap .toc li a {
4863 .help-wrap .toc li a:hover,
4864 .help-wrap .nav a:hover {
4865 background: #ececec;
4868 .help-wrap .toc li a.selected {
4869 background: #e8ebff;
4872 .help-wrap .toc li:first-child a {
4873 border-radius: 4px 4px 0 0;
4876 .help-wrap .toc li:nth-last-child(3) a {
4877 border-bottom: 1px solid #ccc;
4878 border-radius: 0 0 4px 4px
4881 .help-wrap .toc li.shortcuts a,
4882 .help-wrap .toc li.walkthrough a {
4885 border-bottom: 1px solid #ccc;
4889 .help-wrap .toc li.walkthrough a {
4903 .help-wrap .nav a:first-child {
4904 border-radius: 4px 0 0 4px;
4907 .help-wrap .nav a:last-child:not(:only-child) {
4908 border-radius: 0 4px 4px 0;
4912 .help-wrap .nav a:only-child {
4919 ------------------------------------------------------- */
4923 transform-origin: 0 0;
4924 -ms-transform-origin: 0 0;
4925 -webkit-transform-origin: 0 0;
4926 -moz-transform-origin: 0 0;
4927 -o-transform-origin: 0 0;
4929 -moz-user-select: none;
4930 -webkit-user-select: none;
4931 -ms-user-select: none;
4936 -webkit-transition: opacity 200ms linear;
4937 -moz-transition: opacity 200ms linear;
4938 transition: opacity 200ms linear;
4951 background: rgba(0, 0, 0, 0.7);
4961 transform-origin: 0 0;
4962 -ms-transform-origin: 0 0;
4963 -webkit-transform-origin: 0 0;
4964 -moz-transform-origin: 0 0;
4965 -o-transform-origin: 0 0;
4967 -moz-user-select: none;
4968 -webkit-user-select: none;
4969 -ms-user-select: none;
4974 outline: 1px solid red;
4979 ------------------------------------------------------- */
4986 -moz-user-select: none;
4987 -webkit-user-select: none;
4988 -ms-user-select: none;
4993 transform-origin: 0 0;
4994 -ms-transform-origin: 0 0;
4995 -webkit-transform-origin: 0 0;
4996 -moz-transform-origin: 0 0;
4997 -o-transform-origin: 0 0;
5000 #supersurface, .layer {
5009 ------------------------------------------------------- */
5018 border: #aaa 1px solid;
5019 box-shadow: 0 0 2em black;
5023 transform-origin:0 0;
5024 -ms-transform-origin:0 0;
5025 -webkit-transform-origin:0 0;
5026 -moz-transform-origin:0 0;
5027 -o-transform-origin:0 0;
5029 -moz-user-select: none;
5030 -webkit-user-select: none;
5031 -ms-user-select: none;
5035 .map-in-map-viewport,
5044 .map-in-map-viewport {
5055 stroke: rgba(255, 255, 0, 0.75);
5057 shape-rendering: crispEdges;
5060 .map-in-map-bbox.thick {
5066 ------------------------------------------------------- */
5068 stroke: currentColor;
5072 .map-in-map-data .debug {
5076 .nocolor { color: rgba(0, 0, 0, 0); }
5077 .red { color: rgba(255, 0, 0, 0.75); }
5078 .green { color: rgba(0, 255, 0, 0.75); }
5079 .blue { color: rgba(0, 0, 255, 0.75); }
5080 .yellow { color: rgba(255, 255, 0, 0.75); }
5081 .cyan { color: rgba(0, 255, 255, 0.75); }
5082 .magenta { color: rgba(255, 0, 255, 0.75); }
5083 .orange { color: rgba(255, 153, 0, 0.75); }
5084 .pink { color: rgba(255, 0, 153, 0.75); }
5085 .purple { color: rgba(153, 0, 255, 0.75); }
5093 pointer-events: none;
5096 .debug-legend-item {
5099 .debug-legend-item:before {
5105 ------------------------------------------------------- */
5108 flex-flow: row-reverse wrap-reverse;
5113 -ms-user-select: element;
5121 display: inline-block;
5133 margin: 2px 0 0 2px;
5135 border: 1px solid rgba(0, 0, 0, 0.75);
5136 padding-bottom: 10px;
5140 .panel-container .panel-title {
5141 border-radius: 4px 4px 0 0;
5148 .panel-title button.close {
5154 [dir='rtl'] .panel-title button.close {
5158 .panel-title button.close:hover {
5162 .panel-title button.close .icon {
5172 .panel-content li span {
5173 display: inline-block;
5174 white-space: nowrap;
5178 .panel-content .button {
5179 display: inline-block;
5180 background: #7092ff;
5187 [dir='rtl'] .panel-content .button {
5192 .panel-content-history .links a {
5195 [dir='rtl'] .panel-content-history .links a {
5200 .panel-content-history .view-history-on-osm {
5205 .panel-content-location .location-info {
5211 ------------------------------------------------------- */
5219 pointer-events: none;
5221 flex-direction: column;
5222 -ms-user-select: element;
5231 #attrib * { pointer-events: all; }
5233 .base-layer-attribution,
5234 .overlay-layer-attribution {
5240 .base-layer-attribution {
5244 .overlay-layer-attribution {
5248 .overlay-layer-attribution .attribution:not(:last-child):after {
5253 .attribution a:visited {
5257 .attribution a:hover {
5261 .attribution .source-image {
5263 vertical-align: middle;
5272 pointer-events: all;
5277 /* footer flash message */
5282 flex-flow: row nowrap;
5283 justify-content: space-between;
5293 flex-flow: row nowrap;
5294 align-items: center;
5306 .flash-icon circle {
5309 .flash-icon.disabled circle {
5311 fill: rgba(255,255,255,0.7);
5317 .flash-icon.disabled use {
5318 color: rgba(32,32,32,0.7);
5321 .flash-icon.operation use {
5325 .flash-icon.operation.disabled use {
5326 fill: rgba(32,32,32,0.7);
5327 color: rgba(40,40,40,0.7);
5337 flex-flow: row nowrap;
5338 justify-content: space-between;
5347 transition: bottom 75ms linear;
5348 -moz-transition: bottom 75ms linear;
5349 -webkit-transition: bottom 75ms linear;
5354 transition: bottom 75ms linear;
5355 -moz-transition: bottom 75ms linear;
5356 -webkit-transition: bottom 75ms linear;
5363 vertical-align: bottom;
5367 -moz-user-select: none;
5368 -webkit-user-select: none;
5369 -ms-user-select: none;
5382 [dir='rtl'] #scale {
5383 transform: scaleX(-1);
5391 font: 12px sans-serif;
5396 [dir='rtl'] #scale text {
5397 transform: scaleX(-1);
5404 shape-rendering: crispEdges;
5414 [dir='rtl'] #about-list {
5423 border-left: 1px solid rgba(255,255,255,.5);
5424 padding: 5px 0 5px 5px;
5427 [dir='rtl'] #about-list li {
5430 border-right: 1px solid rgba(255,255,255,.5);
5433 padding: 5px 5px 5px 0;
5437 #about-list li:last-child {
5442 [dir='rtl'] #about-list li:last-child {
5447 padding: 2px 4px 4px 4px;
5450 .source-switch a.live {
5451 background: #d32232;
5455 .feature-warning a {
5456 background: #1e90ff;
5457 padding: 2px 4px 4px 4px;
5462 .user-list a:not(:last-child):after {
5472 [dir='rtl'] .api-status {
5476 .api-status.offline,
5477 .api-status.readonly,
5485 .api-status-login:hover {
5490 display: inline-block;
5491 background: #d32232;
5494 border-radius: 11px;
5497 [dir='rtl'] .badge {
5504 [dir='rtl'] .badge a {
5509 vertical-align: baseline;
5517 ------------------------------------------------------- */
5521 display: inline-block;
5532 margin-bottom: 10px;
5535 .modal .description {
5551 background:rgba(0,0,0,0.5);
5553 left:0px; right:0px; top:0px; bottom:0px;
5558 border-bottom: 1px solid #ccc;
5561 .modal-section.header h3 {
5565 .modal-section.buttons {
5569 .modal-section.buttons .action {
5570 display: inline-block;
5573 vertical-align: middle;
5576 .save-section .buttons .action,
5577 .save-section .buttons .secondary-action {
5578 display: inline-block;
5581 vertical-align: middle;
5588 .modal-actions button,
5589 .save-success a.button {
5590 font-weight: normal;
5592 border-bottom: 1px solid #ccc;
5596 display: inline-block;
5599 .modal-actions button:hover
5600 .save-success a.button:hover {
5601 background-color: #ececec;
5611 .modal-actions > :first-child {
5612 border-right: 1px solid #ccc;
5615 .modal-section:last-child {
5620 ------------------------------------------------------- */
5621 .modal-actions .logo-restore {
5624 .modal-actions .logo-reset {
5629 ------------------------------------------------------- */
5631 padding: 15px 15px 0 15px;
5633 .save-success a.details {
5636 .save-success .button {
5639 .save-success .logo-osm {
5641 margin-bottom: 10px;
5643 .save-success a.button.social {
5645 border-bottom: none;
5647 .save-success .icon.social {
5654 ------------------------------------------------------- */
5655 .modal-actions .logo-walkthrough,
5656 .modal-actions .logo-features {
5662 ------------------------------------------------------- */
5668 .modal-shortcuts .modal-section:last-child {
5673 .modal-shortcuts .tabs-bar {
5675 padding-bottom: 5px;
5680 .modal-shortcuts .tab {
5681 display: inline-block;
5687 .modal-shortcuts .tab.active {
5690 .modal-shortcuts .tab:hover {
5692 background-color: #efefef;
5695 .modal-shortcuts .shortcut-tab {
5697 flex-flow: row wrap;
5700 .modal-shortcuts .shortcut-column {
5705 .modal-shortcuts .shortcut-tab-tools .shortcut-column {
5710 .modal-shortcuts td {
5711 padding-bottom: 5px;
5714 .modal-shortcuts .shortcut-section {
5715 padding: 20px 0 10px 0;
5718 .modal-shortcuts .shortcut-keys {
5719 padding-right: 10px;
5723 [dir='rtl'] .modal-shortcuts .shortcut-keys {
5724 padding-right: auto;
5729 .modal-shortcuts .shortcut-keys kbd {
5730 display: inline-block;
5737 vertical-align: baseline;
5738 background-color: #fcfcfc;
5739 border: solid 1px #ccc;
5741 border-bottom-color: #bbb;
5743 box-shadow: inset 0 -1px 0 #bbb;
5746 svg.mouseclick use.left {
5747 fill: rgba(112, 146, 255, 1);
5748 color: rgba(112, 146, 255, 0);
5750 svg.mouseclick use.right {
5751 fill: rgba(112, 146, 255, 0);
5752 color: rgba(112, 146, 255, 1);
5755 .modal-shortcuts .shortcut-keys .gesture {
5763 ------------------------------------------------------- */
5764 .mode-save a.user-info {
5765 display: inline-block;
5768 .mode-save .commit-form {
5772 .mode-save .user-info img {
5776 .mode-save h3 small.count {
5784 border-radius: 24px;
5786 background: #7092ff;
5790 .mode-save .field-warning {
5792 border: 1px solid #ccc;
5797 .mode-save .field-warning:empty {
5801 .mode-save .field-warning,
5802 .mode-save .changeset-info,
5803 .mode-save .request-review,
5804 .mode-save .commit-info {
5805 margin-bottom: 10px;
5808 .mode-save .request-review label {
5812 .mode-save .changeset-list {
5813 border: 1px solid #ccc;
5816 margin-bottom: 10px;
5819 .mode-save .warning-section {
5823 .mode-save .warning-section .changeset-list button {
5824 border-left: 1px solid #ccc;
5827 .mode-save .changeset-list li {
5829 border-top: 1px solid #ccc;
5834 .mode-save .changeset-list li:hover {
5835 background-color: #ececec;
5838 .mode-save .changeset-list .alert {
5842 .changeset-list li span.count {
5847 .mode-save .commit-section .changeset-list button {
5848 border-left: 1px solid #ccc;
5851 .changeset-list li span.count:before { content: '('; }
5853 .changeset-list li span.count:after { content: ')'; }
5855 .changeset-list li:first-child { border-top: 0;}
5857 /* Conflict resolution
5858 ------------------------------------------------------- */
5862 background-color: #ffffbb;
5863 border-bottom: 1px solid #ccc;
5866 .conflicts-buttons {
5870 .mode-save button.conflicts-button {
5874 .conflict-container {
5875 border-bottom: 1px solid #ccc;
5878 .conflict-description {
5884 padding: 20px 20px 0 20px;
5887 .conflict-detail-container {
5899 .conflict-nav-buttons {
5900 padding: 10px 0 20px 0;
5903 .conflict-nav-button {
5908 ------------------------------------------------------- */
5926 .notice .zoom-to:hover {
5927 background: rgba(0,0,0,0.6);
5930 .notice .zoom-to .icon {
5933 vertical-align: middle;
5936 [dir='rtl'] .notice .zoom-to .icon {
5942 ------------------------------------------------------- */
5979 display: inline-block;
5984 font-weight: normal;
5985 background-color: white;
5991 pointer-events: none;
5995 background: transparent;
6003 border-color: transparent;
6004 border-style: solid;
6008 border-left-color: white;
6009 border-width: 5px 0 5px 5px;
6028 border-color: transparent;
6029 border-style: solid;
6033 border-right-color: white;
6034 border-width: 5px 5px 5px 0;
6041 border-color: transparent;
6042 border-style: solid;
6045 .tooltip.top .tooltip-arrow {
6049 border-top-color: white;
6050 border-width: 5px 5px 0;
6053 .tooltip.right .tooltip-arrow {
6057 border-right-color: white;
6058 border-width: 5px 5px 5px 0;
6061 .tooltip.left .tooltip-arrow {
6065 border-left-color: white;
6066 border-width: 5px 0 5px 5px;
6069 .tooltip.bottom .tooltip-arrow {
6073 border-bottom-color: white;
6074 border-width: 0 5px 5px;
6079 background: #F6F6F6;
6081 margin: -10px -10px 10px -10px;
6082 border-radius: 3px 3px 0 0;
6087 background: #F6F6F6;
6089 margin: 10px -10px -10px -10px;
6090 border-radius: 0 0 3px 3px;
6093 .tooltip-inner .keyhint {
6098 /* Exceptions for tooltip layouts */
6100 /* make tooltips in panels dark */
6101 .map-overlay .tooltip.top .tooltip-arrow,
6102 .entity-editor-pane .tooltip.top .tooltip-arrow,
6103 .warning-section .tooltip.top .tooltip-arrow {
6104 border-top-color: #000;
6107 .map-overlay .tooltip.bottom .tooltip-arrow,
6108 .entity-editor-pane .tooltip.bottom .tooltip-arrow,
6109 .warning-section .tooltip.bottom .tooltip-arrow {
6110 border-bottom-color: #000;
6113 .map-overlay .tooltip.left .tooltip-arrow,
6114 .entity-editor-pane .tooltip.left .tooltip-arrow,
6115 .warning-section .tooltip.left .tooltip-arrow {
6116 border-left-color: #000;
6119 .map-overlay .tooltip.right .tooltip-arrow,
6120 .entity-editor-pane .tooltip.right .tooltip-arrow,
6121 .warning-section .tooltip.right .tooltip-arrow {
6122 border-right-color: #000;
6125 .map-overlay .tooltip-inner,
6126 .map-overlay .tooltip-heading,
6127 .map-overlay .keyhint-wrap,
6128 .entity-editor-pane .tooltip-inner,
6129 .warning-section .tooltip-inner {
6133 /* commit warning tooltips need to be closer */
6134 .warning-section .tooltip.top {
6138 /* Uncramp map-control tooltips */
6139 .map-control .tooltip {
6142 .map-control .shortcuts .tooltip {
6146 /* Move over tooltips that are near the edge of screen */
6147 .add-point .tooltip {
6148 left: 33.3333% !important;
6150 [dir='rtl'] .add-point .tooltip {
6151 left: inherit !important;
6154 .add-point .tooltip .tooltip-arrow {
6157 [dir='rtl'] .add-point .tooltip .tooltip-arrow {
6162 li:first-of-type .badge .tooltip,
6163 li.hide + li.version .badge .tooltip {
6164 left: auto !important;
6165 right: 5px !important;
6167 [dir='rtl'] li:first-of-type .badge .tooltip,
6168 [dir='rtl'] li.hide + li.version .badge .tooltip {
6169 left: 5px !important;
6170 right: auto !important;
6172 li:first-of-type .badge .tooltip .tooltip-arrow,
6173 li.hide + li.version .badge .tooltip .tooltip-arrow {
6174 right: 15px !important;
6175 left: auto !important;
6177 [dir='rtl'] li:first-of-type .badge .tooltip .tooltip-arrow,
6178 [dir='rtl'] li.hide + li.version .badge .tooltip .tooltip-arrow {
6179 left: 15px !important;
6180 right: auto !important;
6184 /* radial menu (deprecated) */
6186 .radial-menu-tooltip {
6193 .radial-menu-background {
6196 stroke-opacity: 0.5;
6199 .radial-menu-item circle {
6203 .radial-menu-item circle:active,
6204 .radial-menu-item circle:hover {
6208 .radial-menu-item.disabled circle {
6210 fill: rgba(255,255,255,.5);
6213 .radial-menu-item use {
6218 .radial-menu-item.disabled use {
6219 fill: rgba(32,32,32,.5);
6220 color: rgba(40,40,40,.5);
6225 .edit-menu-tooltip {
6231 .edit-menu-background {
6235 .edit-menu-item rect {
6240 .edit-menu-item rect:active,
6241 .edit-menu-item rect:hover {
6245 .edit-menu-item.disabled rect {
6246 cursor: not-allowed;
6248 .edit-menu-item.disabled rect:hover {
6249 cursor: not-allowed;
6253 .edit-menu-item use {
6256 pointer-events: none;
6259 .edit-menu-item.disabled use {
6260 fill: rgba(32,32,32,.2);
6261 color: rgba(40,40,40,.2);
6270 stroke-dasharray: 5, 5;
6274 ------------------------------------------------------- */
6276 @media only screen and (max-width: 840px) {
6277 /* override hide for save button */
6278 #bar .save .label { display: block;}
6281 @media screen and (max-width: 1200px) {
6282 .user-list { display: none !important; }
6285 @media screen and (max-width: 1000px) {
6286 #userLink { display: none !important; }
6289 @media screen and (max-width: 900px) {
6290 #scale-block { display: none !important; }
6295 ----------------------------------------------------- */
6297 ::-webkit-scrollbar {
6302 border-left: 1px solid #DDD;
6305 ::-webkit-scrollbar-track {
6306 background-clip: padding-box;
6307 border: solid transparent;
6311 ::-webkit-scrollbar-thumb {
6312 background-color: rgba(0,0,0,.2);
6313 background-clip: padding-box;
6314 border: solid transparent;
6315 border-width: 3px 3px 3px 4px;
6318 ::-webkit-scrollbar-track:hover,
6319 ::-webkit-scrollbar-track:active {
6320 background-color: rgba(0,0,0,.05);
6323 /* Intro walkthrough
6324 ----------------------------------------------------- */
6327 pointer-events: all;
6335 flex-direction: row;
6344 .intro-nav-wrap .intro-nav-wrap-logo {
6350 vertical-align: middle;
6353 .intro-nav-wrap .joined {
6356 flex-direction: row;
6359 .intro-nav-wrap button.chapter {
6364 .intro-nav-wrap button.chapter.next {
6365 animation-duration: 1s;
6366 animation-name: pulse;
6367 animation-iteration-count: infinite;
6368 animation-direction: alternate;
6371 from { background: #7092ff; }
6372 to { background: #c6d4ff; }
6375 .intro-nav-wrap button.chapter.finished {
6376 background: #8cd05f;
6379 .intro-nav-wrap button.chapter .status {
6383 .intro-nav-wrap button.chapter.finished .status {
6384 display: inline-block;
6387 .curtain-tooltip.tooltip.in {
6390 .curtain-tooltip.tooltip {
6393 [dir='rtl'] .curtain-tooltip.tooltip {
6397 .curtain-tooltip .tooltip-inner {
6403 .curtain-tooltip .tooltip-inner .button-section,
6404 .curtain-tooltip .tooltip-inner .instruction {
6407 border-top: 1px solid #ccc;
6410 margin-right: -20px;
6411 padding: 10px 20px 0 20px;
6414 [dir='rtl'] .curtain-tooltip .tooltip-inner .button-section button.col8 {
6418 .curtain-tooltip .tooltip-inner .instruction:only-child {
6424 .curtain-tooltip .tooltip-inner .icon.pre-text {
6425 vertical-align: text-top;
6428 display: inline-block;
6431 .curtain-tooltip.intro-points-describe ,
6432 .curtain-tooltip.intro-lines-name_road {
6433 top: 133px !important;
6436 .tooltip-illustration {
6442 [dir='rtl'] .tooltip-illustration {
6444 margin-right: -20px;
6447 .curtain-tooltip.intro-mouse {
6448 -moz-user-select: none;
6449 -webkit-user-select: none;
6450 -ms-user-select: none;
6454 .curtain-tooltip.intro-mouse .counter {
6465 .curtain-tooltip.intro-mouse .tooltip-illustration use {
6466 fill: rgba(112, 146, 255, 0);
6467 color: rgba(112, 146, 255, 0);
6469 .curtain-tooltip.intro-mouse.leftclick .tooltip-illustration use {
6470 fill: rgba(112, 146, 255, 1);
6472 .curtain-tooltip.intro-mouse.rightclick .tooltip-illustration use {
6473 color: rgba(112, 146, 255, 1);
6476 .huge-modal-button {
6482 .huge-modal-button .illustration {