]> git.openstreetmap.org Git - rails.git/blob - app/assets/stylesheets/common.css.scss
0e03da6de7d3c9870f6412be2db9cb8b1e4870f3
[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:900px) {
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   .form-row {
1566     margin: auto;
1567     max-width: 370px;
1568   }
1569 }
1570
1571 /* Rules for the account settings page */
1572
1573 #accountForm .user_map {
1574   position: relative;
1575   width: 500px;
1576   height: 400px;
1577   border: 1px solid #ccc;
1578 }
1579
1580 #accountForm .user_image {
1581   margin-bottom: 0;
1582 }
1583
1584 #accountForm #user_image {
1585   margin-left: 20px;
1586 }
1587
1588 #accountForm ul.accountImage-options {
1589   margin-left: 120px;
1590 }
1591
1592 .nohome .location {
1593   display: none;
1594 }
1595
1596 #homerow .message {
1597   display: none;
1598 }
1599
1600 .nohome .message {
1601   display: inline !important;
1602 }
1603
1604 .content_map.settings_map {
1605   width: 50%;
1606   float: none;
1607 }
1608
1609 /* Rules for the oauth settings page */
1610
1611 .oauth_clients .buttons .oauth-edit {
1612   border-radius: 2px 0 0 2px;
1613 }
1614
1615 .oauth_clients .buttons .oauth-delete {
1616   border-radius: 0 2px 2px 0;
1617 }
1618
1619 /* Rules for messages pages */
1620
1621 .messages {
1622   width: 100%;
1623   border: 1px solid #ddd;
1624
1625   input[type="submit"] {
1626     margin: auto;
1627   }
1628   tbody tr {
1629     border-top: 1px solid #ccc;
1630   }
1631
1632   .inbox-row {
1633     background: #f8f8ff;
1634   }
1635
1636   .inbox-row-unread {
1637     background:#CBEEA7;
1638   }
1639
1640   .right {
1641     float: right;
1642   }
1643
1644   tr td,
1645   tr th {
1646     padding: $lineheight/4;
1647   }
1648   p:last-child,
1649   h2:last-child,
1650   h3:last-child,
1651   ol:last-child,
1652   ul:last-child {
1653     margin-bottom:0;
1654   }
1655   tr td {
1656     height: 30px;
1657     border-right: 1px solid $lightgrey;
1658   }
1659 }
1660
1661 .inbox-row .inbox-mark-read {
1662   display: none;
1663 }
1664
1665 .info-line {
1666   margin-bottom: $lineheight;
1667   padding: $lineheight/4 0px 4px 0px;
1668   border-bottom: 1px solid #ccc;
1669
1670   form, form div {
1671     display: inline;
1672   }
1673 }
1674
1675 .info-line .user_thumbnail_tiny {
1676   vertical-align: middle;
1677 }
1678
1679 .inbox-mark-unread,
1680 .inbox-mark-read,
1681 .inbox-delete {
1682   width: 1%;
1683 }
1684
1685 .inbox-row-unread .inbox-mark-unread {
1686   display: none;
1687 }
1688
1689 .message-read .message-buttons {
1690   margin-top: $lineheight;
1691   padding-top: $lineheight;
1692   border-top: 1px solid $lightgrey;
1693 }
1694
1695 .message-read .buttons .mark-unread-button {
1696   border-radius: 0;
1697 }
1698
1699 /* Rules for "flash" notice boxes shown at the top of the content area */
1700
1701 .flash {
1702     padding: $lineheight;
1703   &#error {
1704     background-color: #ff7070;
1705   }
1706   &#warning {
1707     background-color: #ffe0cc;
1708   }
1709   &#notice {
1710     background-color: #CBEEA7;
1711   }
1712 }
1713
1714 /* Rules for highlighting fields with rails validation errors */
1715
1716 .field_with_errors {
1717   padding: 2px;
1718   background-color: #ff7070;
1719   display: inline-block;
1720 }
1721
1722 .formError {
1723   display: inline-block;
1724   padding: 5px 10px;
1725   margin-top: 5px;
1726   border-radius: 4px;
1727   font-size: 12px;
1728   color: #fff;
1729   background-color: #ff7070;
1730 }
1731
1732 /* Rules for rails validation error boxes */
1733
1734 #errorExplanation {
1735   width: 400px;
1736   border: 2px solid #ff7070;
1737   padding: 0 $lineheight/2;
1738   margin-bottom: $lineheight;
1739   background-color: #f0f0f0;
1740
1741   h2 {
1742     margin: 0 -10px 10px -10px;
1743     padding: $lineheight/4 $lineheight/4 $lineheight/4 15px;
1744     font-weight: bold;
1745     font-size: 12px;
1746     background-color: #c00;
1747     color: #fff;
1748     text-align: left;
1749   }
1750
1751   p {
1752     color: #333;
1753     margin-bottom: 0px;
1754     padding: $lineheight/4;
1755   }
1756
1757   ul {
1758     padding-left: $lineheight;
1759
1760     li {
1761       font-size: 12px;
1762       list-style: disc;
1763     }
1764   }
1765 }
1766
1767 /* Rules for forms */
1768
1769 .standard-form {
1770   fieldset {
1771     margin-bottom: $lineheight;
1772   }
1773   label.standard-label {
1774     display: block;
1775     margin-bottom: $lineheight/4;
1776     font-size: $typeheight;
1777     font-weight: bold;
1778     line-height: 1.5;
1779   }
1780   label.standard-label.secondary {
1781     display: inline-block;
1782     font-weight: normal;
1783   }
1784   .form-help {
1785     font-weight: normal;
1786   }
1787   .form-column {
1788     float: left;
1789     margin-right: 20px;
1790   }
1791   .form-divider {
1792     margin-top: $lineheight;
1793     padding-top: $lineheight;
1794     border-top: 1px solid $lightgrey;
1795   }
1796   .horizontal-list .form-row { 
1797     float: left;
1798     padding-right: 10px;
1799   }
1800   .form-row {
1801     margin-bottom: $lineheight/2;
1802   }
1803   .form-list {
1804     margin-bottom: 0;
1805   }
1806   .form-list li {
1807     margin-bottom: 5px;
1808    }
1809   input[type="checkbox"],
1810   input[type="radio"] {
1811     float: left;
1812     margin-top: 5px;
1813   }
1814 }
1815
1816 #remember_me_openid {
1817   display: block;
1818 }
1819
1820 input[type="checkbox"],
1821 input[type="radio"] {
1822     margin-right: 5px;
1823 }
1824
1825 input[type="text"],
1826 input[type="email"],
1827 input[type="url"],
1828 input[type="password"],
1829 textarea {
1830   border: 1px solid #ccc;
1831   padding: 2px 5px;
1832   margin: 0;
1833   width: 200px;
1834 }
1835
1836 textarea {
1837   padding: 5px;
1838   width: 100%;
1839 }
1840
1841 /* Rules for user images */
1842
1843 img.user_image {
1844   max-width: 100px;
1845   max-height: 100px;
1846   border: 1px solid #ccc;
1847   margin-bottom: $lineheight;
1848   float: left;
1849   margin-right: $lineheight;
1850 }
1851
1852 img.user_thumbnail {
1853   max-width: 50px;
1854   max-height: 50px;
1855   border: 1px solid #ccc;
1856   margin-right: $lineheight;
1857 }
1858
1859 img.user_thumbnail_tiny {
1860   max-width: 25px;
1861   max-height: 25px;
1862   border: 1px solid #ccc;
1863 }
1864
1865 /* Rule for "nowrap" class that can be applied to anything to stop wrapping */
1866
1867 .nowrap {
1868   white-space: nowrap;
1869 }
1870
1871 /* Rules for geo microformats */
1872
1873 abbr.geo {
1874   border-bottom: none;
1875 }
1876
1877 /* Rules for RSS buttons */
1878
1879 .rsssmall {
1880   position: relative;
1881   top: 5px;
1882 }
1883
1884 /* General styles for action lists / subnavs / pager navs */
1885
1886 ul.secondary-actions {
1887   font-style: normal;
1888   margin-bottom: 0;
1889   margin-left: 0;
1890   &.pager {
1891     display: inline-block;
1892     margin-right: 60px;
1893   }
1894   li {
1895     display: block;
1896     float: left;
1897     list-style: none;
1898     border-left: 1px solid #ccc;
1899     padding-left: $lineheight/4;
1900     margin-right: $lineheight/4;
1901     &:first-child {
1902       border-left: 0;
1903       padding-left: 0;
1904     }
1905     &:last-child {
1906       margin-right: 0px;
1907     }
1908   }
1909 }
1910
1911 /* Utility for managing inner content areas */
1912
1913 .inner22 { padding: $lineheight;}
1914
1915 .inner12 { padding: $lineheight/2 $lineheight;}
1916
1917 .inner11 { padding: $lineheight/2;}
1918
1919 .inner20 { padding: $lineheight 0;}
1920
1921 .inner02 { padding: 0 $lineheight;}
1922
1923 /* Utility for general button styles */
1924
1925 input[type="button"],
1926 input[type="submit"],
1927 input[type="reset"],
1928 a.button {
1929   cursor: pointer;
1930   border: 0;
1931   display: inline-block;
1932   line-height: 20px;
1933   padding: $lineheight/4 $lineheight/2;
1934   min-height: 20px + $lineheight/2;
1935   min-width: 120px;
1936   margin: 0 0 $lineheight/2 0;
1937   color: white;
1938   background: $blue;
1939   text-align: center;
1940   border-radius: 2px;
1941   -moz-border-radius: 2px;
1942   &:hover {
1943     background: darken($blue, $hovercolor);
1944     text-decoration: none;
1945   }
1946   &.deemphasize {
1947     background: $lightblue;
1948     &:hover {
1949       background: darken($lightblue, $hovercolor);
1950     }
1951   }
1952   &:disabled {
1953     background: $lightgrey;
1954     &:hover {
1955       background: $lightgrey;
1956     }
1957   }
1958   &:last-child {
1959     margin-bottom: 0;
1960   }
1961 }
1962
1963 .buttons {
1964   min-width: 200px;
1965   input[type="submit"],
1966   input[type="button"],
1967   input[type="reset"],
1968   .button {
1969     box-sizing: border-box;
1970     float: left;
1971     border-radius: 0;
1972     margin:0;
1973     min-width: 100px;
1974     max-width: 180px;
1975     border-right:1px solid white;
1976     text-overflow: ellipsis;
1977     white-space: nowrap;
1978     overflow: hidden;
1979   }
1980   input:first-child,
1981   .button:first-child {
1982     border-radius:2px 0 0 2px;
1983   }
1984   input:last-child,
1985   .button:last-child {
1986     border-radius:0 2px 2px 0;
1987     border-right-width: 0;
1988   }
1989   input:only-child,
1990   .button:only-child,
1991   *[value="Hide"] + input:last-child,
1992   *[value="Hide"] + .button:last-child {
1993     border-radius:2px;
1994     border-right-width: 0;
1995   }
1996     /* if a 3-button set has a hidden middle button */
1997   *[value="Hide"] + input:nth-child(3),
1998   *[value="Hide"] + .button:nth-child(3) {
1999     border-radius:0 2px 2px 0;
2000     border-right-width: 0;
2001   }
2002   /* if a 3-button set starts with a hidden button */
2003   *[value="Hide"] + input:nth-child(2):not(:last-child),
2004   *[value="Hide"] + .button:nth-child(2):not(:last-child) {
2005     border-radius:2px 0 0 2px;
2006     border-right-width: 1px solid white;
2007   }
2008 }
2009
2010 /* Rules for doing distinct colour of alternate table rows */
2011
2012 .table0,
2013 .item0 {
2014   background: $offwhite;
2015 }
2016
2017 .table1,
2018 .item1 {
2019   background: #fff;
2020 }
2021
2022 /* Rules for OpenID logo */
2023
2024 .openid_logo {
2025   vertical-align: text-bottom;
2026   border: 0;
2027 }
2028
2029 /* Rules for rich text */
2030
2031 .richtext,
2032 .prose {
2033   h1, h2 {
2034     padding-bottom: $lineheight/2;
2035     border-bottom: 1px dashed #cccccc;
2036     margin-bottom: $lineheight/2;
2037   }
2038
2039   h1 {
2040     font-size: 24px;
2041   }
2042
2043   h2 {
2044     font-size: 18px;
2045   }
2046
2047   h3 {
2048     font-size: $typeheight;
2049   }
2050
2051   code {
2052     font-size: 13px;
2053     background: #e8e8e8;
2054     padding: 2px 3px;
2055   }
2056
2057   pre {
2058     font-size: 13px;
2059     background: #e8e8e8;
2060     padding: 2px 3px;
2061
2062     code {
2063       padding: 0;
2064     }
2065   }
2066
2067   img {
2068     padding: $lineheight;
2069     background-color: $offwhite;
2070     display: block;
2071     max-width: 100%;
2072     margin: auto;
2073   }
2074
2075   blockquote {
2076     border-left: $lineheight solid $offwhite;
2077     padding-left: $lineheight;
2078     margin: 0;
2079     color: #7E7E7E;
2080   }
2081
2082   ul, ol {
2083     padding-left: $lineheight;
2084     margin-bottom: $lineheight;
2085     margin-left: $lineheight;
2086   }
2087
2088   ul li {
2089     list-style: disc;
2090   }
2091
2092   ol li {
2093     list-style: decimal;
2094   }
2095 }
2096
2097 .diary_post .richtext {
2098     margin-top: $lineheight;
2099   }
2100
2101 .comments .richtext {
2102   margin-left: 70px;
2103   margin-top: 0;
2104 }
2105
2106 /* Rules for rich text editors */
2107
2108 .richtext_container {
2109   margin-bottom: $lineheight;
2110
2111   .richtext_content {
2112     width: 50%;
2113     display: inline-block;
2114     vertical-align: top;
2115
2116     .richtext_preview {
2117       display: inline-block;
2118       padding: $lineheight;
2119       background-color: $offwhite;
2120       overflow-x: auto;
2121
2122       &.loading {
2123         background-image: image-url("loading.gif");
2124         background-repeat: no-repeat;
2125         background-position: center;
2126       }
2127
2128       > :first-child {
2129         margin-top: 0px;
2130       }
2131     }
2132   }
2133
2134   .richtext_help {
2135     display: inline-block;
2136     vertical-align: top;
2137     margin-left: 15px;
2138     background-color: #f8f8ff;
2139     padding: $lineheight/2;
2140     width: 220px;
2141
2142     ul {
2143       margin-bottom: 0;
2144     }
2145
2146     h4.heading, li {
2147       border-bottom: 1px solid #ccc;
2148       margin-bottom: $lineheight/4;
2149       padding-bottom: $lineheight/4;
2150     }
2151
2152     li h4, li span, li p {
2153       display: inline-block;
2154       vertical-align: top;
2155       font-size: 11px;
2156     }
2157
2158     li h4 {
2159       width: 40%;
2160       margin: 0;
2161     }
2162
2163     li span, li p {
2164       width: 50%;
2165       margin-left: $lineheight/2;
2166       margin-bottom: $lineheight/4;
2167       white-space: nowrap;
2168     }
2169   }
2170 }
2171
2172 /* Rules for the user notes list */
2173
2174 .note_list {
2175   tr.creator {
2176     background-color: #eeeeee;
2177   }
2178
2179   td {
2180     padding: 3px;
2181   }
2182
2183   p {
2184     margin-bottom: 0px;
2185   }
2186 }
2187
2188 /* Rules for the notes interface */
2189
2190 .leaflet-popup-content .note {
2191   padding-top: $lineheight/2;
2192 }
2193
2194 .leaflet-popup-content .note {
2195   h2 {
2196     margin-bottom: $lineheight/2;
2197   }
2198
2199   div {
2200     margin-top: $lineheight/2;
2201   }
2202
2203   .permalink {
2204     position: absolute;
2205     top: $lineheight/4;
2206     left: $lineheight/4;
2207     min-width: 15px;
2208     min-height: 15px;
2209   }
2210
2211   .permalink span {
2212     display: none;
2213     padding-left: $lineheight;
2214   }
2215
2216   .permalink:hover span {
2217     display: block;
2218   }
2219
2220   .warning {
2221     display: block;
2222     background-color: #ffe0cc;
2223     padding: 4px 6px;
2224     margin-bottom: $lineheight/2;
2225   }
2226
2227   .comment_body {
2228     margin-top: 2px;
2229     margin-bottom: 2px;
2230
2231     p {
2232       margin-top: 0px;
2233       margin-bottom: 0px;
2234     }
2235   }
2236
2237   .comment {
2238     width: 100%;
2239     height: 100px;
2240   }
2241
2242   .buttons {
2243     margin-top: $lineheight/4;
2244     text-align: right;
2245   }
2246 }
2247
2248 /*
2249  * Rules for the iD editor
2250  */
2251
2252 .site-edit-id {
2253   #left,
2254   #large-title {
2255     display: none;
2256   }
2257
2258   #small-title {
2259     display: inline-block;
2260     width: 185px;
2261     height: 30px;
2262     font-size: 14px;
2263     margin: 0;
2264     background-color: #eee;
2265     border-bottom: 1px solid #ccc;
2266     text-align: center;
2267     padding-top: 7px;
2268   }
2269
2270   #content {
2271     left: 0;
2272   }
2273 }
2274
2275 .id-embed {
2276   width: 100%;
2277   height: 100%;
2278 }
2279
2280 /* Rules for rotating sidebar ads */
2281 .ad-container {
2282   display: block;
2283   height: 120px;
2284   overflow: hidden;
2285   position: relative;
2286   border-bottom: 1px solid #ccc;
2287 }
2288
2289 .ad {
2290   height: 100px;
2291   border: 0;
2292   background: #fff;
2293 }
2294
2295 /* Rules for the "Welcome" page */
2296 .site-welcome {
2297   .center {
2298     text-align: center;
2299     .sprite { 
2300       float: none;
2301       margin: auto;
2302     }
2303   }
2304
2305   .sprite {
2306     background-image: image-url("welcome-sprite.png");
2307     background-size: 500px 250px;
2308     display: block;
2309     float: left;
2310   }
2311
2312   .icon-list { 
2313     padding-bottom: 20px;
2314     div {
2315       margin-bottom: 10px;
2316       p {
2317         padding-top: 10px;
2318       }
2319     }
2320   }
2321   .sprite.small {
2322     width: 50px;
2323     height: 50px;
2324   }
2325
2326   .sprite.x {
2327     background-position: -50px 0;
2328   }
2329
2330   .sprite.term {
2331     margin-right: 10px;
2332     vertical-align: middle;
2333   }
2334
2335   .sprite.node {
2336     background-position: -100px 0;
2337   }
2338
2339   .sprite.way {
2340     background-position: -150px 0;
2341   }
2342
2343   .sprite.tag {
2344     background-position: -200px 0;
2345   }
2346
2347   .sprite.editor {
2348     background-position: -250px 0;
2349   }
2350
2351   .sprite.question {
2352     background-position: -300px 0;
2353   }
2354
2355   .start-mapping {
2356     margin: auto;
2357     cursor: pointer;
2358     border: none;
2359     padding: 20px 40px;
2360     font-size: 30px;
2361     text-decoration: none;
2362   }
2363
2364   .note-box {
2365     margin-top: 20px;
2366     background-color: $offwhite;
2367   }
2368
2369   .icon.note {
2370     background-color: #333;
2371     border-radius: 4px;
2372   }
2373 }