@import "parameters";
-@import "bootstrap-custom";
+@import "bootstrap";
+@import "rails_bootstrap_forms";
/* Styles common to large and small screens */
-.fillL { background-color: white; }
-
/* Default rules for the body of every page */
body {
font-family: 'Helvetica Neue',Arial,sans-serif;
font-size: $typeheight;
- line-height: 1.6666;
- color: #222;
- background-color: #fff;
- margin: 0px;
- padding: 0px;
- text-align: left;
- height: 100%;
}
p > img {
#container { position: relative; }
-.column-1 {
- width: 50%;
- margin: 0 0 $lineheight/2 0;
-}
-
.small_icon {
vertical-align: middle;
margin-right: $lineheight/4;
}
-.red { color: $red; }
-
-.piwik { border: 0; }
-
[dir=rtl] { /* no-r2 */ text-align: right; }
[dir=ltr] { /* no-r2 */ text-align: left; }
a {
color: #24d;
text-decoration: none;
- -webkit-appearance: none;
outline: 0;
&:hover {
text-decoration: underline;
}
}
-/* General styles for tables */
-
-table {
- width: 100%;
- margin-bottom: $lineheight;
- th, td {
- text-align: left;
- padding: $lineheight/4;
- line-height: $lineheight;
- }
- th {
- font-weight: 600;
- vertical-align: top;
- }
- td {
- vertical-align: middle;
- }
-}
-
/* Utility for de-emphasizing content */
-.deemphasize {
- color: $darkgrey;
- a {
- color: $blue;
- }
+.text-muted a {
+ color: $blue;
}
/* Rules for the header */
}
}
}
+
+ // Small tweaks to the toggle to stop the primary colour showing through
+ // when the menu is shown
+ .show > .btn-outline-primary.dropdown-toggle {
+ background-color: $green;
+ border-color: $green;
+
+ &:focus {
+ box-shadow: 0 0 0 0.2rem fade-out($green, 0.5);
+ }
+ }
}
nav.secondary {
.user-menu {
.btn-outline-secondary {
@include button-outline-variant($darkgrey, $darkgrey, white, $darkgrey);
- // @include button-outline-variant($grey, $grey, white, $grey);
border-color: $grey;
+ &:hover {
+ border-color: $grey;
+ }
+ &:focus {
+ background-color: white;
+ box-shadow: none;
+ }
+ }
+ &.show .btn-outline-secondary {
+ background-color: white;
+ &:focus {
+ box-shadow: none;
+ }
}
}
}
}
+nav.primary, nav.secondary {
+ .dropdown-item {
+ &:hover, &:active {
+ background-color: $green;
+ color: white;
+ }
+ }
+}
+
#compact-secondary-nav {
display: none;
}
-body.compact {
+body.compact-nav {
#compact-secondary-nav {
display: inline-block;
}
display: none;
}
+ #sidebar_content {
+ padding: $spacer;
+ }
+
> div {
position: relative;
float: left;
}
h2 {
- padding: $lineheight $lineheight $lineheight/2;
font-size: 1.5rem;
}
.welcome {
display: none;
- padding-bottom: 5px;
p {
- padding: $lineheight/2 $lineheight $lineheight;
font-size: 110%;
font-weight: 300;
}
-
- .button {
- width: 50%;
- float: left;
- margin: 0;
- border-radius: 0;
- font-weight: normal;
- padding: .6em;
-
- &.learn-more {
- border-right: 1px solid #fff;
- }
- }
}
#banner {
}
#browse_status {
- p {
- padding: $lineheight;
- }
-
input {
display: block;
margin-left: auto;
margin-right: auto;
}
+
+ > div {
+ padding: $spacer;
+ }
}
#sidebar {
margin: $lineheight auto;
}
- .loader,
- .load_more {
+ .loader {
text-align: center;
margin: auto;
width: 40px;
}
}
+/* Temporary label size override until we remove site-wide font customisation */
+
+form {
+ label {
+ font-size: 16px;
+ }
+}
+
/* Rules for the search and direction forms */
header .search_forms,
display: none;
}
-.search_form,
-.directions_form {
- position: relative;
- padding: $lineheight/2;
- background-color: $lightgrey;
-
- .query_wrapper {
- position: relative;
- overflow: hidden;
- border-radius: 2px 0 0 2px;
- }
-
- input[type=text] {
- width: 100%;
- height: 30px;
- transition: 300ms linear;
- }
-
- input[type=text].overflow {
- border-right: none;
- }
-
- input:focus {
- outline: none;
- box-shadow: 0px 0px 7px $vibrant-green;
- }
-
- input[type=submit].float {
- float: right;
- width: auto;
- min-width: 0;
- border-radius: 0 2px 2px 0;
- }
-
- input.error {
- background-color: rgba($red, 0.4);
- }
-
- select {
- /* this next line is to polyfill the vertical alignment of text within a select element,
- * which is different between firefox and chrome. */
- padding: 0.3em 0;
- }
-
- .query_options {
- text-align: right;
- font-size: 10px;
- color: $blue;
- }
-
- .describe_location {
- position: absolute;
- top: 6px;
- right: 6px;
- font-size: 10px;
- color: $blue;
- }
-
- .switch_link {
- float: right;
- width: auto;
- min-width: 0;
- margin-left: 6px;
- }
-
- img.button {
- display: block;
- width: 20px;
- height: 20px;
- }
-
- span.force_width {
- width: 100%;
- padding-right: 25px;
- display: block;
- }
-
- select.routing_engines {
- min-height: 30px;
- margin: 0px 0px 5px 25px;
- }
-
- input.routing_go {
- min-width: 100px;
- float: right;
- }
-
- div.header {
- width: 100%;
- height: 30px;
- }
-
- div.line {
- width: 100%;
- margin: 0px 0px 5px 0px;
- }
-
- div.loader_copy {
- display: none;
-
- img {
- vertical-align: middle;
- }
- }
-
- a.reverse_directions {
- cursor: pointer;
- margin: 0px 0px 5px 25px;
- }
-}
-
/* Rules for the map key which appears in the popout sidebar */
#mapkey {
margin-left: auto;
margin-right: auto;
}
- td {
- padding: 0 $lineheight/4 $lineheight/4 $lineheight/4;
- }
}
/* Rules for search sidebar */
/* Rules for routing */
-#sidebar_content>table {
- padding: 5px 20px 10px 15px;
- width: 100%;
- border-collapse: separate;
-}
-
div.direction {
background-image: image-url('routing-sprite.png');
width: 20px;
div.direction.i#{$i} { background-position: #{($i)*-20}px 0px; }
}
-p#routing_summary {
- padding: 0 $lineheight $lineheight/4;
-}
-
td.instruction, td.distance {
padding-top: $lineheight/5;
padding-bottom: $lineheight/5;
tr.turn:hover {
background: $list-highlight;
}
-.routing_engines, #route_from, #route_to { margin-left: 25px; }
-.routing_marker { width: 15px; position: absolute; cursor: move; }
+
+.routing_marker { width: 15px; cursor: move; }
/* Rules for entity history */
#sidebar_content {
.browse-section {
- padding: $lineheight/2 $lineheight;
+ padding-bottom: $spacer;
+ margin-bottom: $spacer;
border-bottom: 1px solid $grey;
h4:first-child {
border-radius: 3px;
table-layout: fixed;
border-collapse: separate;
+ border-spacing: 0;
+ width: 100%;
th, td {
border-bottom: 1px solid $grey;
}
}
- .warning {
- margin: 0 0 $lineheight/2 0;
- padding: 0 $lineheight/2;
- }
-
.note-comments li, .changeset-comments li {
margin: $lineheight/2 0;
margin: 0 0 10px 10px;
}
- .query-intro p {
- padding: $lineheight $lineheight $lineheight/2;
- }
-
.query-results {
display: none;
- padding-bottom: $lineheight/2;
-
- h3 {
- padding: 0 $lineheight;
- }
ul {
li {
}
}
+/* Bootstrap buttons don't have any vertical margin, so
+ they touch when adjacent buttons wrap onto a new line
+ e.g. wide form buttons on a narrow sidebar */
+
+.btn-wrapper {
+ > .btn {
+ margin-bottom: $spacer * 0.25;
+ }
+}
+
/* Rules for export sidebar */
.export_form {
- padding: $lineheight;
-
.export_area_inputs,
.export_button {
text-align: center;
.export_area_inputs {
margin-bottom: $lineheight/2;
input[type="text"] {
- width: 80px;
+ width: 100px;
text-align: center;
- margin-bottom: 5px;
}
}
float: right;
/* no-r2 */ margin-right: -1px;
}
- #minlat { margin-bottom: 0; }
+ #minlat { margin-bottom: -1px; }
}
.export_bound {
margin: $lineheight/4;
}
- .export_button {
- margin-top: $lineheight;
- margin-bottom: $lineheight;
- }
-
dl {
padding-left: $lineheight/2;
dd {
}
}
-/* Rules for the routing sidebar */
-
-#sidebar_content {
- #routing_credit {
- text-align: center;
- padding: 0.5em;
- }
-}
-
/* Rules for edit pages */
.site-edit {
background: $lightgrey;
}
-.content-body {
- h1, h2, h3, p, ul, ol {
- margin-bottom: $lineheight;
- }
-
- h1, h2, h3 {
- margin-top: $lineheight/2;
- }
-}
-
.content-inner {
position: relative;
max-width: 900px;
/* Rules for small maps in content areas */
.content_map {
- position: relative;
- width: 45%;
- height: 400px;
+ height: 200px;
border: 1px solid $grey;
margin-bottom: $lineheight;
- float: right;
-}
-
-/* Rules for the trace list shown by the traces tab etc */
-
-#trace_list {
- border-width: 0px;
- text-align: right;
-
- .trace_summary {
- font-size: 12px;
- color: gray;
- }
-}
-
-/* Rules for the new trace form */
-
-#new_trace {
- input[type=text] {
- width: 50%;
- width: calc(100% - 150px);
- max-width: 500px;
- }
}
-/* Rules for the edit trace form */
-
-.edit_trace {
- .standard-form-row p {
- margin-bottom: 0px;
- }
-
- input[type=text] {
- width: 50%;
- width: calc(100% - 150px);
- max-width: 500px;
+@include media-breakpoint-up(md) {
+ .content_map {
+ height: 400px;
}
}
/* Rules for the user profile page */
#userinformation {
-
min-height: 100px;
.userinformation-inner {
float: left;
}
- h2 {
- margin-top: 0;
- }
.user-description {
width: 100%;
clear: both;
}
- .deemphasize {
- margin: 0;
- }
}
.admin-user-info small {
margin-right: $lineheight;
}
-.activity-block {
- clear: left;
- border-bottom: 1px solid $grey;
- padding-bottom: $lineheight;
- float: left;
- h3 {
- margin-bottom: $lineheight/2;
- }
-}
-
.contact-activity {
margin-top: $lineheight;
width: 100%;
margin-top: $lineheight/2;
}
- &.deemphasize {
+ &.deleted {
background-color: #fee;
}
img.user_thumbnail {
float: left;
}
-
- small.deemphasize {
- float: left;
- display: block;
- }
-}
-
-.pagination {
- padding-top: $lineheight;
}
/* Rules for the diary entry page */
.diary_entries {
#map {
- position: relative;
- width: 90%;
height: 400px;
border: 1px solid $grey;
display: none;
margin-bottom: $lineheight;
}
- #newcomment {
- border-top: 1px solid $grey;
- padding-top: $lineheight;
- margin-top: $lineheight/2;
- }
.comments {
max-width: 740px;
}
padding-top: $lineheight;
border-top: 1px solid $grey;
}
- &.deemphasize {
+ &.deleted {
background-color: #fee;
}
p {
float: left;
}
-
-.diary-subscribe-buttons {
- position:relative;
- top: -30px;
- left: 130px;
-}
-
/* Rules for the log in page */
#login_auth_buttons {
margin-bottom: 0;
-}
-#login_auth_buttons li {
- float: left;
- padding: $lineheight/4 $lineheight/2;
+ li {
+ float: left;
+ padding: $lineheight/4 $lineheight/2;
+ }
}
/* Rules for the account confirmation page */
list-style-type: lower-alpha;
}
}
-
- #decline {
- background: $lightblue;
- &:hover {
- background: darken($lightblue, $hovercolor);
- }
- }
}
/* Rules for the account settings page */
-#accountForm .user_map {
- position: relative;
- width: 500px;
- height: 400px;
- border: 1px solid $grey;
-}
-
#accountForm .user_image {
margin-bottom: 0;
}
display: inline !important;
}
-.content_map.settings_map {
- width: 50%;
- float: none;
-}
-
/* Rules for the oauth settings page */
.oauth_clients .buttons .oauth-edit {
/* Rules for messages pages */
.messages {
- width: 100%;
- border: 1px solid $grey;
-
input[type="submit"] {
margin: auto;
}
- tbody tr {
- border-top: 1px solid $grey;
- }
.inbox-row {
background: $offwhite;
}
.inbox-row-unread {
- background:#CBEEA7;
+ background: #CBEEA7;
}
.right {
float: right;
}
-
- tr td,
- tr th {
- padding: $lineheight/4;
- }
- p:last-child,
- h2:last-child,
- h3:last-child,
- ol:last-child,
- ul:last-child {
- margin-bottom:0;
- }
- tr td {
- height: 30px;
- border-right: 1px solid $lightgrey;
- }
}
.inbox-row .inbox-mark-read {
display: none;
}
-.messages-show .message-buttons {
- margin-top: $lineheight;
- margin-bottom: $lineheight * 1.5;
- padding-top: $lineheight;
- border-top: 1px solid $lightgrey;
-}
-
-.messages-show .buttons .mark-unread-button {
- border-radius: 0;
-}
-
/* Rules for "flash" notice boxes shown at the top of the content area */
.flash {
&.notice {
background-color: #CBEEA7;
}
-
- div.message {
- display: inline-block;
- margin-left: $lineheight / 2;
- vertical-align: middle;
-
- p {
- margin-top: $lineheight * 0.5;
- margin-bottom: $lineheight * 0.5;
-
- &:first-child {
- margin-top: 0px;
- }
-
- &:last-child {
- margin-bottom: 0px;
- }
- }
- }
}
/* Rules for highlighting fields with rails validation errors */
}
}
-/* Rules for forms */
+.search_form {
+ background-color: $lightgrey;
-.standard-form {
- fieldset {
- margin-bottom: $lineheight;
- }
- label.standard-label {
- display: block;
- margin-bottom: $lineheight/4;
- font-size: $typeheight;
- font-weight: bold;
- line-height: 1.5;
- }
- label.standard-label.secondary {
- display: inline-block;
- font-weight: normal;
- }
- .form-help {
- font-weight: normal;
- }
- .form-column {
- float: left;
- margin-right: 20px;
- }
- .form-divider {
- margin-top: $lineheight;
- padding-top: $lineheight;
- border-top: 1px solid $lightgrey;
- }
- .horizontal-list .standard-form-row {
- float: left;
- padding-right: 10px;
- }
- .standard-form-row {
- margin-bottom: $lineheight/2;
- }
- .form-list {
- margin-bottom: 0;
- }
- .form-list li {
- margin-bottom: 5px;
- list-style-type: none;
- }
- input[type="checkbox"],
- input[type="radio"] {
- float: left;
- margin-top: 5px;
+ .describe_location {
+ top: 6px;
+ right: 6px;
+ font-size: 10px;
+ color: $blue;
}
}
-#remember_me_openid {
- display: block;
-}
-
-select {
- padding: 2px;
-}
-
-input[type="checkbox"],
-input[type="radio"] {
- margin-right: 5px;
-}
+.directions_form {
+ background-color: $lightgrey;
-input[type="text"],
-input[type="email"],
-input[type="url"],
-input[type="password"],
-textarea {
- color: #222;
- background-color: #fff;
- border: 1px solid $grey;
- border-radius: 3px;
- padding: 2px 5px;
- margin: 0;
- width: 200px;
+ .loader_copy {
+ display: none;
- &.field_with_errors {
- border: 2px solid #ff7070;
+ img {
+ vertical-align: middle;
+ }
}
-}
-textarea {
- padding: 5px;
- width: 100%;
- min-height: 50px;
- resize: vertical;
+ a.reverse_directions {
+ cursor: pointer;
+ }
}
/* Rules for user images */
text-align: center;
}
-/* Utility for managing inner content areas */
-
-.inner22 { padding: $lineheight;}
-
-.inner12 { padding: $lineheight/2 $lineheight;}
-
-.inner11 { padding: $lineheight/2;}
-
-.inner20 { padding: $lineheight 0;}
-
-.inner02 { padding: 0 $lineheight;}
-
-/* Utility for general button styles */
-
-input[type="button"],
-input[type="submit"],
-input[type="reset"],
-a.button {
- cursor: pointer;
- border: 0;
- display: inline-block;
- padding: $lineheight/4 $lineheight/2;
- min-height: 20px + $lineheight/2;
- min-width: 120px;
- margin: 0 0 $lineheight/2 0;
- color: white;
- background: $blue;
- text-align: center;
- border-radius: 2px;
- &:hover {
- background: darken($blue, $hovercolor);
- text-decoration: none;
- }
- &.deemphasize {
- background: $lightblue;
- &:hover {
- background: darken($lightblue, $hovercolor);
- }
- }
- &:disabled {
- background: $lightgrey;
- &:hover {
- background: $lightgrey;
- }
- }
- &:last-child {
- margin-bottom: 0;
- }
-}
-
-input[type="button"],
-input[type="submit"],
-input[type="reset"] {
- line-height: normal;
-}
-
-a.button {
- line-height: 20px;
-}
-
.buttons {
min-width: 200px;
input[type="submit"],
}
}
-/* Rules for doing distinct colour of alternate table rows */
-
-.table0,
-.item0 {
- background: $offwhite;
-}
+/* Customise the background colour of striped tables */
-.table1,
-.item1 {
- background: #fff;
+.table-striped > tbody > tr:nth-child(2n+1) > td,
+.table-striped > tbody > tr:nth-child(2n+1) > th {
+ background-color: $offwhite;
}
/* Rules for OpenID logo */
}
}
-.diary_post .richtext {
- margin-top: $lineheight;
- }
-
.comments .richtext {
margin-left: 70px;
- margin-top: 0;
-}
-
-/* Rules for rich text editors */
-
-input.richtext_title[type="text"] {
- width: 50%;
- width: calc(100% - 235px);
-
- @media only screen and (max-width:768px) {
- width: 100%;
- }
-}
-
-.richtext_container {
- margin-bottom: $lineheight;
-
- .richtext_content {
- width: 50%;
- width: calc(100% - 235px);
- display: inline-block;
- vertical-align: top;
-
- @media only screen and (max-width:768px) {
- width: 100%;
- }
-
- .richtext_preview {
- display: inline-block;
- padding: $lineheight;
- background-color: $offwhite;
- overflow-x: auto;
-
- &.loading {
- background-image: image-url("loading.gif");
- background-repeat: no-repeat;
- background-position: center;
- }
-
- > :first-child {
- margin-top: 0px;
- }
- }
- }
-
- .richtext_help {
- display: inline-block;
- vertical-align: top;
- margin-left: 15px;
- background-color: $offwhite;
- padding: $lineheight/2;
- width: 220px;
-
- ul {
- margin-bottom: 0;
- }
-
- h4.heading, li {
- border-bottom: 1px solid $grey;
- margin-bottom: $lineheight/4;
- padding-bottom: $lineheight/4;
- }
-
- li h4, li span, li p {
- display: inline-block;
- vertical-align: top;
- font-size: 11px;
- }
-
- li h4 {
- width: 40%;
- margin: 0;
- }
-
- li span, li p {
- width: 50%;
- margin-left: $lineheight/2;
- margin-bottom: $lineheight/4;
- white-space: nowrap;
- }
- }
}
/* Rules for the user notes list */
.note_list {
tr.creator {
- background-color: $lightgrey;
- }
-
- td {
- padding: 3px;
- }
-
- p {
- margin-bottom: 0px;
+ background-color: $offwhite;
}
}
display: block;
color: white;
font-weight: 300;
- font-size: 34px;
+ font-size: 28px;
span {
color: $vibrant-green;
}
}
+ @include media-breakpoint-up(sm) {
+ h1 {
+ font-size: 34px;
+ }
+ }
+
.user-image {
position: absolute;
top: 0px;
display: none;
}
}
-
-.read-reports {
- background: $lightgrey;
- opacity: 0.7;
-}
-
-.issues-list {
- td:nth-child(2) {
- white-space: nowrap;
- }
-}