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