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