]> git.openstreetmap.org Git - rails.git/blob - vendor/assets/iD/iD.css.erb
Don't show "Load More" if we found less than 20 changesets
[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/systemed/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-left: 0;
2736     border-right: 0;
2737     border-bottom: 0;
2738     border-radius: 0;
2739 }
2740
2741 .form-field .addr-street {
2742     width: 66.6666%;
2743     border-right: 0;
2744     border-bottom: 0;
2745     border-radius: 0;
2746 }
2747
2748 .form-field .addr-city {
2749     width: 66.6666%;
2750     border-left: 0;
2751     border-right: 0;
2752     border-bottom: 0;
2753     border-radius: 0 0 0 4px;
2754 }
2755
2756 .form-field .addr-postcode {
2757     width: 33.3333%;
2758     border-right: 0;
2759     border-bottom: 0;
2760     border-radius: 0 0 4px 0;
2761 }
2762 /* combobox dropdown */
2763
2764 div.combobox {
2765     z-index: 9999;
2766     display: none;
2767     box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
2768     margin-top: -1px;
2769     background: white;
2770     max-height: 120px;
2771     overflow-y: auto;
2772     overflow-x: hidden;
2773     border: 1px solid #ccc;
2774     border-radius: 0 0 4px 4px;
2775 }
2776
2777 .combobox a {
2778     display: block;
2779     padding: 5px 10px;
2780     border-top:1px solid #ccc;
2781     text-overflow: ellipsis;
2782     white-space: nowrap;
2783     overflow: hidden;
2784 }
2785
2786 .combobox a.selected,
2787 .combobox a:hover {
2788     background: #ececec;
2789 }
2790
2791 .combobox a:first-child {
2792     border-top: 0;
2793 }
2794
2795 .combobox-caret {
2796     display: inline-block;
2797     position: relative;
2798     height: 30px;
2799     width: 30px;
2800     margin-left: -30px;
2801     vertical-align: top;
2802 }
2803
2804 .combobox-caret::after {
2805     content:"";
2806     height: 0; width: 0;
2807     position: absolute;
2808     left: 0; right: 0; bottom: 0; top: 0;
2809     margin: auto;
2810     border-top: 5px solid #ccc;
2811     border-left: 5px solid transparent;
2812     border-right: 5px solid transparent;
2813 }
2814
2815 /* Raw Tag Editor */
2816
2817 .tag-list {
2818     padding-top: 10px;
2819 }
2820
2821 .tag-row {
2822     width: 100%;
2823     position: relative;
2824     clear: both;
2825 }
2826
2827 .tag-row input {
2828     height: 31px;
2829     border: 0;
2830     border-radius: 0;
2831     border-bottom: 1px solid #CCC;
2832     border-left: 1px solid #CCC;
2833 }
2834
2835 .tag-row .key-wrap,
2836 .tag-row .input-wrap-position {
2837     width: 40%;
2838     float: left;
2839     height: 30px;
2840     -webkit-transition: width 200ms;
2841        -moz-transition: width 200ms;
2842          -o-transition: width 200ms;
2843             transition: width 200ms;
2844 }
2845
2846 .tag-row input.key {
2847     font-weight: bold;
2848     background-color: #f6f6f6;
2849 }
2850
2851 .tag-row input.value {
2852     border-right: 1px solid #CCC;
2853 }
2854
2855 .tag-row:first-child input.key {
2856     border-top: 1px solid #CCC;
2857     border-top-left-radius: 4px;
2858 }
2859
2860 .tag-row:first-child input.value {
2861     border-top: 1px solid #CCC;
2862 }
2863
2864 .tag-row button {
2865     position: absolute;
2866     height: 31px;
2867     right: 10%;
2868     border: 1px solid #CCC;
2869     border-top-width: 0;
2870     border-left-width: 0;
2871 }
2872
2873 .tag-row button:hover {
2874     background: #f1f1f1;
2875 }
2876
2877 .tag-row button .icon {
2878     opacity: .5;
2879 }
2880
2881 .tag-row:first-child button {
2882     border-top-width: 1px;
2883 }
2884
2885 .tag-row:first-child .tag-reference-button {
2886     border-top-right-radius: 4px;
2887 }
2888
2889 .tag-row:last-child .tag-reference-button {
2890     border-bottom-right-radius: 4px;
2891 }
2892
2893 .tag-row .tag-reference-button {
2894     right: 0;
2895     border-radius: 0;
2896     width: 10%;
2897     top: 0;
2898     background: #fafafa;
2899 }
2900
2901 /* Adding form fields to tag editor */
2902
2903 .inspector-inner .add-tag {
2904     width: 40%;
2905     height: 30px;
2906     border-top: 0;
2907     background: rgba(0,0,0,.5);
2908     border-radius: 0 0 4px 4px;
2909 }
2910
2911 .inspector-inner .add-tag:hover {
2912     background: rgba(0,0,0,.8);
2913 }
2914
2915 .inspector-inner .add-tag .label {
2916     display: none;
2917 }
2918
2919 /* Tag reference */
2920
2921 button.minor.tag-reference-loading {
2922     background-color: #f5f5f5;
2923 }
2924
2925 .tag-reference-loading .icon {
2926     background-image: url(<%= asset_path("iD/img/mini-loader.gif") %>);
2927     background-position: 0 0;
2928 }
2929
2930 .tag-reference-body {
2931     overflow: hidden;
2932 }
2933
2934 .tag-reference-body p,
2935 .tag-reference-body img {
2936     margin-top: 20px;
2937 }
2938
2939 .tag-reference-body p:last-child {
2940     padding-bottom: 10px;
2941 }
2942
2943 .tag-reference-body a {
2944     display: block;
2945     padding-bottom: 10px;
2946 }
2947
2948 .preset-list .tag-reference-body {
2949     position: relative;
2950     width: 100%;
2951 }
2952
2953 .preset-list .tag-reference-body a {
2954     padding-bottom: 20px;
2955 }
2956
2957 .preset-list .tag-reference-body p,
2958 .preset-list .tag-reference-body img {
2959     margin-top: 10px;
2960 }
2961
2962 .raw-tag-editor .tag-reference-body {
2963     border-bottom: 1px solid #ccc;
2964     float: left;
2965     width: 100%;
2966 }
2967
2968 .raw-tag-editor .tag-reference-body p:last-child {
2969     padding-bottom: 20px;
2970 }
2971
2972 .raw-tag-editor .tag-reference-body a {
2973     padding-bottom: 20px;
2974 }
2975
2976 img.wiki-image {
2977     float: right;
2978     width: 33.3333%;
2979     width: -webkit-calc(33.3333% - 10px);
2980     width: calc(33.3333% - 10px);
2981     margin-left: 20px;
2982     margin-right: 10px;
2983     border-radius: 4px;
2984     max-height: 200px;
2985     margin-bottom: 20px;
2986 }
2987
2988 /* Raw relation membership editor */
2989
2990 .raw-member-editor .member-list li:first-child,
2991 .raw-membership-editor .member-list li:first-child {
2992     padding-top: 10px;
2993 }
2994
2995 .raw-member-editor .member-row,
2996 .raw-membership-editor .member-row {
2997     position: relative;
2998 }
2999
3000 .raw-member-editor .member-row .member-entity-name,
3001 .raw-membership-editor .member-row .member-entity-name {
3002     font-weight: normal;
3003     padding-left: 10px;
3004 }
3005
3006 .member-incomplete .member-delete {
3007     display: none;
3008 }
3009
3010 .member-row-new .member-entity-input {
3011     border-radius: 4px 4px 0 0;
3012     border: 1px solid #cfcfcf;
3013 }
3014
3015 .add-relation {
3016     width: 40%;
3017     height: 30px;
3018     background: rgba(0,0,0,.5);
3019     border-radius: 4px;
3020     margin-top: 10px;
3021 }
3022
3023 .add-relation:hover {
3024     background: rgba(0,0,0,.8);
3025 }
3026
3027 /* Map Controls */
3028
3029 .map-controls {
3030     right: 0;
3031     top: 70px;
3032     width: 40px;
3033     position: fixed;
3034     z-index: 100;
3035 }
3036
3037 .map-control > button {
3038     width: 40px;
3039     background: rgba(0,0,0,.5);
3040     border-radius: 0;
3041 }
3042
3043 .map-control > button:hover {
3044     background: rgba(0, 0, 0, .8);
3045 }
3046
3047 .map-control > button.active,
3048 .map-control > button.active:hover {
3049     background: #7092ff;
3050 }
3051
3052 /* Zoomer */
3053
3054 .zoombuttons button.zoom-in {
3055     border-radius: 4px 0 0 0;
3056 }
3057
3058 /* Background Settings */
3059
3060 .background-control button {
3061     border-radius: 4px 0 0 0;
3062 }
3063
3064 .background-control {
3065     position: relative;
3066 }
3067
3068 .nudge-container {
3069     border: 1px solid #CCC;
3070 }
3071
3072 .background-control .adjustments button:last-child {
3073     border: 0;
3074 }
3075
3076 .background-control .hide-toggle  {
3077     padding-bottom: 10px;
3078 }
3079
3080 .layer-list {
3081     margin-bottom: 10px;
3082     border: 1px solid #CCC;
3083     border-radius: 4px;
3084 }
3085
3086 .layer-list li {
3087     position: relative;
3088     height: 30px;
3089     background-color: white;
3090     color: #7092FF;
3091 }
3092
3093 .layer-list > li:first-child {
3094     border-radius: 3px 3px 0 0;
3095 }
3096
3097 .layer-list > li:last-child {
3098     border-radius: 0 0 3px 3px;
3099 }
3100
3101 .layer-list > li:only-child {
3102     border-radius: 3px;
3103 }
3104
3105 .layer-list li:not(:last-child) {
3106     border-bottom: 1px solid #ccc;
3107 }
3108
3109 .layer-list li:hover {
3110     background-color: #ececec;
3111 }
3112
3113 .layer-list li.active {
3114     background: #E8EBFF;
3115 }
3116
3117 .layer-list label {
3118     display: block;
3119     padding: 5px 10px;
3120     cursor: pointer;
3121 }
3122
3123 .layer-list label > span {
3124     display: block;
3125     overflow: hidden;
3126     white-space: nowrap;
3127     text-overflow: ellipsis;
3128 }
3129
3130 .hide-toggle {
3131     display: block;
3132     padding-left:12px;
3133     position: relative;
3134 }
3135
3136 .hide-toggle:before {
3137     content: '';
3138     display: block;
3139     position: absolute;
3140     height: 0;
3141     width: 0;
3142     left: 0;
3143     top: 5px;
3144     border-top:  4px solid transparent;
3145     border-bottom:  4px solid transparent;
3146     border-left:  8px solid #7092ff;
3147 }
3148
3149 .hide-toggle.expanded:before {
3150     border-top:  8px solid #7092ff;
3151     border-bottom: 0;
3152     border-right:  4px solid transparent;
3153     border-left:  4px solid transparent;
3154 }
3155
3156 .background-control .nudge-container button {
3157     float: left;
3158     display: block;
3159     width:20%;
3160     border-right: 1px solid #CCC;
3161     position: relative;
3162 }
3163
3164 .background-control .nudge::after {
3165     content: '';
3166     display: block;
3167     position: absolute;
3168     margin: auto;
3169     left: 0; right: 0; top: 0; bottom: 0;
3170     height: 0;
3171     width: 0;
3172 }
3173
3174 .background-control .nudge.left::after {
3175     border-top:  5px solid transparent;
3176     border-bottom:  5px solid transparent;
3177     border-left:  5px solid #222;
3178 }
3179
3180 .background-control .nudge.right::after {
3181     border-top:  5px solid transparent;
3182     border-bottom:  5px solid transparent;
3183     border-right:  5px solid #222;
3184 }
3185
3186 .background-control .nudge.top::after {
3187     border-right:  5px solid transparent;
3188     border-left:  5px solid transparent;
3189     border-bottom:  5px solid #222;
3190 }
3191
3192 .background-control .nudge.bottom::after {
3193     border-right:  5px solid transparent;
3194     border-left:  5px solid transparent;
3195     border-top:  5px solid #222;
3196 }
3197
3198 .opacity-options {
3199     background: url(<%= asset_path("iD/img/background-pattern-opacity.png") %>) 0 0 repeat;
3200     height:20px;
3201     width:82px;
3202     position: absolute;
3203     right: 50px;
3204     top: 20px;
3205     border: 1px solid #ccc;
3206 }
3207
3208 .opacity-options li {
3209     height: 100%;
3210     display: block;
3211     float: left;
3212 }
3213
3214 .opacity-options li .select-box{
3215     position: absolute;
3216     width:20px;
3217     height:18px;
3218     z-index: 9999;
3219 }
3220
3221 .background-control li:hover .select-box,
3222 .background-control li.selected .select-box {
3223     border: 2px solid #7092ff;
3224     background: rgba(89, 123, 231, .5);
3225     opacity: .5;
3226 }
3227
3228 .background-control li.selected:hover .select-box,
3229 .background-control li.selected .select-box {
3230     opacity: 1;
3231 }
3232
3233 .background-control .opacity {
3234     background:#222;
3235     display:inline-block;
3236     width:20px;
3237     height:18px;
3238 }
3239
3240 .background-control .layer-toggle-gpx button {
3241     float: right;
3242     height: 100%;
3243     width: 10%;
3244     border-left: 1px solid #CCC;
3245     border-radius: 0;
3246 }
3247
3248 .background-control .layer-toggle-gpx button .icon {
3249     opacity: 0.5;
3250 }
3251
3252 .background-control .layer-toggle-gpx button.layer-extent {
3253     border-radius: 0 3px 3px 0;
3254 }
3255
3256 /* Geolocator */
3257
3258 .geolocate-control {
3259     margin-bottom: 10px;
3260 }
3261
3262 .geolocate-control button {
3263     border-radius: 0 0 0 4px;
3264 }
3265
3266 .map-overlay.content {
3267     position: fixed;
3268     top:60px;
3269     bottom: 30px;
3270     padding: 20px 50px 20px 20px;
3271     right: 0;
3272     overflow: auto;
3273 }
3274
3275 .background-control .map-overlay {
3276     z-index: -1;
3277 }
3278 /* Help */
3279
3280 .help-control button {
3281     border-radius: 0 0 0 4px;
3282 }
3283
3284 .help-wrap p {
3285     font-size: 15px;
3286     margin-bottom: 20px;
3287 }
3288
3289 .help-wrap .left-content .body p code {
3290     padding:2px 4px;
3291     background:#eee;
3292 }
3293
3294 .help-wrap .toc {
3295     /* This is two columns, 41.66666 x .4 = 16.6666 */
3296     width:40%;
3297     float:right;
3298     margin-left: 20px;
3299     margin-bottom: 20px;
3300     padding-left: 5px
3301 }
3302
3303 .help-wrap .toc li a,
3304 .help-wrap .nav a {
3305     display: block;
3306     border: 1px solid #CCC;
3307     padding: 5px 10px;
3308 }
3309
3310 .help-wrap .toc li a {
3311     border-bottom: 0;
3312 }
3313
3314 .help-wrap .toc li a:hover,
3315 .help-wrap .nav a:hover  {
3316     background: #ececec;
3317 }
3318
3319 .help-wrap .toc li a.selected {
3320     background: #E8EBFF;
3321 }
3322
3323 .help-wrap .toc li:first-child a {
3324     border-radius: 4px 4px 0 0;
3325 }
3326
3327 .help-wrap .toc li:nth-last-child(2) a {
3328     border-bottom: 1px solid #CCC;
3329     border-radius: 0 0 4px 4px
3330 }
3331
3332 .help-wrap .toc li.walkthrough a {
3333     overflow: hidden;
3334     margin-top: 10px;
3335     border-bottom: 1px solid #ccc;
3336     border-radius: 4px;
3337 }
3338
3339 .help-wrap .nav {
3340     position: relative;
3341 }
3342
3343 .help-wrap .nav a {
3344     float: left;
3345     width: 50%;
3346     text-align: center;
3347 }
3348
3349 .help-wrap .nav a:first-child {
3350     border-radius: 4px 0 0 4px;
3351 }
3352
3353 .help-wrap .nav a:last-child:not(:only-child) {
3354     border-radius: 0 4px 4px 0;
3355     border-left: 0;
3356 }
3357
3358 .help-wrap .nav a:only-child {
3359     width: 100%;
3360     border-radius: 4px;
3361 }
3362
3363 /* Map
3364 ------------------------------------------------------- */
3365
3366 #map {
3367     position:relative;
3368     overflow:hidden;
3369     height:100%;
3370     background:#000;
3371 }
3372
3373 #supersurface {
3374     transform-origin:0 0;
3375     -ms-transform-origin:0 0;
3376     -webkit-transform-origin:0 0;
3377     -moz-transform-origin:0 0;
3378     -o-transform-origin:0 0;
3379     -moz-user-select: none;
3380     -webkit-user-select: none;
3381     -ms-user-select: none;
3382     user-select: none;
3383 }
3384
3385 #supersurface, .layer-layer {
3386     position: absolute;
3387     top: 0;
3388     left: 0;
3389     right: 0;
3390     bottom: 0;
3391 }
3392
3393 /* About Section
3394 ------------------------------------------------------- */
3395
3396 .about-block {
3397     position: absolute;
3398     right:0;
3399     bottom:0;
3400     border-radius: 0;
3401     opacity: .625;
3402     -webkit-transition: opacity 200ms;
3403     -moz-transition: opacity 200ms;
3404     transition: opacity 200ms;
3405 }
3406
3407 .about-block:hover {
3408     opacity: 1;
3409 }
3410
3411 #about {
3412     text-align: right;
3413     margin-right: 10px;
3414 }
3415
3416 .source-switch a {
3417     padding: 2px 4px 4px 4px;
3418     border-radius: 2px;
3419 }
3420 .source-switch a.live {
3421     background: #d32232;
3422     color:#fff;
3423 }
3424
3425 /* Attribution overlay */
3426 .base-layer-attribution,
3427 .overlay-layer-attribution {
3428     position: absolute;
3429     bottom: 35px;
3430     color: #888;
3431     font-size: 10px;
3432 }
3433
3434 .base-layer-attribution {
3435     left: 10px;
3436 }
3437
3438 .overlay-layer-attribution {
3439     right: 10px;
3440 }
3441
3442 .overlay-layer-attribution .attribution:not(:last-child):after {
3443     content: '; ';
3444 }
3445
3446 .source-image {
3447     height:20px;
3448     vertical-align:top;
3449 }
3450
3451 .user-list a:not(:last-child):after {
3452     content: ', ';
3453 }
3454
3455 /* API Status */
3456
3457 .api-status {
3458     float: left;
3459 }
3460
3461 .api-status.offline,
3462 .api-status.readonly {
3463     background: red;
3464     padding: 5px 10px;
3465 }
3466
3467 /* Account Information */
3468
3469 .account {
3470     float: left;
3471     padding: 5px 10px;
3472 }
3473
3474 .account .logout {
3475     margin-left:10px;
3476     border-left: 1px solid white;
3477     padding-left: 10px;
3478 }
3479
3480 /* Modals
3481 ------------------------------------------------------- */
3482
3483 .modal {
3484     display: inline-block;
3485     position:absolute;
3486     left: 0;
3487     right: 0;
3488     margin: auto;
3489     z-index: 3;
3490 }
3491
3492 .modal .loader {
3493     margin-bottom: 10px;
3494 }
3495
3496 .modal .description {
3497     text-align: center;
3498 }
3499
3500 .shaded {
3501     z-index: 2;
3502     position: absolute;
3503     top: 0;
3504     bottom: 0;
3505     left: 0;
3506     right: 0;
3507     overflow: auto;
3508 }
3509
3510 .shaded:before {
3511     content:'';
3512     background:rgba(0,0,0,0.5);
3513     position:fixed;
3514     left:0px; right:0px; top:0px; bottom:0px;
3515 }
3516
3517 .modal-section {
3518     padding: 20px;
3519     border-bottom: 1px solid #CCC;
3520 }
3521
3522 .modal-section:last-child {
3523     border-bottom: 0;
3524 }
3525
3526 .loading-modal {
3527     text-align: center;
3528 }
3529
3530 .modal-actions button,
3531 .save-success a.button {
3532     font-weight: normal;
3533     color: #7092FF;
3534     border-bottom: 1px solid #CCC;
3535     border-radius: 0;
3536     height: 160px;
3537     text-align: center;
3538     display: inline-block;
3539 }
3540
3541 .modal-actions button:hover
3542 .save-success a.button:hover {
3543     background-color: #ececec;
3544 }
3545
3546 .modal-actions button:before,
3547 .save-success a.button:before,
3548 .walkthrough a:before {
3549     display: block;
3550     content: '';
3551     height: 100px;
3552     width: 100px;
3553     margin: auto;
3554     margin-bottom: 10px;
3555     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat 0 -220px;
3556 }
3557
3558 .modal-actions :first-child {
3559     border-right: 1px solid #CCC;
3560 }
3561
3562 /* Restore Modal
3563 ------------------------------------------------------- */
3564
3565 .modal-actions .restore:before {
3566     background-position: -600px -220px;
3567 }
3568
3569 .modal-actions .reset:before {
3570     background-position: -700px -220px;
3571 }
3572
3573 /* Success Modal
3574 ------------------------------------------------------- */
3575
3576 .save-success p {
3577     padding: 15px;
3578 }
3579
3580 .save-success .button {
3581     padding-top: 15px;
3582 }
3583
3584 .save-success .button.social {
3585     height: 80px;
3586 }
3587
3588 .save-success .button.social:before {
3589     height: 50px;
3590 }
3591
3592 .save-success .button.osm:before {
3593     background-position: 0px -220px;
3594 }
3595
3596 .save-success .button.twitter:before {
3597     background-position: -100px -245px;
3598 }
3599
3600 .save-success .button.facebook:before {
3601     background-position: -200px -245px;
3602 }
3603
3604 .save-success .button.google:before {
3605     background-position: -300px -245px;
3606 }
3607
3608 /* Splash Modal
3609 ------------------------------------------------------- */
3610
3611 .modal-actions .walkthrough:before,
3612 .walkthrough a:before {
3613     background-position: -400px -220px;
3614 }
3615
3616 .modal-actions .start:before {
3617     background-position: -500px -220px;
3618 }
3619
3620 /* Commit Modal
3621 ------------------------------------------------------- */
3622
3623 .mode-save a.user-info {
3624     display: inline-block;
3625 }
3626
3627 .mode-save .commit-form {
3628     margin-bottom: 0;
3629 }
3630
3631 .mode-save button.action {
3632     float: none;
3633     margin: auto;
3634     display: block;
3635     color: white;
3636     font-size: 14px;
3637 }
3638
3639 .mode-save .user-info img {
3640     float: left;
3641 }
3642
3643 .mode-save h3 small.count {
3644     margin-right: 10px;
3645     text-align: center;
3646     float: left;
3647     height: 12px;
3648     min-width: 12px;
3649     font-size:12px;
3650     line-height: 12px;
3651     border-radius:24px;
3652     padding:5px;
3653     background:#7092ff;
3654     color:#fff;
3655 }
3656
3657 .mode-save .commit-info {
3658     margin-bottom: 10px;
3659 }
3660
3661 .mode-save .changeset-list {
3662     border:1px solid #ccc;
3663     border-radius: 4px;
3664     background:#fff;
3665 }
3666
3667 .mode-save .warning-section .changeset-list button {
3668     border-left: 1px solid #CCC;
3669 }
3670
3671 .mode-save .changeset-list li {
3672     position: relative;
3673     border-top:1px solid #ccc;
3674     padding:5px 10px;
3675     cursor: pointer;
3676 }
3677
3678 .mode-save .changeset-list li:hover {
3679     background-color: #ececec;
3680 }
3681
3682 .mode-save .changeset-list .alert {
3683     opacity: 0.5;
3684 }
3685
3686 .changeset-list li span.count {
3687     font-size:10px;
3688     color:#555;
3689 }
3690
3691 .mode-save .commit-section .changeset-list button {
3692     border-left: 1px solid #CCC;
3693 }
3694
3695 .changeset-list li span.count:before { content: '('; }
3696
3697 .changeset-list li span.count:after { content: ')'; }
3698
3699 .changeset-list li:first-child { border-top: 0;}
3700
3701 /* Notices
3702 ------------------------------------------------------- */
3703
3704 .notice {
3705     position: absolute;
3706     top: 0;
3707     bottom: 0;
3708     left: 0;
3709     right: 0;
3710     text-align: center;
3711     background: #fff;
3712 }
3713
3714 .notice .zoom-to {
3715     margin: auto;
3716     width: 80%;
3717     height: 100px;
3718     border-radius: 5px;
3719     line-height: 40px;
3720     color: #000;
3721     opacity: 0.9;
3722 }
3723
3724 .notice .zoom-to:hover {
3725     background: #d8e1ff;
3726 }
3727
3728 .notice .zoom-to .icon {
3729     margin-top:10px;
3730     margin-right:10px;
3731 }
3732
3733 .icon.zoom-in-invert {
3734     background-position: -240px -40px;
3735 }
3736
3737 /* Tooltips
3738 ------------------------------------------------------- */
3739
3740 .tooltip {
3741     position: absolute;
3742     display: none;
3743     color:#333;
3744     text-align: left;
3745     font-size: 12px;
3746 }
3747
3748 .tooltip.in {
3749     opacity: 0.8;
3750     z-index: 1030;
3751     height: auto;
3752     display: block;
3753 }
3754
3755 .tooltip.top {
3756     margin-top: -20px;
3757     text-align: center;
3758 }
3759
3760 .tooltip.right {
3761     margin-left: 20px;
3762 }
3763
3764 .tooltip.bottom {
3765     margin-top: 20px;
3766     text-align: center;
3767 }
3768
3769 .tooltip.left {
3770     margin-left: -20px;
3771     text-align: right;
3772 }
3773
3774 .tooltip-inner {
3775     display: inline-block;
3776     max-width: 200px;
3777     min-width: 80px;
3778     padding: 10px;
3779     font-weight: normal;
3780     background-color: white;
3781 }
3782
3783 .tail {
3784     width: 200px;
3785     height: 400px;
3786     pointer-events: none;
3787     opacity: .8;
3788     margin-top: -200px;
3789     position: absolute;
3790     background: transparent;
3791 }
3792
3793 .tail::after {
3794     content: "";
3795     position: absolute;
3796     width: 0;
3797     height: 0;
3798     border-color: transparent;
3799     border-style: solid;
3800     top: 50%;
3801     right: -5px;
3802     margin-top: -5px;
3803     border-left-color: white;
3804     border-width: 5px 0 5px 5px;
3805 }
3806
3807 .tail div {
3808     padding: 10px;
3809     background: white;
3810     position: absolute;
3811     top: 180px;
3812     left: 0;
3813     right: 0;
3814     margin: auto;
3815 }
3816
3817 .left.tail::after {
3818     content: "";
3819     position: absolute;
3820     width: 0;
3821     height: 0;
3822     border-color: transparent;
3823     border-style: solid;
3824     top: 50%;
3825     left: -5px;
3826     margin-top: -5px;
3827     border-right-color: white;
3828     border-width: 5px 5px 5px 0;
3829 }
3830
3831 .tooltip-arrow {
3832     position: absolute;
3833     width: 0;
3834     height: 0;
3835     border-color: transparent;
3836     border-style: solid;
3837 }
3838
3839 .tooltip.top .tooltip-arrow {
3840     bottom: -5px;
3841     left: 50%;
3842     margin-left: -5px;
3843     border-top-color: white;
3844     border-width: 5px 5px 0;
3845 }
3846
3847 .tooltip.right .tooltip-arrow {
3848     top: 50%;
3849     left: -5px;
3850     margin-top: -5px;
3851     border-right-color: white;
3852     border-width: 5px 5px 5px 0;
3853 }
3854
3855 .tooltip.left .tooltip-arrow {
3856     top: 50%;
3857     right: -5px;
3858     margin-top: -5px;
3859     border-left-color: white;
3860     border-width: 5px 0 5px 5px;
3861 }
3862
3863 .tooltip.bottom .tooltip-arrow {
3864     top: -5px;
3865     left: 50%;
3866     margin-left: -5px;
3867     border-bottom-color: white;
3868     border-width: 0 5px 5px;
3869 }
3870
3871 .keyhint-wrap {
3872     background: #F6F6F6;
3873     padding: 10px;
3874     margin: 10px -10px -10px;
3875 }
3876
3877 .tooltip-inner .keyhint {
3878     font-size: 10px;
3879     padding: 0 7px;
3880     font-weight: bold;
3881     display: inline-block;
3882     border-radius: 2px;
3883     border: 1px solid #CCC;
3884     position: relative;
3885     z-index: 1;
3886     text-align: left;
3887 }
3888
3889 .tooltip-inner .keyhint::after {
3890     content: "";
3891     position: absolute;
3892     border-radius: 2px;
3893     height: 10px;
3894     width: 100%;
3895     z-index: 0;
3896     bottom: -4px;
3897     left: -1px;
3898     border: 1px solid #CCC;
3899     border-top: 0;
3900 }
3901
3902 /* Exceptions for tooltip layouts */
3903
3904 /* make tooltips in panels dark */
3905 .map-overlay .tooltip.top .tooltip-arrow,
3906 .entity-editor-pane .tooltip.top .tooltip-arrow,
3907 .warning-section .tooltip.top .tooltip-arrow {
3908     border-top-color: #000;
3909 }
3910
3911 .map-overlay .tooltip.bottom .tooltip-arrow,
3912 .entity-editor-pane .tooltip.bottom .tooltip-arrow,
3913 .warning-section .tooltip.bottom .tooltip-arrow {
3914     border-bottom-color: #000;
3915 }
3916
3917 .map-overlay .tooltip.left .tooltip-arrow,
3918 .entity-editor-pane .tooltip.left .tooltip-arrow,
3919 .warning-section .tooltip.left .tooltip-arrow {
3920     border-left-color: #000;
3921 }
3922
3923 .map-overlay .tooltip.right .tooltip-arrow,
3924 .entity-editor-pane .tooltip.right .tooltip-arrow,
3925 .warning-section .tooltip.right .tooltip-arrow {
3926     border-right-color: #000;
3927 }
3928
3929 .map-overlay .tooltip-inner,
3930 .entity-editor-pane .tooltip-inner,
3931 .warning-section .tooltip-inner {
3932     background: #000;
3933     color: #ccc;
3934 }
3935 /* commit warning tooltips need to be closer */
3936 .warning-section .tooltip.top {
3937     margin-top: -5px;
3938 }
3939
3940 /* Uncramp map-control tooltips */
3941 .map-control .tooltip {
3942     min-width: 160px;
3943 }
3944 /* Move over tooltips that are near the edge of screen */
3945 .add-point .tooltip {
3946     left: 33.3333% !important;
3947 }
3948
3949 .curtain-tooltip.intro-points-add .tooltip-arrow,
3950 .add-point .tooltip .tooltip-arrow {
3951     left: 60px;
3952 }
3953
3954 .radial-menu-tooltip {
3955     opacity: 0.8;
3956     display: none;
3957     position: absolute;
3958     width: 200px;
3959 }
3960
3961 .radial-menu-background {
3962     stroke: black;
3963     stroke-opacity: 0.5;
3964 }
3965
3966 .radial-menu-item {
3967     fill: white;
3968 }
3969
3970 .radial-menu-item:hover {
3971     fill: #ececec;
3972 }
3973
3974 .radial-menu-item:active {
3975     fill: #ececec;
3976 }
3977
3978 .radial-menu-item.disabled {
3979     cursor: auto;
3980     fill: rgba(255,255,255,.5);
3981 }
3982
3983 .radial-menu .icon {
3984     pointer-events: none;
3985 }
3986
3987 .lasso-box {
3988     fill-opacity:0.1;
3989     stroke: #fff;
3990     stroke-width: 1;
3991     stroke-opacity: 1;
3992     stroke-dasharray: 5, 5;
3993 }
3994
3995 /* Media Queries
3996 ------------------------------------------------------- */
3997
3998 @media only screen and (max-width: 840px) {
3999     #bar .icon.icon-pre-text { margin-right: 0;}
4000     /* override hide for save button */
4001     #bar .save .label { display: block;}
4002 }
4003
4004 /* Scrollbars
4005  ----------------------------------------------------- */
4006
4007 ::-webkit-scrollbar {
4008     height: 20px;
4009     overflow: visible;
4010     width: 10px;
4011     background: white;
4012     border-left: 1px solid #DDD;
4013 }
4014
4015 ::-webkit-scrollbar-track {
4016     background-clip: padding-box;
4017     border: solid transparent;
4018     border-width: 0;
4019 }
4020
4021 ::-webkit-scrollbar-thumb {
4022     background-color: rgba(0,0,0,.2);
4023     background-clip: padding-box;
4024     border: solid transparent;
4025     border-width: 3px 3px 3px 4px;
4026     border-radius: 6px;
4027 }
4028 ::-webkit-scrollbar-track:hover,
4029 ::-webkit-scrollbar-track:active {
4030     background-color: rgba(0,0,0,.05);
4031 }
4032
4033 /* Intro walkthrough
4034  ----------------------------------------------------- */
4035
4036 .curtain-darkness {
4037     pointer-events: all;
4038     fill-opacity: 0.7;
4039     fill: #222;
4040     fill-rule: evenodd;
4041 }
4042
4043 .intro-nav-wrap {
4044     position: absolute;
4045     left: 0;
4046     right: 0;
4047     bottom: 30px;
4048     padding: 10px;
4049     z-index: 1001;
4050 }
4051
4052 .intro-nav-wrap button.step {
4053     width: 20%;
4054 }
4055
4056 .intro-nav-wrap button.step.finished {
4057     background: #8cd05f;
4058 }
4059
4060 .intro-nav-wrap button.step .icon {
4061     display: none;
4062 }
4063
4064 .intro-nav-wrap button.step.finished .icon {
4065     display: inline-block;
4066 }
4067
4068
4069 .curtain-tooltip .tooltip-inner {
4070     text-align: left;
4071     padding: 20px;
4072 }
4073
4074 .curtain-tooltip .tooltip-inner {
4075     font-size: 15px;
4076 }
4077
4078 .curtain-tooltip .tooltip-inner .bold {
4079     font-weight: bold;
4080     display: block;
4081     border-top: 1px solid #CCC;
4082     margin-top: 10px;
4083     margin-left: -20px;
4084     margin-right: -20px;
4085     padding: 10px 20px 0 20px;
4086 }
4087
4088 .curtain-tooltip .tooltip-inner .bold:only-child {
4089     border: 0;
4090     padding: 0;
4091     margin: 0;
4092 }
4093
4094 .curtain-tooltip.intro-points-describe {
4095     top: 133px !important;
4096 }
4097
4098 /* Tooltip illustrations */
4099
4100 .intro-points-add .tooltip-inner::before,
4101 .intro-areas-add .tooltip-inner::before,
4102 .intro-lines-add .tooltip-inner::before {
4103     margin-left: -20px;
4104     display: block;
4105     content: "";
4106     height: 80px;
4107     width: 200px;
4108     background:transparent url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat 0 -320px;
4109 }
4110
4111 .intro-areas-add .tooltip-inner::before {
4112     background-position: 0 -400px;
4113 }
4114
4115 .intro-lines-add .tooltip-inner::before {
4116     background-position: 0 -480px;
4117 }
4118
4119 .huge-modal-button {
4120     width: 100%;
4121     height: auto;
4122     padding: 20px;
4123 }
4124
4125 .huge-modal-button .illustration {
4126     height: 100px;
4127     width: 100px;
4128     background: rgba(0, 0, 0, 0) url(<%= asset_path("iD/img/sprite.svg") %>) no-repeat -400px -220px;
4129     margin: auto;
4130 }
4131 /* This file is generated by make. Do NOT edit manually. */
4132
4133 .preset-icon{background-image:url(<%= asset_path("iD/img/maki-sprite.png") %>);background-repeat:no-repeat;width:24px;height:24px;}
4134 .preset-icon-line{background-image:url(<%= asset_path("iD/img/line-presets.png") %>);background-repeat:no-repeat;width:60px;height:60px;}
4135 .preset-icon-relation{background-image:url(<%= asset_path("iD/img/relation-presets.png") %>);background-repeat:no-repeat;width:60px;height:60px;}
4136 .feature-circle-stroked{background-position:-0px -0px;}
4137 .feature-circle{background-position:-54px -0px;}
4138 .feature-square-stroked{background-position:-108px -0px;}
4139 .feature-square{background-position:-162px -0px;}
4140 .feature-triangle-stroked{background-position:-216px -0px;}
4141 .feature-triangle{background-position:-0px -24px;}
4142 .feature-star-stroked{background-position:-54px -24px;}
4143 .feature-star{background-position:-108px -24px;}
4144 .feature-cross{background-position:-162px -24px;}
4145 .feature-marker-stroked{background-position:-216px -24px;}
4146 .feature-marker{background-position:-0px -48px;}
4147 .feature-religious-jewish{background-position:-54px -48px;}
4148 .feature-religious-christian{background-position:-108px -48px;}
4149 .feature-religious-muslim{background-position:-162px -48px;}
4150 .feature-cemetery{background-position:-216px -48px;}
4151 .feature-rocket{background-position:-0px -72px;}
4152 .feature-airport{background-position:-54px -72px;}
4153 .feature-heliport{background-position:-108px -72px;}
4154 .feature-rail{background-position:-162px -72px;}
4155 .feature-rail-metro{background-position:-216px -72px;}
4156 .feature-rail-light{background-position:-0px -96px;}
4157 .feature-bus{background-position:-54px -96px;}
4158 .feature-fuel{background-position:-108px -96px;}
4159 .feature-parking{background-position:-162px -96px;}
4160 .feature-parking-garage{background-position:-216px -96px;}
4161 .feature-airfield{background-position:-0px -120px;}
4162 .feature-roadblock{background-position:-54px -120px;}
4163 .feature-ferry{background-position:-108px -120px;}
4164 .feature-harbor{background-position:-162px -120px;}
4165 .feature-bicycle{background-position:-216px -120px;}
4166 .feature-park{background-position:-0px -144px;}
4167 .feature-park2{background-position:-54px -144px;}
4168 .feature-museum{background-position:-108px -144px;}
4169 .feature-lodging{background-position:-162px -144px;}
4170 .feature-monument{background-position:-216px -144px;}
4171 .feature-zoo{background-position:-0px -168px;}
4172 .feature-garden{background-position:-54px -168px;}
4173 .feature-campsite{background-position:-108px -168px;}
4174 .feature-theatre{background-position:-162px -168px;}
4175 .feature-art-gallery{background-position:-216px -168px;}
4176 .feature-pitch{background-position:-0px -192px;}
4177 .feature-soccer{background-position:-54px -192px;}
4178 .feature-america-football{background-position:-108px -192px;}
4179 .feature-tennis{background-position:-162px -192px;}
4180 .feature-basketball{background-position:-216px -192px;}
4181 .feature-baseball{background-position:-0px -216px;}
4182 .feature-golf{background-position:-54px -216px;}
4183 .feature-swimming{background-position:-108px -216px;}
4184 .feature-cricket{background-position:-162px -216px;}
4185 .feature-skiing{background-position:-216px -216px;}
4186 .feature-school{background-position:-0px -240px;}
4187 .feature-college{background-position:-54px -240px;}
4188 .feature-library{background-position:-108px -240px;}
4189 .feature-post{background-position:-162px -240px;}
4190 .feature-fire-station{background-position:-216px -240px;}
4191 .feature-town-hall{background-position:-0px -264px;}
4192 .feature-police{background-position:-54px -264px;}
4193 .feature-prison{background-position:-108px -264px;}
4194 .feature-embassy{background-position:-162px -264px;}
4195 .feature-beer{background-position:-216px -264px;}
4196 .feature-restaurant{background-position:-0px -288px;}
4197 .feature-cafe{background-position:-54px -288px;}
4198 .feature-shop{background-position:-108px -288px;}
4199 .feature-fast-food{background-position:-162px -288px;}
4200 .feature-bar{background-position:-216px -288px;}
4201 .feature-bank{background-position:-0px -312px;}
4202 .feature-grocery{background-position:-54px -312px;}
4203 .feature-cinema{background-position:-108px -312px;}
4204 .feature-pharmacy{background-position:-162px -312px;}
4205 .feature-hospital{background-position:-216px -312px;}
4206 .feature-danger{background-position:-0px -336px;}
4207 .feature-industrial{background-position:-54px -336px;}
4208 .feature-warehouse{background-position:-108px -336px;}
4209 .feature-commercial{background-position:-162px -336px;}
4210 .feature-building{background-position:-216px -336px;}
4211 .feature-place-of-worship{background-position:-0px -360px;}
4212 .feature-alcohol-shop{background-position:-54px -360px;}
4213 .feature-logging{background-position:-108px -360px;}
4214 .feature-oil-well{background-position:-162px -360px;}
4215 .feature-slaughterhouse{background-position:-216px -360px;}
4216 .feature-dam{background-position:-0px -384px;}
4217 .feature-water{background-position:-54px -384px;}
4218 .feature-wetland{background-position:-108px -384px;}
4219 .feature-disability{background-position:-162px -384px;}
4220 .feature-telephone{background-position:-216px -384px;}
4221 .feature-emergency-telephone{background-position:-0px -408px;}
4222 .feature-toilets{background-position:-54px -408px;}
4223 .feature-waste-basket{background-position:-108px -408px;}
4224 .feature-music{background-position:-162px -408px;}
4225 .feature-land-use{background-position:-216px -408px;}
4226 .feature-city{background-position:-0px -432px;}
4227 .feature-town{background-position:-54px -432px;}
4228 .feature-village{background-position:-108px -432px;}
4229 .feature-farm{background-position:-162px -432px;}
4230 .feature-bakery{background-position:-216px -432px;}
4231 .feature-dog-park{background-position:-0px -456px;}
4232 .feature-lighthouse{background-position:-54px -456px;}
4233 .feature-clothing-store{background-position:-108px -456px;}
4234 .feature-polling-place{background-position:-162px -456px;}
4235 .feature-playground{background-position:-216px -456px;}
4236 .feature-entrance{background-position:-0px -480px;}
4237 .feature-heart{background-position:-54px -480px;}
4238 .feature-london-underground{background-position:-108px -480px;}
4239 .feature-minefield{background-position:-162px -480px;}
4240 .feature-rail-underground{background-position:-216px -480px;}
4241 .feature-rail-above{background-position:-0px -504px;}
4242 .feature-camera{background-position:-54px -504px;}
4243 .feature-laundry{background-position:-108px -504px;}
4244 .feature-car{background-position:-162px -504px;}
4245 .feature-suitcase{background-position:-216px -504px;}
4246 .preset-icon-line.feature-highway-motorway{background-position:-20px -25px;}
4247 .preset-icon-line.feature-highway-trunk{background-position:-80px -25px;}
4248 .preset-icon-line.feature-highway-primary{background-position:-140px -25px;}
4249 .preset-icon-line.feature-highway-secondary{background-position:-200px -25px;}
4250 .preset-icon-line.feature-highway-tertiary{background-position:-260px -25px;}
4251 .preset-icon-line.feature-highway-motorway-link{background-position:-320px -25px;}
4252 .preset-icon-line.feature-highway-trunk-link{background-position:-380px -25px;}
4253 .preset-icon-line.feature-highway-primary-link{background-position:-440px -25px;}
4254 .preset-icon-line.feature-highway-secondary-link{background-position:-500px -25px;}
4255 .preset-icon-line.feature-highway-tertiary-link{background-position:-560px -25px;}
4256 .preset-icon-line.feature-highway-residential{background-position:-620px -25px;}
4257 .preset-icon-line.feature-highway-unclassified{background-position:-680px -25px;}
4258 .preset-icon-line.feature-highway-service{background-position:-740px -25px;}
4259 .preset-icon-line.feature-highway-road{background-position:-800px -25px;}
4260 .preset-icon-line.feature-highway-track{background-position:-860px -25px;}
4261 .preset-icon-line.feature-highway-living-street{background-position:-920px -25px;}
4262 .preset-icon-line.feature-highway-path{background-position:-980px -25px;}
4263 .preset-icon-line.feature-highway-cycleway{background-position:-1040px -25px;}
4264 .preset-icon-line.feature-highway-footway{background-position:-1100px -25px;}
4265 .preset-icon-line.feature-highway-bridleway{background-position:-1160px -25px;}
4266 .preset-icon-line.feature-highway-steps{background-position:-1220px -25px;}
4267 .preset-icon-line.feature-railway-rail{background-position:-1280px -25px;}
4268 .preset-icon-line.feature-railway-disused{background-position:-1340px -25px;}
4269 .preset-icon-line.feature-railway-abandoned{background-position:-1400px -25px;}
4270 .preset-icon-line.feature-railway-subway{background-position:-1460px -25px;}
4271 .preset-icon-line.feature-railway-light-rail{background-position:-1520px -25px;}
4272 .preset-icon-line.feature-railway-monorail{background-position:-1580px -25px;}
4273 .preset-icon-line.feature-waterway-river{background-position:-1640px -25px;}
4274 .preset-icon-line.feature-waterway-stream{background-position:-1700px -25px;}
4275 .preset-icon-line.feature-waterway-canal{background-position:-1760px -25px;}
4276 .preset-icon-line.feature-waterway-ditch{background-position:-1820px -25px;}
4277 .preset-icon-line.feature-power-line{background-position:-1880px -25px;}
4278 .preset-icon-line.feature-other-line{background-position:-1940px -25px;}
4279 .preset-icon-line.feature-category-roads{background-position:-2000px -25px;}
4280 .preset-icon-line.feature-category-rail{background-position:-2060px -25px;}
4281 .preset-icon-line.feature-category-path{background-position:-2120px -25px;}
4282 .preset-icon-line.feature-category-water{background-position:-2180px -25px;}
4283 .preset-icon-line.feature-ferry{background-position:-2240px -25px;}
4284 .preset-icon-line.feature-pipeline{background-position:-2300px -25px;}
4285 .preset-icon-relation.feature-relation{background-position:-20px -25px;}
4286 .preset-icon-relation.feature-restriction{background-position:-80px -25px;}
4287 .preset-icon-relation.feature-multipolygon{background-position:-140px -25px;}
4288 .preset-icon-relation.feature-boundary{background-position:-200px -25px;}
4289 .preset-icon-relation.feature-route{background-position:-260px -25px;}
4290 .preset-icon-relation.feature-route-road{background-position:-320px -25px;}
4291 .preset-icon-relation.feature-route-bicycle{background-position:-380px -25px;}
4292 .preset-icon-relation.feature-route-foot{background-position:-440px -25px;}
4293 .preset-icon-relation.feature-route-bus{background-position:-500px -25px;}
4294 .preset-icon-relation.feature-route-train{background-position:-560px -25px;}
4295 .preset-icon-relation.feature-route-detour{background-position:-620px -25px;}
4296 .preset-icon-relation.feature-route-tram{background-position:-680px -25px;}
4297 .preset-icon-relation.feature-route-ferry{background-position:-740px -25px;}
4298 .preset-icon-relation.feature-route-power{background-position:-800px -25px;}
4299 .preset-icon-relation.feature-route-pipeline{background-position:-860px -25px;}
4300 .preset-icon-relation.feature-route-master{background-position:-920px -25px;}