@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400italic,500,500italic,700,700italic,900,900italic);
html * {
  font-family: "Roboto", "Lucida Sans Unicode", Arial, Helvetica, sans-serif; }

.loading-screen, .login-content {
  background: url("img/theme/background-smooth.png") center center no-repeat fixed #ebf4f3; }

.access-denied-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black; }

.access-denied-title {
  font-size: 3em;
  font-weight: 700;
  color: #EE4B5E;
  text-transform: uppercase; }

.access-denied-subtitle {
  font-size: 30px;
  font-weight: 700;
  color: #f5e92e; }

.loading-screen > div {
  width: 50px;
  height: 50px;
  background: url("img/theme/loading.svg") round; }

.double-padding {
  padding: 20px; }

.item-in-history {
  width: 80%;
  white-space: pre-wrap !important; }

.normal-padding {
  padding: 10px; }

.horizontal-layout .details {
  z-index: 10; }

.horizontal-layout .details:empty {
  display: none; }

.horizontal-layout .map {
  box-shadow: inset 0 2px 4px -1px rgba(0, 0, 0, 0.2), inset 0 4px 5px 0 rgba(0, 0, 0, 0.14), inset 0 1px 10px 0 rgba(0, 0, 0, 0.12); }

.horizontal-layout .content:empty {
  display: none; }

stop-sequence-diagram md-input-container {
  width: 200px;
  margin: 0; }

html, body {
  overflow: hidden !important; }

body {
  color: black; }

.main-layout {
  width: 100%;
  height: 100%; }

.md-button {
  border-radius: 0; }

.md-subheader {
  font-size: 20px; }

md-list .md-subheader {
  font-size: 17px;
  color: #008A72; }

.md-datepicker-button {
  display: none; }

/* [ui-view] transition animation */
.animate-transition.animation-base.ng-enter, .animate-transition.animation-base.ng-leave,
.animate-transition .animation-base.ng-enter,
.animate-transition .animation-base.ng-leave {
  position: absolute;
  left: 0;
  right: 0;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out; }

.animate-transition.animation-base.ng-enter,
.animate-transition .animation-base.ng-enter {
  opacity: 0;
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  -moz-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5); }

.animate-transition.animation-base.ng-enter-active,
.animate-transition .animation-base.ng-enter-active {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1); }

