]> git.openstreetmap.org Git - rails.git/blob - app/assets/stylesheets/common.css.scss
aa2e893aa3360ae92bfcde4aebb3505a24a6f767
[rails.git] / app / assets / stylesheets / common.css.scss
1 /* Styles common to large and small screens */
2
3 /* Minimal CSS reset */
4
5 html, body, ul, ol, li, form, fieldset, legend, h1, h2, h3, h4, h5, h6, p {
6   margin: 0;
7   padding: 0;
8   border: 0;
9   font-size:100%;
10 }
11
12 fieldset,img { border: 0; }
13
14 legend { color: #000; }
15
16 sup { vertical-align: text-top; }
17
18 sub { vertical-align: text-bottom; }
19
20 table {
21   border-collapse: collapse;
22   border-spacing: 0;
23 }
24
25 li { list-style: none; }
26
27 input,
28 select,
29 textarea,
30 body { font: 14px/20px "Helvetica Neue",Arial,sans-serif; }
31
32 abbr, acronym {
33   border-bottom: .1em dotted;
34   cursor: help;
35 }
36
37 /* Micro Clearfix | Details: http://nicolasgallagher.com/micro-clearfix-hack/ */
38
39 .clearfix:before,
40 .clearfix:after {
41     content: " ";
42     display: table;
43 }
44
45 .clearfix:after {
46     clear: both;
47 }
48
49 /* Default rules for the body of every page */
50
51 body {
52   font-family: 'Helvetica Neue',Arial,sans-serif;
53   font-size: 14px;
54   line-height: 1.6666;
55   color: #222;
56   background-color: #fff;
57   margin: 0px;
58   padding: 0px;
59   text-align: left;
60 }
61
62 body.slim {
63   background-color: #f0f0f0;
64 }
65
66 h1, h2, h3 {
67   margin-top: 10px;
68   margin-bottom: 20px;
69   font-weight: bold;
70   line-height: 1.2;
71 }
72
73 h1, h2 {
74   font-size: 32px;
75 }
76
77 #content h2 {
78   font-size: 24px;
79 }
80
81 h3 {
82   font-size: 21px;
83   margin-top: 10px;
84   margin-bottom: 20px;
85 }
86
87 h4,h5,h6 {
88   font-size: 14px;
89   margin-top: 10px;
90   margin-bottom: 20px;
91   font-weight: bold;
92   line-height: 1.5;
93 }
94
95 p, ul {
96   margin-bottom: 20px;
97 }
98
99 p > img {
100   width: auto;
101   max-width: 100%;
102 }
103
104 small, aside {
105   font-size: 12px;
106 }
107
108 h1:first-child,
109 h2:first-child,
110 h3:first-child,
111 h4:first-child,
112 h5:first-child,
113 h6:first-child {
114   margin-top: 0;
115 }
116
117 .column-1 {
118   width: 50%;
119   margin-bottom: 20px;
120 }
121
122 .small_icon {
123   vertical-align: middle;
124   margin-right: 5px;
125 }
126
127 /* Rules for links */
128
129 a {
130   color: #00f;
131   text-decoration: none;
132   &:hover {
133     text-decoration: underline;
134   }
135 }
136
137 /* Rules for horizontal lines */
138
139 hr {
140   border: none;
141   background-color: #ccc;
142   color: #ccc;
143   height: 1px;
144 }
145
146 /* General styles for tables */
147
148 table {
149   width: 100%;
150   margin-bottom: 20px;
151   th, td {
152     text-align: left;
153     padding: 5px;
154     line-height: 20px;
155   }
156   th {
157     font-weight: bold;
158     vertical-align: top;
159   }
160   td {
161     vertical-align: middle;
162   }
163 }
164
165 /* Rules for the whole left sidebar, including the logo */
166
167 #left {
168   position: absolute;
169   height: 100%;
170   width: 185px;
171   font-size: 11px;
172   line-height: 12px;
173   z-index: 100;
174   border-right: 1px solid #ccc;
175 }
176
177 /* Rules for the OpenStreetMap logo in the top left corner */
178
179 #logo {
180   display: block;
181   width: 170px;
182   min-width: 170px;
183   padding: 20px 5px;
184   text-align: center;
185   margin: auto;
186 }
187
188 #logo h1 {
189   font-size: 18px;
190   line-height: 20px;
191   text-align: center;
192   margin: 0px;
193 }
194
195 #logo h2 {
196   font-size: 10px;
197   line-height: 15px;
198   margin: 0px;
199 }
200
201 /* Rules for the site name */
202
203 #small-title {
204   display: none;
205 }
206
207 /* Rules for the introductory text displayed in the left sidebar to new users */
208
209 .sidebar-copy {
210   padding: 5px 10px;
211 }
212
213 .sidebar-copy p {
214   margin: 5px 0;
215 }
216
217 .sidebar-copy.intro {
218   margin-top: -1px;
219   border-top: 1px solid #ccc;
220 }
221
222 /*
223  * Rules for alert boxes shown in the left sidebar when important
224  * information needs to be conveyed such as when the site is
225  * undergoing maintenance.
226  */
227
228 .sidebar-alert {
229   padding: 5px;
230   border-top: 1px solid #ccc;
231   margin-top: 4px;
232   margin-bottom: -4px;
233   background: #e00;
234   font-size: 12px;
235   font-weight: bold;
236   p {
237     margin: 5px;
238   }
239 }
240
241 /*
242  * Rules for notice boxes shown in the left sidebar when important, but
243  * non-critical information needs to be conveyed such as notices about
244  * donation drives.
245  */
246
247 .sidebar-notice {
248   padding: 5px;
249   border-top: 1px solid #ccc;
250   margin-top: 4px;
251   margin-bottom: -4px;
252   background: #ea0;
253   font-size: 12px;
254   p {
255     margin: 5px;
256   }
257 }
258
259 /* Rules for the menu displayed in the left sidebar */
260
261 .left_menu {
262   left: 0px;
263   margin: 0;
264   padding: 5px 10px;
265   line-height: 15px;
266   font-size: 12px;
267   list-style-type: none;
268   border-bottom: 1px solid #ccc;
269   border-top: 1px solid #ccc;
270 }
271
272 .left_menu img {
273   margin: 10px 0px;
274 }
275
276 .left_menu ul {
277   padding: 0;
278   margin: 0;
279 }
280
281 .left_menu li {
282   list-style-type: none;
283   padding: 0;
284   margin: 0;
285 }
286
287 .left_menu h4 {
288   padding: 5px 0 5px 0;
289   font-size: 12px;
290   margin: 0;
291 }
292
293 .left_menu li:last-child h4 {
294   padding-top: 0;
295 }
296
297 /* Rules for SOTM advert */
298
299 #sotm {
300   width: 165px;
301   margin: 10px;
302   padding: 0px;
303   border: 0px;
304   background: #fff;
305 }
306
307 #sotm img {
308   width: 165px;
309 }
310
311 /*
312  * Rules for "optional boxes" which appear in the left sidebar on
313  * certain pages. Current users are the seach box on the main page
314  * and the tag cloud on the traces pages.
315  */
316
317 .optionalbox {
318   left: 0px;
319   padding: 5px 10px;
320   margin: 5px 0;
321   text-align: left;
322 }
323
324 /* Rules for the search box */
325
326 #search_field form {
327   width: 165px;
328 }
329
330 #search_field {
331   position: relative;
332 }
333
334 #search_field input[type="text"] {
335   width: 165px;
336   padding: 3px;
337   font-size: 14px;
338   line-height: 15px;
339   height: 25px;
340   padding: 2px 0px 2px 5px;
341   box-shadow: inset #DDD 0px 1px 3px;
342   box-sizing: border-box;
343   -webkit-box-sizing: border-box;
344   -moz-box-sizing: border-box;
345   -ms-box-sizing: border-box;
346 }
347
348 #search_field input[type="text"]:focus {
349   outline: none;
350   border: 1px solid #000;
351 }
352
353 #search_field input[type="submit"] {
354   border: 0;
355   margin: 0;
356   padding: 0;
357   width: 15px;
358   height: 15px;
359   text-indent: -1000px;
360   overflow: hidden;
361   background: image-url("sprite.png") 0 0 no-repeat;
362   position: absolute;
363   top: 5px;
364   right: 5px;
365   cursor: pointer;
366 }
367
368 .search_help {
369   margin: 5px 0 0 0;
370 }
371
372 /* Utility for de-emphasizing content */
373
374 .deemphasize {
375   color: #999;
376   a {
377     color: #7092FF;
378   }
379 }
380
381 /* Rules for donation request box */
382
383 .donate {
384   display: block;
385   position: relative;
386   width: 153px;
387   padding: 5px;
388   border: 1px solid #AED1A0;
389   background: #cbeea7;
390   line-height: 20px;
391   text-align: center;
392   font-size: 14px;
393   border-radius: 2px;
394   -moz-border-radius: 2px;
395   color: #222;
396   margin: 10px 10px 0px 10px;
397 }
398
399 .donate:hover {
400   background: #9ed485;
401   text-decoration: none;
402 }
403
404 .donate p {
405   text-indent: 20px;
406   margin: 0;
407 }
408
409 .donate .donate-icon {
410   width: 15px;
411   height: 15px;
412   border: 0px;
413   background: image-url("sprite.png") 0 -30px no-repeat;
414   position: absolute;
415   top: 8px;
416   left: 17px;
417 }
418
419 /* Rules for Creative Commons logo button */
420
421 #cclogo {
422   margin: 10px 0;
423   float: right;
424 }
425
426 /* Rules for tabbed navigation bar */
427
428 #top-bar {
429   position: relative;
430   margin-left: 185px;
431   height: 29px;
432   border-bottom: 1px solid #ccc;
433   background: white;
434   z-index: 100;
435 }
436
437 .site-edit #top-bar,
438 .site-index #top-bar,
439 .site-export #top-bar {
440   position: fixed;
441   left: 0;
442   right: 0;
443 }
444
445 #tabnav {
446   height: 29px;
447   margin-bottom:0;
448   overflow: hidden;
449 }
450
451 #tabnav li {
452   display: inline;
453 }
454
455 #tabnav a, #tabnav a:link, #tabnav a:visited {
456   float: left;
457   background: #fff;
458   font-weight: bold;
459   padding: 3px 10px;
460   text-decoration: none;
461   color: #333;
462   float: left;
463   margin-right: 1px;
464   -webkit-transition: color 200ms ease-in;
465      -moz-transition: color 200ms ease-in;
466        -o-transition: color 200ms ease-in;
467           transition: color 200ms ease-in;
468 }
469
470 .site-index #tabnav a#viewanchor,
471 .site-edit #tabnav a#editanchor,
472 .changeset-list #tabnav a#historyanchor,
473 .site-export #tabnav a#exportanchor {
474   border-bottom: 1px solid #aaa;
475   background: #9ed485;
476   color: #000;
477 }
478
479 #tabnav a:link:hover, #tabnav a:visited:hover {
480   text-decoration: underline;
481 }
482
483 #tabnav a:link.disabled,
484 #tabnav a:visited.disabled,
485 #tabnav a:link:hover.disabled,
486 #tabnav a:visited:hover.disabled {
487   color: #ccc;
488   cursor: default;
489 }
490
491 #tabnav a:link.disabled:hover,
492 #tabnav a:visited.disabled:hover,
493 #tabnav a:link:hover.disabled:hover,
494 #tabnav a:visited:hover.disabled:hover {
495   text-decoration: none;
496 }
497
498 /* Utility for styling notification numbers */
499
500 .count-number {
501   padding: 2px 5px;
502   border-radius: 3px;
503   background: #d7d7ff;
504   margin: 0 2px;
505   font-size: 11px;
506   color: #333;
507 }
508
509 /* Rules for greeting bar in the top right corner */
510
511 #greeting {
512   float: right;
513   padding-top: 3px;
514 }
515
516 .greeting-bar-unread {
517   font-weight: bold;
518 }
519
520 /* Rules for the message shown in place of the map when javascript is disabled */
521
522 #noscript {
523   z-index: 20000000;
524   position: absolute;
525   top: 15px;
526   left: 15px;
527 }
528
529 /* Rules for Leaflet maps */
530
531 #permalink {
532   z-index: 10000;
533   position: absolute;
534   bottom: 0px;
535   right: 0px;
536   padding: 5px;
537   background:#fff;
538 }
539
540 .site-index .leaflet-top,
541 .site-export .leaflet-top {
542   top: 10px !important;
543   .leaflet-control {
544     margin-top: 0px !important;
545   }
546 }
547
548 .site-index #map .olControlScaleLine,
549 .site-export #map .olControlScaleLine {
550   left: 10px !important;
551 }
552
553 /* Rules for edit menu */
554
555 .menuicon {
556   padding: 0 5px;
557   font-weight: normal;
558   display: inline-block;
559   &:hover {
560     text-decoration: none !important;
561   }
562 }
563
564 .menu {
565   display: none;
566   z-index: 10000;
567   position: absolute;
568   background-color: #ffffff;
569   border: 1px solid #cccccc;
570   border-top: 0px;
571 }
572
573 .menu ul {
574   margin: 0px;
575 }
576
577 .menu li {
578   padding: 2px 5px;
579   border-top: 1px solid #eee;
580   white-space: nowrap;
581 }
582
583 /* Rules for attribution text under the main map shown on printouts */
584
585 #attribution {
586   display: none;
587 }
588
589 .attribution_license,
590 .attribution_project {
591   text-align: left;
592 }
593
594 .attribution_notice {
595   text-align: center;
596 }
597
598 /* Rules for the popout map sidebar */
599
600 #sidebar {
601   display: none;
602   position: absolute;
603   overflow: auto;
604   top: 0px;
605   bottom: 0px;
606   left: 0px;
607   border-right: 1px solid #ccc;
608   width: 33.3333%;
609   .sidebar_heading {
610     position: relative;
611     padding: 10px 20px;
612     z-index: 9999;
613     background: #F4F4FF;
614     border-bottom: 1px solid #ccc;
615   }
616   h4 {
617     margin: 0;
618   }
619   ul {
620     margin-bottom: 0;
621     li {
622       margin-bottom: 5px;
623       &:last-child {
624         margin-bottom: 0;
625       }
626     }
627   }
628 }
629
630 #sidebar_close {
631   position: absolute;
632   height: 20px;
633   top: 0px;
634   bottom: 0;
635   right: 20px;
636   margin: auto;
637 }
638
639 #sidebar_content {
640   position: relative;
641   bottom: 0;
642   width: 100%;
643   h4 {
644     padding: 0 20px 10px 20px;
645     margin-top: 10px;
646     margin-bottom: 0;
647     border-bottom: 1px solid #ddd;
648   }
649 }
650
651 /* Rules for the map key which appears in the popout sidebar */
652
653 #mapkey {
654   padding: 20px;
655 }
656
657 #mapkey .mapkey-table-key img {
658   display: block;
659   margin-left: auto;
660   margin-right: auto;
661 }
662
663 #mapkey td {
664   padding: 0 5px 5px 5px;
665 }
666
667 /* Rules for search results which appear in the popout sidebar */
668
669 .search_searching {
670   margin-top: 5px;
671   margin-bottom: 5px;
672 }
673
674 .search_results_entry {
675   margin-bottom: 0 ;
676 }
677
678 .search_results_entry .search_searching {
679   text-align: center;
680   margin: 20px auto;
681   width: 20px;
682   display: block;
683 }
684
685 ul.results-list li { border-bottom: 1px solid #ccc; }
686
687 .search_results_error {
688   color: #f00;
689 }
690
691 /* Rules for data browser information which appears in the popout sidebar */
692
693 #browse_content {
694   position: relative;
695   .browse_show_list.button {
696     position: absolute;
697     left: 20px;
698     right: 20px;
699     bottom: -40px;
700     margin-bottom: 0;
701   }
702   a.more-details {
703     position: absolute;
704     top: 0;
705     right: 20px;
706   }
707   ul li {
708     margin-bottom: 0;
709   }
710 }
711
712 .browse_details {
713   position: relative;
714 }
715
716 .browse_status {
717   display: none;
718 }
719
720 /* Rules for export information which appears in the popout sidebar */
721
722 .export_bounds {
723   text-align: center;
724 }
725
726 .export_area_inputs {
727   margin-bottom: 10px;
728 }
729
730 .export_bound {
731   margin: 5px;
732 }
733
734 .export_details input[type="text"]#export_html_text {
735   width: 100%;
736 }
737
738 #sidebar #marker_inputs li:last-child {
739   margin-bottom: 10px;
740 }
741
742 #export_osm,
743 #export_mapnik,
744 #export_osmarender {
745   display: none;
746 }
747
748 .export_buttons {
749   width: 100%;
750   text-align: center;
751 }
752
753 /* Rules for the main content area */
754
755 #content {
756   padding: 20px;
757   position: relative;
758 }
759
760 .site-edit #content,
761 .site-index #content,
762 .site-export #content {
763   position: fixed;
764   padding: 0;
765   top: 30px; bottom: 0;
766   left: 185px; right: 0;
767   border-left: 1px solid #ccc;
768 }
769
770 .wrapper {
771   margin-left: 185px;
772   border-left: 1px solid #ccc;
773   text-align: left;
774 }
775
776 .site-edit #content {
777   top: 30px;
778 }
779
780 #content.maximised {
781   top: 0;
782   left: 0;
783   right: 0;
784   bottom: 0;
785   border: 0;
786   z-index: 1000;
787 }
788
789 #slim_container {
790   width: 100%;
791 }
792
793 #slim_container_content {
794   max-width: 50em;
795   background-color: #FFFFFF;
796   margin: 10px auto;
797   padding: 3px;
798   border-radius: 25px;
799   -moz-border-radius: 25px;
800   border: 1px solid #e6e6e6;
801 }
802
803 #slim_content {
804   margin: 10px;
805   margin-top: 90px;
806   max-width: 50em;
807 }
808
809 #slim_header {
810   margin: 10px;
811   position: absolute;
812   top: 0px;
813   margin-right: 5px;
814 }
815
816 #slim_header img {
817   vertical-align: middle;
818   margin-bottom: 5px;
819   margin-right: 5px;
820 }
821
822 .content-heading {
823   position: relative;
824   padding: 20px;
825   background: #F4F4FF;
826   h1, h2 {
827     margin-bottom: 10px;
828     line-height: 100%;
829     &:last-child {
830       margin-bottom: 0;
831     }
832   }
833   p {
834     margin-top: 10px;
835     margin-bottom: 0px;
836   }
837 }
838
839 /* Rules for small maps in content areas */
840
841 .content_map {
842   position: relative;
843   width: 45%;
844   height: 398px;
845   border: 1px solid #ccc;
846   margin-bottom: 20px;
847   float: right;
848 }
849
850 .content_map #small_map {
851   height: 100%;
852   width: 100%;
853   margin-bottom: 20px;
854 }
855
856 /* Rules for the home page */
857
858 .site-export #map,
859 .site-index #map {
860   position: absolute;
861   top: 0px;
862   bottom: 0px;
863   left: 0px;
864   right: 0px;
865 }
866
867 /* Rules for the edit page */
868
869 .site-edit #map {
870   position: absolute;
871   top: 0px;
872   bottom: 0px;
873   left: 0px;
874   right: 0px;
875   overflow: hidden;
876 }
877
878 /* Rules for the changeset list shown by the history tab etc */
879
880 #changeset_list {
881   width: 100%;
882   ul {
883     padding: 10px 0;
884     margin-bottom: 0px;
885     border-top: 1px solid #ccc;
886     &:last-child {
887       border-bottom: 1px solid #ccc;
888     }
889   }
890   .selected {
891     background: #FFFFC0;
892   }
893   .date,
894   .user {
895     border-left: 1px solid #ccc;
896     padding-left: 5px;
897     margin-right: 5px;
898   }
899 }
900
901 #changeset_list_map {
902   position: absolute;
903   bottom: 20px;
904   top: 20px;
905   right: 20px;
906   width: 45%;
907   min-height: 398px;
908   max-height: 598px;
909   border: 1px solid #ccc;
910 }
911
912 /* Rules for the data browser */
913
914 .browse-section {
915   border-top: 1px solid #ccc;
916   margin-top: 10px;
917   padding-top: 10px;
918   &:first-child {
919     margin-top: 0;
920   }
921   h4, p {
922     margin-bottom: 5px;
923   }
924   p, ul, .bbox {
925     margin-left: 33.3333%;
926   }
927   h4 {
928     width: 33.3333%;
929     float: left;
930   }
931 }
932
933 .bbox {
934   div {
935     width: 33.3333%;
936     text-align: center;
937     padding: 5px 0;
938     overflow: hidden;
939     text-overflow: ellipsis;
940     float: left;
941   }
942   .max_lat,
943   .min_lat {
944     margin-left: auto;
945     margin-right: auto;
946     width: 100%;
947   }
948 }
949
950 #browse_map .geolink {
951   display: none;
952 }
953
954 #browse_map .secondary-actions {
955   margin-bottom: 10px;
956 }
957
958 /* Rules for the trace list shown by the traces tab etc */
959
960 #trace_list {
961   font-size: 10px;
962   border-width: 0px;
963   text-align: right;
964 }
965
966 #trace_list .trace_summary {
967   font-size: 12px;
968   color: gray;
969 }
970
971 #trace_list .trace_pending {
972   color: red;
973 }
974
975 #trace_list .trace_public {
976   color: green;
977 }
978
979 #trace_list .trace_identifiable {
980   color: green;
981 }
982
983 #trace_list .trace_trackable {
984   color: red;
985 }
986
987 #trace_list .trace_private {
988   color: red;
989 }
990
991 /* Rules for the user profile page */
992
993 #userinformation {
994   min-height: 100px;
995   .userinformation-inner {
996     float: left;
997   }
998   h2 {
999     margin-top: 0;
1000   }
1001   .user-description {
1002     width: 100%;
1003     clear: both;
1004   }
1005   .deemphasize {
1006     margin: 0;
1007   }
1008 }
1009
1010 .admin-user-info small {
1011   margin-bottom: 10px;
1012   display: inline;
1013   margin-right: 20px;
1014 }
1015
1016 .activity-block {
1017   clear: left;
1018   border-bottom: 1px solid #ccc;
1019   padding-bottom: 20px;
1020   float: left;
1021   h3 {
1022     margin-bottom: 10px;
1023   }
1024 }
1025
1026 .contact-activity {
1027   margin-top: 20px;
1028   width: 100%;
1029 }
1030
1031 .activity-details p {
1032   margin-left: 72px;
1033   margin-bottom: 0;
1034 }
1035
1036 #friends-container .contact-activity ul {
1037   margin-left: 72px;
1038   }
1039
1040 .user-view p#no_home_location {
1041   margin: 20px;
1042 }
1043
1044 .user-view .user_thumbnail {
1045   margin-top: 5px;
1046   float: left;
1047 }
1048
1049 /* Rules for the user map */
1050
1051 .content_map .leaflet-popup-content {
1052   margin: 10px 15px;
1053   min-height: 62px;
1054 }
1055
1056 .content_map .leaflet-popup-content-wrapper {
1057 -webkit-border-radius: 4px;
1058   border-radius: 4px;
1059 }
1060
1061 /* Rules for user popups on maps */
1062
1063 .user_popup {
1064   min-width: 200px;
1065 }
1066
1067 .user_popup p {
1068   padding-top: 3px;
1069   padding-bottom: 3px;
1070   margin-top: 0px;
1071   margin-bottom: 0px;
1072   margin-left: 55px;
1073   margin-right: 2px;
1074 }
1075
1076 .user_popup img.user_thumbnail {
1077   float: left;
1078   margin-right: 10px;
1079 }
1080
1081 /* Rules for user popups on maps */
1082
1083 .user_popup p {
1084   margin-bottom: 0;
1085   margin-left: 60px;
1086   font-size: 12px;
1087 }
1088
1089 /* Rules for the user list */
1090
1091 #user_list {
1092   font-size: 10px;
1093   width: 100%;
1094 }
1095
1096 #user_list tr {
1097   vertical-align: middle;
1098 }
1099
1100 #user_list p {
1101   margin-top: 0px;
1102   margin-bottom: 0px;
1103 }
1104
1105 #user_list_actions {
1106   float: right;
1107   margin-top: 10px;
1108 }
1109
1110 /* Rules for the diary list page */
1111
1112 .diary_entry-list img.user_thumbnail {
1113   float: left;
1114 }
1115
1116 .diary_post {
1117   position: relative;
1118   margin-top: 20px;
1119   padding-top: 20px;
1120   border-top: 1px solid #ccc;
1121
1122   &:first-child {
1123     margin-top: 0;
1124     border-top: 0;
1125     padding-top: 0;
1126   }
1127   h1, h2 {
1128     font-size: 21px;
1129     line-height: 21px;
1130   }
1131   small.deemphasize {
1132     display: block;
1133   }
1134   ul,
1135   ol {
1136     font-style: italic;
1137   }
1138   ul.secondary-actions { display: inline-block;}
1139 }
1140
1141 .content-heading .hide_unless_logged_in { // hacky selector, better to just add a new class to this div
1142   display: inline;
1143 }
1144
1145 .post_heading {
1146   margin-bottom: 20px;
1147   h2 {
1148     margin-top: 0;
1149     margin-bottom: 0;
1150     font-size: 24px;
1151     float: left;
1152     line-height: 32px;
1153   }
1154 }
1155
1156 /* Rules for the diary entry page */
1157
1158 .diary_entry {
1159   #map {
1160     position: relative;
1161     width: 90%;
1162     height: 398px;
1163     border: 1px solid #ccc;
1164     display: none;
1165     margin-bottom: 20px;
1166   }
1167   #newcomment {
1168     border-top: 1px solid #ccc;
1169     padding-top: 20px;
1170     margin-top: 10px;
1171   }
1172   .diary-comment {
1173     margin-top: 10px;
1174     &:first-child {
1175       margin-top: 20px;
1176       padding-top: 20px;
1177       border-top: 1px solid #ccc;
1178     }
1179     p {
1180       margin-bottom: 10px;
1181       margin-left: 70px;
1182     }
1183     .comment-heading {
1184       margin-bottom: 0;
1185       margin-top: 0;
1186     }
1187   }
1188 }
1189
1190 .diary_entry-view img.user_thumbnail {
1191   float: left;
1192 }
1193
1194 /* Rules for the login page */
1195
1196 #login_openid_buttons li {
1197   float: left;
1198   padding: 5px 10px;
1199 }
1200
1201 /* Rules for the account confirmation page */
1202
1203 div#contributorTerms {
1204   border: 1px solid #ccc;
1205   padding: 20px;
1206   margin-bottom: 20px;
1207   overflow: auto;
1208   height: 398px;
1209 }
1210
1211 div#contributorTerms p#last {
1212   margin-bottom: 0px;
1213 }
1214
1215 div#contributorTerms ol {
1216   margin-bottom: 0px;
1217 }
1218
1219 div#contributorTerms img {
1220   display: block;
1221   margin: 20px auto inherit auto;
1222 }
1223
1224 form#termsForm div#buttons {
1225   float: right;
1226 }
1227
1228 form#termsForm input#agree {
1229   margin-left: 40px;
1230 }
1231
1232 div#slim_content form#termsForm {
1233   width: auto;
1234 }
1235
1236 p#contributorGuidance {
1237   background-color: #f4f4ff;
1238   border-radius: 3px;
1239   -moz-border-radius: 3px;
1240   margin-top: 20px;
1241   padding: 10px;
1242 }
1243
1244 /* Rules for the account settings page */
1245
1246 #accountForm {
1247   margin-top: 20px;
1248 }
1249
1250 #accountForm td {
1251   padding-bottom: 10px;
1252 }
1253
1254 #accountForm .user_map {
1255   position: relative;
1256   width: 498px;
1257   height: 398px;
1258   border: 1px solid #ccc;
1259 }
1260
1261 .accountImage-options {
1262   width: 50%;
1263   display: inline-block;
1264 }
1265
1266 .nohome .location {
1267   display: none;
1268 }
1269
1270 #homerow .message {
1271   display: none;
1272 }
1273
1274 .nohome .message {
1275   display: inline !important;
1276 }
1277
1278 #accountForm input[type=submit] {
1279   margin-top: 15px;
1280 }
1281
1282 .content_map.settings_map {
1283   float: none;
1284   width: 50%;
1285 }
1286
1287 /* Rules for message in/out box page */
1288
1289 .messages {
1290   width: 100%;
1291   border: 1px solid #ddd;
1292 }
1293
1294 .messages tbody tr {
1295   border-top: 1px solid #ccc;
1296 }
1297
1298 .messages .inbox-row {
1299   background: #f8f8ff;
1300 }
1301
1302 .messages .inbox-row-unread {
1303   background:#CBEEA7;
1304 }
1305
1306 .right {
1307   float: right;
1308 }
1309
1310 .messages tr td,
1311 .messages tr th {
1312   padding: 5px;
1313 }
1314
1315 .inbox-row .inbox-mark-read {
1316   display: none;
1317 }
1318
1319 .info-line {
1320   margin-bottom: 20px;
1321   padding: 5px 0px 4px 0px;
1322   border-bottom: 1px solid #ccc;
1323 }
1324
1325 .info-line form,
1326 .info-line form div {
1327   display: inline;
1328 }
1329
1330 .info-line .user_thumbnail_tiny {
1331   vertical-align: middle;
1332 }
1333
1334 .inbox-row-unread .inbox-mark-unread {
1335   display: none;
1336 }
1337
1338 /* Rules for "flash" notice boxes shown at the top of the content area */
1339
1340 .flash {
1341     padding: 20px;
1342   &#error {
1343     background-color: #ff7070;
1344   }
1345   &#warning {
1346     background-color: #fff6f0;
1347   }
1348   &#notice {
1349     background-color: #CBEEA7;
1350   }
1351 }
1352
1353 /* Rules for highlighting fields with rails validation errors */
1354
1355 .field_with_errors {
1356   padding: 2px;
1357   background-color: #ff7070;
1358   display: table;
1359 }
1360
1361 /* Rules for rails validation error boxes */
1362
1363 #errorExplanation {
1364   width: 400px;
1365   border: 2px solid #ff7070;
1366   padding: 10px;
1367   margin-bottom: 20px;
1368   background-color: #f0f0f0;
1369 }
1370
1371 #errorExplanation h2 {
1372   margin: -10px;
1373   padding: 5px 5px 5px 15px;
1374   font-weight: bold;
1375   font-size: 12px;
1376   background-color: #c00;
1377   color: #fff;
1378   text-align: left;
1379 }
1380
1381 #errorExplanation p {
1382   color: #333;
1383   margin-bottom: 0px;
1384   padding: 5px;
1385 }
1386
1387 #errorExplanation ul li {
1388   font-size: 12px;
1389   list-style: disc;
1390 }
1391
1392 /* Rules for forms */
1393
1394 .submitButton {
1395   text-align: center;
1396 }
1397
1398 .fieldName {
1399   vertical-align: top;
1400   font-weight: bold;
1401   font-size: 12px;
1402   line-height: 20px;
1403   text-align: right;
1404 }
1405
1406 .submitButton {
1407   text-align: right;
1408 }
1409
1410 .minorNote {
1411   font-size: 12px;
1412 }
1413
1414 input[type="text"],
1415 input[type="email"],
1416 input[type="url"],
1417 input[type="password"],
1418 textarea {
1419   border: 1px solid #ccc;
1420 }
1421
1422 /* Rules for user images */
1423
1424 img.user_image {
1425   max-width: 100px;
1426   max-height: 100px;
1427   border: 1px solid #ccc;
1428   margin-bottom: 20px;
1429   float: left;
1430   margin-right: 20px;
1431 }
1432
1433 img.user_thumbnail {
1434   max-width: 50px;
1435   max-height: 50px;
1436   border: 1px solid #ccc;
1437   margin-right: 20px;
1438 }
1439
1440 img.user_thumbnail_tiny {
1441   max-width: 24px;
1442   max-height: 24px;
1443   border: 1px solid #ccc;
1444 }
1445
1446 /* Rule for "nowrap" class that can be applied to anything to stop wrapping */
1447
1448 .nowrap {
1449   white-space: nowrap;
1450 }
1451
1452 /* Rules for geo microformats */
1453
1454 abbr.geo {
1455   border-bottom: none;
1456 }
1457
1458 /* Rules for RSS buttons */
1459
1460 .rsssmall {
1461   position: relative;
1462   top: 4px;
1463 }
1464
1465 /* General styles for action lists / subnavs / pager navs */
1466
1467 ul.secondary-actions {
1468   font-style: normal;
1469   margin-bottom: 0;
1470   margin-left: 0;
1471   &.pager {
1472     display: inline-block;
1473     margin-bottom: 20px;
1474     margin-right: 60px;
1475   }
1476   li {
1477     display: block;
1478     float: left;
1479     list-style: none;
1480     border-left: 1px solid #ccc;
1481     padding-left: 5px;
1482     margin-right: 5px;
1483     &:first-child {
1484       border-left: 0;
1485       padding-left: 0;
1486     }
1487   }
1488 }
1489
1490 /* Utility for managing inner content areas */
1491
1492 .inner22 { padding: 20px;}
1493
1494 .inner12 { padding: 10px 20px;}
1495
1496 .inner02 { padding: 0 20px;}
1497
1498 /* Utility for general button styles */
1499
1500 a.button {
1501   display: block;
1502   padding: 5px;
1503   min-width: 120px;
1504   margin-bottom: 10px;
1505   color: white;
1506   background: #7092FF;
1507   text-align: center;
1508   border-radius: 2px;
1509   -moz-border-radius: 2px;
1510   &:hover {
1511     background: blue;
1512     text-decoration: none;
1513   }
1514   &:last-child {
1515     margin-bottom: 0;
1516   }
1517 }
1518
1519 a.button.submit {
1520   background-color: #cbeea7;
1521   &:hover {
1522     background-color: #9ed485;
1523   }
1524 }
1525
1526 /* Rules for doing distinct colour of alternate table rows */
1527
1528 .table0,
1529 .item0 {
1530   background: #F4F4FF;
1531 }
1532
1533 .table1,
1534 .item1 {
1535   background: #fff;
1536 }
1537
1538 /* Rules for OpenID logo */
1539
1540 .openid_logo {
1541   vertical-align: text-bottom;
1542   border: 0;
1543 }
1544
1545 /* Rules for rich text */
1546
1547 .richtext {
1548   ul,
1549   ol {
1550     margin-bottom: 20px;
1551     margin-left: 20px;
1552   }
1553   ul li {
1554     list-style: disc;
1555   }
1556
1557   ol li {
1558     list-style: decimal;
1559   }
1560 }
1561
1562 /* Rules for rich text editors */
1563
1564 .richtext_container {
1565   white-space: nowrap;
1566
1567   .richtext_content {
1568     display: inline-block;
1569     vertical-align: top;
1570
1571     .richtext_preview {
1572       display: inline-block;
1573       padding: 20px;
1574       background-color: #f4f4ff;
1575       white-space: normal;
1576
1577       &.loading {
1578         background-image: image-url("loading.gif");
1579         background-repeat: no-repeat;
1580         background-position: center;
1581       }
1582
1583       > :first-child {
1584         margin-top: 0px;
1585       }
1586     }
1587   }
1588
1589   .richtext_help {
1590     display: inline-block;
1591     vertical-align: top;
1592     margin-left: 15px;
1593     background-color: #f8f8ff;
1594     padding: 20px;
1595
1596     p {
1597       margin: 0px;
1598     }
1599
1600     th {
1601       vertical-align: top;
1602       text-align: left;
1603       padding: 0px 15px 0px 0px !important;
1604     }
1605
1606     td {
1607       font-family: fixed;
1608       line-height: 16px;
1609       text-align: left;
1610       padding: 0px !important;
1611     }
1612
1613     input.richtext_doedit {
1614       margin-top: 5px !important;
1615       margin-right: 10px !important;
1616     }
1617
1618     input.richtext_dopreview {
1619       margin-top: 5px !important;
1620       margin-left: 10px !important;
1621     }
1622   }
1623 }