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