]> git.openstreetmap.org Git - rails.git/blob - app/assets/stylesheets/common.scss
Don't highlight border when hovering on user-menu button
[rails.git] / app / assets / stylesheets / common.scss
1 @import "parameters";
2 @import "bootstrap-custom";
3
4 /* Styles common to large and small screens */
5
6 .fillL { background-color: white; }
7
8 /* Default rules for the body of every page */
9
10 body {
11   font-family: 'Helvetica Neue',Arial,sans-serif;
12   font-size: $typeheight;
13   line-height: 1.6666;
14   color: #222;
15   background-color: #fff;
16   margin: 0px;
17   padding: 0px;
18   text-align: left;
19   height: 100%;
20 }
21
22 p > img {
23   width: auto;
24   max-width: 100%;
25 }
26
27 small, aside {
28   font-size: 12px;
29 }
30
31 #container { position: relative; }
32
33 .column-1 {
34   width: 50%;
35   margin: 0 0 $lineheight/2 0;
36 }
37
38 .small_icon {
39   vertical-align: middle;
40   margin-right: $lineheight/4;
41 }
42
43 .red { color: $red; }
44
45 .piwik { border: 0; }
46
47 [dir=rtl] { /* no-r2 */ text-align: right; }
48
49 [dir=ltr] { /* no-r2 */ text-align: left; }
50
51 /* Rules for icons */
52
53 .icon {
54   display: inline-block;
55   vertical-align: top;
56   width: 20px;
57   height: 20px;
58   background: transparent image-url("sprite.png") no-repeat 0 0;
59   background-image: image-url("sprite.svg");
60   text-indent: -9999px;
61   overflow: hidden;
62 }
63
64 .icon.search      { /* no-r2 */ background-position: 0 0; }
65 .icon.donate      { /* no-r2 */ background-position: -20px 0; }
66 .icon.zoomin      { /* no-r2 */ background-position: -40px 0; }
67 .icon.zoomout     { /* no-r2 */ background-position: -60px 0; }
68 .icon.geolocate   { /* no-r2 */ background-position: -80px 0; }
69 .active .icon.geolocate   { /* no-r2 */ background-position: -80px -20px; }
70 .icon.layers      { /* no-r2 */ background-position: -100px 0; }
71 .icon.key         { /* no-r2 */ background-position: -120px 0; }
72 .icon.share       { /* no-r2 */ background-position: -140px 0; }
73 .icon.clipboard   { /* no-r2 */ background-position: -160px 0; }
74 .icon.link        { /* no-r2 */ background-position: -180px 0; }
75 .icon.close       { /* no-r2 */ background-position: -200px 0; }
76 .close-wrap:hover .icon.close,
77 .icon.close:hover { /* no-r2 */ background-position: -200px -20px; }
78 .icon.check       { /* no-r2 */ background-position: -220px 0; }
79 .icon.note        { /* no-r2 */ background-position: -240px 0; }
80 .icon.note.grey   { /* no-r2 */ background-position: -240px -20px; }
81 .icon.query       { /* no-r2 */ background-position: -260px 0; }
82
83 /* Rules for links */
84
85 a {
86   color: #24d;
87   text-decoration: none;
88   -webkit-appearance: none;
89   outline: 0;
90   &:hover {
91     text-decoration: underline;
92   }
93 }
94
95 /* General styles for tables */
96
97 table {
98   width: 100%;
99   margin-bottom: $lineheight;
100   th, td {
101     text-align: left;
102     padding: $lineheight/4;
103     line-height: $lineheight;
104   }
105   th {
106     font-weight: 600;
107     vertical-align: top;
108   }
109   td {
110     vertical-align: middle;
111   }
112 }
113
114 /* Utility for de-emphasizing content */
115
116 .deemphasize {
117   color: $darkgrey;
118   a {
119     color: $blue;
120   }
121 }
122
123 /* Rules for the header */
124
125 #menu-icon {
126   display: none !important;
127   float: right;
128   background: image-url("menu-icon.png") no-repeat;
129   background-size: 30px 30px;
130   display: block;
131   width: 30px;
132   height: 30px;
133   margin: 14px 10px 0 0;
134   opacity: 0.6;
135 }
136
137 header {
138   height: $headerHeight;
139   position: relative;
140   z-index: 1001;
141   font-size: 14px;
142
143   h1, nav, nav > ul, nav > ul > li {
144     display: inline-block;
145   }
146
147   > * {
148     height: 100%;
149     padding: $lineheight/2;
150   }
151
152   h1, nav.primary {
153     float: left;
154   }
155
156   a, a:hover {
157     text-decoration: none;
158   }
159
160   img.logo {
161     width: 30px;
162     height: 30px;
163     margin-top: -2px;
164     vertical-align: middle;
165   }
166
167   h1 {
168     font-size: 18px;
169     font-weight: 600;
170     line-height: 1.2;
171     margin: 0;
172     padding-top: 15px;
173
174     a {
175       color: #000;
176     }
177
178     a:hover {
179       color: #000;
180     }
181   }
182
183   .btn {
184     font-size: 14px;
185   }
186 }
187
188
189 nav.primary {
190   .btn-outline-primary {
191     @include button-outline-variant($green, $white);
192   }
193
194   .disabled {
195     .btn-outline-primary {
196       color: $grey;
197       cursor: default;
198
199       .caret {
200         border-top-color: $grey;
201       }
202
203       &:hover {
204         background-color: lighten($green, 30%);
205       }
206     }
207   }
208 }
209
210 nav.secondary {
211   position: absolute;
212   right: 0;
213
214   .nav-link {
215     padding: 0.2rem;
216     color: $darkgrey;
217   }
218
219   > ul li.current a {
220     color: darken($darkgrey, 25%);
221   }
222
223   .login-menu {
224     .btn-outline-secondary {
225       @include button-outline-variant($darkgrey);
226     }
227   }
228
229   .user-menu {
230     .btn-outline-secondary {
231       @include button-outline-variant($darkgrey, $darkgrey, white, $darkgrey);
232       border-color: $grey;
233       &:hover {
234         border-color: $grey;
235       }
236     }
237   }
238
239   img.user_thumbnail_tiny {
240     border: 0;
241     border-radius: 3px;
242   }
243
244   #inboxanchor {
245     display: inline-block;
246     height: 25px;
247     margin: 3px 0 3px 3px;
248     background-color: lighten($grey, 10%);
249     line-height: 20px;
250     border-radius: 3;
251   }
252
253   .dropdown-menu {
254     .count-number {
255       font-size: 14px;
256     }
257   }
258 }
259
260 #compact-secondary-nav {
261   display: none;
262 }
263
264 body.compact {
265   #compact-secondary-nav {
266     display: inline-block;
267   }
268   .compact-hide {
269     display: none;
270   }
271 }
272
273 /* Utility for styling notification numbers */
274
275 .count-number {
276   padding: 2px $lineheight/4;
277   border-radius: 2px;
278   background: lighten($green, 30%);
279   margin: 0 2px;
280   font-size: 11px;
281   color: #333;
282 }
283
284 /* Rules for the message shown in place of the map when javascript is disabled */
285
286 #noscript {
287   z-index: 20000000;
288   margin-left: 400px;
289   margin-top: 50px;
290 }
291
292 /* Rules for Leaflet maps */
293
294 .leaflet-control .control-button {
295   display: block;
296   height: 40px;
297   width: 40px;
298   background-color: #333;
299   background-color: rgba(0,0,0,.6);
300   border-radius: 4px 0 0 4px;
301   margin-bottom: 10px;
302   outline: none;
303
304   &:hover {
305     background-color: black;
306   }
307
308   &.disabled,
309   &.leaflet-disabled {
310     background-color: #333;
311     background-color: rgba(0,0,0,.5);
312     cursor: default;
313   }
314
315   &.active {
316     background-color: $vibrant-green;
317   }
318
319   .icon {
320     margin: 10px;
321   }
322 }
323
324 .leaflet-control .zoomin,
325 .control-layers .control-button {
326   margin-bottom: 0px;
327   border-radius: 4px 0 0 0;
328 }
329
330 .leaflet-control .zoomout,
331 .control-key .control-button {
332   margin-bottom: 0;
333   border-radius: 0;
334 }
335
336 .control-locate .control-button,
337 .control-share .control-button {
338   border-radius: 0 0 0 4px;
339 }
340
341 /* Rules for the sidebar and main map area */
342
343 .map-layout {
344   #content {
345     overflow: hidden;
346     position: absolute;
347     top: $headerHeight;
348     bottom: 0;
349     width: 100%;
350   }
351
352   #sidebar, #map {
353     position: relative;
354     height: 100%;
355     overflow-x: hidden;
356     overflow-y: auto;
357   }
358
359   #sidebar {
360     float: left;
361     width: $sidebarWidth;
362     background: #fff;
363
364     #sidebar_loader {
365       display: none;
366     }
367
368     > div {
369       position: relative;
370       float: left;
371       clear: both;
372       width: 100%;
373     }
374
375     h2 {
376       padding: $lineheight $lineheight $lineheight/2;
377       font-size: 1.5rem;
378     }
379
380     h3, h4 {
381       margin-top: $lineheight;
382       margin-bottom: $lineheight/2;
383       font-size: 1.25rem;
384     }
385
386     .close-wrap {
387       cursor: pointer;
388       position: absolute;
389       top: 0;
390       right: 0;
391       width: 60px;
392       height: 60px;
393
394       .icon.close {
395         pointer-events: none;
396         position: absolute;
397         right: 20px;
398         top: 20px;
399       }
400     }
401
402     .icon.close {
403       float: right;
404       cursor: pointer;
405     }
406
407     .flash {
408       padding: 15px;
409
410       picture {
411         margin-right: -25px;
412       }
413
414       div.message {
415         margin-left: 30px;
416       }
417     }
418   }
419
420   .overlay-sidebar #sidebar {
421     position: absolute;
422     z-index: 1000;
423     height: auto;
424     overflow: hidden;
425
426     #banner {
427       display: block;
428     }
429
430     .welcome {
431       display: none;
432
433       &.visible {
434         display: block;
435       }
436     }
437
438     #sidebar_content {
439       display: none;
440     }
441   }
442
443   .welcome {
444     display: none;
445     padding-bottom: 5px;
446
447     p {
448       padding: $lineheight/2 $lineheight $lineheight;
449       font-size: 110%;
450       font-weight: 300;
451     }
452
453     .button {
454       width: 50%;
455       float: left;
456       margin: 0;
457       border-radius: 0;
458       font-weight: normal;
459       padding: .6em;
460
461       &.learn-more {
462         border-right: 1px solid #fff;
463       }
464     }
465   }
466
467   #banner {
468     display: none;
469
470     img {
471       display: block;
472       width: $sidebarWidth;
473     }
474   }
475
476   #map {
477     height: 100%;
478     overflow: hidden;
479
480     &.query-active {
481       cursor: help;
482     }
483
484     &.query-disabled {
485       cursor: not-allowed;
486     }
487
488     .leaflet-marker-draggable {
489       cursor: move;
490     }
491   }
492
493   #map-ui {
494     display: none;
495     position: relative;
496     float: right;
497     width: 250px;
498     height: 100%;
499     background: white;
500     overflow: auto;
501
502     .section {
503       border-bottom: 1px solid $grey;
504       padding: 10px 20px;
505     }
506
507     a.close-button {
508       float: right;
509       padding:5px;
510       font-size:20px;
511       line-height:10px;
512       color:#222;
513       border:1px solid $grey;
514     }
515
516     .tooltip {
517       opacity: 1;
518       border: 1px solid $grey;
519       .tooltip-arrow {
520         border-top-color: $grey;
521       }
522     }
523   }
524 }
525
526 .layers-ui,
527 .share-ui {
528   li:last-child {
529     margin-bottom: 0;
530   }
531 }
532
533 .layers-ui {
534   .base-layers {
535     .leaflet-container {
536       width: 100%;
537       height: 50px;
538       cursor: pointer;
539     }
540
541     li  {
542       overflow: hidden;
543       border-radius: 3px;
544       border: 2px solid #fff;
545       margin-bottom: 8px;
546       position: relative;
547       transition: border-color 0.08s ease-in;
548
549       label {
550         position: absolute;
551         top: 0;
552         left: 0;
553         padding: 2px 6px;
554         border-bottom-right-radius: 3px;
555         cursor: pointer;
556         font-weight: 600;
557         font-size: 16px;
558         text-stroke: 2px #fff;
559         background: rgba(255,255,255,.9);
560         z-index: 1000;
561         input[type="radio"] {
562           display: none;
563         }
564       }
565
566       &.active { border-color: darken($green, 10%); }
567       &:hover {
568         border-color: $grey;
569         &.active { border-color: darken($green, 20%); }
570       }
571     }
572   }
573
574   .overlay-layers {
575     p {
576       font-size: 13px;
577       margin-bottom: 8px;
578     }
579     li.disabled { color: $darkgrey; }
580   }
581 }
582
583 .share-ui {
584   .share-tabs {
585     margin-bottom: 10px;
586
587     a {
588       color: #fff;
589       text-decoration: none;
590       background-color: $lightblue;
591       padding: 5px 10px;
592       border-right: 1px solid #fff;
593     }
594
595     a:first-child {
596       border-right: 1px solid #fff;
597       border-radius: 4px 0 0 4px;
598     }
599
600     a:last-child {
601       border-radius: 0 4px 4px 0;
602     }
603
604     a.active {
605       background-color: $blue;
606     }
607   }
608
609   .share-tab {
610     display: none;
611   }
612
613   .share-link {
614     input[type=text],
615     textarea {
616       width: 100%;
617       font-family: monospace;
618       font-size: small;
619       line-height: 1.3;
620     }
621   }
622
623   .share-image {
624     label {
625       margin-right: 10px;
626     }
627   }
628
629   #embed_html {
630     resize: vertical;
631   }
632
633   #mapnik_scale {
634     width: 100px;
635   }
636 }
637
638 .leaflet-top {
639   top: $lineheight/2 !important;
640   .leaflet-control {
641     margin-right: 0px !important;
642     margin-top: 0px !important;
643   }
644 }
645
646 .leaflet-popup-scrolled {
647   padding-right: $lineheight;
648   border-bottom: 0px !important;
649   border-top: 0px !important;
650 }
651
652 .leaflet-popup-content-wrapper {
653   border-radius: 4px !important;
654 }
655
656 /* Rules for attribution text under the main map shown on printouts */
657
658 #attribution {
659   display: none;
660
661   table {
662     width: 100%
663   }
664 }
665
666 .attribution_license,
667 .attribution_project {
668   text-align: left;
669 }
670
671 .attribution_notice {
672   text-align: center;
673 }
674
675 .donate-attr { color: darken($green, 10%) !important; }
676
677 /* Rules for the sidebar */
678
679 .sidebar_heading {
680   position: relative;
681   padding: $lineheight/2 $lineheight;
682   // background: $offwhite;
683   // border-bottom: 1px solid $grey;
684   > .close {
685     float: right;
686     margin-top: 2px;
687     cursor: pointer;
688   }
689 }
690
691 #browse_status {
692   p {
693     padding: $lineheight;
694   }
695
696   input {
697     display: block;
698     margin-left: auto;
699     margin-right: auto;
700   }
701 }
702
703 #sidebar {
704   #sidebar_loader,
705   .search_more {
706     width: 100%;
707     margin: $lineheight auto;
708   }
709
710   .loader,
711   .load_more {
712     text-align: center;
713     margin: auto;
714     width: 40px;
715     display: block;
716   }
717 }
718
719 /* Rules for the search and direction forms */
720
721 header .search_forms,
722 .directions_form {
723   display: none;
724 }
725
726 .search_form,
727 .directions_form {
728   position: relative;
729   padding: $lineheight/2;
730   background-color: $lightgrey;
731
732   .query_wrapper {
733     position: relative;
734     overflow: hidden;
735     border-radius: 2px 0 0 2px;
736   }
737
738   input[type=text] {
739     width: 100%;
740     height: 30px;
741     transition: 300ms linear;
742   }
743
744   input[type=text].overflow {
745     border-right: none;
746   }
747
748   input:focus {
749     outline: none;
750     box-shadow: 0px 0px 7px $vibrant-green;
751   }
752
753   input[type=submit].float {
754     float: right;
755     width: auto;
756     min-width: 0;
757     border-radius: 0 2px 2px 0;
758   }
759
760   input.error {
761     background-color: rgba($red, 0.4);
762   }
763
764   select {
765     /* this next line is to polyfill the vertical alignment of text within a select element,
766      * which is different between firefox and chrome. */
767     padding: 0.3em 0;
768   }
769
770   .query_options {
771     text-align: right;
772     font-size: 10px;
773     color: $blue;
774   }
775
776   .describe_location {
777     position: absolute;
778     top: 6px;
779     right: 6px;
780     font-size: 10px;
781     color: $blue;
782   }
783
784   .switch_link {
785     float: right;
786     width: auto;
787     min-width: 0;
788     margin-left: 6px;
789   }
790
791   img.button {
792     display: block;
793     width: 20px;
794     height: 20px;
795   }
796
797   span.force_width {
798     width: 100%;
799     padding-right: 25px;
800     display: block;
801   }
802
803   select.routing_engines {
804     min-height: 30px;
805     margin: 0px 0px 5px 25px;
806   }
807
808   input.routing_go {
809     min-width: 100px;
810     float: right;
811   }
812
813   div.header {
814     width: 100%;
815     height: 30px;
816   }
817
818   div.line {
819     width: 100%;
820     margin: 0px 0px 5px 0px;
821   }
822
823   div.loader_copy {
824     display: none;
825
826     img {
827       vertical-align: middle;
828     }
829   }
830
831   a.reverse_directions {
832     cursor: pointer;
833     margin: 0px 0px 5px 25px;
834   }
835 }
836
837 /* Rules for the map key which appears in the popout sidebar */
838
839 #mapkey {
840  .mapkey-table-key img {
841     display: block;
842     margin-left: auto;
843     margin-right: auto;
844   }
845   td {
846     padding: 0 $lineheight/4 $lineheight/4 $lineheight/4;
847   }
848 }
849
850 /* Rules for search sidebar */
851
852 #sidebar .search_results_entry {
853   ul li {
854     cursor: pointer;
855     &.selected { background: $list-highlight; }
856   }
857
858   .search_more .loader {
859     display: none;
860     width: 100%;
861   }
862 }
863
864 .search_results_error {
865   color: #f00;
866   padding: 10px 20px;
867 }
868
869 /* Rules for routing */
870
871 #sidebar_content>table {
872     padding: 5px 20px 10px 15px;
873     width: 100%;
874     border-collapse: separate;
875 }
876
877 div.direction {
878   background-image: image-url('routing-sprite.png');
879   width: 20px;
880   height: 20px;
881   background-repeat: no-repeat;
882 }
883 @for $i from 0 through 25 {
884 div.direction.i#{$i} { background-position: #{($i)*-20}px 0px; }
885 }
886
887 p#routing_summary {
888     padding: 0 $lineheight $lineheight/4;
889 }
890
891 td.instruction, td.distance {
892     padding-top: $lineheight/5;
893     padding-bottom: $lineheight/5;
894     border-bottom: 1px solid $grey;
895 }
896 td.distance {
897     color: $darkgrey;
898     text-align: right;
899     font-size: x-small;
900 }
901 tr.turn {
902     cursor: pointer;
903 }
904 tr.turn:hover {
905     background: $list-highlight;
906 }
907 .routing_engines, #route_from, #route_to { margin-left: 25px; }
908 .routing_marker { width: 15px; position: absolute; cursor: move; }
909
910 /* Rules for entity history */
911
912 #sidebar_content {
913   .browse_details {
914     position: relative;
915     border-bottom: $keyline;
916   }
917 }
918
919 .browse_status {
920   display: none;
921 }
922
923 /* Rules for the history sidebar */
924
925 #sidebar .changesets {
926   li {
927     cursor: pointer;
928
929     &.selected { background: $list-highlight; }
930     /* color is derived from changeset bbox fillColor in history.js */
931   }
932
933   .comments {
934     float: right;
935     color: $darkgrey;
936   }
937
938   .comments-0 {
939     opacity: 0.5;
940   }
941
942   .changeset_more .loader {
943     display: none;
944     width: 100%;
945   }
946 }
947
948 /* Rules for the browse sidebar */
949
950 #sidebar_content {
951   .browse-section {
952     padding: $lineheight/2 $lineheight;
953     border-bottom: 1px solid $grey;
954
955     h4:first-child {
956       margin-top: 0;
957       word-wrap: break-word;
958     }
959   }
960
961   .browse-section:last-of-type {
962     border-bottom: none;
963   }
964
965   .paginate {
966     float: right;
967     padding: 1px 6px;
968     border: 1px solid $lightgrey;
969     border-radius: 3px;
970   }
971
972   .browse-field {
973     margin-bottom: 10px;
974
975     h4 {
976       padding: 5px 0 5px 10px;
977       font-size: 12px;
978       border: 1px solid $grey;
979       border-radius: 4px 4px 0 0;
980       background-color: $offwhite;
981     }
982
983     p {
984       padding: 7px 10px;
985       font-size: 12px;
986       background-color: #FFF;
987       border: 1px solid $grey;
988       border-top: 0;
989       border-radius: 0 0 4px 4px;
990     }
991   }
992
993   .browse-tag-list {
994     background-color: $offwhite;
995     border: 1px solid $grey;
996     border-radius: 3px;
997     table-layout: fixed;
998     border-collapse: separate;
999
1000     th, td {
1001       border-bottom: 1px solid $grey;
1002     }
1003
1004     tr:last-child th, tr:last-child td {
1005       border-bottom: 0;
1006     }
1007
1008     .browse-tag-k,
1009     .browse-tag-v {
1010       width: 50%;
1011       padding: 6px 10px;
1012       word-wrap: break-word;
1013       white-space: pre-wrap;
1014     }
1015
1016     .browse-tag-k {
1017       font-weight: 500;
1018       background-color: $offwhite;
1019     }
1020
1021     .browse-tag-v {
1022       border-left: 1px solid $grey;
1023       background-color: #fff;
1024     }
1025
1026     .colour-preview-box {
1027       float: right;
1028       width: 14px;
1029       height: 14px;
1030       margin: 4px 0px;
1031       border: 1px solid rgba(0, 0, 0, .1);
1032       // add color via inline css on element: background-color: <tag value>;
1033     }
1034   }
1035
1036   .warning {
1037     margin: 0 0 $lineheight/2 0;
1038     padding: 0 $lineheight/2;
1039   }
1040
1041   .note-comments li, .changeset-comments li {
1042     margin: $lineheight/2 0;
1043
1044     p {
1045       margin: 10px 6px 0 6px;
1046       line-height: 1.5;
1047     }
1048   }
1049
1050   .comments-header {
1051     float: left;
1052   }
1053
1054   .subscribe-buttons {
1055     float: left;
1056     margin: 18px 10px 10px;
1057     min-width: 80px;
1058   }
1059
1060   .subscribe-buttons input {
1061     font-size: 90%;
1062     line-height: 15px;
1063     min-height: 20px;
1064   }
1065
1066   span.action-button:hover {
1067     cursor: pointer;
1068     text-decoration: underline;
1069   }
1070
1071   .note-description {
1072     overflow: hidden;
1073     margin: 0 0 10px 10px;
1074   }
1075
1076   .query-intro p {
1077     padding: $lineheight $lineheight $lineheight/2;
1078   }
1079
1080   .query-results {
1081     display: none;
1082     padding-bottom: $lineheight/2;
1083
1084     h3 {
1085       padding: 0 $lineheight;
1086     }
1087
1088     ul {
1089       li {
1090         &.query-result {
1091           cursor: pointer;
1092         }
1093
1094         &.selected {
1095           background: $list-highlight;
1096         }
1097       }
1098     }
1099   }
1100 }
1101
1102 /* Rules for export sidebar */
1103
1104 .export_form {
1105   padding: $lineheight;
1106
1107   .export_area_inputs,
1108   .export_button {
1109     text-align: center;
1110   }
1111
1112   .export_area_inputs {
1113     margin-bottom: $lineheight/2;
1114     input[type="text"] {
1115       width: 80px;
1116       text-align: center;
1117       margin-bottom: 5px;
1118     }
1119   }
1120
1121   .export_boxy {
1122     background: $lightgrey;
1123     border: 1px solid $grey;
1124     border-radius: 3px;
1125
1126     #maxlat { margin-top: -1px; }
1127     #minlon {
1128       float: left;
1129       /* no-r2 */ margin-left: -1px;
1130     }
1131     #maxlon {
1132       float: right;
1133       /* no-r2 */ margin-right: -1px;
1134     }
1135     #minlat { margin-bottom: 0; }
1136   }
1137
1138   .export_bound {
1139     margin: $lineheight/4;
1140   }
1141
1142   .export_button {
1143     margin-top: $lineheight;
1144     margin-bottom: $lineheight;
1145   }
1146
1147   dl {
1148     padding-left: $lineheight/2;
1149     dd {
1150       margin-left: 0;
1151       margin-bottom: 10px;
1152     }
1153   }
1154 }
1155
1156 /* Rules for the routing sidebar */
1157
1158 #sidebar_content {
1159   #routing_credit {
1160     text-align: center;
1161     padding: 0.5em;
1162   }
1163 }
1164
1165 /* Rules for edit pages */
1166
1167 .site-edit {
1168   #content {
1169     position: absolute;
1170     top: $headerHeight;
1171     bottom: 0;
1172     width: 100%;
1173   }
1174
1175   #map {
1176     height: 100%;
1177     overflow: hidden;
1178   }
1179 }
1180
1181 /* Rules for non-map content pages */
1182
1183 .content-heading {
1184   background: $lightgrey;
1185 }
1186
1187 .content-body {
1188   h1, h2, h3, p, ul, ol {
1189     margin-bottom: $lineheight;
1190   }
1191
1192   h1, h2, h3 {
1193     margin-top: $lineheight/2;
1194   }
1195 }
1196
1197 .content-inner {
1198   position: relative;
1199   max-width: 900px;
1200   margin: auto;
1201   padding: $lineheight;
1202 }
1203
1204 /* Overrides for pages that use new layout conventions */
1205
1206 .users-new,
1207 .users-create,
1208 .users-terms,
1209 .users-confirm {
1210   .content-heading .content-inner {
1211     height: 200px;
1212   }
1213 }
1214
1215 .header-illustration {
1216   background-position: 0 0;
1217   background-repeat: no-repeat;
1218   position: absolute;
1219   height: 200px;
1220   width: 100%;
1221   left: 0;
1222   bottom: 0;
1223
1224   &.new-user-main {
1225     background-image: image-url("sign-up-illustration.png");
1226   }
1227
1228   &.confirm-main {
1229     background-image: image-url("confirm-illustration.png");
1230   }
1231
1232   &.new-user-terms {
1233     background-image: image-url("terms-illustration.png");
1234   }
1235
1236   &.new-user-arm {
1237     height: 110px;
1238     width: 130px;
1239     left: 260px;
1240     top: 160px;
1241     background-image: image-url("sign-up-illustration-arm.png");
1242     z-index: 100;
1243   }
1244 }
1245
1246 [dir=rtl] .header-illustration {
1247   transform: scaleX(-1);
1248 }
1249
1250 #content.maximised {
1251   top: 0;
1252   left: 0;
1253   right: 0;
1254   bottom: 0;
1255   border: 0;
1256   z-index: 2000;
1257 }
1258
1259 /* Rules for small maps in content areas */
1260
1261 .content_map {
1262   position: relative;
1263   width: 45%;
1264   height: 400px;
1265   border: 1px solid $grey;
1266   margin-bottom: $lineheight;
1267   float: right;
1268 }
1269
1270 /* Rules for the trace list shown by the traces tab etc */
1271
1272 #trace_list {
1273   border-width: 0px;
1274   text-align: right;
1275
1276   .trace_summary {
1277     font-size: 12px;
1278     color: gray;
1279   }
1280 }
1281
1282 /* Rules for the new trace form */
1283
1284 #new_trace {
1285   input[type=text] {
1286     width: 50%;
1287     width: calc(100% - 150px);
1288     max-width: 500px;
1289   }
1290 }
1291
1292 /* Rules for the edit trace form */
1293
1294 .edit_trace {
1295   .standard-form-row p {
1296     margin-bottom: 0px;
1297   }
1298
1299   input[type=text] {
1300     width: 50%;
1301     width: calc(100% - 150px);
1302     max-width: 500px;
1303   }
1304 }
1305
1306 /* Rules for the user profile page */
1307
1308 #userinformation {
1309
1310   min-height: 100px;
1311   .userinformation-inner {
1312     float: left;
1313   }
1314   h2 {
1315     margin-top: 0;
1316   }
1317   .user-description {
1318     width: 100%;
1319     clear: both;
1320   }
1321   .deemphasize {
1322     margin: 0;
1323   }
1324 }
1325
1326 .admin-user-info small {
1327   margin-bottom: $lineheight/2;
1328   display: inline;
1329   margin-right: $lineheight;
1330 }
1331
1332 .activity-block {
1333   clear: left;
1334   border-bottom: 1px solid $grey;
1335   padding-bottom: $lineheight;
1336   float: left;
1337   h3 {
1338     margin-bottom: $lineheight/2;
1339   }
1340 }
1341
1342 .contact-activity {
1343   margin-top: $lineheight;
1344   width: 100%;
1345 }
1346
1347 .activity-details p {
1348   margin-left: 70px;
1349   margin-bottom: 0;
1350 }
1351
1352 .users-show {
1353   // Silly exception; remove when user page is redesigned.
1354   .content-inner {
1355     max-width: none;
1356   }
1357   p#no_home_location {
1358     margin: $lineheight;
1359   }
1360   .user_thumbnail {
1361     margin-top: $lineheight/4;
1362     float: left;
1363   }
1364 }
1365
1366 /* Rules for the user map */
1367
1368 .content_map .leaflet-popup-content {
1369   margin: $lineheight/2;
1370   min-height: 50px;
1371 }
1372
1373 /* Rules for user popups on maps */
1374
1375 .user_popup {
1376   min-width: 200px;
1377   p {
1378     padding: 0 0 5px 0;
1379     margin-top: 0 0 0 60px;
1380     font-size: 12px;
1381   }
1382   img.user_thumbnail {
1383     float: left;
1384     margin: 0 $lineheight/2 0 0;
1385   }
1386 }
1387
1388 /* Rules for the user list */
1389
1390 #user_list {
1391   width: 100%;
1392
1393   tr {
1394     vertical-align: middle;
1395   }
1396
1397   p {
1398     margin-top: 0px;
1399     margin-bottom: 0px;
1400   }
1401 }
1402
1403 #user_list_actions {
1404   float: right;
1405   margin-top: $lineheight/2;
1406 }
1407
1408 /* Rules for the diary list page */
1409
1410 .diary_post {
1411   position: relative;
1412   padding-top: $lineheight;
1413   padding-bottom: $lineheight/2;
1414   border-top: 1px solid $grey;
1415
1416   &:first-of-type {
1417     margin-top: $lineheight/2;
1418   }
1419
1420   &.deemphasize {
1421     background-color: #fee;
1422   }
1423
1424   .post_heading {
1425     margin-bottom: $lineheight;
1426
1427     h2 {
1428       margin-top: 0;
1429       margin-bottom: $lineheight/2;
1430     }
1431   }
1432
1433   img.user_thumbnail {
1434     float: left;
1435   }
1436
1437   small.deemphasize {
1438     float: left;
1439     display: block;
1440   }
1441 }
1442
1443 .pagination {
1444   padding-top: $lineheight;
1445 }
1446
1447 /* Rules for the diary entry page */
1448
1449 .diary_entries {
1450   #map {
1451     position: relative;
1452     width: 90%;
1453     height: 400px;
1454     border: 1px solid $grey;
1455     display: none;
1456     margin-bottom: $lineheight;
1457   }
1458   #newcomment {
1459     border-top: 1px solid $grey;
1460     padding-top: $lineheight;
1461     margin-top: $lineheight/2;
1462   }
1463   .comments {
1464     max-width: 740px;
1465   }
1466   .diary-comment {
1467     border-top: 1px dashed $grey;
1468     padding-top: $lineheight/2;
1469     padding-bottom: $lineheight/2;
1470     &:first-child {
1471       margin-top: $lineheight/2;
1472       padding-top: $lineheight;
1473       border-top: 1px solid $grey;
1474     }
1475     &.deemphasize {
1476       background-color: #fee;
1477     }
1478     p {
1479       margin-bottom: $lineheight/2;
1480     }
1481     .comment-heading {
1482       margin-bottom: 0;
1483       margin-top: 0;
1484     }
1485   }
1486 }
1487
1488 .diary_entries-show img.user_thumbnail {
1489   float: left;
1490 }
1491
1492
1493 .diary-subscribe-buttons {
1494   position:relative;
1495   top: -30px;
1496   left: 130px;
1497 }
1498
1499 /* Rules for the log in page */
1500
1501 #login_auth_buttons {
1502   margin-bottom: 0;
1503 }
1504
1505 #login_auth_buttons li {
1506   float: left;
1507   padding: $lineheight/4 $lineheight/2;
1508 }
1509
1510 /* Rules for the account confirmation page */
1511
1512 .users-terms {
1513   .legale {
1514     border: 1px solid $grey;
1515     padding: $lineheight;
1516     margin-bottom: $lineheight;
1517     overflow: auto;
1518     height: 20em;
1519
1520     li {
1521       list-style: inherit;
1522     }
1523
1524     ol ol {
1525       list-style-type: lower-alpha;
1526     }
1527   }
1528
1529   #decline {
1530     background: $lightblue;
1531     &:hover {
1532       background: darken($lightblue, $hovercolor);
1533     }
1534   }
1535 }
1536
1537 /* Rules for the account settings page */
1538
1539 #accountForm .user_map {
1540   position: relative;
1541   width: 500px;
1542   height: 400px;
1543   border: 1px solid $grey;
1544 }
1545
1546 #accountForm .user_image {
1547   margin-bottom: 0;
1548 }
1549
1550 #accountForm #user_image {
1551   margin-left: 20px;
1552 }
1553
1554 #accountForm ul.accountImage-options {
1555   margin-left: 120px;
1556 }
1557
1558 .nohome .location {
1559   display: none;
1560 }
1561
1562 #homerow .message {
1563   display: none;
1564 }
1565
1566 .nohome .message {
1567   display: inline !important;
1568 }
1569
1570 .content_map.settings_map {
1571   width: 50%;
1572   float: none;
1573 }
1574
1575 /* Rules for the oauth settings page */
1576
1577 .oauth_clients .buttons .oauth-edit {
1578   border-radius: 2px 0 0 2px;
1579 }
1580
1581 .oauth_clients .buttons .oauth-delete {
1582   border-radius: 0 2px 2px 0;
1583 }
1584
1585 /* Rules for the oauth authorization page */
1586
1587 .oauth-authorize ul {
1588   list-style: none;
1589 }
1590
1591 /* Rules for messages pages */
1592
1593 .messages {
1594   width: 100%;
1595   border: 1px solid $grey;
1596
1597   input[type="submit"] {
1598     margin: auto;
1599   }
1600   tbody tr {
1601     border-top: 1px solid $grey;
1602   }
1603
1604   .inbox-row {
1605     background: $offwhite;
1606   }
1607
1608   .inbox-row-unread {
1609     background:#CBEEA7;
1610   }
1611
1612   .right {
1613     float: right;
1614   }
1615
1616   tr td,
1617   tr th {
1618     padding: $lineheight/4;
1619   }
1620   p:last-child,
1621   h2:last-child,
1622   h3:last-child,
1623   ol:last-child,
1624   ul:last-child {
1625     margin-bottom:0;
1626   }
1627   tr td {
1628     height: 30px;
1629     border-right: 1px solid $lightgrey;
1630   }
1631 }
1632
1633 .inbox-row .inbox-mark-read {
1634   display: none;
1635 }
1636
1637 .info-line {
1638   margin-bottom: $lineheight;
1639   padding: $lineheight/4 0px 4px 0px;
1640   border-bottom: 1px solid $grey;
1641
1642   form, form div {
1643     display: inline;
1644   }
1645 }
1646
1647 .info-line .user_thumbnail_tiny {
1648   vertical-align: middle;
1649 }
1650
1651 .inbox-sent {
1652   white-space: nowrap;
1653 }
1654
1655 .inbox-mark-unread,
1656 .inbox-mark-read,
1657 .inbox-delete {
1658   width: 1%;
1659 }
1660
1661 .inbox-row-unread .inbox-mark-unread {
1662   display: none;
1663 }
1664
1665 .messages-show .message-buttons {
1666   margin-top: $lineheight;
1667   margin-bottom: $lineheight * 1.5;
1668   padding-top: $lineheight;
1669   border-top: 1px solid $lightgrey;
1670 }
1671
1672 .messages-show .buttons .mark-unread-button {
1673   border-radius: 0;
1674 }
1675
1676 /* Rules for "flash" notice boxes shown at the top of the content area */
1677
1678 .flash {
1679   padding: $lineheight;
1680
1681   &.error {
1682     background-color: #ff7070;
1683   }
1684
1685   &.warning {
1686     background-color: #ffe0cc;
1687   }
1688
1689   &.notice {
1690     background-color: #CBEEA7;
1691   }
1692
1693   div.message {
1694     display: inline-block;
1695     margin-left: $lineheight / 2;
1696     vertical-align: middle;
1697
1698     p {
1699       margin-top: $lineheight * 0.5;
1700       margin-bottom: $lineheight * 0.5;
1701
1702       &:first-child {
1703         margin-top: 0px;
1704       }
1705
1706       &:last-child {
1707         margin-bottom: 0px;
1708       }
1709     }
1710   }
1711 }
1712
1713 /* Rules for highlighting fields with rails validation errors */
1714
1715 .formError {
1716   display: inline-block;
1717   padding: 5px 10px;
1718   margin-top: 5px;
1719   border-radius: 4px;
1720   font-size: 12px;
1721   color: #fff;
1722   background-color: #ff7070;
1723 }
1724
1725 /* Rules for rails validation error boxes */
1726
1727 #errorExplanation {
1728   width: 400px;
1729   border: 2px solid #ff7070;
1730   padding: 0 $lineheight/2;
1731   margin-bottom: $lineheight;
1732   background-color: #f0f0f0;
1733
1734   h2 {
1735     margin: 0 -10px 10px -10px;
1736     padding: $lineheight/4 $lineheight/4 $lineheight/4 15px;
1737     font-weight: bold;
1738     font-size: 12px;
1739     background-color: #c00;
1740     color: #fff;
1741     text-align: left;
1742   }
1743
1744   p {
1745     color: #333;
1746     margin-bottom: 0px;
1747     padding: $lineheight/4;
1748   }
1749 }
1750
1751 /* Rules for forms */
1752
1753 .standard-form {
1754   fieldset {
1755     margin-bottom: $lineheight;
1756   }
1757   label.standard-label {
1758     display: block;
1759     margin-bottom: $lineheight/4;
1760     font-size: $typeheight;
1761     font-weight: bold;
1762     line-height: 1.5;
1763   }
1764   label.standard-label.secondary {
1765     display: inline-block;
1766     font-weight: normal;
1767   }
1768   .form-help {
1769     font-weight: normal;
1770   }
1771   .form-column {
1772     float: left;
1773     margin-right: 20px;
1774   }
1775   .form-divider {
1776     margin-top: $lineheight;
1777     padding-top: $lineheight;
1778     border-top: 1px solid $lightgrey;
1779   }
1780   .horizontal-list .standard-form-row {
1781     float: left;
1782     padding-right: 10px;
1783   }
1784   .standard-form-row {
1785     margin-bottom: $lineheight/2;
1786   }
1787   .form-list {
1788     margin-bottom: 0;
1789   }
1790   .form-list li {
1791     margin-bottom: 5px;
1792     list-style-type: none;
1793   }
1794   input[type="checkbox"],
1795   input[type="radio"] {
1796     float: left;
1797     margin-top: 5px;
1798   }
1799 }
1800
1801 #remember_me_openid {
1802   display: block;
1803 }
1804
1805 select {
1806   padding: 2px;
1807 }
1808
1809 input[type="checkbox"],
1810 input[type="radio"] {
1811     margin-right: 5px;
1812 }
1813
1814 input[type="text"],
1815 input[type="email"],
1816 input[type="url"],
1817 input[type="password"],
1818 textarea {
1819   color: #222;
1820   background-color: #fff;
1821   border: 1px solid $grey;
1822   border-radius: 3px;
1823   padding: 2px 5px;
1824   margin: 0;
1825   width: 200px;
1826
1827   &.field_with_errors {
1828     border: 2px solid #ff7070;
1829   }
1830 }
1831
1832 textarea {
1833   padding: 5px;
1834   width: 100%;
1835   min-height: 50px;
1836   resize: vertical;
1837 }
1838
1839 /* Rules for user images */
1840
1841 img.user_image {
1842   max-width: 100px;
1843   max-height: 100px;
1844   border: 1px solid $grey;
1845   margin-bottom: $lineheight;
1846   float: left;
1847   margin-right: $lineheight;
1848 }
1849
1850 img.user_thumbnail {
1851   max-width: 50px;
1852   max-height: 50px;
1853   border: 1px solid $grey;
1854   margin-right: $lineheight;
1855 }
1856
1857 img.user_thumbnail_tiny {
1858   width: auto;
1859   height: auto;
1860   max-width: 25px;
1861   max-height: 25px;
1862   border: 1px solid $grey;
1863 }
1864
1865 /* Rules for geo microformats */
1866
1867 abbr.geo {
1868   border-bottom: none;
1869 }
1870
1871 /* General styles for action lists / subnavs / pager navs */
1872
1873 ul.secondary-actions {
1874   font-style: normal;
1875   margin-bottom: 0;
1876   margin-left: 0;
1877   padding: 0;
1878   &.pager {
1879     display: inline-block;
1880     margin-right: 60px;
1881   }
1882   > li {
1883     display: block;
1884     float: left;
1885     list-style: none;
1886     border-left: 1px solid $grey;
1887     padding-left: $lineheight/2;
1888     margin-right: $lineheight/2;
1889     &:first-child {
1890       border-left: 0;
1891       padding-left: 0;
1892     }
1893     &:last-child {
1894       margin-right: 0px;
1895     }
1896   }
1897 }
1898
1899 div.secondary-actions {
1900   padding: 10px;
1901   text-align: center;
1902 }
1903
1904 /* Utility for managing inner content areas */
1905
1906 .inner22 { padding: $lineheight;}
1907
1908 .inner12 { padding: $lineheight/2 $lineheight;}
1909
1910 .inner11 { padding: $lineheight/2;}
1911
1912 .inner20 { padding: $lineheight 0;}
1913
1914 .inner02 { padding: 0 $lineheight;}
1915
1916 /* Utility for general button styles */
1917
1918 input[type="button"],
1919 input[type="submit"],
1920 input[type="reset"],
1921 a.button {
1922   cursor: pointer;
1923   border: 0;
1924   display: inline-block;
1925   padding: $lineheight/4 $lineheight/2;
1926   min-height: 20px + $lineheight/2;
1927   min-width: 120px;
1928   margin: 0 0 $lineheight/2 0;
1929   color: white;
1930   background: $blue;
1931   text-align: center;
1932   border-radius: 2px;
1933   &:hover {
1934     background: darken($blue, $hovercolor);
1935     text-decoration: none;
1936   }
1937   &.deemphasize {
1938     background: $lightblue;
1939     &:hover {
1940       background: darken($lightblue, $hovercolor);
1941     }
1942   }
1943   &:disabled {
1944     background: $lightgrey;
1945     &:hover {
1946       background: $lightgrey;
1947     }
1948   }
1949   &:last-child {
1950     margin-bottom: 0;
1951   }
1952 }
1953
1954 input[type="button"],
1955 input[type="submit"],
1956 input[type="reset"] {
1957   line-height: normal;
1958 }
1959
1960 a.button {
1961   line-height: 20px;
1962 }
1963
1964 .buttons {
1965   min-width: 200px;
1966   input[type="submit"],
1967   input[type="button"],
1968   input[type="reset"],
1969   .button,
1970   .button_to {
1971     box-sizing: border-box;
1972     float: left;
1973     border-radius: 0;
1974     margin:0;
1975     min-width: 75px;
1976     max-width: 180px;
1977     border-right:1px solid white;
1978     text-overflow: ellipsis;
1979     white-space: nowrap;
1980     overflow: hidden;
1981   }
1982   input:first-child,
1983   .button:first-child,
1984   .button_to:first-child {
1985     border-radius:2px 0 0 2px;
1986   }
1987   input:last-child,
1988   .button:last-child,
1989   .button_to:last-child {
1990     border-radius:0 2px 2px 0;
1991     border-right-width: 0;
1992   }
1993   input:only-child,
1994   .button:only-child,
1995   .button_to:only-child,
1996   *[value="Hide"] + input:last-child,
1997   *[value="Hide"] + .button:last-child,
1998   *[value="Hide"] + .button_to:last-child {
1999     border-radius:2px;
2000     border-right-width: 0;
2001   }
2002     /* if a 3-button set has a hidden middle button */
2003   *[value="Hide"] + input:nth-child(3),
2004   *[value="Hide"] + .button:nth-child(3),
2005   *[value="Hide"] + .button_to:nth-child(3) {
2006     border-radius:0 2px 2px 0;
2007     border-right-width: 0;
2008   }
2009   /* if a 3-button set starts with a hidden button */
2010   *[value="Hide"] + input:nth-child(2):not(:last-child),
2011   *[value="Hide"] + .button:nth-child(2):not(:last-child),
2012   *[value="Hide"] + .button_to:nth-child(2):not(:last-child) {
2013     border-radius:2px 0 0 2px;
2014     border-right-width: 1px;
2015   }
2016 }
2017
2018 /* Rules for doing distinct colour of alternate table rows */
2019
2020 .table0,
2021 .item0 {
2022   background: $offwhite;
2023 }
2024
2025 .table1,
2026 .item1 {
2027   background: #fff;
2028 }
2029
2030 /* Rules for OpenID logo */
2031
2032 .openid_logo {
2033   vertical-align: text-bottom;
2034   border: 0;
2035 }
2036
2037 /* Rules for rich text */
2038
2039 .richtext,
2040 .prose {
2041   code {
2042     font-size: 13px;
2043     background: $lightgrey;
2044     padding: 2px 3px;
2045   }
2046
2047   pre {
2048     font-size: 13px;
2049     background: $lightgrey;
2050     padding: 2px 3px;
2051     white-space: pre-wrap;
2052
2053     code {
2054       padding: 0;
2055     }
2056   }
2057
2058   img {
2059     padding: $lineheight;
2060     background-color: $offwhite;
2061     display: block;
2062     max-width: 100%;
2063     margin: auto;
2064   }
2065
2066   blockquote {
2067     border-left: $lineheight solid $offwhite;
2068     padding-left: $lineheight;
2069     margin: 0;
2070     color: $darkgrey;
2071   }
2072 }
2073
2074 .diary_post .richtext {
2075     margin-top: $lineheight;
2076   }
2077
2078 .comments .richtext {
2079   margin-left: 70px;
2080   margin-top: 0;
2081 }
2082
2083 /* Rules for rich text editors */
2084
2085 input.richtext_title[type="text"] {
2086   width: 50%;
2087   width: calc(100% - 235px);
2088
2089   @media only screen and (max-width:768px) {
2090     width: 100%;
2091   }
2092 }
2093
2094 .richtext_container {
2095   margin-bottom: $lineheight;
2096
2097   .richtext_content {
2098     width: 50%;
2099     width: calc(100% - 235px);
2100     display: inline-block;
2101     vertical-align: top;
2102
2103     @media only screen and (max-width:768px) {
2104       width: 100%;
2105     }
2106
2107     .richtext_preview {
2108       display: inline-block;
2109       padding: $lineheight;
2110       background-color: $offwhite;
2111       overflow-x: auto;
2112
2113       &.loading {
2114         background-image: image-url("loading.gif");
2115         background-repeat: no-repeat;
2116         background-position: center;
2117       }
2118
2119       > :first-child {
2120         margin-top: 0px;
2121       }
2122     }
2123   }
2124
2125   .richtext_help {
2126     display: inline-block;
2127     vertical-align: top;
2128     margin-left: 15px;
2129     background-color: $offwhite;
2130     padding: $lineheight/2;
2131     width: 220px;
2132
2133     ul {
2134       margin-bottom: 0;
2135     }
2136
2137     h4.heading, li {
2138       border-bottom: 1px solid $grey;
2139       margin-bottom: $lineheight/4;
2140       padding-bottom: $lineheight/4;
2141     }
2142
2143     li h4, li span, li p {
2144       display: inline-block;
2145       vertical-align: top;
2146       font-size: 11px;
2147     }
2148
2149     li h4 {
2150       width: 40%;
2151       margin: 0;
2152     }
2153
2154     li span, li p {
2155       width: 50%;
2156       margin-left: $lineheight/2;
2157       margin-bottom: $lineheight/4;
2158       white-space: nowrap;
2159     }
2160   }
2161 }
2162
2163 /* Rules for the user notes list */
2164
2165 .note_list {
2166   tr.creator {
2167     background-color: $lightgrey;
2168   }
2169
2170   td {
2171     padding: 3px;
2172   }
2173
2174   p {
2175     margin-bottom: 0px;
2176   }
2177 }
2178
2179 /* Rules for the iD editor */
2180
2181 .id-embed {
2182   width: 100%;
2183   height: 100%;
2184 }
2185
2186 /* Rules for the "Welcome" page */
2187 .site-welcome, .site-fixthemap {
2188   .center {
2189     text-align: center;
2190     .sprite {
2191       float: none;
2192       margin: auto;
2193     }
2194   }
2195
2196   .sprite {
2197     background-image: image-url("welcome-sprite.png");
2198     background-size: 500px 250px;
2199     display: block;
2200     float: left;
2201   }
2202
2203   .icon-list {
2204     padding-bottom: 20px;
2205     div {
2206       margin-bottom: 10px;
2207       p {
2208         padding-top: 10px;
2209       }
2210     }
2211   }
2212   .sprite.small {
2213     width: 50px;
2214     height: 50px;
2215   }
2216
2217   .sprite.x {
2218     /* no-r2 */ background-position: -50px 0;
2219   }
2220
2221   .sprite.term {
2222     margin-right: 10px;
2223     vertical-align: middle;
2224   }
2225
2226   .sprite.node {
2227     /* no-r2 */ background-position: -100px 0;
2228   }
2229
2230   .sprite.way {
2231     /* no-r2 */ background-position: -150px 0;
2232   }
2233
2234   .sprite.tag {
2235     /* no-r2 */ background-position: -200px 0;
2236   }
2237
2238   .sprite.editor {
2239     /* no-r2 */ background-position: -250px 0;
2240   }
2241
2242   .sprite.question {
2243     /* no-r2 */ background-position: -300px 0;
2244   }
2245
2246   .sprite.rules {
2247     /* no-r2 */ background-position: -350px 0;
2248   }
2249
2250   .start-mapping {
2251     margin: auto;
2252     cursor: pointer;
2253     border: none;
2254     padding: 20px 40px;
2255     font-size: 30px;
2256     text-decoration: none;
2257   }
2258
2259   .icon.note {
2260     background-color: #333;
2261     border-radius: 4px;
2262   }
2263 }
2264
2265 .site-about #content {
2266   background-color: $lightgrey;
2267   background-position: 50% 50%;
2268   background-repeat: no-repeat;
2269   background-size: cover;
2270   background-attachment: fixed;
2271
2272
2273   .content-inner {
2274     position: relative;
2275     color: #333;
2276     min-width: 320px;
2277     max-width: 640px;
2278   }
2279
2280   .text {
2281     background: white;
2282     padding: 40px;
2283   }
2284
2285   .attr {
2286     position: relative;
2287     padding: 170px 40px 20px;
2288     background: #333;
2289     background: rgba(0, 0, 0, .8);
2290     margin-bottom: 0;
2291     margin-top: -20px;
2292
2293     h1 {
2294       display: block;
2295       color: white;
2296       font-weight: 300;
2297       font-size: 34px;
2298       span {
2299         color: $vibrant-green;
2300       }
2301     }
2302
2303     .user-image {
2304       position: absolute;
2305       top: 0px;
2306       right: 240px;
2307       left: 0px;
2308       height: 150px;
2309       background-position: 0 50%;
2310       background-repeat: no-repeat;
2311       background-image: image-url('about/osm.png');
2312       background-size: cover;
2313       background-color: $vibrant-green;
2314     }
2315
2316     .byosm {
2317       position: absolute;
2318       top: 0px;
2319       right: 0px;
2320       z-index: 1;
2321       width: 240px;
2322       height: 150px;
2323       padding: 20px 20px 20px 40px;
2324       font: 500 20px/24px Helvetica, Arial, sans-serif;
2325       white-space: nowrap;
2326       color: #fff;
2327       background: $vibrant-green;
2328     }
2329
2330     .byosm span {
2331       display: inline-block;
2332       width: 20px;
2333       margin-left: -20px;
2334     }
2335   }
2336
2337   .icon {
2338     width: 30px;
2339     height: 30px;
2340     margin-right: 10px;
2341     vertical-align: middle;
2342     background: 40px 40px image-url('about/sprite.png') no-repeat;
2343
2344     &.local {
2345       /* no-r2 */
2346       background-position: 0px 0px;
2347     }
2348     &.community {
2349       /* no-r2 */
2350       background-position: 0px -40px;
2351     }
2352     &.open {
2353       /* no-r2 */
2354       background-position: 0px -80px;
2355     }
2356     &.partners {
2357       /* no-r2 */
2358       background-position: 0px -120px;
2359     }
2360     &.infringement {
2361       /* no-r2 */
2362       background-position: 0px -160px;
2363     }
2364     &.legal {
2365       /* no-r2 */
2366       background-position: -45px -160px;
2367     }
2368   }
2369 }
2370
2371 @import 'browse';
2372
2373 @media only screen and (max-width:960px) {
2374   .header-illustration.new-user-arm {
2375     display: none;
2376   }
2377 }
2378
2379 .read-reports {
2380   background: $lightgrey;
2381   opacity: 0.7;
2382 }
2383
2384 .issues-list {
2385   td:nth-child(2) {
2386     white-space: nowrap;
2387   }
2388 }