]> git.openstreetmap.org Git - rails.git/blob - vendor/assets/iD/iD.css.erb
Selecting relations is now supported
[rails.git] / vendor / assets / iD / iD.css.erb
1 /* http://meyerweb.com/eric/tools/css/reset/
2    v2.0 | 20110126
3    License: none (public domain)
4 */
5
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,
11 b, u, i, center,
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 {
19         margin: 0;
20         padding: 0;
21         border: 0;
22         font-size: 100%;
23         font: inherit;
24         vertical-align: baseline;
25 }
26 /* HTML5 display-role reset for older browsers */
27 article, aside, details, figcaption, figure,
28 footer, header, hgroup, menu, nav, section {
29         display: block;
30 }
31 body {
32         line-height: 1;
33 }
34 ol, ul {
35         list-style: none;
36 }
37 blockquote, q {
38         quotes: none;
39 }
40 blockquote:before, blockquote:after,
41 q:before, q:after {
42         content: '';
43         content: none;
44 }
45 table {
46         border-collapse: collapse;
47         border-spacing: 0;
48 }
49 a { text-decoration: none;}
50 /*
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
54  */
55
56 button,
57 input,
58 select,
59 textarea {
60     font-family: inherit; /* 1 */
61     font-size: 100%; /* 2 */
62     margin: 0; /* 3 */
63     padding: 0;
64 }
65
66 /*
67  * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
68  * the UA stylesheet.
69  */
70
71 button,
72 input {
73     line-height: normal;
74 }
75
76 /* Hide default number spinner controls */
77 input[type="number"]::-webkit-inner-spin-button,
78 input[type="number"]::-webkit-outer-spin-button {
79 display: none;
80 }
81
82 /*
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
87  *    `input` and others.
88  */
89
90 button,
91 html input[type="button"], /* 1 */
92 input[type="reset"],
93 input[type="submit"] {
94     -webkit-appearance: button; /* 2 */
95     cursor: pointer; /* 3 */
96 }
97
98 /*
99  * Re-set default cursor for disabled elements.
100  */
101
102 button[disabled],
103 input[disabled] {
104     cursor: default;
105 }
106
107 /*
108  * 1. Addresses box sizing set to `content-box` in IE 8/9.
109  * 2. Removes excess padding in IE 8/9.
110  */
111
112 input[type="checkbox"],
113 input[type="radio"] {
114     box-sizing: border-box; /* 1 */
115     padding: 0; /* 2 */
116 }
117
118 /*
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).
122  */
123
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;
129 }
130
131 /*
132  * Removes inner padding and search cancel button in Safari 5 and Chrome
133  * on OS X.
134  */
135
136 input[type="search"]::-webkit-search-cancel-button,
137 input[type="search"]::-webkit-search-decoration {
138     -webkit-appearance: none;
139 }
140
141 /*
142  * Removes inner padding and border in Firefox 4+.
143  */
144
145 button::-moz-focus-inner,
146 input::-moz-focus-inner {
147     border: 0;
148     padding: 0;
149 }
150
151 /*
152 ** Markup free clearing
153 ** Details: http://www.positioniseverything.net/easyclearing.html
154 */
155 .cf:before,
156 .cf:after {
157     content: " "; /* 1 */
158     display: table; /* 2 */
159 }
160
161 .cf:after {
162     clear: both;
163 }
164 /* tiles */
165 img.tile {
166     position:absolute;
167     transform-origin:0 0;
168     -ms-transform-origin:0 0;
169     -webkit-transform-origin:0 0;
170     -moz-transform-origin:0 0;
171     -o-transform-origin:0 0;
172
173     opacity: 0;
174
175     -webkit-transition: opacity 200ms linear;
176     transition: opacity 200ms linear;
177     -moz-transition: opacity 200ms linear;
178 }
179
180 img.tile-loaded {
181     opacity: 1;
182 }
183
184 /* base styles */
185 path {
186     fill: none;
187 }
188
189 use {
190     pointer-events: none;
191 }
192
193 g.point .shadow,
194 g.vertex .shadow,
195 g.midpoint .shadow {
196     pointer-events: all;
197 }
198
199 path.shadow {
200     pointer-events: stroke;
201 }
202
203 .shadow {
204     -webkit-transition: 200ms;
205        -moz-transition: 200ms;
206             transition: 200ms;
207 }
208
209 /* points */
210
211 g.point .stroke {
212     stroke: #444;
213     stroke-width: 1;
214     fill: #fff;
215 }
216
217 g.point .shadow {
218     fill: none;
219     stroke: #f6634f;
220     stroke-width: 8;
221     stroke-opacity: 0;
222 }
223
224 .behavior-hover g.point.hover:not(.selected) .shadow {
225     stroke-opacity: 0.5;
226 }
227
228 g.point.selected .shadow {
229     stroke-opacity: 0.7;
230 }
231
232 g.point.active, g.point.active * {
233     pointer-events: none;
234 }
235
236 /* vertices and midpoints */
237
238 g.vertex .fill {
239     fill: none;
240 }
241
242 g.vertex .stroke {
243     stroke: #666;
244     stroke-width: 1;
245     fill: white;
246 }
247
248 g.vertex.shared .stroke {
249     fill: #aaa;
250 }
251
252 g.vertex.tagged .fill {
253     fill: #000;
254 }
255
256 g.midpoint .fill {
257     fill: #ddd;
258     stroke: black;
259     stroke-opacity: .5;
260     opacity: .5;
261 }
262
263 g.vertex .shadow,
264 g.midpoint .shadow {
265     fill: #f6634f;
266     fill-opacity: 0;
267 }
268
269 g.vertex.vertex-hover {
270     display: none;
271 }
272
273 .mode-draw-area .behavior-hover g.vertex.vertex-hover,
274 .mode-draw-line .behavior-hover g.vertex.vertex-hover,
275 .mode-add-area  .behavior-hover g.vertex.vertex-hover,
276 .mode-add-line  .behavior-hover g.vertex.vertex-hover,
277 .mode-add-point .behavior-hover g.vertex.vertex-hover,
278 .mode-drag-node .behavior-hover g.vertex.vertex-hover {
279     display: block;
280 }
281
282 .behavior-hover g.vertex.hover:not(.selected) .shadow,
283 .behavior-hover g.midpoint.hover:not(.selected) .shadow {
284     fill-opacity: 0.3;
285 }
286
287 g.vertex.selected .shadow {
288     fill-opacity: 0.5;
289 }
290
291 .mode-draw-area g.midpoint,
292 .mode-draw-line g.midpoint,
293 .mode-add-area g.midpoint,
294 .mode-add-line g.midpoint,
295 .mode-add-point g.midpoint,
296 .mode-drag-node g.midpoint {
297   display: none;
298 }
299
300 /* lines */
301
302 path.line {
303     stroke-linecap: round;
304     stroke-linejoin: bevel;
305 }
306
307 path.stroke {
308     stroke: black;
309     stroke-width: 4;
310 }
311
312 path.shadow {
313     stroke: #f6634f;
314     stroke-width: 10;
315     stroke-opacity: 0;
316 }
317
318 .behavior-hover path.shadow.hover:not(.selected) {
319     stroke-opacity: 0.3;
320 }
321
322 path.shadow.selected {
323     stroke-opacity: 0.7;
324 }
325
326 path.area.stroke,
327 path.line.member-type-multipolygon.stroke {
328     stroke-width:2;
329 }
330 path.area.stroke.selected,
331 path.line.member-type-multipolygon.stroke.selected {
332     stroke-width:4 !important;
333 }
334
335 path.area.stroke {
336     stroke:#fff;
337 }
338 path.area.fill {
339     fill:#fff;
340     fill-opacity:0.3;
341     fill-rule: evenodd;
342 }
343
344 path.line.stroke {
345     stroke: white;
346     stroke-width: 2;
347 }
348
349 path.stroke.tag-natural {
350     stroke: #b6e199;
351     stroke-width:1;
352 }
353 path.fill.tag-natural {
354     fill: #b6e199;
355 }
356
357 path.stroke.tag-natural-water {
358     stroke: #77d3de;
359 }
360 path.fill.tag-natural-water {
361     fill: #77d3de;
362 }
363
364 path.stroke.tag-building {
365     stroke: #e06e5f;
366     stroke-width: 1;
367 }
368 path.fill.tag-building {
369     fill: #e06e5f;
370 }
371
372 /* Landuse */
373
374
375 path.stroke.tag-landuse,
376 path.stroke.tag-natural-wood,
377 path.stroke.tag-natural-tree,
378 path.stroke.tag-natural-grassland,
379 path.stroke.tag-leisure-park {
380     stroke: #8cd05f;
381     stroke-width: 1;
382 }
383
384 path.stroke.tag-landuse-residential {
385     stroke: #e06e5f;
386 }
387
388 path.stroke.tag-landuse-retail,
389 path.stroke.tag-landuse-commercial {
390     stroke: #eab056;
391 }
392
393 path.stroke.tag-landuse-industrial {
394     stroke: #e4a4f5;
395 }
396
397 path.stroke.tag-landuse-basin,
398 path.stroke.tag-landuse-reservoir {
399     stroke: #77d3de;
400 }
401
402 path.stroke.tag-landuse-quarry {
403     stroke: #a6957b;
404 }
405
406 path.stroke.tag-landuse-residential,
407 path.stroke.tag-landuse-construction {
408     stroke: #e06e5f;
409 }
410
411 path.stroke.tag-landuse-meadow,
412 path.stroke.tag-natural-wetland {
413     stroke: #b6e199;
414 }
415
416 path.stroke.tag-natural-beach {
417     stroke: #ffff7e;
418 }
419
420 path.stroke.tag-natural-scrub {
421     stroke: #dbf08b;
422 }
423
424 path.fill.tag-landuse,
425 path.fill.tag-natural-wood,
426 path.fill.tag-natural-tree,
427 path.fill.tag-natural-grassland,
428 path.fill.tag-natural-grass,
429 path.fill.tag-leisure-park {
430     fill: #8cd05f;
431     fill-opacity: 0.2;
432 }
433
434 path.fill.tag-landuse-retail,
435 path.fill.tag-landuse-residential,
436 path.fill.tag-landuse-commercial,
437 path.fill.tag-landuse-industrial {
438     fill-opacity: 0.1;
439 }
440
441 path.fill.tag-natural-wetland,
442 path.fill.tag-natural-beach,
443 path.fill.tag-natural-scrub,
444 path.fill.tag-landuse-cemetery,
445 path.fill.tag-landuse-meadow,
446 path.fill.tag-landuse-farm,
447 path.fill.tag-landuse-farmland,
448 path.fill.tag-landuse-construction,
449 path.fill.tag-landuse-orchard {
450     /* background color is applied a further opacity later */
451     fill-opacity: 0.8;
452 }
453
454 .pattern-color-beach,
455 .pattern-color-scrub,
456 .pattern-color-meadow,
457 .pattern-color-wetland,
458 .pattern-color-cemetery,
459 .pattern-color-farm,
460 .pattern-color-farmland,
461 .pattern-color-construction,
462 .pattern-color-orchard {
463     fill-opacity: 0.2;
464 }
465
466 path.fill.tag-landuse-basin,
467 path.fill.tag-landuse-reservoir {
468     fill: #77d3de;
469 }
470
471 path.fill.tag-landuse-quarry {
472     fill: #a6957b;
473 }
474
475 path.fill.tag-landuse-residential {
476     fill: #e06e5f;
477 }
478
479 path.fill.tag-landuse-farm,
480 path.fill.tag-landuse-farmland {
481     fill: url(#pattern-farmland) #8cd05f;
482 }
483
484 .pattern-color-farm,
485 .pattern-color-farmland {
486     fill: url(#pattern-farmland) #8cd05f;
487 }
488
489 path.fill.tag-landuse-meadow {
490     fill: url(#pattern-meadow) #b6e199;
491 }
492 .pattern-color-meadow {
493     fill: #b6e199;
494 }
495
496 path.fill.tag-natural-wetland {
497     fill: url(#pattern-wetland) #b6e199;
498 }
499 .pattern-color-wetland {
500     fill: #B6E199;
501 }
502
503 path.fill.tag-natural-beach {
504     fill: url(#pattern-beach) #ffff7e;
505 }
506 .pattern-color-beach {
507     fill: #ffff7e;
508 }
509
510 path.fill.tag-natural-scrub {
511     fill: url(#pattern-scrub) #dbf08b;
512 }
513 .pattern-color-scrub {
514     fill: #dbf08b;
515 }
516
517 path.fill.tag-landuse-cemetery {
518     fill: url(#pattern-cemetery) #8cd05f;
519 }
520 .pattern-color-cemetery {
521     fill: #8cd05f
522 }
523
524 path.fill.tag-landuse-orchard {
525     fill: url(#pattern-orchard) #8cd05f;
526 }
527 .pattern-color-orchard {
528     fill: #8cd05f
529 }
530
531 path.fill.tag-landuse-construction {
532     fill: url(#pattern-construction) #e06e5f;
533 }
534 .pattern-color-construction {
535     fill: #e06e5f;
536 }
537
538 path.fill.tag-landuse-retail,
539 path.fill.tag-landuse-commercial {
540     fill: #eab056;
541 }
542
543 path.fill.tag-landuse-industrial {
544     fill: #e4a4f5;
545 }
546
547 path.stroke.tag-amenity-parking {
548     stroke: #aaa;
549     stroke-width: 1;
550 }
551 path.fill.tag-amenity-parking {
552     fill: #aaa;
553 }
554
555 path.fill.tag-place,
556 path.fill.tag-boundary {
557     fill: none;
558 }
559
560 /* highways */
561
562 path.shadow.tag-highway {
563     stroke-width:16;
564 }
565 path.casing.tag-highway {
566     stroke:#444;
567     stroke-width:10;
568 }
569 path.stroke.tag-highway {
570     stroke:#ccc;
571     stroke-width:8;
572 }
573
574 svg[data-zoom="16"] path.shadow.tag-highway {
575     stroke-width:12;
576 }
577 svg[data-zoom="16"] path.casing.tag-highway {
578     stroke-width:6;
579 }
580 svg[data-zoom="16"] path.stroke.tag-highway {
581     stroke-width:4;
582 }
583
584 path.stroke.tag-highway-motorway,
585 path.stroke.tag-highway-motorway_link,
586 path.stroke.tag-construction-motorway {
587     stroke:#58a9ed;
588 }
589
590 path.casing.tag-highway-motorway,
591 path.casing.tag-highway-motorway_link,
592 path.casing.tag-construction-motorway {
593     stroke:#2c5476;
594 }
595
596 path.stroke.tag-highway-trunk,
597 path.stroke.tag-highway-trunk_link,
598 path.stroke.tag-construction-trunk {
599     stroke:#8cd05f;
600 }
601 path.casing.tag-highway-trunk,
602 path.casing.tag-highway-trunk_link,
603 path.casing.tag-construction-trunk {
604     stroke:#46682f;
605 }
606
607 path.stroke.tag-highway-primary,
608 path.stroke.tag-highway-primary_link,
609 path.stroke.tag-construction-primary {
610     stroke:#e06d5f;
611 }
612 path.casing.tag-highway-primary,
613 path.casing.tag-highway-primary_link,
614 path.casing.tag-construction-primary {
615     stroke:#70372f;
616 }
617
618 path.stroke.tag-highway-secondary,
619 path.stroke.tag-highway-secondary_link,
620 path.stroke.tag-construction-secondary {
621     stroke:#eab056;
622 }
623 path.casing.tag-highway-secondary,
624 path.casing.tag-highway-secondary_link,
625 path.casing.tag-construction-secondary {
626     stroke:#75582b;
627 }
628
629 path.stroke.tag-highway-tertiary,
630 path.stroke.tag-highway-tertiary_link,
631 path.stroke.tag-construction-tertiary {
632     stroke:#ffff7e;
633 }
634 path.casing.tag-highway-tertiary,
635 path.casing.tag-highway-tertiary_link,
636 path.casing.tag-construction-tertiary {
637     stroke:#7f7f3f;
638 }
639
640 path.stroke.tag-highway-unclassified,
641 path.stroke.tag-construction-unclassified {
642     stroke:#eaeaea;
643 }
644 path.casing.tag-highway-unclassified,
645 path.casing.tag-construction-unclassified {
646     stroke:#444;
647 }
648
649 path.stroke.tag-highway-residential,
650 path.stroke.tag-construction-residential {
651     stroke:#fff;
652 }
653 path.casing.tag-highway-residential,
654 path.casing.tag-construction-residential {
655     stroke:#444;
656 }
657
658 path.stroke.tag-highway-living_street {
659     stroke:#ccc;
660     stroke-width:4;
661 }
662 path.casing.tag-highway-living_street {
663     stroke:#fff;
664     stroke-width:6;
665 }
666
667 path.stroke.line.tag-highway-pedestrian {
668     stroke:#fff;
669     stroke-dasharray: 2, 8;
670     stroke-width:4 !important;
671     shapeRendering: auto;
672 }
673 path.casing.line.tag-highway-pedestrian {
674     stroke:#8cd05f;
675     stroke-width:6 !important;
676 }
677 path.stroke.area.tag-highway-pedestrian {
678     stroke:#fff;
679     stroke-width: 2;
680 }
681 path.fill.area.tag-highway-pedestrian {
682     fill:#ccc;
683 }
684
685 path.stroke.tag-highway-service {
686     stroke:#fff;
687     stroke-width:4;
688 }
689 path.casing.tag-highway-service {
690     stroke:#666;
691     stroke-width:6;
692 }
693 svg[data-zoom="16"] path.stroke.tag-highway-service {
694     stroke-width:2;
695 }
696 svg[data-zoom="16"] path.casing.tag-highway-service {
697     stroke-width:4;
698 }
699
700 path.stroke.tag-highway-track {
701     stroke: #fff;
702     stroke-width: 4;
703 }
704 path.casing.tag-highway-track {
705     stroke: #996600;
706     stroke-width: 6;
707     stroke-linecap: butt;
708     stroke-dasharray: 6, 6;
709 }
710 svg[data-zoom="16"] path.stroke.tag-highway-track {
711     stroke-width:2;
712 }
713 svg[data-zoom="16"] path.casing.tag-highway-track {
714     stroke-width:4;
715 }
716
717 path.stroke.tag-highway-path {
718     stroke: #000;
719     stroke-width: 1 !important;
720     stroke-linecap: butt;
721     stroke-dasharray: 8, 4;
722 }
723 path.casing.tag-highway-path {
724     stroke-width: 1 !important;
725     stroke: #fff;
726 }
727
728 path.stroke.tag-highway-footway,
729 path.stroke.tag-highway-cycleway,
730 path.stroke.tag-highway-bridleway {
731     stroke-width: 4;
732     stroke-linecap: butt;
733     stroke-dasharray: 6, 6;
734 }
735 path.casing.tag-highway-footway,
736 path.casing.tag-highway-cycleway,
737 path.casing.tag-highway-bridleway {
738     stroke-width: 6;
739     stroke: #fff;
740 }
741
742 svg[data-zoom="16"] path.stroke.tag-highway-footway,
743 svg[data-zoom="16"] path.stroke.tag-highway-cycleway,
744 svg[data-zoom="16"] path.stroke.tag-highway-bridleway {
745     stroke-width: 2;
746 }
747 svg[data-zoom="16"] path.casing.tag-highway-footway,
748 svg[data-zoom="16"] path.casing.tag-highway-cycleway,
749 svg[data-zoom="16"] path.casing.tag-highway-bridleway {
750     stroke-width: 4;
751 }
752
753 path.stroke.tag-highway-footway {
754     stroke: #ae8681;
755 }
756 path.stroke.tag-highway-cycleway {
757     stroke: #58a9ed;
758 }
759 path.stroke.tag-highway-bridleway {
760     stroke: #e06d5f;
761 }
762
763 path.stroke.tag-highway-steps {
764     stroke: #81d25c;
765     stroke-width: 4;
766     stroke-linecap: butt;
767     stroke-dasharray: 3, 3;
768 }
769 path.casing.tag-highway-steps {
770     stroke-width: 6;
771     stroke: #fff;
772 }
773
774 /* aeroways */
775
776 path.stroke.tag-aeroway-taxiway {
777     stroke: #805C80;
778     stroke-width: 4;
779 }
780 path.shadow.tag-aeroway-runway {
781     stroke-width: 20;
782 }
783 path.stroke.tag-aeroway-runway {
784     stroke: #fff;
785     stroke-width: 2;
786     stroke-linecap: butt;
787     stroke-dasharray: 24, 48;
788 }
789 path.casing.tag-aeroway-runway {
790     stroke-width: 10;
791     stroke: #000;
792     stroke-linecap: square;
793 }
794 path.fill.tag-aeroway-runway {
795     fill: #000;
796     fill-opacity: 0.6;
797 }
798 path.stroke.tag-aeroway-apron {
799     stroke: #805C80;
800 }
801 path.fill.tag-aeroway-apron {
802     fill: #805C80;
803     fill-opacity: 0.2;
804 }
805
806
807 /* bridges */
808
809 path.casing.tag-bridge-yes {
810     stroke-width: 14;
811     stroke-opacity: 0.5;
812     stroke: #000;
813 }
814
815 path.casing.tag-highway-living_street.tag-bridge-yes,
816 path.casing.tag-highway-path.tag-bridge-yes {
817     stroke-width: 6;
818 }
819
820 path.casing.line.tag-highway-pedestrian,
821 path.casing.tag-highway-service.tag-bridge-yes,
822 path.casing.tag-highway-track.tag-bridge-yes,
823 path.casing.tag-highway-steps.tag-bridge-yes,
824 path.casing.tag-highway-footway.tag-bridge-yes,
825 path.casing.tag-highway-cycleway.tag-bridge-yes,
826 path.casing.tag-highway-bridleway.tag-bridge-yes {
827     stroke-width: 8;
828 }
829
830 path.shadow.tag-highway-residential.tag-bridge {
831     stroke-width:22;
832 }
833
834 path.shadow.tag-highway-living_street.tag-bridge-yes,
835 path.shadow.tag-highway-path.tag-bridge-yes,
836 path.shadow.line.tag-highway-pedestrian,
837 path.shadow.tag-highway-service.tag-bridge-yes,
838 path.shadow.tag-highway-track.tag-bridge-yes,
839 path.shadow.tag-highway-steps.tag-bridge-yes,
840 path.shadow.tag-highway-footway.tag-bridge-yes,
841 path.shadow.tag-highway-cycleway.tag-bridge-yes,
842 path.shadow.tag-highway-bridleway.tag-bridge-yes {
843     stroke-width: 16;
844 }
845
846 /* tunnels */
847
848 path.stroke.tag-highway.tag-tunnel-yes {
849     stroke-opacity: 0.3;
850 }
851
852 path.casing.tag-highway.tag-tunnel-yes {
853     stroke-opacity: 0.5;
854 }
855
856 path.stroke.tag-highway-construction,
857 path.casing.tag-highway-construction {
858     stroke-linecap: butt;
859     stroke-dasharray: 7, 7;
860 }
861
862 /* construction */
863
864 svg[data-zoom="16"] path.stroke.tag-highway-construction,
865 svg[data-zoom="16"] path.casing.tag-highway-construction {
866     stroke-linecap: butt;
867     stroke-dasharray: 5, 5;
868 }
869
870 /* railways */
871
872 .line.stroke.tag-railway {
873     stroke: #eee;
874     stroke-width: 2;
875     stroke-linecap: butt;
876     stroke-dasharray: 12,12;
877 }
878 .line.casing.tag-railway {
879     stroke: #555;
880     stroke-width: 4;
881 }
882
883 .line.stroke.tag-railway-abandoned {
884     stroke: #eee;
885 }
886 .line.casing.tag-railway-abandoned {
887     stroke: #999;
888 }
889
890 .line.stroke.tag-railway-subway {
891     stroke: #666;
892 }
893 .line.casing.tag-railway-subway {
894     stroke: #222;
895 }
896
897 .line.stroke.tag-railway-platform {
898     stroke: #999;
899     stroke-width: 4;
900     stroke-dasharray: none;
901 }
902 .line.casing.tag-railway-platform {
903     stroke: none;
904 }
905
906 /* waterways */
907
908 path.fill.tag-waterway {
909     fill: #77d3de;
910 }
911
912 path.stroke.tag-waterway {
913     stroke: #77d3de;
914     stroke-width: 2;
915 }
916 path.casing.tag-waterway {
917     stroke: #77d3de;
918     stroke-width: 4;
919 }
920
921 path.stroke.tag-waterway-river {
922     stroke-width: 4;
923 }
924 path.casing.tag-waterway-river {
925     stroke-width: 6;
926 }
927
928 svg[data-zoom="16"] path.stroke.tag-waterway-river {
929     stroke-width: 4;
930 }
931 svg[data-zoom="16"] path.casing.tag-waterway-river {
932     stroke-width: 6;
933 }
934
935 path.stroke.tag-waterway-ditch {
936     stroke: #6591ff;
937     stroke-width: 1;
938 }
939 path.casing.tag-waterway-ditch {
940     stroke: #6591ff;
941     stroke-width: 3;
942 }
943
944 /* power */
945
946 path.stroke.tag-power {
947     stroke: #939393;
948     stroke-width: 2;
949 }
950 path.casing.tag-power {
951     stroke: none;
952 }
953
954 /* boundary */
955
956 path.stroke.tag-boundary {
957     stroke: #fff;
958     stroke-width: 2;
959     stroke-linecap: butt;
960     stroke-dasharray: 20, 5, 5, 5;
961 }
962 path.casing.tag-boundary {
963     stroke: #82B5FE;
964     stroke-width: 6;
965 }
966
967 path.casing.tag-boundary-protected_area,
968 path.casing.tag-boundary-national_park {
969     stroke: #b0e298;
970 }
971
972
973 text {
974     font-size:10px;
975     pointer-events: none;
976     color: #222;
977     opacity: 1;
978 }
979
980 .oneway .textpath.tag-waterway {
981     fill: #002F35;
982 }
983
984 marker#oneway-marker path {
985     fill:#000;
986     opacity: .5;
987 }
988
989 path.oneway {
990     stroke-width: 6px;
991 }
992
993 /*
994  * Labels
995  */
996
997 text.arealabel-halo,
998 text.linelabel-halo,
999 text.pointlabel-halo,
1000 text.arealabel,
1001 text.linelabel,
1002 text.pointlabel {
1003     font-size: 12px;
1004     font-weight: bold;
1005     fill: #333;
1006     text-anchor: middle;
1007     pointer-events: none;
1008     -webkit-transition: opacity 100ms linear;
1009     transition: opacity 100ms linear;
1010     -moz-transition: opacity 100ms linear;
1011 }
1012
1013 .linelabel-halo .textpath,
1014 .linelabel .textpath {
1015   dominant-baseline: middle;
1016 }
1017
1018 /* Opera doesn't support dominant-baseline. See #715 */
1019 .opera .linelabel-halo .textpath,
1020 .opera .linelabel .textpath {
1021   baseline-shift: -33%;
1022   dominant-baseline: auto;
1023 }
1024
1025 .layer-halo text {
1026     opacity: 0.7;
1027     stroke: #fff;
1028     stroke-width: 5px;
1029     stroke-miterlimit: 1;
1030 }
1031
1032 text.point {
1033   font-size: 10px;
1034 }
1035
1036 /* Cursors */
1037
1038 #map:hover {
1039     cursor: auto; /* Opera */
1040     cursor: url(<%= asset_path("iD/img/cursor-grab.png") %>) 9 9, auto; /* FF */
1041     cursor: -webkit-image-set(
1042         url(<%= asset_path("iD/img/cursor-grab.png") %>) 1x,
1043         url(<%= asset_path("iD/img/cursor-grab2x.png") %>) 2x
1044         ) 9 9, auto;
1045 }
1046
1047 #map:active {
1048     cursor: pointer; /* Opera */
1049     cursor: url(<%= asset_path("iD/img/cursor-grabbing.png") %>) 9 9, auto; /* FF */
1050     cursor: -webkit-image-set(
1051         url(<%= asset_path("iD/img/cursor-grabbing.png") %>) 1x,
1052         url(<%= asset_path("iD/img/cursor-grabbing2x.png") %>) 2x
1053         ) 9 9, auto;
1054 }
1055
1056 .mode-browse .point,
1057 .mode-select .point {
1058     cursor: pointer; /* Opera */
1059     cursor: url(<%= asset_path("iD/img/cursor-select-point.png") %>), pointer; /* FF */
1060     cursor: -webkit-image-set(
1061         url(<%= asset_path("iD/img/cursor-select-point.png") %>) 1x,
1062         url(<%= asset_path("iD/img/cursor-select-point2x.png") %>) 2x
1063         ), pointer;
1064 }
1065
1066 .mode-select .vertex,
1067 .mode-browse .vertex {
1068     cursor: pointer; /* Opera */
1069     cursor: url(<%= asset_path("iD/img/cursor-select-vertex.png") %>), pointer; /* FF */
1070     cursor: -webkit-image-set(
1071         url(<%= asset_path("iD/img/cursor-select-vertex.png") %>) 1x,
1072         url(<%= asset_path("iD/img/cursor-select-vertex2x.png") %>) 2x
1073         ), pointer;
1074 }
1075
1076 .mode-browse .line,
1077 .mode-select .line {
1078     cursor: pointer; /* Opera */
1079     cursor: url(<%= asset_path("iD/img/cursor-select-line.png") %>), pointer; /* FF */
1080     cursor: -webkit-image-set(
1081         url(<%= asset_path("iD/img/cursor-select-line.png") %>) 1x,
1082         url(<%= asset_path("iD/img/cursor-select-line2x.png") %>) 2x
1083         ), pointer;
1084 }
1085
1086 .mode-select .area,
1087 .mode-browse .area {
1088     cursor: pointer; /* Opera */
1089     cursor: url(<%= asset_path("iD/img/cursor-select-area.png") %>), pointer; /* FF */
1090     cursor: -webkit-image-set(
1091         url(<%= asset_path("iD/img/cursor-select-area.png") %>) 1x,
1092         url(<%= asset_path("iD/img/cursor-select-area2x.png") %>) 2x
1093         ), pointer;
1094 }
1095
1096 .mode-select .midpoint,
1097 .mode-browse .midpoint {
1098     cursor: pointer; /* Opera */
1099     cursor: url(<%= asset_path("iD/img/cursor-select-split.png") %>), pointer; /* FF */
1100     cursor: -webkit-image-set(
1101         url(<%= asset_path("iD/img/cursor-select-split.png") %>) 1x,
1102         url(<%= asset_path("iD/img/cursor-select-split2x.png") %>) 2x
1103         ), pointer;
1104 }
1105
1106 .mode-select .behavior-multiselect .point,
1107 .mode-select .behavior-multiselect .vertex,
1108 .mode-select .behavior-multiselect .line,
1109 .mode-select .behavior-multiselect .area {
1110     cursor: pointer; /* Opera */
1111     cursor: url(<%= asset_path("iD/img/cursor-select-add.png") %>), pointer; /* FF */
1112     cursor: -webkit-image-set(
1113         url(<%= asset_path("iD/img/cursor-select-add.png") %>) 1x,
1114         url(<%= asset_path("iD/img/cursor-select-add2x.png") %>) 2x
1115         ), pointer;
1116 }
1117
1118 .mode-select .behavior-multiselect .selected {
1119     cursor: pointer; /* Opera */
1120     cursor: url(<%= asset_path("iD/img/cursor-select-remove.png") %>), pointer; /* FF */
1121     cursor: -webkit-image-set(
1122         url(<%= asset_path("iD/img/cursor-select-remove.png") %>) 1x,
1123         url(<%= asset_path("iD/img/cursor-select-remove2x.png") %>) 2x
1124         ), pointer;
1125 }
1126
1127 #map .point:active,
1128 #map .vertex:active,
1129 #map .line:active,
1130 #map .area:active,
1131 #map .midpoint:active,
1132 #map .mode-select .selected {
1133     cursor: pointer; /* Opera */
1134     cursor: url(<%= asset_path("iD/img/cursor-select-acting.png") %>), pointer; /* FF */
1135     cursor: -webkit-image-set(
1136         url(<%= asset_path("iD/img/cursor-select-acting.png") %>) 1x,
1137         url(<%= asset_path("iD/img/cursor-select-acting2x.png") %>) 2x
1138         ), pointer;
1139 }
1140
1141 .mode-draw-line #map:hover,
1142 .mode-draw-area #map:hover,
1143 .mode-add-line  #map:hover,
1144 .mode-add-area  #map:hover,
1145 .mode-drag-node #map:hover {
1146     cursor: crosshair; /* Opera */
1147     cursor: url(<%= asset_path("iD/img/cursor-draw.png") %>) 9 9, crosshair; /* FF */
1148     cursor: -webkit-image-set(
1149         url(<%= asset_path("iD/img/cursor-draw.png") %>) 1x,
1150         url(<%= asset_path("iD/img/cursor-draw2x.png") %>) 2x
1151         ) 9 9, crosshair;
1152 }
1153
1154 .mode-draw-line .behavior-hover .way,
1155 .mode-draw-area .behavior-hover .way,
1156 .mode-add-line  .behavior-hover .way,
1157 .mode-add-area  .behavior-hover .way,
1158 .mode-drag-node .behavior-hover .way {
1159     cursor: crosshair; /* Opera */
1160     cursor: url(<%= asset_path("iD/img/cursor-draw-connect-line.png") %>) 9 9, crosshair; /* FF */
1161     cursor: -webkit-image-set(
1162         url(<%= asset_path("iD/img/cursor-draw-connect-line.png") %>) 1x,
1163         url(<%= asset_path("iD/img/cursor-draw-connect-line2x.png") %>) 2x
1164         ) 9 9, crosshair;
1165 }
1166
1167 .mode-draw-line .behavior-hover .vertex,
1168 .mode-draw-area .behavior-hover .vertex,
1169 .mode-add-line  .behavior-hover .vertex,
1170 .mode-add-area  .behavior-hover .vertex,
1171 .mode-drag-node .behavior-hover .vertex {
1172     cursor: crosshair; /* Opera */
1173     cursor: url(<%= asset_path("iD/img/cursor-draw-connect-vertex.png") %>) 9 9, crosshair; /* FF */
1174     cursor: -webkit-image-set(
1175         url(<%= asset_path("iD/img/cursor-draw-connect-vertex.png") %>) 1x,
1176         url(<%= asset_path("iD/img/cursor-draw-connect-vertex2x.png") %>) 2x
1177         ) 9 9, crosshair;
1178 }
1179
1180 .mode-add-point #map:hover,
1181 .lasso #map:hover,
1182 .lasso .way,
1183 .lasso .vertex {
1184     cursor: crosshair; /* Opera */
1185     cursor: url(<%= asset_path("iD/img/cursor-draw.png") %>) 9 9, crosshair; /* FF */
1186     cursor: -webkit-image-set(
1187         url(<%= asset_path("iD/img/cursor-draw.png") %>) 1x,
1188         url(<%= asset_path("iD/img/cursor-draw2x.png") %>) 2x
1189         ) 9 9, crosshair;
1190 }
1191
1192 .lasso #map {
1193     pointer-events: visibleStroke;
1194 }
1195
1196 /* GPX Paths */
1197 path.gpx {
1198     stroke:#6AFF25;
1199     stroke-width:2;
1200     fill:transparent;
1201     pointer-events: none;
1202 }
1203
1204 /* Modes */
1205
1206 .mode-draw-line .vertex.active,
1207 .mode-draw-area .vertex.active,
1208 .mode-drag-node .vertex.active {
1209     display: none;
1210 }
1211
1212 .mode-draw-line .way.active,
1213 .mode-draw-area .way.active,
1214 .mode-drag-node .active {
1215     pointer-events: none;
1216 }
1217
1218 /* Ensure drawing doesn't interact with area fills. */
1219 .mode-add-point .area.fill,
1220 .mode-draw-line .area.fill,
1221 .mode-draw-area .area.fill,
1222 .mode-add-line .area.fill,
1223 .mode-add-area .area.fill,
1224 .mode-drag-node .area.fill {
1225     pointer-events: none;
1226 }
1227 /* Basics
1228 ------------------------------------------------------- */
1229
1230 body {
1231     font:normal 12px/1.6666 'Helvetica Neue', Arial, sans-serif;
1232     margin:0;
1233     padding:0;
1234     min-width: 768px;
1235     color:#333;
1236     overflow: hidden;
1237     -webkit-font-smoothing: subpixel-antialiased;
1238 }
1239
1240 .unsupported {
1241     text-align: center;
1242     vertical-align: middle;
1243     padding-top: 100px;
1244     font-size: 15px;
1245 }
1246
1247 .id-container {
1248     height: 100%;
1249     width: 100%;
1250     position: fixed;
1251     min-width: 768px;
1252 }
1253
1254 .limiter {
1255     position: relative;
1256     max-width: 1200px;
1257 }
1258
1259 .spinner {
1260     opacity: .5;
1261     z-index: 2;
1262     position: relative;
1263 }
1264
1265 .spinner img {
1266     position: fixed;
1267     height: 40px;
1268     width: 40px;
1269     right: 10px;
1270     top: 10px;
1271     margin: auto;
1272     border-radius: 4px;
1273     background: black;
1274 }
1275
1276 div, textarea, label, input, form, span, ul, li, ol, a, button, h1, h2, h3, h4, h5, p, img {
1277     -moz-box-sizing: border-box;
1278     -webkit-box-sizing: border-box;
1279     box-sizing: border-box;
1280 }
1281
1282 a, button, input, textarea {
1283     -webkit-tap-highlight-color:rgba(0,0,0,0);
1284     -webkit-touch-callout:none;
1285 }
1286
1287 a,
1288 button,
1289 .checkselect label:hover,
1290 .opacity-options li,
1291 .radial-menu-item {
1292     cursor: pointer; /* Opera */
1293     cursor: url(<%= asset_path("iD/img/cursor-pointer.png") %>) 6 1, pointer; /* FF */
1294     cursor: -webkit-image-set(
1295         url(<%= asset_path("iD/img/cursor-pointer.png") %>) 1x,
1296         url(<%= asset_path("iD/img/cursor-pointer2x.png") %>) 2x
1297         ) 6 1, pointer;
1298 }
1299
1300 h2 {
1301     font-size: 25px;
1302     line-height: 1.25;
1303     font-weight: bold;
1304     margin-bottom: 20px;
1305 }
1306
1307 h3:last-child,
1308 h2:last-child,
1309 h4:last-child { margin-bottom: 0;}
1310
1311 h3 {
1312     font-size: 16px;
1313     line-height: 1.25;
1314     font-weight: bold;
1315     margin-bottom: 10px;
1316 }
1317
1318 h4, h5 {
1319     font-size: 12px;
1320     font-weight: bold;
1321     padding-bottom: 10px;
1322 }
1323
1324 :focus {
1325     outline-color: transparent;
1326     outline-style: none;
1327 }
1328
1329 p {
1330     font-size: 12px;
1331     margin:0;
1332     padding:0;
1333 }
1334
1335 p:last-child {
1336     padding-bottom: 0;
1337 }
1338
1339 em {
1340     font-style: italic;
1341 }
1342
1343 strong {
1344     font-weight: bold;
1345 }
1346
1347 a:visited, a {
1348     color: #7092ff;
1349     -webkit-transition: all 100ms;
1350        -moz-transition: all 100ms;
1351          -o-transition: all 100ms;
1352             transition: all 100ms;
1353 }
1354
1355 a:hover {
1356     color:#597be7;
1357 }
1358
1359 /* Forms
1360 ------------------------------------------------------- */
1361
1362 textarea  {
1363     resize: vertical;
1364     font:normal 12px/20px 'Helvetica Neue', Arial, sans-serif;
1365 }
1366
1367 textarea,
1368 input[type=text],
1369 input[type=search],
1370 input[type=number],
1371 input[type=url],
1372 input[type=tel],
1373 input[type=email] {
1374     background-color: white;
1375     border:1px solid #ccc;
1376     padding:5px 10px;
1377     height:30px;
1378     width: 100%;
1379     border-radius:4px;
1380     -webkit-transition: all 100ms;
1381        -moz-transition: all 100ms;
1382        -o-transition: all 100ms;
1383             transition: all 100ms;
1384 }
1385
1386 textarea:focus,
1387 input:focus {
1388     background-color: #F1F1F1;
1389 }
1390
1391 input.major {
1392     width: 100%;
1393     padding:5px 10px;
1394     font-size: 18px;
1395     font-weight: bold;
1396     height:60px;
1397 }
1398
1399 /* remove bottom border radius when combox is open */
1400 .combobox + div textarea:focus,
1401 .combobox + div input:focus {
1402     border-bottom-left-radius: 0;
1403     border-bottom-right-radius: 0;
1404 }
1405
1406 /* tables */
1407
1408 table {
1409     background-color: white;
1410     border-collapse: collapse;
1411     width:100%;
1412     border-spacing:0;
1413 }
1414
1415 table th {
1416     text-align:left;
1417 }
1418
1419 table.tags, table.tags td, table.tags th {
1420     border: 1px solid #CCC;
1421     padding: 4px;
1422 }
1423
1424 /* Grid
1425 ------------------------------------------------------- */
1426
1427 .col0    { float:left; width:04.1666%; }
1428 .col1    { float:left; width:08.3333%; }
1429 .col2    { float:left; width:16.6666%; }
1430 .col3    { float:left; width:25.0000%; max-width: 300px; }
1431 .col4    { float:left; width:33.3333%; max-width: 400px; }
1432 .col5    { float:left; width:41.6666%; max-width: 500px; }
1433 .col6    { float:left; width:50.0000%; max-width: 600px; }
1434 .col7    { float:left; width:58.3333%; }
1435 .col8    { float:left; width:66.6666%; }
1436 .col9    { float:left; width:75.0000%; }
1437 .col10   { float:left; width:83.3333%; }
1438 .col11   { float:left; width:91.6666%; }
1439 .col12   { float:left; width:100.0000%; }
1440
1441 /* UI Lists
1442 ------------------------------------------------------- */
1443
1444 ul li { list-style: none;}
1445
1446 ul.toggle-list {
1447     border-radius: 4px;
1448     border: 1px solid #CCC;
1449     margin-bottom: 10px;
1450 }
1451
1452 ul.toggle-list li a {
1453     position: relative;
1454     padding: 5px 10px 5px 25px;
1455     display:block;
1456     border-top: 1px solid #ccc;
1457 }
1458
1459 ul.toggle-list li:first-child a {
1460     border-top: 0;
1461     border-radius: 3px 3px 0 0;
1462 }
1463
1464 ul.toggle-list li:last-child a {
1465     border-radius: 0 0 3px 3px;
1466 }
1467
1468 ul.toggle-list li:only-child a {
1469     border-radius: 3px;
1470 }
1471
1472 ul.toggle-list li a:hover { background-color: #ececec;}
1473
1474 ul.toggle-list li a.selected { background-color: #e8ebff;}
1475
1476 ul.link-list li {
1477     float: right;
1478     border-left: 1px solid rgba(255,255,255,.5);
1479     padding: 5px 0 5px 5px;
1480     margin-left: 5px;
1481 }
1482
1483 ul.link-list li:last-child {
1484     border-left: 0;
1485     margin-left: 0;
1486     padding-left: 0;
1487 }
1488
1489 .toggle-list a::before {
1490     content: "";
1491     display: inline-block;
1492     border-radius: 50%;
1493     height: 12px;
1494     width: 12px;
1495     margin-right: 10px;
1496     border: 1px solid #CCC;
1497     position: absolute;
1498     left: 5px;
1499     top: 8px;
1500 }
1501
1502 .toggle-list a:hover::before {
1503     box-shadow: inset 0 0 0 2px white;
1504 }
1505
1506 .toggle-list a.selected::before {
1507     background: #7092ff;
1508     box-shadow: inset 0 0 0 2px white;
1509 }
1510
1511 /* Utility Classes
1512 ------------------------------------------------------- */
1513 .fillL {
1514     background: white;
1515     color: #333;
1516 }
1517
1518 .fillL2 {
1519     background: #f7f7f7 url(<%= asset_path("iD/img/background-pattern-1.png") %>) repeat;
1520     color: #333;
1521 }
1522
1523 .fillL3 {
1524     background: #f1f1f1;
1525     color: #333;
1526 }
1527
1528 .fillD {
1529     background:rgba(0,0,0,.5);
1530     color: white;
1531 }
1532
1533 .fl { float: left;}
1534 .fr { float: right;}
1535
1536 div.hide,
1537 form.hide,
1538 button.hide,
1539 a.hide {
1540     display: none;
1541 }
1542
1543 .deemphasize {
1544     color: #a9a9a9;
1545 }
1546
1547 .content {
1548     box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.25);
1549 }
1550
1551 .loading {
1552     background: url(<%= asset_path("iD/img/loader_bg.gif") %>);
1553     background-size:5px 5px;
1554 }
1555
1556 .panewrap {
1557     position:absolute;
1558     width:200%;
1559     height:100%;
1560     right: -100%;
1561 }
1562
1563 .pane {
1564     position:absolute;
1565     width:50%;
1566     height:100%;
1567 }
1568
1569 .pane:first-child {
1570     left: 0;
1571 }
1572
1573 .pane:last-child {
1574     right: 0;
1575 }
1576
1577 /* Buttons */
1578
1579 button {
1580     text-align: center;
1581     font-weight:bold;
1582     line-height:20px;
1583     border:0;
1584     background: white;
1585     color:#333;
1586     font-size:12px;
1587     display: inline-block;
1588     height:40px;
1589     border-radius:4px;
1590     /* Crashes Safari: https://github.com/systemed/iD/issues/1188 */
1591     /*-webkit-transition: all 100ms;*/
1592        -moz-transition: all 100ms;
1593          -o-transition: all 100ms;
1594             transition: all 100ms;
1595 }
1596
1597 button:focus,
1598 button:hover {
1599     background-color: #ececec;
1600 }
1601
1602 button[disabled],
1603 button.disabled {
1604     background-color: rgba(255,255,255,.25);
1605     color: rgba(0,0,0,.5);
1606     cursor: auto;
1607 }
1608
1609 button.active:not([disabled]):not(.disabled) {
1610     background: #7092ff;
1611 }
1612
1613 button.minor {
1614     position: absolute;
1615     top: 0;
1616     right: 0;
1617     height: 100%;
1618     width: 20px;
1619     opacity: .5;
1620     border-radius: 0;
1621 }
1622
1623 .button-wrap {
1624     display: inline-block;
1625     padding-right:10px;
1626     margin: 0;
1627 }
1628
1629 .button-wrap button:only-child { width: 100%;}
1630 .button-wrap:last-of-type { padding-right: 0;}
1631
1632 .joined button {
1633     border-radius:0;
1634     border-right: 1px solid rgba(0,0,0,.5);
1635 }
1636
1637 .joined button:first-child {
1638     border-radius:4px 0 0 4px;
1639 }
1640
1641 .joined button:last-child {
1642     border-right-width: 0;
1643     border-radius:0 4px 4px 0;
1644 }
1645
1646 button.action {
1647     background: #7092ff;
1648 }
1649
1650 button.action:focus,
1651 button.action:hover {
1652     background: #597BE7;
1653 }
1654
1655 button.save.has-count {
1656     padding: 9px;
1657 }
1658
1659 button.save .count {
1660     display: none;
1661 }
1662
1663 button.save.has-count .count {
1664     display: block;
1665     position: absolute;
1666     top: 5px;
1667     background: rgba(255, 255, 255, .5);
1668     color: #333;
1669     padding: 10px;
1670     height: 30px;
1671     line-height: 12px;
1672     border-radius: 4px;
1673     margin: auto;
1674     margin-left: 8.3333%;
1675 }
1676
1677 button.save.has-count .count::before {
1678     content: "";
1679     margin: auto;
1680     width: 0;
1681     height: 0;
1682     position: absolute;
1683     left: -6px;
1684     top: 0;
1685     bottom: 0;
1686     border-top:    6px solid transparent;
1687     border-bottom: 6px solid transparent;
1688     border-right:  6px solid rgba(255,255,255,.5);
1689 }
1690
1691 /* Icons */
1692
1693 .icon {
1694   display:inline-block;
1695   vertical-align:top;
1696   width:20px;
1697   height:20px;
1698   background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat 0 0;
1699   text-indent:-9999px;
1700   overflow:hidden;
1701   }
1702
1703 .icon-pre-text {
1704     margin-right: 3px;
1705 }
1706
1707 .user-icon {
1708     max-height: 20px;
1709     max-width: 20px;
1710     height: auto;
1711     width: auto;
1712     border-radius: 3px;
1713 }
1714
1715 /* Definitions for every icon */
1716 .icon.browse     { background-position:   0 0;}
1717 .icon.add-point  { background-position: -20px 0;}
1718 .icon.add-line   { background-position: -40px 0;}
1719 .icon.add-area   { background-position: -60px 0;}
1720 .icon.undo       { background-position: -80px 0;}
1721 .icon.redo       { background-position: -100px 0;}
1722 .icon.apply      { background-position: -120px 0;}
1723 .icon.save       { background-position: -140px 0;}
1724 .icon.close      { background-position: -160px 0;}
1725 .icon.delete     { background-position: -180px 0;}
1726 .icon.remove     { background-position: -200px 0;}
1727 .icon.inspect    { background-position: -220px 0;}
1728 .icon.zoom-in    { background-position: -240px 0;}
1729 .icon.zoom-out   { background-position: -260px 0;}
1730 .icon.plus       { background-position: -240px 0;}
1731 .icon.search     { background-position: -280px 0;}
1732 .icon.geocode    { background-position: -280px 0;}
1733 .icon.layers     { background-position: -300px 0;}
1734 .icon.avatar     { background-position: -320px 0;}
1735 .icon.nearby     { background-position: -340px 0;}
1736 .icon.geolocate  { background-position: -360px 0;}
1737 .icon.warning    { background-position: -380px 0;}
1738 .icon.back       { background-position: -420px 0;}
1739 .icon.forward    { background-position: -440px 0;}
1740 .icon.help       { background-position: -460px 0;}
1741
1742 .icon.inspect.light    { background-position: -220px -20px;}
1743 .icon.geocode.light    { background-position: -280px -20px;}
1744 .icon.help.light       { background-position: -460px -20px;}
1745 .icon.avatar.light     { background-position: -320px -20px;}
1746 .icon.nearby.light     { background-position: -340px -20px;}
1747
1748 .icon.back.blue        { background-position: -420px -20px;}
1749 .icon.forward.blue     { background-position: -440px -20px;}
1750
1751 button[disabled] .icon.browse     { background-position:   0 -40px;}
1752 button[disabled] .icon.add-point  { background-position: -20px -40px;}
1753 button[disabled] .icon.add-line   { background-position: -40px -40px;}
1754 button[disabled] .icon.add-area   { background-position: -60px -40px;}
1755 button.disabled  .icon.undo       { background-position: -80px -40px;}
1756 button.disabled  .icon.redo       { background-position: -100px -40px;}
1757 button[disabled] .apply.icon      { background-position: -120px -40px;}
1758 button[disabled] .close.icon      { background-position: -160px -40px;}
1759 button[disabled] .delete.icon     { background-position: -180px -40px;}
1760 button[disabled] .icon.remove     { background-position: -200px -40px;}
1761 button[disabled] .icon.inspect    { background-position: -220px -40px;}
1762 button[disabled] .icon.zoom-in    { background-position: -240px -40px;}
1763 button[disabled] .icon.zoom-out   { background-position: -260px -40px;}
1764 button[disabled] .icon.geocode    { background-position: -280px -40px;}
1765 button[disabled] .icon.layers     { background-position: -300px -40px;}
1766 button[disabled] .icon.avatar     { background-position: -320px -40px;}
1767 button[disabled] .icon.nearby     { background-position: -340px -40px;}
1768
1769 /* Out link is special */
1770
1771 .icon.out-link   { height: 14px; width: 14px; background-position: -500px 0;}
1772 a:hover .icon.out-link   { background-position: -500px -14px;}
1773
1774 .icon.plus-dark    { background-position: -240px -40px;}
1775
1776 /* Universal preset icons */
1777
1778 .icon.source     { background-position:   0 -200px;}
1779 .icon.address    { background-position: -20px -200px;}
1780 .icon.telephone  { background-position: -40px -200px;}
1781 .icon.website    { background-position: -60px -200px;}
1782 .icon.elevation  { background-position: -80px -200px;}
1783 .icon.wikipedia  { background-position: -100px -200px;}
1784 .icon.note       { background-position: -120px -200px;}
1785 .icon.wheelchair { background-position: -140px -200px;}
1786
1787 /* ToolBar / Persistent UI Elements
1788 ------------------------------------------------------- */
1789
1790 #bar {
1791     position:absolute;
1792     padding: 10px;
1793     left:0;
1794     top:0;
1795     right:0;
1796     height:60px;
1797 }
1798
1799 /* Header for modals / panes
1800 ------------------------------------------------------- */
1801
1802 .header {
1803     border-bottom: 1px solid #ccc;
1804     z-index: 2;
1805     height: 60px;
1806     position: relative;
1807 }
1808
1809 .header h3 {
1810     margin-right: 40px;
1811     margin-bottom: 0;
1812     white-space: nowrap;
1813     text-overflow: ellipsis;
1814     overflow: hidden;
1815 }
1816
1817 .modal > button,
1818 .header button {
1819     height: 100%;
1820     border-radius: 0;
1821     border-left: 1px solid #CCC;
1822     width: 40px;
1823     text-align: center;
1824     overflow: hidden;
1825     position: absolute;
1826     right: 0;
1827     top: 0;
1828 }
1829
1830 .modal > button {
1831     height: 59px;
1832     z-index: 3;
1833 }
1834
1835 /* Inspector
1836 ------------------------------------------------------- */
1837
1838 .inspector-wrap {
1839     position: absolute;
1840     height: 100%;
1841     right: 0;
1842     overflow: hidden;
1843 }
1844
1845 .inspector-body {
1846     overflow-y: scroll;
1847     overflow-x: hidden;
1848     position: absolute;
1849     right: 0;
1850     left: 0;
1851     bottom: 30px;
1852     top: 60px;
1853 }
1854
1855 .pane:first-child .inspector-body {
1856     top: 120px;
1857 }
1858
1859 .inspector-inner {
1860     padding: 20px;
1861     position: relative;
1862 }
1863
1864 .inspector-wrap .header button.preset-reset {
1865     border-right: 1px solid #CCC;
1866     position: relative;
1867 }
1868
1869 .inspector-wrap .header button.preset-reset > div {
1870     height: 100%;
1871     padding: 20px 0;
1872 }
1873
1874 .inspector-wrap .header button.preset-reset .col12:last-child {
1875     position: absolute;
1876     width: 100%;
1877     padding: 20px 0;
1878     opacity: 0;
1879 }
1880
1881 .inspector-wrap .header button:hover .col12:first-child {
1882     opacity: 0;
1883 }
1884
1885 .inspector-wrap .header button:hover .col12:last-child {
1886     opacity: 1;
1887 }
1888
1889 .inspector-wrap .header button.line > div {
1890     padding: 0;
1891 }
1892
1893 .inspector-toggle {
1894     color:#fff;
1895     width: 100%;
1896     display: block;
1897     background:#7092ff;
1898     border: 0;
1899 }
1900
1901 /* Presets
1902 ------------------------------------------------------- */
1903
1904 /* Preset grid  */
1905
1906 .preset-grid  {
1907     width:100%;
1908     padding: 20px 10px 10px 20px;
1909     border-bottom: 1px solid #ccc;
1910 }
1911
1912 .grid-button-wrap {
1913     padding: 0 10px 10px 0;
1914     height: 120px;
1915 }
1916
1917 .grid-entry {
1918     width: 100%;
1919     height: 100%;
1920     position: relative;
1921     border: 1px solid #ccc;
1922     overflow: hidden;
1923     float: left;
1924 }
1925
1926 .grid-inner {
1927     margin-bottom: 20px;
1928 }
1929
1930 .preset-grid.filtered .grid-button-wrap:first-child .grid-entry {
1931     background: #ececec;
1932 }
1933
1934 .preset-icon {
1935     position: absolute;
1936     top: 30px;
1937     left: 0;
1938     right: 0;
1939     margin: auto;
1940 }
1941
1942 .preset-icon-line {
1943     top: 15px;
1944     left: -10px;
1945     right: -10px;
1946 }
1947
1948 .grid-entry .label {
1949     background: #f6f6f6;
1950     text-align: left;
1951     position: absolute;
1952     padding: 5px 10px;
1953     height: 30px;
1954     bottom: 0;
1955     left: 0; right: 0;
1956     white-space: nowrap;
1957     text-overflow: ellipsis;
1958     overflow: hidden;
1959     border-top: 1px solid rgba(0, 0, 0, .1);
1960     }
1961
1962 .grid-button-wrap button.tag-reference-button {
1963     float: right;
1964     position: static;
1965     margin-top: -30px;
1966     margin-right: 1px;
1967     height: 29px;
1968     border-left: 1px solid #CCC;
1969     border-radius: 0 0 3px 0;
1970 }
1971
1972 .current .grid-entry,
1973 .current .grid-entry .label {
1974     background-color: #E8EBFF;
1975 }
1976
1977 .category .grid-entry:after,
1978 .category .grid-entry:before {
1979     content: "";
1980     position: absolute;
1981     top: 7px;
1982     left: 0; right: 0;
1983     border-top: 1px solid #ccc;
1984     border-radius: 6px;
1985     height: 6px;
1986 }
1987
1988 .category .grid-entry:before {
1989     top: 3px;
1990 }
1991
1992 .preset-grid-search-wrap .icon {
1993     display: block;
1994     position: absolute;
1995     left: 10px;
1996     top: 80px;
1997     pointer-events: none;
1998 }
1999
2000 .preset-grid-search-wrap input {
2001     position: absolute;
2002     top: 60px;
2003     border-radius: 0;
2004     border-width: 0;
2005     border-bottom-width: 1px;
2006     text-indent: 30px;
2007 }
2008
2009 .preset-search-result {
2010     padding: 0 10px;
2011     height:30px;
2012     margin: 5px;
2013 }
2014
2015 .subgrid {
2016     width: 100%;
2017     width: -webkit-calc(100% + 10px);
2018     width: calc(100% + 10px);
2019     margin-left: -10px;
2020     overflow: hidden;
2021 }
2022
2023 .subgrid .preset-grid {
2024     padding: 10px 0 0 10px;
2025     border: 1px solid #CCC;
2026     margin-top: 0;
2027     border-radius: 8px;
2028 }
2029
2030 .subgrid .arrow {
2031     border: solid rgba(0, 0, 0, 0);
2032     border-width: 10px;
2033     border-bottom-color: #CCC;
2034     width: 0;
2035     height: 0;
2036     margin-left: 33.3333%;
2037     margin-left: -webkit-calc(16.6666% - 10px);
2038     margin-left: calc(16.6666% - 10px);
2039     margin-top: -10px;
2040 }
2041 .subgrid.arrow-1 .arrow {
2042     margin-left: 50%;
2043     margin-left: -webkit-calc(50% - 10px);
2044     margin-left: calc(50% - 10px);
2045 }
2046
2047 .subgrid.arrow-2 .arrow {
2048     margin-left: 280px;
2049     margin-left: -webkit-calc(84.4444% - 10px);
2050     margin-left: calc(84.4444% - 10px);
2051 }
2052
2053 .show-more {
2054     text-align: center;
2055     width: 100%;
2056     border-bottom: 1px solid #ccc;
2057     border-radius: 0;
2058 }
2059
2060 .show-more a {
2061     color: #222;
2062 }
2063
2064 /* Preset icon colors */
2065
2066 .inspector-body-line .icon.feature-marker-stroked {
2067     top: 30px;
2068 }
2069
2070 .preset-icon-fill.icon-area {
2071     cursor: inherit;
2072     height: 45px;
2073     width: 45px;
2074     margin: auto;
2075     position: absolute;
2076     left: 0; right: 0; top: 19px;
2077     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat -240px -80px;
2078 }
2079
2080 .preset-icon-fill.tag-shop,
2081 .preset-icon-fill.tag-building {
2082     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat 0 -80px;
2083 }
2084
2085 .preset-icon-fill.tag-natural-water {
2086     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat -60px -80px;
2087 }
2088
2089 .preset-icon-fill.tag-landuse,
2090 .preset-icon-fill.tag-natural-wood,
2091 .preset-icon-fill.tag-natural-tree,
2092 .preset-icon-fill.tag-natural-grassland,
2093 .preset-icon-fill.tag-leisure-park {
2094     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat -120px -80px;
2095 }
2096
2097 .preset-icon-fill.tag-amenity-parking {
2098     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat -180px -80px;
2099 }
2100
2101 /* preset form basics */
2102
2103 .tag-wrap .preset-icon-wrap {
2104     border-bottom: 1px solid #CCC;
2105     background-color: #e8ebff;
2106 }
2107
2108 .tag-wrap .preset-icon-wrap::after {
2109     content: "";
2110     position: absolute;
2111     height: 0;
2112     width: 0;
2113     bottom: 0;
2114     left: 0;
2115     right: 0;
2116     margin: auto;
2117     border: solid rgba(0, 0, 0, 0);
2118     border-width: 10px;
2119     border-bottom-color: #CCC;
2120 }
2121
2122 .tag-wrap .preset-icon-wrap > div {
2123     height: 90px;
2124     width: 33.3333%;
2125     width: -webkit-calc(33.3333% - 10px);
2126     width: calc(33.3333% - 10px);
2127     margin: auto;
2128     border-radius: 4px;
2129     border: 1px solid #CCC;
2130     position: relative;
2131 }
2132
2133 .inspector-preset .form-field {
2134     padding-left: 20px;
2135     padding-right: 20px;
2136 }
2137
2138 .form-label {
2139     position: relative;
2140     font-weight: bold;
2141     border: 1px solid #cfcfcf;
2142     padding: 5px 0 5px 10px;
2143     background: #f6f6f6;
2144     display: block;
2145     border-radius: 4px 4px 0 0;
2146 }
2147
2148 .form-label button {
2149     border-left: 1px solid #CCC;
2150 }
2151
2152 .form-label .modified-icon {
2153     border-right: 0;
2154     opacity: 0;
2155     right: 20px;
2156 }
2157
2158 .modified .form-label .modified-icon {
2159     opacity: .5;
2160 }
2161
2162 .form-label button.tag-reference-button {
2163     border-top-right-radius: 3px;
2164 }
2165
2166 .form-field > input,
2167 .form-field > textarea,
2168 .form-field .preset-input-wrap {
2169     border: 1px solid #CCC;
2170     border-top: 0;
2171     border-radius: 0 0 4px 4px;
2172 }
2173
2174 .form-field textarea {
2175     height: 65px;
2176 }
2177
2178 .form-field-name input.localized-main {
2179     height: 35px;
2180     font-size: 18px;
2181     font-weight: bold;
2182 }
2183
2184 /* adding additional preset fields */
2185
2186 .more-buttons {
2187     margin-top: 20px;
2188     border-top: 1px solid #CCC;
2189 }
2190
2191 .more-buttons:nth-last-child(2) {
2192     border-bottom: 1px solid #CCC;
2193 }
2194
2195 button.preset-add-field {
2196     width: 25%;
2197     height: 40px;
2198     -webkit-transition: width 200ms;
2199     -moz-transition: width 200ms;
2200     -o-transition: width 200ms;
2201     transition: width 200ms;
2202 }
2203
2204 /* set width based on # of buttons */
2205
2206 button.preset-add-field:nth-last-child(4),
2207 button.preset-add-field:nth-last-child(4) ~ button.preset-add-field {
2208     width: 25%;
2209 }
2210
2211 button.preset-add-field:nth-last-child(5),
2212 button.preset-add-field:nth-last-child(5) ~ button.preset-add-field {
2213     width: 20%;
2214 }
2215
2216 button.preset-add-field:nth-last-child(6),
2217 button.preset-add-field:nth-last-child(6) ~ button.preset-add-field {
2218     width: 16.6666%;
2219 }
2220
2221 button.preset-add-field:nth-last-child(7),
2222 button.preset-add-field:nth-last-child(7) ~ button.preset-add-field {
2223     width: 14.2857%;
2224 }
2225
2226 button.preset-add-field:nth-last-child(8),
2227 button.preset-add-field:nth-last-child(8) ~ button.preset-add-field {
2228     width: 12.5%;
2229 }
2230
2231 .preset-add-field .tooltip.top .tooltip-arrow {
2232     border-top-color: #000;
2233 }
2234
2235 .preset-add-field .tooltip-inner {
2236     background: #000;
2237     color: #ccc;
2238 }
2239
2240 .preset-fav button.fav {
2241     height: 30px;
2242     margin: 5px;
2243     padding: 0 10px;
2244 }
2245
2246 /* preset form access */
2247
2248 .preset-input-wrap li {
2249     border-bottom: 1px solid #CCC;
2250 }
2251 .preset-input-wrap li:last-child {
2252     border-bottom: 0;
2253 }
2254
2255 .preset-input-wrap .label {
2256     background: #F6F6F6;
2257     padding: 5px;
2258 }
2259
2260 .preset-input-access-wrap input {
2261     border-radius: 0;
2262     border-width: 0;
2263     border-left-width: 1px;
2264 }
2265
2266 .preset-input-wrap li:last-child input {
2267     border-bottom-right-radius: 4px;
2268 }
2269
2270 /* preset form numbers */
2271
2272 input[type=number] {
2273     position: relative;
2274     padding-right: 65px;
2275 }
2276
2277 .spin-control {
2278     width: 41px;
2279     height: 29px;
2280     border-left: 1px solid #CCC;
2281     display: inline-block;
2282     margin-left: -41px;
2283     margin-bottom: -11px;
2284     position: relative;
2285 }
2286
2287 .spin-control button {
2288     position: relative;
2289     float: left;
2290     height: 100%;
2291     width: 50%;
2292     border-left: 1px solid #CCC;
2293     border-right: 1px solid #CCC;
2294     border-radius: 0;
2295     border-left: 0;
2296     background: rgba(0, 0, 0, 0);
2297 }
2298
2299 .spin-control button.decrement {
2300     border-bottom-right-radius: 3px;
2301 }
2302
2303 .spin-control button.decrement::after,
2304 .spin-control button.increment::after {
2305     content:"";
2306     height: 0; width: 0;
2307     position: absolute;
2308     left: 0; right: 0; bottom: 0; top: 0;
2309     margin: auto;
2310 }
2311
2312 .spin-control button.decrement::after {
2313     border-top: 5px solid #CCC;
2314     border-left: 5px solid transparent;
2315     border-right: 5px solid transparent;
2316 }
2317
2318 .spin-control button.increment::after {
2319     border-bottom: 5px solid #CCC;
2320     border-left: 5px solid transparent;
2321     border-right: 5px solid transparent;
2322 }
2323
2324 /* preset form checkbox */
2325
2326 .checkselect label:last-of-type {
2327     display: block;
2328     padding: 5px;
2329     box-sizing: border-box;
2330     color: #999;
2331 }
2332
2333 .checkselect label:hover {
2334     background: #f1f1f1;
2335 }
2336
2337 .checkselect .set {
2338     color: inherit;
2339 }
2340
2341 .checkselect input[type="checkbox"] {
2342     margin-right: 5px;
2343     width: 20px;
2344     vertical-align: middle;
2345     opacity: 0.5;
2346 }
2347
2348 .checkselect .set input[type="checkbox"] {
2349     opacity: 1;
2350 }
2351
2352 /* Preset form radio button */
2353
2354 .radio-wrap button {
2355     position: relative;
2356     text-align: left;
2357     font-weight: normal;
2358     height: 30px;
2359     border-radius: 0;
2360     border-bottom: 1px solid #CCC;
2361     color: #7092FF;
2362     width: 100%;
2363     padding-left: 25px;
2364 }
2365
2366 .radio-wrap button::before {
2367     content: "";
2368     display: inline-block;
2369     border-radius: 50%;
2370     height: 12px;
2371     width: 12px;
2372     margin-right: 10px;
2373     border: 1px solid #CCC;
2374     position: absolute;
2375     left: 5px;
2376     top: 8px;
2377 }
2378
2379 .radio-wrap button:hover::before {
2380     box-shadow: inset 0 0 0 2px white;
2381 }
2382
2383 .radio-wrap button.active::before {
2384     background: #7092ff;
2385     box-shadow: inset 0 0 0 2px white;
2386 }
2387
2388 .radio-wrap button:last-child {
2389     border-bottom: 0;
2390 }
2391
2392 .radio-wrap button.active {
2393     background-color: #E8EBFF !important;
2394 }
2395
2396 .radio-wrap button.remove {
2397     border-radius: 0 0 3px 3px;
2398 }
2399 .radio-wrap button.remove .icon {
2400     position: absolute;
2401     left: 2px;
2402 }
2403
2404 .radio-wrap button.remove::before {
2405     content: none;
2406 }
2407
2408 .form-field .localized-main {
2409     width: 90%;
2410     border-radius: 0 0 0 4px;
2411 }
2412
2413 .form-field .localized-add {
2414     width: 10%;
2415     height: 35px;
2416     border-radius: 0 0 4px 0;
2417     border-bottom: 1px solid #ccc;
2418     border-right: 1px solid #ccc;
2419     vertical-align: top;
2420 }
2421
2422 .form-field .localized-wrap .entry .localized-lang {
2423     border-top: none;
2424     border-right: none;
2425     border-radius: 0;
2426     width: 30%;
2427 }
2428
2429 .form-field .localized-wrap .entry .localized-value {
2430     border-top: none;
2431     border-radius: 0;
2432     width: 60%;
2433 }
2434
2435 .form-field .localized-wrap .entry .localized-remove {
2436     height: 30px;
2437     border-radius: 0;
2438     border-bottom: 1px solid #ccc;
2439     border-right: 1px solid #ccc;
2440     vertical-align: top;
2441     width: 10%;
2442 }
2443
2444 .form-field .localized-wrap .entry:last-child .localized-lang {
2445     border-radius: 0 0 0 4px;
2446 }
2447
2448 .form-field .localized-wrap .entry:last-child .localized-remove {
2449     border-radius: 0 0 4px 0;
2450 }
2451
2452 .form-field .wiki-lang {
2453     width: 30%;
2454     border-right: none;
2455     border-radius: 0 0 0 4px;
2456 }
2457
2458 .form-field .wiki-title {
2459     width: 60%;
2460     border-right: none;
2461     border-radius: 0;
2462 }
2463
2464 .form-field .wiki-link {
2465     border-radius: 0 0 4px 0;
2466     border: 1px solid #ccc;
2467     border-top: none;
2468     height: 30px;
2469     width: 10%;
2470     float: right;
2471     padding: 5px;
2472     text-align: center;
2473     -webkit-transition: all 100ms;
2474        -moz-transition: all 100ms;
2475          -o-transition: all 100ms;
2476             transition: all 100ms;
2477 }
2478
2479 .form-field .wiki-link:hover {
2480     background: #ececec;
2481 }
2482
2483 #preset-input-maxspeed {
2484     border-right: none;
2485     border-radius: 0 0 0 4px;
2486     width: 80%;
2487 }
2488
2489 .form-field .maxspeed-unit {
2490     border-radius: 0 0 4px 0;
2491     border: 1px solid #ccc;
2492     border-top: none;
2493     height: 30px;
2494     width: 20%;
2495     float: right;
2496     padding: 5px;
2497     text-align: center;
2498     color: #A9A9A9;
2499     font-weight: bold;
2500 }
2501
2502 /* Preset form address */
2503
2504 .form-field .addr-housename {
2505     border: 0;
2506 }
2507
2508 .form-field .addr-number {
2509     width: 33%;
2510     border-left: 0;
2511     border-right: 0;
2512     border-bottom: 0;
2513     border-radius: 0;
2514 }
2515
2516 .form-field .addr-street {
2517     width: 66%;
2518     border-right: 0;
2519     border-bottom: 0;
2520     border-radius: 0;
2521 }
2522
2523 .form-field .addr-city {
2524     width: 66%;
2525     border-left: 0;
2526     border-right: 0;
2527     border-bottom: 0;
2528     border-radius: 0 0 0 4px;
2529 }
2530
2531 .form-field .addr-postcode {
2532     width: 33%;
2533     border-right: 0;
2534     border-bottom: 0;
2535     border-radius: 0 0 4px 0;
2536 }
2537 /* combobox dropdown */
2538
2539 div.combobox {
2540     z-index: 9999;
2541     display: none;
2542     box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
2543     margin-top: -1px;
2544     background: white;
2545     max-height: 120px;
2546     overflow-y: auto;
2547     overflow-x: hidden;
2548     border: 1px solid #ccc;
2549     border-radius: 0 0 4px 4px;
2550 }
2551
2552 .combobox a {
2553     display: block;
2554     padding: 5px 10px;
2555     border-top:1px solid #ccc;
2556     text-overflow: ellipsis;
2557     white-space: nowrap;
2558     overflow: hidden;
2559 }
2560
2561 .combobox a.selected,
2562 .combobox a:hover {
2563     background: #ececec;
2564 }
2565
2566 .combobox a:first-child {
2567     border-top: 0;
2568 }
2569
2570 .combobox-carat {
2571     margin-left: -20px;
2572     margin-right: 10px;
2573     display:inline-block;
2574     border-top: 5px solid #ccc;
2575     border-left: 5px solid transparent;
2576     border-right: 5px solid transparent;
2577 }
2578
2579 /* tag editor */
2580
2581 .inspector-inner.additional-tags {
2582     border-top: 1px solid #ccc;
2583 }
2584
2585 .tag-list {
2586     margin-right: 40px;
2587 }
2588
2589 .tag-row {
2590     width: 100%;
2591     position: relative;
2592     clear: both;
2593 }
2594
2595 .tag-row input {
2596     border: 0;
2597     border-radius: 0;
2598     border-bottom: 1px solid #CCC;
2599     border-left: 1px solid #CCC;
2600 }
2601
2602 .tag-row input.key {
2603     background-color: #f6f6f6;
2604 }
2605
2606 .tag-row input.value {
2607     border-right: 1px solid #CCC;
2608 }
2609
2610 .tag-row:first-child input.key {
2611     border-top: 1px solid #CCC;
2612     border-top-left-radius: 4px;
2613 }
2614
2615 .tag-row:first-child input.value {
2616     border-top: 1px solid #CCC;
2617 }
2618
2619 .tag-row button {
2620     position: absolute;
2621     height: 30px;
2622     right: -20px;
2623     border: 1px solid #CCC;
2624     border-top-width: 0; border-left-width: 0;
2625     border-radius: 0;
2626     opacity: 1;
2627     background: #fafafa;
2628 }
2629
2630 .tag-row button:hover {
2631     background: #f1f1f1;
2632 }
2633
2634 .tag-row button .icon {
2635     opacity: .5;
2636 }
2637
2638 .tag-row:first-child button {
2639     border-top-width: 1px;
2640 }
2641
2642 .tag-row:first-child button.tag-help-button {
2643     border-top-right-radius: 4px;
2644 }
2645
2646 .tag-row:last-child button.tag-help-button {
2647     border-bottom-right-radius: 4px;
2648 }
2649
2650 .tag-row button.tag-help-button {
2651     right: -40px;
2652 }
2653
2654 /* Adding form fields to tag editor */
2655
2656 .inspector-inner .add-tag {
2657     width: -webkit-calc(50% - 20px);
2658     width: calc(50% - 20px);
2659     height: 30px;
2660     border-top: 0;
2661     background: rgba(0,0,0,.5);
2662     border-radius: 0 0 4px 4px;
2663 }
2664
2665 .inspector-inner .add-tag:hover {
2666     background: rgba(0,0,0,.8);
2667 }
2668
2669 .inspector-inner .add-tag .label {
2670     display: none;
2671 }
2672
2673 /* Tag reference */
2674
2675 .preset-inspect {
2676     position: relative;
2677 }
2678
2679 .tag-help {
2680     overflow: hidden;
2681 }
2682
2683 .tag-help a {
2684     margin-top: 5px;
2685     display: block;
2686 }
2687
2688 .grid-pane .tag-reference-wrap {
2689     padding: 10px 0 20px 0;
2690 }
2691
2692 .tag-pane .tag-reference-wrap {
2693     padding-top: 20px;
2694 }
2695
2696 .additional-tags .tag-reference-wrap {
2697     border-bottom: 1px solid #ccc;
2698     padding: 20px 0;
2699 }
2700
2701 .additional-tags div.tag-help {
2702     float: left;
2703     width: 100%;
2704     width: -webkit-calc(100% + 40px);
2705     width: calc(100% + 40px);
2706 }
2707
2708 img.wiki-image {
2709     float: right;
2710     width: 33.3333%;
2711     width: -webkit-calc(33.3333% - 10px);
2712     width: calc(33.3333% - 10px);
2713     margin-left: 20px;
2714     border-radius: 4px;
2715     max-height: 200px;
2716 }
2717
2718 /* Map Controls */
2719
2720 .map-controls {
2721     left: 0;
2722     top: 80px;
2723     width: 30px;
2724     position: absolute;
2725     z-index: 100;
2726 }
2727
2728 .map-control > button {
2729     width: 30px;
2730     background: rgba(0,0,0,.5);
2731     border-radius: 0;
2732 }
2733
2734 .map-control > button:hover {
2735     background: rgba(0, 0, 0, .8);
2736 }
2737
2738 .map-control > button.active:hover {
2739     background: #7092ff;
2740 }
2741
2742 .map-overlay {
2743     z-index: -1;
2744     right: 75%;
2745     max-width: 260px;
2746     min-width: 210px;
2747     position: fixed;
2748     left: 30px;
2749     display: block;
2750     padding: 10px 10px 0 10px;
2751 }
2752
2753 /* Zoomer */
2754
2755 .zoombuttons button.zoom-in {
2756     border-radius:0 4px 0 0;
2757 }
2758
2759 /* Background Settings */
2760
2761 .background-control button {
2762     border-radius:0 4px 0 0;
2763 }
2764
2765 .background-control button.active {
2766     border-radius: 0;
2767 }
2768
2769 .nudge-container {
2770     border-top: 1px solid #CCC;
2771     margin: 0 -10px;
2772 }
2773
2774 .background-control .adjustments button:last-child {
2775     border: 0;
2776 }
2777
2778 .hide-toggle {
2779     display: block;
2780     padding: 0 0 10px 12px;
2781     position: relative;
2782 }
2783
2784 .hide-toggle:before {
2785     content: '';
2786     display: block;
2787     position: absolute;
2788     height: 0;
2789     width: 0;
2790     left: 0;
2791     top: 5px;
2792     border-top:  4px solid transparent;
2793     border-bottom:  4px solid transparent;
2794     border-left:  8px solid #7092ff;
2795 }
2796
2797 .hide-toggle.expanded:before {
2798     border-top:  8px solid #7092ff;
2799     border-bottom: 0;
2800     border-right:  4px solid transparent;
2801     border-left:  4px solid transparent;
2802 }
2803
2804 .background-control .nudge-container button {
2805     float: left;
2806     display: block;
2807     width:20%;
2808     border-radius: 0;
2809     border-right: 1px solid #CCC;
2810     position: relative;
2811 }
2812
2813 .background-control .nudge::after {
2814     content: '';
2815     display: block;
2816     position: absolute;
2817     margin: auto;
2818     left: 0; right: 0; top: 0; bottom: 0;
2819     height: 0;
2820     width: 0;
2821 }
2822
2823 .background-control .nudge.left::after {
2824     border-top:  5px solid transparent;
2825     border-bottom:  5px solid transparent;
2826     border-left:  5px solid #222;
2827 }
2828
2829 .background-control .nudge.right::after {
2830     border-top:  5px solid transparent;
2831     border-bottom:  5px solid transparent;
2832     border-right:  5px solid #222;
2833 }
2834
2835 .background-control .nudge.top::after {
2836     border-right:  5px solid transparent;
2837     border-left:  5px solid transparent;
2838     border-bottom:  5px solid #222;
2839 }
2840
2841 .background-control .nudge.bottom::after {
2842     border-right:  5px solid transparent;
2843     border-left:  5px solid transparent;
2844     border-top:  5px solid #222;
2845 }
2846
2847 .opacity-options {
2848     background: url(<%= asset_path("iD/img/background-pattern-opacity.png") %>) 0 0 repeat;
2849     height:20px;
2850     width:62px;
2851     position: absolute;
2852     right: 10px;
2853     top: 10px;
2854     border: 1px solid #ccc;
2855 }
2856
2857 .opacity-options li {
2858     height: 100%;
2859     display: block;
2860     float: left;
2861 }
2862
2863 .opacity-options li .select-box{
2864     position: absolute;
2865     width:20px;
2866     height:18px;
2867     z-index: 9999;
2868 }
2869
2870 .background-control li:hover .select-box,
2871 .background-control li.selected .select-box {
2872     border: 2px solid #7092ff;
2873     background: rgba(89, 123, 231, .5);
2874     opacity: .5;
2875 }
2876
2877 .background-control li.selected:hover .select-box,
2878 .background-control li.selected .select-box {
2879     opacity: 1;
2880 }
2881
2882 .background-control .opacity {
2883     background:#222;
2884     display:inline-block;
2885     width:20px;
2886     height:18px;
2887 }
2888
2889 .background-control .layer-toggle-gpx .layer-extent {
2890     border-left: 1px solid #CCC;
2891 }
2892
2893 .background-control .layer-toggle-gpx.selected .layer-extent {
2894     display:inline-block;
2895 }
2896
2897 /* Geocoder */
2898
2899 .geocode-control form {
2900     top:260px;
2901 }
2902
2903 .geocode-control form {
2904     padding: 5px;
2905 }
2906
2907 .geocode-control input {
2908     width: 100%;
2909 }
2910
2911 .geocode-control div.map-overlay {
2912     border-top: 1px solid #CCC;
2913     z-index: 100;
2914     max-height: 240px;
2915     overflow-y: auto;
2916     padding: 0;
2917     margin-top: 40px;
2918 }
2919
2920 .geocode-control div.map-overlay span {
2921     display: inline-block;
2922     border-bottom: 1px solid #CCC;
2923     padding: 5px 10px;
2924 }
2925 .geocode-control div.map-overlay span.not-found {
2926     line-height: 28px;
2927     width: 100%;
2928 }
2929
2930 .geocode-control a:focus {
2931     text-decoration: underline;
2932 }
2933
2934 /* Geolocator */
2935
2936 .geolocate-control button {
2937     border-radius: 0 0 4px 0;
2938 }
2939
2940 /* Help */
2941
2942 .help-control {
2943     margin-bottom: 20px;
2944 }
2945
2946 .help-control button {
2947     border-radius: 0 0 4px 0;
2948 }
2949
2950 .help-wrap {
2951     position: absolute;
2952     top:60px;
2953     bottom: 30px;
2954     padding: 20px 20px 20px 50px;
2955     left: 0;
2956     overflow-y: scroll;
2957 }
2958
2959 .help-wrap p {
2960     font-size: 15px;
2961     margin-bottom: 20px;
2962 }
2963
2964 .help-wrap .left-content .body p code {
2965     padding:2px 4px;
2966     background:#eee;
2967 }
2968
2969 .help-wrap .toc {
2970     /* This is two columns, 41.66666 x .4 = 16.6666 */
2971     width:40%;
2972     float:right;
2973     margin-left: 20px;
2974     margin-bottom: 20px;
2975     padding-left: 5px
2976 }
2977
2978 .help-wrap .toc li a,
2979 .help-wrap .nav a {
2980     display: block;
2981     border: 1px solid #CCC;
2982     padding: 5px 10px;
2983 }
2984
2985 .help-wrap .toc li a {
2986     border-bottom: 0;
2987 }
2988
2989 .help-wrap .toc li a:hover,
2990 .help-wrap .nav a:hover  {
2991     background: #ececec;
2992 }
2993
2994 .help-wrap .toc li a.selected {
2995     background: #E8EBFF;
2996 }
2997
2998 .help-wrap .toc li:first-child a {
2999     border-radius: 4px 4px 0 0;
3000 }
3001
3002 .help-wrap .toc li:nth-last-child(2) a {
3003     border-bottom: 1px solid #CCC;
3004     border-radius: 0 0 4px 4px
3005 }
3006
3007 .help-wrap .toc li.walkthrough a {
3008     overflow: hidden;
3009     margin-top: 10px;
3010     border-bottom: 1px solid #ccc;
3011     border-radius: 4px;
3012 }
3013
3014 .help-wrap .nav {
3015     position: relative;
3016 }
3017
3018 .help-wrap .nav a {
3019     float: left;
3020     width: 50%;
3021     text-align: center;
3022 }
3023
3024 .help-wrap .nav a:first-child {
3025     border-radius: 4px 0 0 4px;
3026 }
3027
3028 .help-wrap .nav a:last-child:not(:only-child) {
3029     border-radius: 0 4px 4px 0;
3030     border-left: 0;
3031 }
3032
3033 .help-wrap .nav a:only-child {
3034     width: 100%;
3035     border-radius: 4px;
3036 }
3037
3038 /* Map
3039 ------------------------------------------------------- */
3040
3041 #map {
3042     display:block;
3043     position:absolute;
3044     overflow:hidden;
3045     top:0px;
3046     left:0;
3047     right:0;
3048     bottom:0;
3049     background:#000;
3050 }
3051
3052 #supersurface {
3053     transform-origin:0 0;
3054     -ms-transform-origin:0 0;
3055     -webkit-transform-origin:0 0;
3056     -moz-transform-origin:0 0;
3057     -o-transform-origin:0 0;
3058     -moz-user-select: none;
3059     -webkit-user-select: none;
3060     -ms-user-select: none;
3061     user-select: none;
3062 }
3063
3064 #surface, #layer-g, .layer-layer {
3065     position: absolute;
3066 }
3067
3068 /* About Section
3069 ------------------------------------------------------- */
3070
3071 .about-block {
3072     position: absolute;
3073     right:0px;
3074     bottom:0px;
3075     overflow: hidden;
3076     white-space: nowrap;
3077     text-overflow: ellipsis;
3078     border-radius: 0;
3079     opacity: .625;
3080     -webkit-transition: opacity 200ms;
3081     -moz-transition: opacity 200ms;
3082     transition: opacity 200ms;
3083 }
3084
3085 .about-block:hover {
3086     opacity: 1;
3087 }
3088
3089 #about {
3090     text-align: right;
3091     margin-right: 10px;
3092 }
3093
3094 .source-switch a {
3095     padding: 2px 4px 4px 4px;
3096     border-radius: 2px;
3097 }
3098 .source-switch a.live {
3099     background: #d32232;
3100     color:#fff;
3101 }
3102
3103 /* Attribution overlay */
3104 .attribution {
3105     position: absolute;
3106     bottom: 35px;
3107     left:10px;
3108     color:#888;
3109     font-size:10px;
3110 }
3111
3112 .source-image {
3113     height:20px;
3114     vertical-align:top;
3115 }
3116
3117 .user-list a:not(:last-child):after {
3118     content: ', ';
3119 }
3120
3121 /* API Status */
3122
3123 .api-status {
3124     float: left;
3125 }
3126
3127 .api-status.offline,
3128 .api-status.readonly {
3129     background: red;
3130     padding: 5px 10px;
3131 }
3132
3133 /* Account Information */
3134
3135 .account {
3136     float: left;
3137     padding: 5px 10px;
3138 }
3139
3140 .account .logout {
3141     margin-left:10px;
3142     border-left: 1px solid white;
3143     padding-left: 10px;
3144 }
3145
3146 /* Modals
3147 ------------------------------------------------------- */
3148
3149 .modal {
3150     display: inline-block;
3151     position:absolute;
3152     left: 0;
3153     right: 0;
3154     margin: auto;
3155     z-index: 3;
3156 }
3157
3158 .modal .loader {
3159     margin-bottom: 10px;
3160 }
3161
3162 .modal .description {
3163     text-align: center;
3164 }
3165
3166 .shaded {
3167     z-index: 2;
3168     position: absolute;
3169     height: 100%;
3170     width: 100%;
3171     overflow: auto;
3172 }
3173
3174 .shaded:before {
3175     content:'';
3176     background:rgba(0,0,0,0.5);
3177     position:fixed;
3178     left:0px; right:0px; top:0px; bottom:0px;
3179 }
3180
3181 .modal-section {
3182     padding: 20px;
3183     border-bottom: 1px solid #CCC;
3184 }
3185
3186 .modal-section:last-child {
3187     border-bottom: 0;
3188 }
3189
3190 .loading-modal {
3191     text-align: center;
3192 }
3193
3194 .modal-actions button,
3195 .modal-actions a {
3196     background-size: white;
3197     font-weight: normal;
3198     color: #7092FF;
3199     border-bottom: 1px solid #CCC;
3200     border-radius: 0;
3201     height: 180px;
3202     text-align: center;
3203     display: inline-block;
3204 }
3205
3206 .modal-actions a {
3207     /* `button` elements have box-algin: auto, need
3208     compensate this for `a`*/
3209     padding-top: 25px;
3210 }
3211
3212 .modal-actions button:hover,
3213 .modal-actions a:hover {
3214     background-color: #ececec;
3215 }
3216
3217 .modal-actions a:before,
3218 .modal-actions button:before,
3219 .walkthrough a:before {
3220     background-size: white;
3221     display: block;
3222     content: '';
3223     height: 100px;
3224     width: 100px;
3225     margin: auto;
3226     margin-bottom: 10px;
3227     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat 0 -220px;
3228 }
3229
3230 .modal-actions :first-child {
3231     border-right: 1px solid #CCC;
3232 }
3233
3234 /* Restore Modal
3235 ------------------------------------------------------- */
3236
3237 .modal-actions .restore:before {
3238     background-position: -500px -220px;
3239 }
3240
3241 .modal-actions .reset:before {
3242     background-position: -600px -220px;
3243 }
3244
3245 /* Success Modal
3246 ------------------------------------------------------- */
3247
3248 .modal-actions .twitter:before {
3249     background-position: -100px -220px;
3250 }
3251
3252 .modal-actions .facebook {
3253     border-left: 1px solid #ccc;
3254 }
3255
3256 .modal-actions .facebook:before {
3257     background-position: -200px -220px;
3258 }
3259
3260 /* Splash Modal
3261 ------------------------------------------------------- */
3262
3263 .modal-actions .walkthrough:before,
3264 .walkthrough a:before {
3265     background-position: -300px -220px;
3266 }
3267
3268 .modal-actions .start:before {
3269     background-position: -400px -220px;
3270 }
3271
3272 /* Commit Modal
3273 ------------------------------------------------------- */
3274
3275 .commit-modal a.user-info {
3276     display: inline-block;
3277 }
3278
3279 .commit-modal .commit-info {
3280     margin-top: 10px;
3281     padding-bottom: 20px;
3282 }
3283
3284 .commit-modal .user-info img {
3285     float: left;
3286 }
3287
3288 .commit-modal h3 small.count {
3289     margin-right: 10px;
3290     text-align: center;
3291     float: left;
3292     height: 12px;
3293     min-width: 12px;
3294     font-size:12px;
3295     line-height: 12px;
3296     border-radius:24px;
3297     padding:5px;
3298     background:#7092ff;
3299     color:#fff;
3300 }
3301
3302 .commit-modal .changeset-list {
3303     overflow: auto;
3304     border:1px solid #ccc;
3305     border-radius: 4px;
3306     background:#fff;
3307     max-height: 160px;
3308 }
3309
3310 .commit-modal .warning-section .changeset-list button {
3311     border-left: 1px solid #CCC;
3312 }
3313
3314 .commit-modal .changeset-list li {
3315     position: relative;
3316     border-top:1px solid #ccc;
3317     padding:5px 10px;
3318 }
3319
3320 .changeset-list li span.count {
3321     font-size:10px;
3322     color:#555;
3323 }
3324
3325 .changeset-list li span.count:before { content: '('; }
3326
3327 .changeset-list li span.count:after { content: ')'; }
3328
3329 .changeset-list li:first-child { border-top: 0;}
3330
3331 /* Notices
3332 ------------------------------------------------------- */
3333
3334 .notice {
3335     float:left;
3336     width:25%;
3337     padding-right: 10px;
3338     text-align:center;
3339 }
3340
3341 .notice .zoom-to {
3342     width:100%;
3343     height: 40px;
3344     border-radius: 5px;
3345     line-height: 40px;
3346     background: #fff;
3347     color: #000;
3348     opacity: 0.9;
3349 }
3350
3351 .notice .zoom-to:hover {
3352     background: #d8e1ff;
3353 }
3354
3355 .notice .zoom-to .icon {
3356     margin-top:10px;
3357     margin-right:10px;
3358 }
3359
3360 .icon.zoom-in-invert {
3361     background-position: -240px -40px;
3362 }
3363
3364 /* Tooltips
3365 ------------------------------------------------------- */
3366
3367 .tooltip {
3368     width: 200px;
3369     position: absolute;
3370     display: none;
3371     color:#333;
3372     text-align: left;
3373     font-size: 12px;
3374 }
3375
3376 .tooltip.in {
3377     opacity: 0.8;
3378     z-index: 1030;
3379     height: auto;
3380     display: block;
3381 }
3382
3383 .tooltip.top {
3384     margin-top: -20px;
3385     text-align: center;
3386 }
3387
3388 .tooltip.right {
3389     margin-left: 20px;
3390 }
3391
3392 .tooltip.bottom {
3393     margin-top: 20px;
3394     text-align: center;
3395 }
3396
3397 .tooltip.left {
3398     margin-left: -20px;
3399 }
3400
3401 .tooltip-inner {
3402     display: inline-block;
3403     padding: 10px;
3404     font-weight: normal;
3405     background-color: white;
3406 }
3407
3408 .tail {
3409     width: 200px;
3410     height: 400px;
3411     pointer-events: none;
3412     opacity: .8;
3413     margin-top: -200px;
3414     position: absolute;
3415     background: transparent;
3416 }
3417
3418 .tail::after {
3419     content: "";
3420     position: absolute;
3421     width: 0;
3422     height: 0;
3423     border-color: transparent;
3424     border-style: solid;
3425     top: 50%;
3426     right: -5px;
3427     margin-top: -5px;
3428     border-left-color: white;
3429     border-width: 5px 0 5px 5px;
3430 }
3431
3432 .tail div {
3433     padding: 10px;
3434     background: white;
3435     position: absolute;
3436     top: 180px;
3437     left: 0;
3438     right: 0;
3439     margin: auto;
3440 }
3441
3442 .left.tail::after {
3443     content: "";
3444     position: absolute;
3445     width: 0;
3446     height: 0;
3447     border-color: transparent;
3448     border-style: solid;
3449     top: 50%;
3450     left: -5px;
3451     margin-top: -5px;
3452     border-right-color: white;
3453     border-width: 5px 5px 5px 0;
3454 }
3455
3456 .tooltip-arrow {
3457     position: absolute;
3458     width: 0;
3459     height: 0;
3460     border-color: transparent;
3461     border-style: solid;
3462 }
3463
3464 .tooltip.top .tooltip-arrow {
3465     bottom: -5px;
3466     left: 50%;
3467     margin-left: -5px;
3468     border-top-color: white;
3469     border-width: 5px 5px 0;
3470 }
3471
3472 .tooltip.right .tooltip-arrow {
3473     top: 50%;
3474     left: -5px;
3475     margin-top: -5px;
3476     border-right-color: white;
3477     border-width: 5px 5px 5px 0;
3478 }
3479
3480 .tooltip.left .tooltip-arrow {
3481     top: 50%;
3482     right: -5px;
3483     margin-top: -5px;
3484     border-left-color: white;
3485     border-width: 5px 0 5px 5px;
3486 }
3487
3488 .tooltip.bottom .tooltip-arrow {
3489     top: -5px;
3490     left: 50%;
3491     margin-left: -5px;
3492     border-bottom-color: white;
3493     border-width: 0 5px 5px;
3494 }
3495
3496
3497 /* Exceptions for tooltips that are up against the edge of the screen */
3498 .add-point .tooltip {
3499     left: -20px !important; }
3500
3501 .curtain-tooltip.intro-points-add .tooltip-arrow,
3502 .add-point .tooltip .tooltip-arrow {
3503     left: 60px;
3504 }
3505
3506 .tooltip .keyhint-wrap {
3507     padding: 5px 0 5px 0;
3508 }
3509
3510 .tooltip-inner .keyhint {
3511     color: #222;
3512     font-size: 10px;
3513     padding: 0 7px;
3514     font-weight: bold;
3515     display: inline-block;
3516     border-radius: 2px;
3517     border: 1px solid #CCC;
3518     position: relative;
3519     z-index: 1;
3520     text-align: left;
3521     clear: both;
3522 }
3523
3524 .tooltip .keyhint .keyhint-label {
3525     display: inline-block;
3526 }
3527
3528 .tooltip-inner .keyhint::after {
3529     content: "";
3530     position: absolute;
3531     border-radius: 2px;
3532     height: 10px;
3533     width: 100%;
3534     z-index: 0;
3535     bottom: -4px;
3536     left: -1px;
3537     border: 1px solid #CCC;
3538     border-top: 0;
3539 }
3540
3541 .radial-menu-tooltip {
3542     background-color: rgba(255, 255, 255, 0.8);
3543     display: none;
3544     position: absolute;
3545     width: 200px;
3546 }
3547
3548 .radial-menu-background {
3549     stroke: black;
3550     stroke-opacity: 0.5;
3551 }
3552
3553 .radial-menu-item {
3554     fill: white;
3555 }
3556
3557 .radial-menu-item:hover {
3558     fill: #ececec;
3559 }
3560
3561 .radial-menu-item:active {
3562     fill: #ececec;
3563 }
3564
3565 .radial-menu-item.disabled {
3566     cursor: auto;
3567     fill: rgba(255,255,255,.5);
3568 }
3569
3570 .radial-menu .icon {
3571     pointer-events: none;
3572 }
3573
3574 .lasso-box {
3575     fill-opacity:0.1;
3576     stroke: #fff;
3577     stroke-width: 1;
3578     stroke-opacity: 1;
3579     stroke-dasharray: 5, 5;
3580 }
3581
3582 /* Media Queries
3583 ------------------------------------------------------- */
3584
3585 @media only screen and (max-width: 840px) {
3586     #bar .label {display: none;}
3587     #bar .icon.icon-pre-text { margin-right: 0;}
3588     /* override hide for save button */
3589     #bar .save .label { display: block;}
3590 }
3591
3592 /* Scrollbars
3593  ----------------------------------------------------- */
3594
3595 ::-webkit-scrollbar {
3596     height: 20px;
3597     overflow: visible;
3598     width: 10px;
3599     background: white;
3600     border-left: 1px solid #DDD;
3601 }
3602
3603 ::-webkit-scrollbar-track {
3604     background-clip: padding-box;
3605     border: solid transparent;
3606     border-width: 0;
3607 }
3608
3609 ::-webkit-scrollbar-thumb {
3610     background-color: rgba(0,0,0,.2);
3611     background-clip: padding-box;
3612     border: solid transparent;
3613     border-width: 3px 3px 3px 4px;
3614     border-radius: 6px;
3615 }
3616 ::-webkit-scrollbar-track:hover,
3617 ::-webkit-scrollbar-track:active {
3618     background-color: rgba(0,0,0,.05);
3619 }
3620
3621 /* Intro walkthrough
3622  ----------------------------------------------------- */
3623
3624 .curtain-darkness {
3625     pointer-events: all;
3626     fill-opacity: 0.7;
3627     fill: #222;
3628     fill-rule: evenodd;
3629 }
3630
3631 .intro-nav-wrap {
3632     position: absolute;
3633     left: 0;
3634     right: 0;
3635     bottom: 30px;
3636     padding: 10px;
3637     z-index: 1001;
3638 }
3639
3640 .intro-nav-wrap button.step {
3641     width: 20%;
3642 }
3643
3644 .intro-nav-wrap button.step.finished {
3645     background: #8cd05f;
3646 }
3647
3648 .intro-nav-wrap button.step .icon {
3649     display: none;
3650 }
3651
3652 .intro-nav-wrap button.step.finished .icon {
3653     display: inline-block;
3654 }
3655
3656
3657 .curtain-tooltip .tooltip-inner {
3658     text-align: left;
3659     padding: 20px;
3660 }
3661
3662 .curtain-tooltip .tooltip-inner {
3663     font-size: 15px;
3664 }
3665
3666 .curtain-tooltip .tooltip-inner .bold {
3667     font-weight: bold;
3668     display: block;
3669     border-top: 1px solid #CCC;
3670     margin-top: 10px;
3671     margin-left: -20px;
3672     margin-right: -20px;
3673     padding: 10px 20px 0 20px;
3674 }
3675
3676 .curtain-tooltip .tooltip-inner .bold:only-child {
3677     border: 0;
3678     padding: 0;
3679     margin: 0;
3680 }
3681
3682 .curtain-tooltip.intro-points-describe {
3683     top: 133px !important;
3684 }
3685
3686 /* Tooltip illustrations */
3687
3688 .intro-points-add .tooltip-inner::before,
3689 .intro-areas-add .tooltip-inner::before,
3690 .intro-lines-add .tooltip-inner::before {
3691     display: block;
3692     content: "";
3693     height: 80px;
3694     width: 200px;
3695     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat 0 -320px;
3696 }
3697
3698 .intro-areas-add .tooltip-inner::before {
3699     background-position: 0 -400px;
3700 }
3701
3702 .intro-lines-add .tooltip-inner::before {
3703     background-position: 0 -480px;
3704 }
3705
3706 .huge-modal-button {
3707     width: 100%;
3708     height: auto;
3709     padding: 20px;
3710 }
3711
3712 .huge-modal-button .illustration {
3713     height: 100px;
3714     width: 100px;
3715     background: rgba(0, 0, 0, 0) url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat -301px -220px;
3716     margin: auto;
3717 }
3718 /* This file is generated by make. Do NOT edit manually. */
3719
3720 .preset-icon{background-image:url(<%= asset_path("iD/img/maki-sprite.png") %>);background-repeat:no-repeat;width:24px;height:24px;}
3721 .preset-icon-line{background-image:url(<%= asset_path("iD/img/line-presets.png") %>);background-repeat:no-repeat;width:60px;height:60px;}
3722 .feature-airfield{background-position:-0px -34px;}
3723 .feature-airport{background-position:-0px -94px;}
3724 .feature-alcohol-shop{background-position:-0px -154px;}
3725 .feature-america-football{background-position:-0px -214px;}
3726 .feature-art-gallery{background-position:-0px -274px;}
3727 .feature-bank{background-position:-0px -334px;}
3728 .feature-bar{background-position:-0px -394px;}
3729 .feature-baseball{background-position:-0px -454px;}
3730 .feature-basketball{background-position:-0px -514px;}
3731 .feature-beer{background-position:-0px -574px;}
3732 .feature-bicycle{background-position:-0px -634px;}
3733 .feature-building{background-position:-0px -694px;}
3734 .feature-bus{background-position:-0px -754px;}
3735 .feature-cafe{background-position:-0px -814px;}
3736 .feature-campsite{background-position:-0px -874px;}
3737 .feature-cemetery{background-position:-0px -934px;}
3738 .feature-cinema{background-position:-0px -994px;}
3739 .feature-circle{background-position:-0px -1054px;}
3740 .feature-circle-stroked{background-position:-0px -1114px;}
3741 .feature-college{background-position:-0px -1174px;}
3742 .feature-commercial{background-position:-0px -1234px;}
3743 .feature-cricket{background-position:-0px -1294px;}
3744 .feature-cross{background-position:-0px -1354px;}
3745 .feature-dam{background-position:-0px -1414px;}
3746 .feature-danger{background-position:-0px -1474px;}
3747 .feature-disability{background-position:-0px -1534px;}
3748 .feature-embassy{background-position:-0px -1594px;}
3749 .feature-emergency-telephone{background-position:-0px -1654px;}
3750 .feature-fast-food{background-position:-0px -1714px;}
3751 .feature-ferry{background-position:-0px -1774px;}
3752 .feature-fire-station{background-position:-0px -1834px;}
3753 .feature-fuel{background-position:-0px -1894px;}
3754 .feature-garden{background-position:-0px -1954px;}
3755 .feature-golf{background-position:-0px -2014px;}
3756 .feature-grocery{background-position:-0px -2074px;}
3757 .feature-harbor{background-position:-0px -2134px;}
3758 .feature-heliport{background-position:-0px -2194px;}
3759 .feature-hospital{background-position:-0px -2254px;}
3760 .feature-industrial{background-position:-0px -2314px;}
3761 .feature-library{background-position:-0px -2374px;}
3762 .feature-lodging{background-position:-0px -2434px;}
3763 .feature-logging{background-position:-0px -2494px;}
3764 .feature-marker{background-position:-0px -2554px;}
3765 .feature-marker-stroked{background-position:-0px -2614px;}
3766 .feature-monument{background-position:-0px -2674px;}
3767 .feature-museum{background-position:-0px -2734px;}
3768 .feature-music{background-position:-0px -2794px;}
3769 .feature-oil-well{background-position:-0px -2854px;}
3770 .feature-park{background-position:-0px -2914px;}
3771 .feature-park2{background-position:-0px -2974px;}
3772 .feature-parking{background-position:-0px -3034px;}
3773 .feature-parking-garage{background-position:-0px -3094px;}
3774 .feature-pharmacy{background-position:-0px -3154px;}
3775 .feature-pitch{background-position:-0px -3214px;}
3776 .feature-place-of-worship{background-position:-0px -3274px;}
3777 .feature-police{background-position:-0px -3334px;}
3778 .feature-post{background-position:-0px -3394px;}
3779 .feature-prison{background-position:-0px -3454px;}
3780 .feature-rail{background-position:-0px -3514px;}
3781 .feature-rail-above{background-position:-0px -3574px;}
3782 .feature-rail-underground{background-position:-0px -3634px;}
3783 .feature-religious-christian{background-position:-0px -3694px;}
3784 .feature-religious-jewish{background-position:-0px -3754px;}
3785 .feature-religious-muslim{background-position:-0px -3814px;}
3786 .feature-restaurant{background-position:-0px -3874px;}
3787 .feature-roadblock{background-position:-0px -3934px;}
3788 .feature-school{background-position:-0px -3994px;}
3789 .feature-shop{background-position:-0px -4054px;}
3790 .feature-skiing{background-position:-0px -4114px;}
3791 .feature-slaughterhouse{background-position:-0px -4174px;}
3792 .feature-soccer{background-position:-0px -4234px;}
3793 .feature-square{background-position:-0px -4294px;}
3794 .feature-square-stroked{background-position:-0px -4354px;}
3795 .feature-star{background-position:-0px -4414px;}
3796 .feature-star-stroked{background-position:-0px -4474px;}
3797 .feature-swimming{background-position:-0px -4534px;}
3798 .feature-telephone{background-position:-0px -4594px;}
3799 .feature-tennis{background-position:-0px -4654px;}
3800 .feature-theatre{background-position:-0px -4714px;}
3801 .feature-toilets{background-position:-0px -4774px;}
3802 .feature-town-hall{background-position:-0px -4834px;}
3803 .feature-triangle{background-position:-0px -4894px;}
3804 .feature-triangle-stroked{background-position:-0px -4954px;}
3805 .feature-warehouse{background-position:-0px -5014px;}
3806 .feature-waste-basket{background-position:-0px -5074px;}
3807 .feature-water{background-position:-0px -5134px;}
3808 .feature-wetland{background-position:-0px -5194px;}
3809 .feature-zoo{background-position:-0px -5254px;}
3810 .preset-icon-line.feature-highway-motorway{background-position:-20px -25px;}
3811 .preset-icon-line.feature-highway-trunk{background-position:-80px -25px;}
3812 .preset-icon-line.feature-highway-primary{background-position:-140px -25px;}
3813 .preset-icon-line.feature-highway-secondary{background-position:-200px -25px;}
3814 .preset-icon-line.feature-highway-tertiary{background-position:-260px -25px;}
3815 .preset-icon-line.feature-highway-motorway-link{background-position:-320px -25px;}
3816 .preset-icon-line.feature-highway-trunk-link{background-position:-380px -25px;}
3817 .preset-icon-line.feature-highway-primary-link{background-position:-440px -25px;}
3818 .preset-icon-line.feature-highway-secondary-link{background-position:-500px -25px;}
3819 .preset-icon-line.feature-highway-tertiary-link{background-position:-560px -25px;}
3820 .preset-icon-line.feature-highway-residential{background-position:-620px -25px;}
3821 .preset-icon-line.feature-highway-unclassified{background-position:-680px -25px;}
3822 .preset-icon-line.feature-highway-service{background-position:-740px -25px;}
3823 .preset-icon-line.feature-highway-road{background-position:-800px -25px;}
3824 .preset-icon-line.feature-highway-track{background-position:-860px -25px;}
3825 .preset-icon-line.feature-highway-living-street{background-position:-920px -25px;}
3826 .preset-icon-line.feature-highway-path{background-position:-980px -25px;}
3827 .preset-icon-line.feature-highway-cycleway{background-position:-1040px -25px;}
3828 .preset-icon-line.feature-highway-footway{background-position:-1100px -25px;}
3829 .preset-icon-line.feature-highway-bridleway{background-position:-1160px -25px;}
3830 .preset-icon-line.feature-highway-steps{background-position:-1220px -25px;}
3831 .preset-icon-line.feature-railway-rail{background-position:-1280px -25px;}
3832 .preset-icon-line.feature-railway-disused{background-position:-1340px -25px;}
3833 .preset-icon-line.feature-railway-abandoned{background-position:-1400px -25px;}
3834 .preset-icon-line.feature-railway-subway{background-position:-1460px -25px;}
3835 .preset-icon-line.feature-railway-light-rail{background-position:-1520px -25px;}
3836 .preset-icon-line.feature-railway-monorail{background-position:-1580px -25px;}
3837 .preset-icon-line.feature-waterway-river{background-position:-1640px -25px;}
3838 .preset-icon-line.feature-waterway-stream{background-position:-1700px -25px;}
3839 .preset-icon-line.feature-waterway-canal{background-position:-1760px -25px;}
3840 .preset-icon-line.feature-waterway-ditch{background-position:-1820px -25px;}
3841 .preset-icon-line.feature-power-line{background-position:-1880px -25px;}
3842 .preset-icon-line.feature-other-line{background-position:-1940px -25px;}
3843 .preset-icon-line.feature-category-roads{background-position:-2000px -25px;}
3844 .preset-icon-line.feature-category-rail{background-position:-2060px -25px;}
3845 .preset-icon-line.feature-category-path{background-position:-2120px -25px;}
3846 .preset-icon-line.feature-category-water{background-position:-2180px -25px;}