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