725 lines
14 KiB
CSS
725 lines
14 KiB
CSS
body {
|
|
font-weight: normal;
|
|
display: flex;
|
|
flex-direction: column;
|
|
min-height: 100vh;
|
|
}
|
|
|
|
header {
|
|
padding: 10px;
|
|
height: 50px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
}
|
|
header h1 {
|
|
font-size: 3rem;
|
|
margin: 0;
|
|
}
|
|
header h1 a {
|
|
color: inherit;
|
|
}
|
|
header #user {
|
|
text-align: right;
|
|
padding: 0 0 3px 10px;
|
|
}
|
|
header #user small {
|
|
display: block;
|
|
margin-top: -3px;
|
|
color: #606c76;
|
|
}
|
|
header #user small:empty {
|
|
display:none;
|
|
}
|
|
|
|
input {
|
|
font-family: inherit;
|
|
color: inherit;
|
|
}
|
|
::-webkit-input-placeholder {
|
|
color: #9DA2A6;
|
|
}
|
|
::-moz-placeholder {
|
|
color: #9DA2A6;
|
|
}
|
|
.material-icons {
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
}
|
|
|
|
hr {
|
|
margin: 1.5rem 0;
|
|
}
|
|
|
|
main {
|
|
flex-grow: 1;
|
|
border: 0 solid #CCCCCC;
|
|
border-top-width: 1px;
|
|
padding: 10px;
|
|
padding-top: 20px;
|
|
}
|
|
main.map {
|
|
/*noinspection CssUnknownTarget*/
|
|
background: url('../../img/loader.gif') no-repeat center;
|
|
position: relative;
|
|
padding: 0;
|
|
border-top-width: 0;
|
|
}
|
|
|
|
main.account form {
|
|
max-width: 400px;
|
|
}
|
|
#modal-content form button[type=submit] {
|
|
display: block;
|
|
width: 100%;
|
|
}
|
|
#modal-content p, main.account p {
|
|
margin-bottom: 10px;
|
|
}
|
|
#modal-content :last-child {
|
|
margin: 0;
|
|
}
|
|
|
|
#map {
|
|
position: absolute;
|
|
z-index: 1;
|
|
left: 0;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
}
|
|
#sidebar {
|
|
position: absolute;
|
|
z-index: 2;
|
|
top: 0;
|
|
padding: 10px 10px 32px;
|
|
width: 100%;
|
|
bottom: 0;
|
|
max-width: 420px;
|
|
pointer-events: none;
|
|
display: flex;
|
|
flex-direction: column;
|
|
overflow: hidden;
|
|
}
|
|
@media (max-width: 500px) {
|
|
#sidebar {
|
|
max-width: 500px;
|
|
}
|
|
}
|
|
#sidebar section {
|
|
pointer-events: auto;
|
|
background-color: #ffffff;
|
|
box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
|
|
border-radius: 2px;
|
|
overflow: hidden;
|
|
margin-bottom: 10px;
|
|
}
|
|
#sidebar section > div {
|
|
border: 0 #dddddd solid;
|
|
border-top-width: 1px;
|
|
transition: margin-bottom 150ms, opacity 150ms;
|
|
overflow: hidden;
|
|
}
|
|
#sidebar section > div:first-child {
|
|
margin-top: -1px;
|
|
}
|
|
|
|
#search {
|
|
width: 0;
|
|
}
|
|
#sidebar #search {
|
|
z-index: 4;
|
|
min-height: 54px;
|
|
min-width: 54px;
|
|
width: 100%;
|
|
transition: width 150ms;
|
|
flex-shrink: 0;
|
|
}
|
|
#sidebar #search.loading {
|
|
/*noinspection CssUnknownTarget*/
|
|
background: url('../../img/loader.gif') no-repeat 4px 3px;
|
|
width: 5%;
|
|
}
|
|
|
|
.loader {
|
|
width: 48px;
|
|
height: 48px;
|
|
/*noinspection CssUnknownTarget*/
|
|
background: url('../../img/loader.gif');
|
|
}
|
|
|
|
#embed-logo {
|
|
font-size: 3rem;
|
|
line-height: 100%;
|
|
font-weight: 300;
|
|
z-index: 2;
|
|
position: absolute;
|
|
color: #606c76;
|
|
top: 10px;
|
|
left: 10px;
|
|
opacity: 0.4;
|
|
letter-spacing: -.1rem;
|
|
}
|
|
#embed-logo:hover {
|
|
opacity: 1;
|
|
text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.3),
|
|
1px -1px 1px rgba(255, 255, 255, 0.3),
|
|
-1px 1px 1px rgba(255, 255, 255, 0.3),
|
|
-1px -1px 1px rgba(255, 255, 255, 0.3);
|
|
}
|
|
|
|
main:not([data-view^=route]) #origin-input,
|
|
#search.loading #destination-input {
|
|
margin-bottom: -55px;
|
|
pointer-events: none;
|
|
opacity: 0;
|
|
}
|
|
main:not([data-view=location]) #location-buttons,
|
|
main:not([data-view=route-search]) #route-search-buttons,
|
|
main:not([data-view=route-result]) #route-result-buttons {
|
|
margin-bottom: -3.3rem;
|
|
pointer-events: none;
|
|
opacity: 0;
|
|
}
|
|
#resultswrapper {
|
|
flex-grow: 1;
|
|
flex-shrink: 1;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
#resultswrapper section {
|
|
max-height: 100%;
|
|
margin: 0;
|
|
}
|
|
|
|
h2 {
|
|
font-size: 2.5rem;
|
|
margin: 0 0 1rem;
|
|
}
|
|
.details-head h2 {
|
|
margin: 0;
|
|
}
|
|
|
|
section.details {
|
|
display: flex;
|
|
flex-direction: column;
|
|
position: relative;
|
|
}
|
|
section.details > * {
|
|
flex-shrink: 0;
|
|
flex-grow: 0;
|
|
}
|
|
section.details > .details-head {
|
|
padding: 11px 10px 8px;
|
|
}
|
|
.details-head > .button {
|
|
margin: -2px 0 0;
|
|
transition: none;
|
|
line-height: 2.5;
|
|
}
|
|
#sidebar section.details > .details-body {
|
|
border: 0;
|
|
overflow: auto;
|
|
flex-grow: 1;
|
|
flex-shrink: 1;
|
|
}
|
|
|
|
section.details {
|
|
/*noinspection CssUnknownTarget*/
|
|
background: url('../../img/loader.gif') no-repeat right 2px top 2px;
|
|
}
|
|
#sidebar section.details.loading > .details-head {
|
|
background-color: rgba(255, 255, 255, 0);
|
|
}
|
|
#sidebar section.details.loading > .details-head .button {
|
|
pointer-events: none;
|
|
opacity: 0;
|
|
}
|
|
#sidebar section.details.loading > .details-body {
|
|
max-height: 0;
|
|
opacity: 0;
|
|
}
|
|
#sidebar section.details:not(.loading) > .details-head {
|
|
transition: background-color 50ms;
|
|
background-color: rgba(255, 255, 255, 1);
|
|
}
|
|
#sidebar section.details:not(.loading) > .details-head .button {
|
|
transition: opacity 150ms;
|
|
pointer-events: auto;
|
|
opacity: 1;
|
|
}
|
|
#sidebar section.details:not(.loading) > div.details-body {
|
|
max-height: 100vh;
|
|
transition: max-height 150ms, opacity 50ms;
|
|
transition-timing-function: ease-in;
|
|
animation: show-details-body;
|
|
animation-duration: 160ms;
|
|
opacity: 1;
|
|
}
|
|
@keyframes show-details-body {
|
|
from {
|
|
overflow: hidden;
|
|
}
|
|
99% {
|
|
overflow: hidden;
|
|
}
|
|
to {
|
|
overflow: auto;
|
|
}
|
|
}
|
|
|
|
#location-details .details-body {
|
|
padding: 0 10px;
|
|
}
|
|
#location-details dl {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
justify-content: space-between;
|
|
align-items: flex-start;
|
|
margin: 0;
|
|
font-size:90%;
|
|
}
|
|
#location-details dt {
|
|
width: 39%;
|
|
margin: 0 0 0.7rem;
|
|
font-weight: 700;
|
|
}
|
|
#location-details dd {
|
|
width: 60%;
|
|
margin: 0 0 0.7rem;
|
|
padding: 0 0 0 1rem;
|
|
}
|
|
#location-details dd > * {
|
|
display:block;
|
|
}
|
|
|
|
main:not([data-view$=search]) #autocomplete,
|
|
main:not([data-view=location]) #location-details,
|
|
main:not([data-view=route-result]) #route-details,
|
|
main:not(.show-details) #resultswrapper .details {
|
|
display:none;
|
|
}
|
|
main .buttons .details .material-icons {
|
|
transition: transform 250ms;
|
|
}
|
|
main.show-details .buttons .details .material-icons {
|
|
transform: scale(1, -1);
|
|
}
|
|
main.show-details #resultswrapper .details {
|
|
animation: show-details;
|
|
animation-duration: 150ms;
|
|
animation-timing-function: ease-out;
|
|
}
|
|
@keyframes show-details {
|
|
from {
|
|
opacity: 0;
|
|
top: 10px;
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
top: 0;
|
|
}
|
|
}
|
|
|
|
.location {
|
|
position: relative;
|
|
padding: 5px 10px 5px 53px;
|
|
height: 55px;
|
|
}
|
|
.location .icon {
|
|
font-size: 36px;
|
|
position: absolute;
|
|
top: 9px;
|
|
left: 9px;
|
|
cursor: default;
|
|
color: #7C848A;
|
|
transition: color 150ms, transform 150ms, top 150ms;
|
|
pointer-events: none;
|
|
}
|
|
.location > * {
|
|
display: block;
|
|
white-space: nowrap;
|
|
}
|
|
.location small {
|
|
line-height: 1.1;
|
|
}
|
|
.location.focus {
|
|
background-color: #f4f4f4;
|
|
}
|
|
#autocomplete .location {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.locationinput {
|
|
position: relative;
|
|
padding: 0;
|
|
}
|
|
.locationinput input {
|
|
box-sizing: border-box;
|
|
border-width:0;
|
|
height: 54px;
|
|
transition: padding-bottom 150ms;
|
|
line-height: 1.0;
|
|
padding-left: 52px;
|
|
}
|
|
.locationinput small {
|
|
position: absolute;
|
|
left: 52px;
|
|
top: 30px;
|
|
line-height: 1.1;
|
|
opacity: 1;
|
|
transition: opacity 150ms;
|
|
}
|
|
.locationinput:not(.selected) small {
|
|
opacity: 0;
|
|
-webkit-user-select: none; /* Chrome all / Safari all */
|
|
-moz-user-select: none; /* Firefox all */
|
|
-ms-user-select: none; /* IE 10+ */
|
|
user-select: none; /* Likely future */
|
|
pointer-events: none;
|
|
}
|
|
.locationinput:not(.selected) .icon {
|
|
color: transparent;
|
|
}
|
|
.locationinput .icon::before {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 1px;
|
|
content: "search";
|
|
color: #b2b2b2;
|
|
transition: color 150ms;
|
|
}
|
|
.locationinput.selected .icon::before {
|
|
color: transparent;
|
|
}
|
|
.locationinput.selected input {
|
|
padding-bottom: 25px;
|
|
}
|
|
.locationinput button {
|
|
position: absolute;
|
|
top: 6px;
|
|
right: 6px;
|
|
padding: 0;
|
|
width: 42px;
|
|
height: 42px;
|
|
border-width: 0;
|
|
transition: transform 150ms, opacity 150ms, top 150ms, right 150ms;
|
|
font-size: 42px;
|
|
color: #b2b2b2;
|
|
}
|
|
.locationinput button:hover {
|
|
color: #a2a2a2;
|
|
}
|
|
.locationinput button.locate {
|
|
font-size: 35px;
|
|
top: 5px;
|
|
}
|
|
.locationinput:not(.empty) button.locate, .locationinput.empty button.clear {
|
|
transform: scale(0.7);
|
|
opacity: 0;
|
|
pointer-events:none;
|
|
}
|
|
|
|
#route-dots {
|
|
position: absolute;
|
|
top: 53px;
|
|
left: 25px;
|
|
text-shadow: 2px 0 1px #fff, -2px 0 1px #fff;
|
|
transition: top 150ms, opacity 150ms, color 150ms, transform 150ms;
|
|
color: #7C848A;
|
|
pointer-events: none;
|
|
}
|
|
main:not([data-view^=route]) #route-dots {
|
|
position: absolute;
|
|
top: 40px;
|
|
opacity: 0;
|
|
}
|
|
main:not([data-view=route-result]) #route-dots {
|
|
color: #b2b2b2;
|
|
}
|
|
|
|
#popup-buttons, #attributions {
|
|
display: none;
|
|
}
|
|
.location-popup .leaflet-popup-content {
|
|
font-size: 16px;
|
|
color: #606c76;
|
|
overflow: hidden;
|
|
line-height: 1.6;
|
|
}
|
|
.location-popup .leaflet-popup-content .location {
|
|
padding: 0 0 0 42px;
|
|
height: auto;
|
|
margin-bottom: 10px;
|
|
position: relative;
|
|
}
|
|
.location-popup .leaflet-popup-content .icon {
|
|
top: 3px;
|
|
left: 0;
|
|
}
|
|
.location-popup .leaflet-popup-content .button-clear {
|
|
display:block;
|
|
width: 100%;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.buttons {
|
|
display: flex;
|
|
flex-direction: row;
|
|
margin-left: -1px;
|
|
height: 3.3rem;
|
|
}
|
|
.buttons > button.button-clear {
|
|
width: 1px;
|
|
flex-grow: 1;
|
|
margin: 0;
|
|
border: 0 #dddddd solid;
|
|
border-left-width: 1px;
|
|
border-radius: 0;
|
|
padding: 0;
|
|
font-size: 1.3rem;
|
|
line-height: 1.3;
|
|
height: 3.3rem;
|
|
}
|
|
.buttons > *:hover, .buttons > *:active {
|
|
background-color: #eeeeee;
|
|
}
|
|
main.map button, main.map .button {
|
|
font-size: 1.3rem;
|
|
line-height: 1.3;
|
|
height: 3.3rem;
|
|
padding: 0;
|
|
}
|
|
button .material-icons, .button .material-icons {
|
|
font-size: 15px;
|
|
vertical-align: -3px;
|
|
}
|
|
|
|
#route-summary {
|
|
position: relative;
|
|
padding: 6px 10px 5px 52px;
|
|
height: 55px;
|
|
}
|
|
#route-summary > * {
|
|
display: block;
|
|
white-space: nowrap;
|
|
}
|
|
#route-summary .icon {
|
|
font-size: 36px;
|
|
position: absolute;
|
|
top: 10px;
|
|
left: 9px;
|
|
cursor: default;
|
|
color: #7C848A;
|
|
}
|
|
#route-summary small {
|
|
line-height: 1.1;
|
|
}
|
|
#route-summary.loading {
|
|
/*noinspection CssUnknownTarget*/
|
|
background: url('../../img/loader.gif') no-repeat 4px 4px;
|
|
}
|
|
#route-summary.loading > * {
|
|
display: none;
|
|
}
|
|
main:not([data-view=route-result]) #route-summary {
|
|
margin-bottom: -55px;
|
|
pointer-events: none;
|
|
opacity: 0;
|
|
}
|
|
|
|
@media not all and (min-height: 700px) and (min-width: 1100px) {
|
|
main[data-view=route-result] #sidebar #search:not(.focused) .locationinput {
|
|
margin-bottom: -21px;
|
|
}
|
|
main[data-view=route-result] #sidebar #search:not(.focused) .locationinput input {
|
|
padding-bottom: 28px;
|
|
}
|
|
main[data-view=route-result] #sidebar #search:not(.focused) .locationinput small {
|
|
opacity: 0;
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
pointer-events: none;
|
|
}
|
|
main[data-view=route-result] #sidebar #search:not(.focused) .locationinput .icon {
|
|
transform: scale(0.6);
|
|
top: -1px;
|
|
}
|
|
main[data-view=route-result] #sidebar #search:not(.focused) .locationinput button {
|
|
transform: scale(0.6);
|
|
top: -5px;
|
|
right: -5px;
|
|
}
|
|
main[data-view=route-result] #sidebar #search:not(.focused) #route-dots {
|
|
transform: scale(0.7);
|
|
top: 32px;
|
|
}
|
|
}
|
|
|
|
/* leaftlet levels control */
|
|
.leaflet-control-levels a, .leaflet-control-levels a:hover {
|
|
width: auto;
|
|
min-width: 26px;
|
|
font-size: 14px;
|
|
padding: 0 3px;
|
|
white-space: nowrap;
|
|
}
|
|
.leaflet-touch .leaflet-control-levels a, .leaflet-touch .leaflet-control-levels a:hover {
|
|
width: auto;
|
|
min-width: 30px;
|
|
line-height: 30px;
|
|
font-size: 15px;
|
|
padding: 0 3px;
|
|
}
|
|
.leaflet-control-levels a.current {
|
|
font-weight: bold;
|
|
background-color: #eeeeee;
|
|
}
|
|
|
|
|
|
#modal {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
background-color: rgba(0, 0, 0, 0.3);
|
|
z-index: 2;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
opacity: 0;
|
|
transition: opacity 300ms;
|
|
pointer-events: none;
|
|
}
|
|
#modal.show {
|
|
opacity: 1;
|
|
pointer-events: auto;
|
|
}
|
|
#modal-content {
|
|
box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
|
|
border-radius: 2px;
|
|
background-color: #ffffff;
|
|
width: 380px;
|
|
min-height: 150px;
|
|
max-height: 95vh;
|
|
max-width: 95vw;
|
|
padding: 20px;
|
|
overflow: auto;
|
|
position: relative;
|
|
}
|
|
#modal.loading #modal-content {
|
|
/*noinspection CssUnknownTarget*/
|
|
background: #ffffff url('../../img/loader.gif') no-repeat center;
|
|
}
|
|
#close-modal {
|
|
position: absolute;
|
|
top: 8px;
|
|
right: 8px;
|
|
font-size: 30px;
|
|
padding: 0;
|
|
color: #b2b2b2;
|
|
}
|
|
#close-modal:hover {
|
|
color: #a2a2a2;
|
|
}
|
|
|
|
.share-ui {
|
|
text-align: center;
|
|
}
|
|
.share-ui h3 {
|
|
text-align: left;
|
|
margin: 0;
|
|
}
|
|
.share-ui img {
|
|
width: 100%;
|
|
max-width: 50vh;
|
|
}
|
|
.share-ui input {
|
|
margin: 0;
|
|
}
|
|
main > .share-ui {
|
|
display: none;
|
|
}
|
|
|
|
|
|
ul.errorlist {
|
|
margin-bottom:0.5rem;
|
|
color:red;
|
|
list-style-type:none;
|
|
}
|
|
|
|
ul.messages {
|
|
list-style-type:none;
|
|
margin: 0 0 1.0rem;
|
|
}
|
|
ul.messages li {
|
|
padding:1.0rem;
|
|
border-radius: .4rem;
|
|
border: 0.1rem solid #666666;
|
|
background-color:#EEEEEE;
|
|
}
|
|
|
|
ul.messages li.alert-info {
|
|
color: #006688;
|
|
border-color: #006688;
|
|
background-color:#DDE4FF;
|
|
}
|
|
ul.messages li.alert-success {
|
|
color: #338800;
|
|
border-color: #339900;
|
|
background-color:#E4FFDD;
|
|
}
|
|
ul.messages li.alert-warning {
|
|
color: #CC6600;
|
|
border-color: #FF9900;
|
|
background-color:#FFFFDD;
|
|
}
|
|
ul.messages li.alert-danger {
|
|
color: #CC0000;
|
|
border-color: #CC0000;
|
|
background-color:#FFEEEE;
|
|
}
|
|
|
|
.search-form input {
|
|
max-width: 400px;
|
|
vertical-align: top;
|
|
}
|
|
|
|
main.control p {
|
|
margin-bottom: 1.0rem;
|
|
}
|
|
main.control h4, main.control h2 {
|
|
margin-bottom: 0.8rem;
|
|
}
|
|
main.control h4 {
|
|
margin-top: 2.5rem;
|
|
}
|
|
|
|
.user-permissions-form label {
|
|
font-weight: 400;
|
|
width: auto;
|
|
display: inline;
|
|
}
|
|
.fields {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.fields .field {
|
|
flex-grow: 1;
|
|
}
|
|
.fields .field > * {
|
|
width: 100%;
|
|
margin: 0;
|
|
}
|
|
.fields .field input {
|
|
margin: 0;
|
|
}
|
|
.fields .field:not(:first-child) {
|
|
margin-left: 10px;
|
|
}
|