html, body {
margin: 0;
font-family: Roboto, Arial, sans-serif;
}
.hidden {
display: none !important;
}
* {
box-sizing: border-box;
border-collapse: collapse;
}
canvas {
flex-grow: 1;
}
table {
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
width: 100%;
}
table, tr {
background-color: #fff;
margin: 0 0 15px 0;
}
#journeysView table {
margin: 15px auto;
}
td, th {
text-align: center;
padding: 5px 3px;
overflow: hidden;
}
tr:nth-child(odd) {
background-color: #f2f2f2;
}
tbody tr {
cursor: pointer;
}
tbody tr:hover {
background-color: #ddd;
}
tbody tr:hover td {
background-color: transparent;
}
input[type="date"],
input[type="time"],
input[type="text"],
#deparr {
box-sizing: border-box;
width: 100%;
padding: .3em .5em;
border-radius: 3px;
font-size: 1.5em;
padding: 7px;
border: none;
outline: none;
box-shadow: 0 .1em .2em rgba(0, 0, 0, .5);
background-color: white;
color: black;
margin-top: 8px;
}
#datetime {
display: flex;
flex-direction: row;
}
#deparr {
padding: 0 !important;
overflow: hidden;
width: 84px;
flex-shrink: 0;
display: inline-block;
}
.switch {
position: relative;
display: inline-block;
width: 84px;
height: 100%;
}
/* Hide default HTML checkbox */
.switch input {
opacity: 0;
width: 0;
height: 0;
}
/* The slider */
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #bbb;
height: 100%;
}
.slider:before {
position: absolute;
font-size: 13px;
padding-top: calc(25% - 7px);
line-height: 100%;
text-align: center;
content: "DEP";
height: 100%;
width: 42px;
background-color: white;
transition: .2s;
box-shadow: 0 .1em .2em rgba(0, 0, 0, .5);
}
input:checked + .slider:before {
content: "ARR";
transform: translateX(42px);
}
input:active,
input:focus{
box-shadow: 0 .1em .5em rgba(0, 0, 0, .6);
}
#header {
position: relative;
box-shadow: 0 0 15px rgba(0, 0, 0, .6);
background-color: #43a047;
color: white;
padding: 0 0 0 9vw;
}
#departuresView,
#searchView,
#journeyView,
#journeysView {
display: flex;
flex-direction: column;
}
#settingsView {
padding: 10px;
}
#journeyView tbody td:nth-child(3) {
text-align: left;
}
#journeyView tbody:not(:last-child) {
border-bottom: 1px solid rgba(0, 0, 0, .2);
}
#journeyView p {
color: white;
width: 100%;
}
#journeyView p::before {
-webkit-filter: drop-shadow( 0 0 5px rgba(0, 0, 0, .6) );
filter: drop-shadow( 0 0 5px rgba(0, 0, 0, .6) );
margin-right: 4px;
vertical-align: sub;
}
#journeyView p.change,
#journeyView p.walk,
#journeyView p.transfer {
text-shadow: 0 0 15px rgba(0, 0, 0, .6);
text-align: center;
}
#journeyView p.change::before {
content: url("../img/baseline-import_export-24px.svg");
}
#journeyView p.walk::before {
content: url("../img/baseline-directions_walk-24px.svg");
}
#journeyView p.transfer::before {
content: url("../img/baseline-directions-24px_white.svg");
}
#searchView {
background-color: rgba(67, 160, 71, 0.6);
color: white;
}
#searchView table {
width: 100%;
color: black;
}
#searchView .button,
#searchView label:not(.switch) {
cursor: pointer;
border-radius: 3px;
background-color: white;
width: 40px;
padding: 3px;
height: 40px;
display: inline-block;
margin-top: 8px;
margin-bottom: 8px;
box-shadow: 0 .1em .2em rgba(0, 0, 0, .5);
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
}
#searchView #date {
flex-grow: 1;
margin-left: 8px;
}
#searchView .product_selector {
margin-right: auto;
}
#searchView .row {
display: flex;
flex-direction: row;
}
#searchView .swap {
margin-left: 5px;
content: url("../img/baseline-swap_vert-24px.svg");
}
#searchView .settings {
margin-left: 5px;
content: url("../img/baseline-settings-20px.svg");
}
#searchView .search {
margin-left: 5px;
content: url("../img/baseline-navigation-24px.svg");
color: blue;
}
#searchView .departures {
content: url("../img/baseline-departure_board-24px.svg");
}
#searchView .directions {
content: url("../img/baseline-directions-24px.svg");
}
#departuresView tbody td {
text-align: right;
}
#departuresView tbody td:first-child {
text-align: left;
}
.suggestionsbox {
border-radius: 3px;
width: 100%;
box-shadow: 0 .4em .8em rgba(0, 0, 0, .5);
}
.suggestions {
position: relative;
display: none;
overflow: visible;
z-index: 999;
height: 0;
}
.suggestions.typing,
.suggestions.mouseover {
display: block;
}
.loadMore {
cursor: pointer;
content: url("../img/baseline-expand_more-24px.svg");
border-radius: 100%;
height: 48px;
width: 48px;
background-color: #eee;
margin: 0 auto;
transition: box-shadow 150ms;
border: 1px solid rgba(0, 0, 0, .1);
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
}
.flipped {
transform: rotate(180deg);
}
.loadMore:hover {
box-shadow: 0 1px 5px 0 rgba(0, 0, 0, .3);
}
.loadMore.flipped {
margin-top: 15px;
}
.suggestionsbox p {
font-size: 1.2em;
background-color: white;
color: black;
margin: 0;
border-top: 1px solid rgba(0, 0, 0, .2);
padding: .3em .6em;
cursor: pointer;
}
.back {
cursor: pointer;
position: absolute;
left: 17px;
top: 17px;
width: 32px;
height: 32px;
content: url("../img/back.svg");
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
}
.reload {
cursor: pointer;
position: absolute;
right: 17px;
top: 17px;
width: 32px;
height: 32px;
content: url("../img/baseline-refresh-24px.svg");
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
}
.reload.spinning {
animation: spin 2s linear infinite;
}
.btn {
color: #fff;
position: relative;
margin-top: 30px;
padding: 0;
overflow: hidden;
border-width: 0;
outline: none;
border-radius: 2px;
content: 'OK';
border-radius: 4px;
color: white;
width: fit-content;
margin-left: 5px;
margin-top: 10px;
transition: background-color 100ms;
cursor: pointer;
background-color: rgba(20, 30, 255, .7);
}
.btn:hover, .btn:focus {
background-color: rgba(70, 100, 255, .8);
}
.btn > * {
position: relative;
}
.btn span {
display: block;
padding: 12px 24px;
}
.btn.orange {
background-color: #e36420;;
}
.btn.orange:hover, .btn.orange:focus {
background-color: #e67e22;
}
.buttons {
justify-content: flex-end;
display: flex;
}
.btn.red {
background-color: #d0493b;
}
.btn.red:hover, .btn.red:focus {
background-color: #e74c3c;
}
#spinner {
margin: calc(50vh - 60px) auto;
border: 2px solid rgba(255, 255, 255, .7); /* Light grey */
border-top: 4px solid #3498db; /* Blue */
border-radius: 50%;
width: 120px;
height: 120px;
animation: spin 2s linear infinite;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
#journeysView {
min-height: 100vh;
}
#journeysCanvas {
flex-grow: 1;
flex-direction: column;
display: flex;
}
#modal {
display: flex;
}
#modal-box {
margin: auto;
border-radius: 4px;
background-color: white;
width: fit-content;
width: -moz-fit-content;
padding: 15px;
box-shadow: 0 1px 4px rgba(0, 0, 0, .6);
}
#dismiss {
content: 'OK';
border-radius: 4px;
background-color: rgba(20, 30, 255, .7);
color: white;
width: fit-content;
width: -moz-fit-content;
padding: 8px 20px;
margin-left: auto;
margin-top: 10px;
transition: background-color 300ms;
}
#dismiss:hover {
background-color: rgba(70, 100, 255, .8);
cursor: pointer;
}
@media (max-width: 799px) {
#searchView {
padding: 10px;
}
div#settings {
padding: 15px 5vw;
}
#header {
padding: 0 0 0 50px;
}
.back {
left: 10px;
}
#datetime {
flex-wrap: wrap;
}
#searchView #date {
width: initial;
}
#searchView #time {
width: 100%;
flex-shrink: 0;
}
#searchView table {
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .4);
border-radius: 5px;
overflow: hidden;
border: none;
}
}
@media (min-width: 800px) {
#searchView {
box-shadow: 0 2px 10px 0 rgba(0, 0, 0, .4);
padding: 50px;
margin: auto;
width: 80vw;
max-width: 800px;
color: white;
}
#searchView #date {
margin-right: 8px;
}
#searchView #time {
width: 40%;
}
div#settings {
padding: 30px 30px;
margin: 0 8vw;
}
#header {
padding: 0 10vw;
}
td p {
display: inline;
margin-right: 5px;
}
td, th {
padding: 10px 5px;
}
table {
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .4);
border-radius: 5px;
overflow: hidden;
border: none;
margin: 50px auto;
width: 80vw;
}
}
.modal {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1050;
overflow: hidden;
-webkit-overflow-scrolling: touch;
outline: 0;
}
.modal-header {
background-color: #43a047;
color: white;
border-radius: 6px 6px 0px 0px;
min-height: 16.4;
padding: 15px;
border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
margin-top: -2px;
}
.modal-header .modal-close {
width:53px;
float:right;
margin:-15px;
margin-left:0px;
height:53px;
border-left: 1px solid #00000040;
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsTAAALEwEAmpwYAAABO0lEQVR42u3bURKDIAwEUNiLoyfXC3Ss4mYTh81Xv4R90wqEad+2ra1caIuXAQxgAAMYwAAGMIABDGAAA0zVGOMYYxzqibPGxdtJ/PqsCM8aF4xJKBHY40IxwcrPngbY970rJ3r1zKu5hH4DVAhR4Sk/gWiEyPC0d0AUQnR46kuQjaAIT18FWAiq8CHL4FsEZfiws8Asgjp86GHoKUJG+PDT4F2ErPCttdYVd4OzS2F0eFk/YCaIIry0IfIkkCq8FOBuMGV4OUDFkgK83Qh9GoC1Ff4kAPsw9CmAf5scdWdJCnB3h5eJgOzw2QioED4TAVXCZyGgUvgMBFQLr0ZAxfBKBFQNr0JA5fAKBFQPH40gbYtXfDb1dljRzGCPS7sdVnZymON2/2Nk8TKAAQxgAAMYwAAGMIABDLBmnWRS+u5G6HkFAAAAAElFTkSuQmCC') center no-repeat;
background-size:30px;
cursor:pointer;
}
.modal-header .modal-close:hover {
border-radius: 0px 6px 0px 0px;
}
.modal-title {
margin: 0;
line-height: 1.4;
}
.modal-open {
overflow: hidden;
}
.modal-open .modal {
overflow-x: hidden;
overflow-y: auto;
}
.modal-dialog {
position: relative;
width: auto;
margin: 10px;
}
.modal-content {
position: relative;
background-color: #fff;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid #999;
border: 1px solid rgba(0, 0, 0, .2);
border-radius: 6px;
outline: 0;
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
}
.modal-body {
position: relative;
}
@media (min-width: 768px) {
.modal-dialog {
width: 600px;
margin: 30px auto;
}
.modal-content {
box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
}
}
.cancelled {
text-decoration-line: line-through;
}
.showremarks {
vertical-align: bottom;
cursor: pointer;
}
.remark {
vertical-align: middle;
}
.showremarks.hint,
.remark.hint {
content: url("../img/info-24px.svg");
}
.showremarks.status,
.remark.status {
content: url("../img/warning-24px.svg");
}
.showremarks.other,
.remark.other {
content: url("../img/help-24px.svg");
}
.remarks td {
margin: 0 10px;
text-align: left;
display: block;
}
/*.remarks {
display: none;
position: absolute;
z-index: 1;
}*/
.remarks {
/*background: #000000d0;*/
border: 1px solid #ddd;
padding: 0;
width: 100%;
margin: 0;
box-shadow: none;
}
/*.showremarks:hover+.remarks {
display: inline-block;
}*/
.travelynx {
vertical-align: bottom;
cursor: pointer;
content: url("../img/travelynx.svg");
}