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