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