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