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