.animate-transition.animation-base.ng-leave,
.animate-transition .animation-base.ng-leave {
  opacity: 1;
  /*padding-left: 0px;*/
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.animate-transition.animation-base.ng-leave-active,
.animate-transition .animation-base.ng-leave-active {
  opacity: 0;
  /*padding-left: 100px;*/
  -webkit-transform: translate3d(100px, 0, 0);
  -moz-transform: translate3d(100px, 0, 0);
  transform: translate3d(100px, 0, 0); }

.labeled-icon-button, .chip-button {
  box-shadow: none !important;
  line-height: 30px;
  min-height: 30px;
  text-transform: none; }

button.labeled-icon-button.md-button {
  height: 30px; }

stop-details .headsign {
  padding-right: 40px;
  line-height: 58px; }

stop-details .second-item-time {
  top: 37% !important; }

stop-details .second-item {
  top: 80% !important; }

stop-details .id-padding {
  padding-bottom: 2%;
  padding-left: 3.5%; }

stop-details .inner-container {
  height: 80px; }

stop-details md-list-item {
  border-bottom: 1px solid #EBEBEB; }

simple-stop-details md-list-item {
  padding: 0 !important; }
  simple-stop-details md-list-item > md-icon {
    margin: 0 8px 0 0 !important; }
  simple-stop-details md-list-item .md-secondary md-icon {
    margin: 0; }

select-area-map .ol-popup {
  min-width: 200px; }

/* A OVERVIEW listában ha túl hosszú volt a gomb szövege akkor a széllessége megnőtt. */
.md-button.list-item-primary {
  width: 100%; }
  .md-button.list-item-primary .md-list-item-text p {
    overflow: hidden;
    text-overflow: ellipsis; }

md-icon.alert {
  color: #FFD402; }

md-chips[readonly="true"] .md-chips {
  box-shadow: 0 0; }

/*@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url('fonts/Roboto-Thin.ttf');
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/Roboto-Light.ttf');
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/Roboto-Medium.ttf');
}*/
.dashboard-base {
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 0; }
  .dashboard-base .gridster-item {
    background-color: #edeeef;
    overflow: hidden; }
    .dashboard-base .gridster-item .title-container {
      margin: 8px; }
      .dashboard-base .gridster-item .title-container > * {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis; }
      .dashboard-base .gridster-item .title-container h4 {
        font-size: 20px;
        letter-spacing: 0.005em;
        font-weight: 100;
        margin: 0; }
      .dashboard-base .gridster-item .title-container small {
        font-size: 70%; }
    .dashboard-base .gridster-item md-content section md-radio-button {
      margin-left: 16px; }
  .dashboard-base .gridster-header {
    cursor: move; }
  .dashboard-base .highcharts-container .highcharts-grid path:first-child {
    display: none; }

.gradient {
  height: 20px;
  width: 250px;
  bottom: 20px;
  left: .5em;
  background: -webkit-linear-gradient(left, #00f, #0ff, #0f0, #ff0, #f00);
  /* For Safari 5.1 to 6.0 */
  background: -o-linear-gradient(left, #00f, #0ff, #0f0, #ff0, #f00);
  /* For Opera 11.1 to 12.0 */
  background: -moz-linear-gradient(left, #00f, #0ff, #0f0, #ff0, #f00);
  /* For Fx 3.6 to 15 */
  background: linear-gradient(to right, #00f, #0ff, #0f0, #ff0, #f00);
  /* Standard syntax (must be last) */ }

.span-max {
  position: absolute;
  right: 4px;
  font-weight: bold;
  color: white; }

.span-min {
  font-weight: bold;
  color: white; }

.svg-style {
  margin-left: 5px;
  margin-right: -30px;
  width: 270px;
  height: 24px; }

.rect-style {
  width: 24px;
  height: 24px; }

.avg {
  height: 27px;
  width: 360px;
  bottom: 20px;
  left: .5em; }

.span-speed {
  margin-top: 3px; }

dashboard-data-state div.scroll-wrapper {
  height: auto;
  width: 100%;
  overflow-y: auto; }

dashboard-data-state .fixed_headers {
  width: auto;
  table-layout: fixed;
  border-collapse: collapse; }
  dashboard-data-state .fixed_headers th, dashboard-data-state .fixed_headers td {
    padding: 5px;
    text-align: center; }
  dashboard-data-state .fixed_headers td:nth-child(1), dashboard-data-state .fixed_headers th:nth-child(1) {
    min-width: 90px;
    width: 90px; }
  dashboard-data-state .fixed_headers td:nth-child(2), dashboard-data-state .fixed_headers th:nth-child(2) {
    min-width: 270px;
    width: 270px; }
  dashboard-data-state .fixed_headers td:nth-child(n + 3), dashboard-data-state .fixed_headers th:nth-child(n + 3) {
    width: 120px; }
  dashboard-data-state .fixed_headers thead {
    background-color: #14A57A;
    color: #FDFDFD; }
    dashboard-data-state .fixed_headers thead tr {
      display: block;
      position: relative; }
  dashboard-data-state .fixed_headers tbody {
    display: block;
    overflow: auto;
    overflow-x: hidden;
    width: 100%;
    height: 300px; }
    dashboard-data-state .fixed_headers tbody tr:nth-child(even) {
      background-color: #DDD; }

dashboard-data-state .dataset-wrapper {
  word-break: break-word; }

dashboard-data-state .old_ie_wrapper {
  height: 300px;
  width: auto;
  overflow-x: hidden;
  overflow-y: auto; }
  dashboard-data-state .old_ie_wrapper tbody {
    height: auto; }

dashboard-data-state .pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px;
  box-sizing: border-box; }

dashboard-data-state .pagination > li {
  display: inline; }

dashboard-data-state .pagination > li:first-child > a, dashboard-data-state .pagination > li:first-child > span {
  margin-left: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }

dashboard-data-state .pagination > .active > a, dashboard-data-state .pagination > .active > a:focus, dashboard-data-state .pagination > .active > a:hover, dashboard-data-state .pagination > .active > span, dashboard-data-state .pagination > .active > span:focus, dashboard-data-state .pagination > .active > span:hover {
  z-index: 3;
  color: #fff;
  cursor: default;
  background-color: #14A57A;
  border-color: #14A57A; }

dashboard-data-state .pagination > li > a, dashboard-data-state .pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  margin-left: -1px;
  line-height: 1.42857143;
  color: #14A57A;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd; }

dashboard-data-state .pagination > li > a:focus, dashboard-data-state .pagination > li > a:hover, dashboard-data-state .pagination > li > span:focus, dashboard-data-state .pagination > li > span:hover {
  z-index: 2;
  color: #14A57A;
  background-color: #eee;
  border-color: #ddd; }

dashboard-data-state .pagination > .disabled > a, dashboard-data-state .pagination > .disabled > a:focus, dashboard-data-state .pagination > .disabled > a:hover, dashboard-data-state .pagination > .disabled > span, dashboard-data-state .pagination > .disabled > span:focus, dashboard-data-state .pagination > .disabled > span:hover {
  color: #777;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd; }

dashboard-data-state .page-load {
  margin-top: 18px; }

.data-state-dialog div.scroll-wrapper {
  height: auto;
  width: 100%;
  overflow-y: auto; }

.data-state-dialog body {
  padding: 20px;
  background-color: #FFF7DC;
  color: black;
  min-width: 530px; }

.data-state-dialog h2, .data-state-dialog h3 {
  width: 100%;
  text-align: center;
  margin: 1.5em 0 .5em 0; }

.data-state-dialog p {
  width: 50%;
  margin: 10px auto; }

.data-state-dialog a {
  color: black;
  text-decoration: underline; }

.data-state-dialog a:hover {
  text-decoration: none;
  background-color: #D5ECFF; }

.data-state-dialog td {
  border-bottom: 1px solid #ccc;
  padding: 5px;
  text-align: left;
  /* IE */ }

.data-state-dialog td + td {
  border-left: 1px solid #ccc; }

.data-state-dialog th {
  padding: 0 5px;
  text-align: left;
  /* IE */ }

.data-state-dialog .header-background {
  border-bottom: 1px solid black; }

.data-state-dialog .fixed-table-container {
  width: fit-content;
  height: 300px;
  border: 1px solid black;
  margin: 10px auto;
  background-color: white;
  /* above is decorative or flexible */
  position: relative;
  /* could be absolute or relative */
  padding-top: 30px;
  /* height of header */ }

.data-state-dialog .fixed-table-container-inner {
  overflow-x: hidden;
  overflow-y: auto;
  height: 100%;
  width: fit-content; }

.data-state-dialog .header-background {
  background-color: #14A57A;
  height: 30px;
  /* height of header */
  width: auto;
  position: absolute;
  top: 0;
  right: 0;
  left: 0; }

.data-state-dialog table {
  background-color: white;
  width: 100%;
  overflow-x: hidden;
  overflow-y: auto; }

.data-state-dialog .th-inner {
  position: absolute;
  color: #FFFFFF;
  top: 0;
  line-height: 30px;
  /* height of header */
  text-align: left;
  border-left: 1px solid black;
  padding-left: 5px;
  margin-left: -5px; }

.data-state-dialog .first .th-inner {
  border-left: none;
  padding-left: 6px; }

.data-state-dialog .hidden-head {
  min-width: 530px; }

.data-state-dialog .hidden-header .th-inner {
  position: static;
  overflow-y: hidden;
  height: 0;
  white-space: nowrap;
  padding-right: 5px; }

.data-state-dialog tr:nth-child(even) {
  background-color: #DDD; }

trip-plan-popup .ol-popup {
  position: absolute;
  background-color: white;
  -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
  padding: 15px;
  border-radius: 10px;
  border: 1px solid #cccccc;
  bottom: 12px;
  left: -50px;
  min-width: 200px; }
  trip-plan-popup .ol-popup .ol-popup-header {
    margin-bottom: 1em; }
    trip-plan-popup .ol-popup .ol-popup-header h3 {
      margin: 0;
      color: #14A57A; }
    trip-plan-popup .ol-popup .ol-popup-header md-icon {
      margin: 0; }

trip-plan-popup .ol-popup:after, trip-plan-popup .ol-popup:before {
  top: 100%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

trip-plan-popup .ol-popup:after {
  border-top-color: white;
  border-width: 10px;
  left: 48px;
  margin-left: -10px; }

trip-plan-popup .ol-popup:before {
  border-top-color: #cccccc;
  border-width: 11px;
  left: 48px;
  margin-left: -11px; }

trip-plan-popup .ol-popup-closer {
  text-decoration: none;
  position: absolute;
  top: 2px;
  right: 8px; }

trip-plan-popup .ol-popup-closer:after {
  content: "✖"; }

trip-plan-popup .ol-control button {
  background-color: #008A72;
  opacity: 0.5; }
  trip-plan-popup .ol-control button:hover, trip-plan-popup .ol-control button:focus {
    background-color: #14A57A; }

trip-plan-popup .ol-layer-switcher {
  left: 0;
  bottom: 0;
  padding: 20px 10px;
  position: absolute; }

::-webkit-scrollbar-track {
  background-color: transparent; }

::-webkit-scrollbar {
  width: 12px; }

::-webkit-scrollbar-thumb {
  background-color: #989898; }

#search-map .ol-map {
  height: 300px;
  width: 100%; }

.search-progressbar {
  height: 10px;
  margin-top: -10px;
  margin-left: 20px;
  margin-right: 20px; }
  .search-progressbar md-progress-linear {
    -webkit-transition: all linear 0.5s;
    transition: all linear 0.5s; }
  .search-progressbar md-progress-linear.ng-hide {
    opacity: 0; }

.search-screen {
  background-color: #f2f2f2; }
  .search-screen .md-subheader, .search-screen md-content, .search-screen md-datepicker {
    background-color: transparent; }
  .search-screen .search-date {
    margin-bottom: 10px; }
    .search-screen .search-date .md-errors-spacer {
      display: none; }
  .search-screen h2 {
    margin-top: 12px;
    margin-bottom: 12px;
    margin-left: 33px;
    font-weight: 100;
    font-size: 36px; }

.steplayout {
  margin-left: 33px;
  background: url("img/theme/steplayout-line.png") repeat-y; }
  .steplayout.results {
    background-image: url("img/theme/steplayout-line-results.png"); }
  .steplayout.show-results {
    background-image: url("img/theme/steplayout-line-show.png"); }
  .steplayout > h3 {
    background: url("img/theme/steplayout-step.png") repeat-y;
    height: 20px;
    min-height: 20px;
    margin-top: 0;
    font-weight: normal; }
  .steplayout > div {
    margin-bottom: 20px; }
  .steplayout.results h3 {
    background-image: url("img/theme/steplayout-step-results.png"); }
  .steplayout.show-results h3 {
    background-image: url("img/theme/steplayout-step-show.png"); }
  .steplayout > h3, .steplayout > div {
    padding-left: 36px;
    margin-left: 0; }
  .steplayout md-input-container {
    margin: 0; }
  .steplayout .label {
    margin-bottom: 20px;
    color: white;
    height: 24px;
    padding-top: 20px;
    padding-left: 23px;
    border-image-source: url("img/theme/steplayout-label-left.png");
    background: url("img/theme/steplayout-label-bg.png") repeat;
    border-style: solid;
    border-width: 0 0 0 12px;
    -moz-border-image: url("img/theme/steplayout-label-left.png") 0 0 0 13 round;
    -webkit-border-image: url("img/theme/steplayout-label-left.png") 0 0 0 13 round;
    -o-border-image: url("img/theme/steplayout-label-left.png") 0 0 0 13 round;
    border-image: url("img/theme/steplayout-label-left.png") 0 0 0 13 round; }
    .steplayout .label .light {
      opacity: 0.85; }
    .steplayout .label .spacer {
      display: inline-block;
      width: 20px; }

.md-button.labeled-icon-button {
  padding: 0;
  width: 140px; }
  .md-button.labeled-icon-button md-icon {
    left: 0;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.25);
    width: 30px;
    height: 30px;
    padding-top: 3px; }
  .md-button.labeled-icon-button span {
    display: inline-block;
    height: 30px;
    border-bottom: 2px solid rgba(0, 0, 0, 0.25);
    width: 110px;
    margin: 0 0 0 30px;
    line-height: 33px;
    color: white; }
  .md-button.labeled-icon-button:hover:not([disabled]) span {
    text-decoration: underline; }

.md-button.chip-button .md-ripple-container {
  border-radius: 16px !important; }

.md-button.chip-button span, .md-button.chip-button strong {
  margin-right: 3px;
  display: inline-block; }

.md-button.chip-button, .md-chips .md-chip {
  padding-left: 0;
  text-align: left;
  border-radius: 16px;
  overflow: hidden;
  height: 27px;
  min-height: 27px;
  line-height: 27px;
  background: #e0e0e0 !important;
  border: 1px solid #d3d2d2; }
  .md-button.chip-button.md-focused, .md-chips .md-chip.md-focused {
    background: #008a72 !important; }
  .md-button.chip-button md-chip-template > md-icon, .md-button.chip-button > div > md-icon, .md-chips .md-chip md-chip-template > md-icon, .md-chips .md-chip > div > md-icon {
    font-size: 20px !important;
    height: 27px;
    padding-left: 3px;
    padding-top: 2px;
    color: white !important;
    margin-right: 5px; }

.md-chips .md-chip {
  padding-left: 0; }
  .md-chips .md-chip md-chip-template {
    display: block;
    font-size: 14px; }
  .md-chips .md-chip .md-chip-remove {
    margin-top: -1px;
    height: 27px; }

.md-autocomplete-suggestions md-icon {
  background-color: transparent !important; }

div.minute-label {
  padding-top: 6px; }

.md-virtual-repeat-container.md-autocomplete-suggestions-container {
  width: 340px; }

.md-datepicker-input-mask {
  display: none; }

.progress-container {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }

md-sidenav {
  width: 640px;
  max-width: inherit; }

replay-slider {
  z-index: 3; }
  replay-slider > div {
    margin: 16px; }
  replay-slider .md-button {
    min-width: 66px; }
  replay-slider md-checkbox {
    margin-left: 10px !important;
    margin-bottom: 0; }
    replay-slider md-checkbox .md-label {
      margin-top: 16px; }
  replay-slider md-slider {
    padding: 0 5px 0 20px; }
  replay-slider md-slider[md-discrete]:focus .md-sign {
    margin-left: -17px;
    width: 62px;
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 1; }
  replay-slider md-slider[md-discrete]:focus .md-sign:after {
    margin-left: 17px;
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 1; }
  replay-slider md-slider[md-discrete]:not(:focus) .md-sign .md-thumb-text {
    display: none; }

.user-area {
  padding-left: 10px; }
  .user-area .welcome, .user-area a {
    color: black;
    font-size: 14px; }
  .user-area a {
    margin: 20px 10px 5px;
    text-decoration: inherit; }

md-toolbar {
  height: 52px;
  min-height: 52px; }
  md-toolbar:not(.md-menu-toolbar) {
    color: white; }
  md-toolbar .context-title {
    margin-left: 10px;
    margin-top: 8px;
    font-weight: 100;
    white-space: nowrap; }
  md-toolbar .context-main-filter {
    margin-right: 10px;
    margin-top: auto;
    margin-bottom: auto; }
    md-toolbar .context-main-filter .context-icon {
      margin-left: 10px;
      border: 2px solid rgba(255, 255, 255, 0.87);
      border-radius: 50%;
      width: 32px;
      min-width: 32px;
      height: 32px;
      padding-left: 2px;
      padding-top: 3px; }
    md-toolbar .context-main-filter .description-container {
      padding-left: 10px; }
      md-toolbar .context-main-filter .description-container p {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        font-size: 0.7em;
        margin: 0; }
        md-toolbar .context-main-filter .description-container p:only-child {
          font-size: 1em;
          margin-top: 3px; }
  md-toolbar .description-container + .secondary-filter {
    padding-left: 8px;
    border-left: 1px solid rgba(0, 0, 0, 0.2); }
  md-toolbar .secondary-filter {
    margin-left: 6px;
    margin-right: 6px;
    font-size: 14px; }
    md-toolbar .secondary-filter md-icon {
      font-size: 20px; }
    md-toolbar .secondary-filter span {
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis; }
  md-toolbar .md-toolbar-tools {
    height: 52px;
    max-height: 52px;
    padding-right: 0; }
  md-toolbar > .md-button,
  md-toolbar .md-toolbar-tools .md-button,
  md-toolbar info-dialog .md-button, md-toolbar md-menu .md-button {
    height: 52px; }
    md-toolbar > .md-button.md-icon-button,
    md-toolbar .md-toolbar-tools .md-button.md-icon-button,
    md-toolbar info-dialog .md-button.md-icon-button, md-toolbar md-menu .md-button.md-icon-button {
      background-color: #14A57A !important;
      padding: 0;
      margin-left: 0;
      margin-right: 0;
      width: 52px;
      min-width: 52px;
      height: 52px;
      border-radius: 0; }
      md-toolbar > .md-button.md-icon-button md-icon,
      md-toolbar .md-toolbar-tools .md-button.md-icon-button md-icon,
      md-toolbar info-dialog .md-button.md-icon-button md-icon, md-toolbar md-menu .md-button.md-icon-button md-icon {
        color: #005B4B;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        transition: ease 0.2s;
        z-index: 3; }
      md-toolbar > .md-button.md-icon-button:hover md-icon,
      md-toolbar .md-toolbar-tools .md-button.md-icon-button:hover md-icon,
      md-toolbar info-dialog .md-button.md-icon-button:hover md-icon, md-toolbar md-menu .md-button.md-icon-button:hover md-icon {
        color: white; }
      md-toolbar > .md-button.md-icon-button .hover-highlight,
      md-toolbar .md-toolbar-tools .md-button.md-icon-button .hover-highlight,
      md-toolbar info-dialog .md-button.md-icon-button .hover-highlight, md-toolbar md-menu .md-button.md-icon-button .hover-highlight {
        position: absolute;
        z-index: 2;
        left: 20px;
        top: 20px;
        right: 20px;
        bottom: 20px;
        transition: ease 0.2s;
        background: transparent;
        border-radius: 50%; }
      md-toolbar > .md-button.md-icon-button:hover .hover-highlight,
      md-toolbar .md-toolbar-tools .md-button.md-icon-button:hover .hover-highlight,
      md-toolbar info-dialog .md-button.md-icon-button:hover .hover-highlight, md-toolbar md-menu .md-button.md-icon-button:hover .hover-highlight {
        background: #008A72;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        border-radius: 0; }
      md-toolbar > .md-button.md-icon-button div.md-ripple-container,
      md-toolbar .md-toolbar-tools .md-button.md-icon-button div.md-ripple-container,
      md-toolbar info-dialog .md-button.md-icon-button div.md-ripple-container, md-toolbar md-menu .md-button.md-icon-button div.md-ripple-container {
        display: none; }
      md-toolbar > .md-button.md-icon-button.user-button,
      md-toolbar .md-toolbar-tools .md-button.md-icon-button.user-button,
      md-toolbar info-dialog .md-button.md-icon-button.user-button, md-toolbar md-menu .md-button.md-icon-button.user-button {
        background-color: #28353A !important; }
        md-toolbar > .md-button.md-icon-button.user-button md-icon,
        md-toolbar .md-toolbar-tools .md-button.md-icon-button.user-button md-icon,
        md-toolbar info-dialog .md-button.md-icon-button.user-button md-icon, md-toolbar md-menu .md-button.md-icon-button.user-button md-icon {
          color: #F39200 !important; }
        md-toolbar > .md-button.md-icon-button.user-button:hover md-icon,
        md-toolbar .md-toolbar-tools .md-button.md-icon-button.user-button:hover md-icon,
        md-toolbar info-dialog .md-button.md-icon-button.user-button:hover md-icon, md-toolbar md-menu .md-button.md-icon-button.user-button:hover md-icon {
          color: white !important; }
        md-toolbar > .md-button.md-icon-button.user-button:hover .hover-highlight,
        md-toolbar .md-toolbar-tools .md-button.md-icon-button.user-button:hover .hover-highlight,
        md-toolbar info-dialog .md-button.md-icon-button.user-button:hover .hover-highlight, md-toolbar md-menu .md-button.md-icon-button.user-button:hover .hover-highlight {
          background: #F39200; }
    md-toolbar > .md-button.md-raised:not([disabled]),
    md-toolbar .md-toolbar-tools .md-button.md-raised:not([disabled]),
    md-toolbar info-dialog .md-button.md-raised:not([disabled]), md-toolbar md-menu .md-button.md-raised:not([disabled]) {
      box-shadow: none; }
      md-toolbar > .md-button.md-raised:not([disabled]):active,
      md-toolbar .md-toolbar-tools .md-button.md-raised:not([disabled]):active,
      md-toolbar info-dialog .md-button.md-raised:not([disabled]):active, md-toolbar md-menu .md-button.md-raised:not([disabled]):active {
        box-shadow: none; }
    md-toolbar > .md-button.md-focused,
    md-toolbar .md-toolbar-tools .md-button.md-focused,
    md-toolbar info-dialog .md-button.md-focused, md-toolbar md-menu .md-button.md-focused {
      background-color: transparent !important; }
  md-toolbar.main-toolbar {
    z-index: 3; }

.toolbar-datetime {
  margin-left: 8px; }
  .toolbar-datetime > span {
    font-size: 14px; }
  .toolbar-datetime md-input-container {
    margin: -2px 0 0 0; }
    .toolbar-datetime md-input-container input[disabled] {
      background-image: linear-gradient(to right, rgba(255, 255, 255, 0.26) 0%, rgba(255, 255, 255, 0.56) 33%, transparent 0%);
      background-image: -ms-linear-gradient(left, transparent 0%, rgba(255, 255, 255, 0.56) 100%); }
  .toolbar-datetime .md-errors-spacer {
    display: none; }
  .toolbar-datetime md-datepicker {
    height: 34px;
    margin-bottom: -5px;
    background-color: transparent; }
    .toolbar-datetime md-datepicker button {
      margin-top: 6px !important; }
    .toolbar-datetime md-datepicker .md-datepicker-expand-triangle {
      border-top-color: white; }
    .toolbar-datetime md-datepicker .md-datepicker-input-container {
      padding-bottom: 3px; }
    .toolbar-datetime md-datepicker[disabled] .md-datepicker-input-container {
      border-bottom: 1px dotted rgba(255, 255, 255, 0.56); }
  .toolbar-datetime input {
    font-size: 14px;
    border-bottom-color: #E0E0E0;
    color: white; }
    .toolbar-datetime input[disabled] {
      color: rgba(255, 255, 255, 0.56); }
    .toolbar-datetime input[type="time"] {
      max-width: 100px; }

range-slider .range-slider-container {
  position: relative;
  height: 50px;
  margin-right: 10px;
  margin-left: 6px; }

range-slider .range-slider-container md-slider {
  margin: 0; }

range-slider .range-track-line {
  position: absolute;
  height: 2px;
  top: 23px;
  background-color: #008a72; }

range-slider .range-slider-left, range-slider .range-slider-right {
  position: absolute;
  top: 0px; }

range-slider .range-slider-right {
  right: 0px; }

range-slider .range-slider-left md-slider .md-thumb-container {
  transition: -webkit-transform 0s linear;
  transition: transform 0s linear; }

range-slider .range-slider-container md-slider .md-thumb-container {
  transition: -webkit-transform 0s linear;
  transition: transform 0s linear; }

range-slider .range-slider-container md-slider .md-track-container {
  transition: -webkit-transform 0s linear;
  transition: transform 0s linear; }

range-slider md-slider[md-discrete] .md-sign,
range-slider md-slider[md-discrete] .md-sign:after {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1); }

day-selection div.standard {
  padding: 8px;
  padding-left: 15px; }

day-selection fieldset.standard {
  border-style: solid;
  border-width: 1px;
  height: 100%; }

day-selection legend code {
  color: #3F51B5;
  font-weight: normal; }

.toolbar-menu-content, .toolbar-menu-content md-content {
  background-color: #14A57A; }
  .toolbar-menu-content h3, .toolbar-menu-content h4, .toolbar-menu-content md-checkbox, .toolbar-menu-content md-content h3, .toolbar-menu-content md-content h4, .toolbar-menu-content md-content md-checkbox {
    color: white; }
  .toolbar-menu-content h3, .toolbar-menu-content md-content h3 {
    font-size: 26px;
    font-weight: 100;
    margin-top: 0; }
  .toolbar-menu-content h4, .toolbar-menu-content md-content h4 {
    font-size: 16px;
    font-weight: 100; }
  .toolbar-menu-content md-checkbox, .toolbar-menu-content md-content md-checkbox {
    margin-bottom: 0;
    width: 58px; }
    .toolbar-menu-content md-checkbox .md-container, .toolbar-menu-content md-content md-checkbox .md-container {
      top: 0;
      margin-left: 15px; }
    .toolbar-menu-content md-checkbox .md-container, .toolbar-menu-content md-checkbox .md-icon, .toolbar-menu-content md-content md-checkbox .md-container, .toolbar-menu-content md-content md-checkbox .md-icon {
      height: 28px;
      width: 28px; }
    .toolbar-menu-content md-checkbox .md-label, .toolbar-menu-content md-content md-checkbox .md-label {
      font-weight: 300;
      text-align: center;
      width: 58px;
      margin-left: 0;
      margin-top: 14px; }
    .toolbar-menu-content md-checkbox.md-checked .md-icon, .toolbar-menu-content md-content md-checkbox.md-checked .md-icon {
      background-color: white; }
    .toolbar-menu-content md-checkbox.md-checked .md-label, .toolbar-menu-content md-content md-checkbox.md-checked .md-label {
      font-weight: 500; }
    .toolbar-menu-content md-checkbox.md-checked[disabled] .md-icon, .toolbar-menu-content md-content md-checkbox.md-checked[disabled] .md-icon {
      background-color: #DD5143; }
      .toolbar-menu-content md-checkbox.md-checked[disabled] .md-icon:after, .toolbar-menu-content md-content md-checkbox.md-checked[disabled] .md-icon:after {
        border-color: #14A57A; }
    .toolbar-menu-content md-checkbox[disabled] .md-icon, .toolbar-menu-content md-content md-checkbox[disabled] .md-icon {
      border-color: #DD5143; }
    .toolbar-menu-content md-checkbox[disabled] .md-label, .toolbar-menu-content md-content md-checkbox[disabled] .md-label {
      color: #DD5143; }
    .toolbar-menu-content md-checkbox .md-icon, .toolbar-menu-content md-content md-checkbox .md-icon {
      border-color: rgba(255, 255, 255, 0.6); }
      .toolbar-menu-content md-checkbox .md-icon:after, .toolbar-menu-content md-content md-checkbox .md-icon:after {
        width: 10px;
        height: 20px;
        left: 9px;
        border-color: #14A57A;
        border-width: 3px; }
  .toolbar-menu-content md-slider .md-sign, .toolbar-menu-content md-content md-slider .md-sign {
    background-color: white; }
  .toolbar-menu-content md-slider .md-sign:after, .toolbar-menu-content md-content md-slider .md-sign:after {
    border-top-color: white; }
  .toolbar-menu-content md-slider .md-thumb-text, .toolbar-menu-content md-content md-slider .md-thumb-text {
    color: #f39200; }
  .toolbar-menu-content md-slider .md-thumb:after, .toolbar-menu-content md-content md-slider .md-thumb:after {
    border-color: white;
    background-color: white; }
  .toolbar-menu-content md-slider .md-track, .toolbar-menu-content md-content md-slider .md-track {
    background-color: white; }
  .toolbar-menu-content md-slider .md-track-ticks, .toolbar-menu-content md-content md-slider .md-track-ticks {
    background-color: transparent; }
  .toolbar-menu-content range-slider .range-track-line, .toolbar-menu-content md-content range-slider .range-track-line {
    background-color: white; }

trip-details md-input-container,
trip-overview md-input-container {
  margin: 0 1em 1em 1em; }

trip-details .md-action.md-button,
trip-overview .md-action.md-button {
  min-width: 0;
  margin-left: 24px;
  margin-right: 0;
  cursor: pointer;
  text-transform: uppercase;
  float: right; }

trip-details .trip-details-header {
  border-bottom: 1px solid black;
  justify-content: space-between; }

trip-details .trip-details-header .md-button {
  margin: 0 0 0 9px; }

trip-details .text-information {
  margin: 0 0 0 9px;
  font-size: 14px;
  font-weight: 500;
  align-items: center;
  display: inherit; }

trip-details .rolled-up-checkbox {
  margin: 6px 9px 9px 9px; }

trip-details .md-toolbar-tools {
  font-size: 80%; }

trip-details .md-whiteframe-1dp {
  margin-bottom: 16px; }

trip-details table {
  padding: 0;
  border-collapse: collapse;
  width: 100%; }
  trip-details table .stop md-menu {
    text-align: left;
    padding: 0 0 0 1em;
    display: table-cell; }
    trip-details table .stop md-menu span {
      cursor: pointer;
      display: block;
      font-weight: bold; }
    trip-details table .stop md-menu .stop-left {
      font-weight: normal; }
    trip-details table .stop md-menu .skipped-stop-name {
      font-weight: normal;
      text-decoration: line-through; }
  trip-details table .skipped-stop-time {
    color: #989898; }
  trip-details table .realtime, trip-details table .scheduled {
    text-align: center;
    vertical-align: center;
    width: 6em; }
  trip-details table tr:nth-child(odd) td {
    border-top: 1px solid #EBEBEB;
    padding-top: 8px; }
  trip-details table tr:nth-child(even) td {
    padding-top: 0;
    padding-bottom: 8px; }
  trip-details table .italic {
    font-style: italic; }
  trip-details table .stop-distance {
    text-align: left;
    padding-left: 1em;
    width: 50%;
    font-weight: normal;
    color: #989898; }
  trip-details table .at-stop {
    background-color: #EBEBEB;
    font-weight: bold; }
  trip-details table .on-time .realtime {
    color: #69A62A; }
  trip-details table .early .realtime {
    color: #DD5143; }
  trip-details table .late .realtime {
    color: #1BADCB; }
  trip-details table .departed .name, trip-details table .departed .realtime, trip-details table .departed .scheduled {
    color: #989898; }

.console {
  margin: 0;
  padding: 1em;
  white-space: pre;
  background: black;
  color: lightgray;
  font-family: "Courier New", monospace;
  display: inline-block; }
  .console ::selection {
    color: black;
    background: white; }
  .console ::-moz-selection {
    color: black;
    background: lightgray; }

.highlight {
  background-color: lightgray;
  color: black; }

.highlight-startswith {
  color: orange; }

.explainable {
  background-color: darkblue;
  position: relative; }
  .explainable .explain-tooltip {
    z-index: 1;
    position: absolute;
    background: lightgray;
    color: black;
    display: none; }
  .explainable:hover .explain-tooltip {
    display: inline; }

timeline-list .timeline-row {
  height: 44px;
  min-height: 44px;
  font-size: 12px;
  border-bottom: 1px solid #EBEBEB; }
  timeline-list .timeline-row:last-child {
    border-bottom: none; }
  timeline-list .timeline-row .timeline-symbol {
    width: 20px;
    padding: 0 3px 3px 0;
    font-size: 18px;
    text-align: center;
    font-family: "Segoe UI Symbol", "Roboto", sans-serif; }
  timeline-list .timeline-row .timeline-content {
    line-height: 1.1em;
    letter-spacing: 0.020em;
    overflow: hidden;
    position: relative;
    max-height: 3.25em;
    text-align: justify;
    margin-right: -1em;
    padding-right: 1em; }
    timeline-list .timeline-row .timeline-content:before {
      content: '...';
      position: absolute;
      right: 0;
      bottom: 0; }
    timeline-list .timeline-row .timeline-content:after {
      content: '';
      position: absolute;
      right: 0;
      width: 1em;
      height: 1em;
      margin-top: 0.2em;
      background: white;
      transition: .2s ease-out; }
  timeline-list .timeline-row button:hover .timeline-content:after {
    background: #ECECEC;
    transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }

.overview-row {
  height: 110px;
  border-bottom: 1px solid #EBEBEB; }
  .overview-row .md-subheader {
    padding-top: 45px; }
  .overview-row .md-button.list-item-primary {
    min-width: 100%;
    margin: 0;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    text-align: left;
    text-transform: none;
    padding-top: 8px; }
    .overview-row .md-button.list-item-primary > md-icon {
      float: left;
      margin-right: 0; }
    .overview-row .md-button.list-item-primary > div {
      height: 100%; }
    .overview-row .md-button.list-item-primary .md-ripple-container {
      border-radius: 0; }
  .overview-row .list-item-secondary {
    position: absolute;
    padding-right: 10px;
    right: 0;
    bottom: 0; }

.ol-map .ol-viewport .ol-popup {
  position: absolute;
  background-color: white;
  -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
  padding: 15px;
  border-radius: 10px;
  border: 1px solid #cccccc;
  bottom: 12px;
  left: -50px;
  width: 384px; }
  .ol-map .ol-viewport .ol-popup .ol-popup-header {
    margin-bottom: 6px; }
    .ol-map .ol-viewport .ol-popup .ol-popup-header h3 {
      margin: 0;
      color: #14A57A; }
    .ol-map .ol-viewport .ol-popup .ol-popup-header md-icon {
      margin: 0;
      font-size: 20px; }

.ol-map .ol-viewport .ol-popup:after, .ol-map .ol-viewport .ol-popup:before {
  top: 100%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.ol-map .ol-viewport .ol-popup:after {
  border-top-color: white;
  border-width: 10px;
  left: 48px;
  margin-left: -10px; }

.ol-map .ol-viewport .ol-popup:before {
  border-top-color: #cccccc;
  border-width: 11px;
  left: 48px;
  margin-left: -11px; }

.ol-map .ol-viewport .ol-popup-closer {
  text-decoration: none;
  position: absolute;
  top: 2px;
  right: 8px; }

.ol-map .ol-viewport .ol-popup-closer:after {
  content: "✖"; }

.ol-map .ol-viewport .ol-control button {
  background-color: #008A72;
  opacity: 0.5; }
  .ol-map .ol-viewport .ol-control button:hover, .ol-map .ol-viewport .ol-control button:focus {
    background-color: #14A57A; }

.ol-map .ol-viewport .ol-layer-switcher {
  left: 0;
  bottom: 0;
  padding: 20px 10px;
  position: absolute; }

.ol-map .ol-viewport .text-to-right {
  text-align: right; }

.ol-map .ol-viewport .text-to-left {
  text-align: left; }

.ol-map stop-popup md-list {
  padding-bottom: 0; }

.ol-map stop-popup table {
  width: 100%;
  border-collapse: collapse; }
  .ol-map stop-popup table td:first-child {
    width: 24px; }

.ol-map trip-popup .content-container {
  display: flex;
  flex-direction: column;
  gap: 6px;
  line-height: 16px; }

.ol-map trip-popup .vehicle-info-container {
  display: flex;
  gap: 4px; }
  .ol-map trip-popup .vehicle-info-container .vehicle-info {
    display: flex;
    overflow: hidden;
    gap: 4px;
    flex: 1; }
    .ol-map trip-popup .vehicle-info-container .vehicle-info .license-plate {
      display: flex;
      gap: 4px;
      color: black; }
    .ol-map trip-popup .vehicle-info-container .vehicle-info .vehicle-model {
      text-overflow: ellipsis;
      overflow: hidden;
      white-space: nowrap; }

.ol-map trip-popup .data-row {
  display: flex; }
  .ol-map trip-popup .data-row > :first-child {
    width: 204px; }

.ol-map trip-popup .right-content label-with-icon {
  display: flex;
  align-items: center; }
  .ol-map trip-popup .right-content label-with-icon md-icon {
    font-size: 16px;
    margin: 0;
    padding-right: 4px; }

.ol-map trip-popup .delay {
  font-weight: 500; }

.ol-map trip-popup .color-secondary {
  color: rgba(0, 0, 0, 0.6); }

.ol-map trip-popup .data-row-label {
  font-style: italic; }

.ol-map trip-popup .alert-container {
  display: flex;
  align-items: center;
  gap: 8px; }
  .ol-map trip-popup .alert-container md-icon {
    width: 16px;
    height: 16px;
    margin: 0; }
  .ol-map trip-popup .alert-container .alert-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-style: italic; }

md-toast {
  z-index: 95; }

.aggregation-select md-select-menu {
  max-height: 300px; }
  .aggregation-select md-select-menu md-content {
    max-height: 300px; }

.metric-select md-select-menu {
  max-height: 350px; }
  .metric-select md-select-menu md-content {
    max-height: 350px; }

.response-result-content {
  margin-left: 8px;
  padding: 2px; }

.error-content {
  background-color: rgba(255, 0, 0, 0.3);
  border: 1px solid red;
  color: red; }

.success-content {
  background-color: rgba(0, 138, 114, 0.3);
  border: 1px solid green;
  color: green; }

.report-type-container {
  margin-left: 8px; }
