/* Helvetica Neue */

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-Thin.eot');
    src: url('../fonts/HelveticaNeue-Thin.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-Thin.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-Thin.woff') format('woff'),
    url('../fonts/HelveticaNeue-Thin.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-Thin.svg#../fonts/HelveticaNeue-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-Medium.eot');
    src: url('../fonts/HelveticaNeue-Medium.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-Medium.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-Medium.woff') format('woff'),
    url('../fonts/HelveticaNeue-Medium.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-Medium.svg#../fonts/HelveticaNeue-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-Italic.eot');
    src: url('../fonts/HelveticaNeue-Italic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-Italic.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-Italic.woff') format('woff'),
    url('../fonts/HelveticaNeue-Italic.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-Italic.svg#../fonts/HelveticaNeue-Italic') format('svg');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-CondensedBlack.eot');
    src: url('../fonts/HelveticaNeue-CondensedBlack.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-CondensedBlack.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-CondensedBlack.woff') format('woff'),
    url('../fonts/HelveticaNeue-CondensedBlack.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-CondensedBlack.svg#../fonts/HelveticaNeue-CondensedBlack') format('svg');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-LightItalic.eot');
    src: url('../fonts/HelveticaNeue-LightItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-LightItalic.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-LightItalic.woff') format('woff'),
    url('../fonts/HelveticaNeue-LightItalic.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-LightItalic.svg#../fonts/HelveticaNeue-LightItalic') format('svg');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-Bold.eot');
    src: url('../fonts/HelveticaNeue-Bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-Bold.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-Bold.woff') format('woff'),
    url('../fonts/HelveticaNeue-Bold.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-Bold.svg#../fonts/HelveticaNeue-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-MediumItalic.eot');
    src: url('../fonts/HelveticaNeue-MediumItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-MediumItalic.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-MediumItalic.woff') format('woff'),
    url('../fonts/HelveticaNeue-MediumItalic.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-MediumItalic.svg#../fonts/HelveticaNeue-MediumItalic') format('svg');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue.eot');
    src: url('../fonts/HelveticaNeue.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue.woff2') format('woff2'),
    url('../fonts/HelveticaNeue.woff') format('woff'),
    url('../fonts/HelveticaNeue.ttf') format('truetype'),
    url('../fonts/HelveticaNeue.svg#../fonts/HelveticaNeue') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-CondensedBold.eot');
    src: url('../fonts/HelveticaNeue-CondensedBold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-CondensedBold.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-CondensedBold.woff') format('woff'),
    url('../fonts/HelveticaNeue-CondensedBold.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-CondensedBold.svg#../fonts/HelveticaNeue-CondensedBold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-Light.eot');
    src: url('../fonts/HelveticaNeue-Light.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-Light.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-Light.woff') format('woff'),
    url('../fonts/HelveticaNeue-Light.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-Light.svg#../fonts/HelveticaNeue-Light') format('svg');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-UltraLight.eot');
    src: url('../fonts/HelveticaNeue-UltraLight.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-UltraLight.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-UltraLight.woff') format('woff'),
    url('../fonts/HelveticaNeue-UltraLight.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-UltraLight.svg#../fonts/HelveticaNeue-UltraLight') format('svg');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-BoldItalic.eot');
    src: url('../fonts/HelveticaNeue-BoldItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-BoldItalic.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-BoldItalic.woff') format('woff'),
    url('../fonts/HelveticaNeue-BoldItalic.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-BoldItalic.svg#../fonts/HelveticaNeue-BoldItalic') format('svg');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-UltraLightItalic.eot');
    src: url('../fonts/HelveticaNeue-UltraLightItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-UltraLightItalic.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-UltraLightItalic.woff') format('woff'),
    url('../fonts/HelveticaNeue-UltraLightItalic.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-UltraLightItalic.svg#../fonts/HelveticaNeue-UltraLightItalic') format('svg');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/HelveticaNeue-ThinItalic.eot');
    src: url('../fonts/HelveticaNeue-ThinItalic.eot?#iefix') format('embedded-opentype'),
    url('../fonts/HelveticaNeue-ThinItalic.woff2') format('woff2'),
    url('../fonts/HelveticaNeue-ThinItalic.woff') format('woff'),
    url('../fonts/HelveticaNeue-ThinItalic.ttf') format('truetype'),
    url('../fonts/HelveticaNeue-ThinItalic.svg#../fonts/HelveticaNeue-ThinItalic') format('svg');
    font-weight: 100;
    font-style: italic;
}

.navbar-collapse.collapse {
    /*display: block !important;*/
}

.navbar-nav > li {
    float: left !important;
}

.navbar-nav {
    float: right;
}

.navbar-nav.navbar-right:last-child {
    margin-right: -15px !important;
}

.navbar-right {
    float: right !important;
}

html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    sans-serif;
    font-style: normal;
    font-variant: normal;
    font-weight: 500;
    line-height: 26.4px;
    letter-spacing: 1px;
}

.navbar-default.navbar-fixed-top {
    background-color: #17547f;
    background-image: none;
    border: none;
}

/*.navbar-default.navbar-fixed-top ul.navbar-nav li {*/
/*padding: 29px 15px 18px;*/
/*}*/

.navbar-default.navbar-fixed-top ul.navbar-nav li a {
    font-weight: 500;
    font-stretch: normal;
    color: #ffffff;
    background: none;
    padding: 20px 17px;
    box-shadow: none;
    /*border-bottom: 1px solid rgba(255, 255, 255, 0.6);*/
}

.navbar-default.navbar-fixed-top .navbar-nav > li > a:focus,
.navbar-default.navbar-fixed-top .navbar-nav > li > a:hover,
.navbar-default.navbar-fixed-top .dropdown-menu > li > a:focus,
.navbar-default.navbar-fixed-top .dropdown-menu > li > a:hover {
    opacity: 0.6;
}

.navbar-default.navbar-fixed-top .navbar-nav > .active > a,
.navbar-default.navbar-fixed-top .dropdown-menu > .active > a {
    opacity: 0.6;
}

.navbar-default.navbar-fixed-top .navbar-nav > .active > a:focus,
.navbar-default.navbar-fixed-top .navbar-nav > .active > a:hover,
.navbar-default.navbar-fixed-top .dropdown-menu > .active > a:focus,
.navbar-default.navbar-fixed-top .dropdown-menu > .active > a:hover {
    background: none;
    color: #fff;
}

.mm-logo-header {
    width: 36px;
    height: 47px;
    float: left;
    margin: 6px 23px;
}

.mm-logo-header a {
    display: block;
}

.mm-logo-header a:focus,
.mm-logo-header a:hover {
    opacity: 0.6;
}

.mm-logout img {
    opacity: 0.6;
}

.dropdown-menu {
    background: #17547f;
    color: #fff;
}

.navbar .top-search-form {
    padding: 0 17px;
}

.navbar .top-search-form input {
    width: 166px;
    height: 27px;
    border-radius: 4px;
    background-color: rgba(248, 248, 248, 0.05);
    border: solid 1px rgba(211, 211, 211, 0.3);
    font-size: 14px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    letter-spacing: -0.3px;
    color: rgba(255, 255, 255, 0.43);
}

#routes-list,
#busstop-list,
#trackers-history-list {
    padding: 30px 40px;
}

#routes-list table,
#busstop-list table,
.company-container table,
.parameters-content table,
.trackerstable-list table {
    color: #646464;
}

#routes-list tr.row-header th,
#busstop-list tr.row-header th,
.company-container tr.row-header th,
.parameters-content tr.row-header th,
.trackerstable-list tr.row-header th {
    font-size: 12px;
    border-top: 0;
    border-bottom: 2px solid #d9d9d9;
}

#routes-list tr.row-header th a,
#busstop-list tr.row-header th a,
.company-container tr.row-header th a {
    color: #646464;
}

#routes-list tr.row-header th span,
#busstop-list tr.row-header th span,
.company-container tr.row-header th span {
    color: #aaaaaa;
    font-size: 10px;
}

#routes-list tr td,
#busstop-list tr td,
.company-container tr td,
.parameters-content tr td,
.trackerstable-list tr td {
    border-top: 0;
}

#routes-list tr,
#busstop-list tr,
.company-container tr,
.parameters-content tr,
.trackerstable-list tr {
    border-bottom: 1px solid #d9d9d9;
}

tr.admin-route-list-item td {
    font-size: 14px;
}

#routes-list .table-button,
#busstop-list .table-button,
.company-container .table-button,
.city-container .table-button,
.parameters-content .table-button {
    width: 20px;
    height: 20px;
    color: #646464;
    font-size: 16px;
    margin: 5px;
}

#routes-list .table-button:focus,
#routes-list .table-button:hover,
#busstop-list .table-button:focus,
#busstop-list .table-button:hover,
.company-container .table-button:focus,
.company-container .table-button:hover,
.city-container .table-button:focus,
.city-container .table-button:hover,
.parameters-content .table-button:focus,
.parameters-content .table-button:hover {
    text-decoration: none;
    opacity: 0.7;
}

#routes-list .route-radio {
    width: 18px;
    height: 18px;
    border: solid 1px #dedede;
    outline: none;
}

#routes-list .table-radio-btn,
#trackers-history-list .table-radio-btn {
    width: 18px;
    height: 18px;
    border: solid 1px #dedede;
    border-radius: 50%;
    background-image: radial-gradient(circle at 50% 70%, #ffffff, #fdfdfd, #eaeaea);
    display: block;
    padding: 3px;
}

#routes-list .radio-check .table-radio-btn,
#trackers-history-list .radio-check .table-radio-btn {
    background: #2274af;
}

#routes-list .table-radio-btn-check,
#trackers-history-list .table-radio-btn-check {
    display: block;
    width: 10px;
    height: 10px;
    border: solid 1px #2274af;
    border-radius: 50%;
    background-image: radial-gradient(circle at 50% 70%, #ffffff, #fdfdfd, #eaeaea);
    opacity: 0;
}

#routes-list .radio-check .table-radio-btn-check,
#trackers-history-list .radio-check .table-radio-btn-check {
    opacity: 1;
}

.busstop-list .search-form {
    position: relative;
}

.busstop-list .search-field {
    width: 100%;
    height: 35px;
    padding: 9px 53px 9px 9px;
    border-radius: 3px;
    background-color: #fbfbfb;
    border: solid 1px #bebebe;
    font-size: 14px;
    line-height: 14px;
    color: #aaaaaa;
}

#busstop-list form button {
    position: absolute;
    right: 0;
    top: 0;
    bottom: auto;
    left: auto;
    z-index: 1;
    width: 44px;
    height: 35px;
    border-radius: 0 3px 3px 0;
    background: #2274af;
    border: 0;
    outline: none;
    color: #ffffff;
    font-size: 18px;
    text-shadow: none;
}

#busstop-list form button:hover {
    opacity: 0.7;
}

#routes-list .bottom-action {
    text-align: right;
}

#routes-list .bottom-action a {
    font-size: 12px;
    font-weight: 500;
    color: #2274af;
}

#routes-list .bottom-action a:focus,
#routes-list .bottom-action a:hover {
    text-decoration: none;
    color: #2274af;
    opacity: 0.7;
}

.hide-hidden .hidden-route {
    display: none;
}

.show-hidden .hidden-route {
    display: table-row;
}

#routes-list .bottom-action .hide-hidden {
    display: none;
}

.pagination > li > a,
.pagination > li > span {
    color: #2274af;
    border-color: #e4e4e4;
}

.pagination > li > a:focus,
.pagination > li > a:hover,
.pagination > li > span:focus,
.pagination > li > span:hover {
    background-color: #2274af;
    border: solid 1px #2274af;
    color: #ffffff;
}

.pagination > .disabled > a,
.pagination > .disabled > a:focus,
.pagination > .disabled > a:hover,
.pagination > .disabled > span,
.pagination > .disabled > span:focus,
.pagination > .disabled > span:hover {
    background-color: #2274af;
    border: solid 1px #2274af;
    color: #ffffff;
}

.stats-wrapper {
    padding-left: 35px;
}

.stats-wrapper h2,
.header-wrapper h2 {
    font-size: 24px;
    color: #464646;
}

.stats-wrapper .sub-header {
    margin: 0;
    font-size: 18px;
    color: #646464;
}

.period-buttons {
    width: 302px;
    height: 32px;
    margin: 20px auto 15px;
    background: #ffffff;
    border: solid 1px #aaaaaa;
    border-radius: 4px;
    overflow: hidden;
}

.period-buttons .btn {
    float: left;
    width: 100px;
    height: 30px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: #ffffff;
    outline: none;
    font-size: 14px;
    text-align: center;
    color: #646464;
    text-shadow: none;
}

.period-buttons .btn:focus,
.period-buttons .btn:hover {
    background: #aaaaaa;
    color: #ffffff;
}

.btn.three-days {
    border-left: 1px solid #aaaaaa;
    border-right: 1px solid #aaaaaa;
}

.chart-table-wrapper {
    padding: 20px 0;
}

#mapa,
#map {
    min-height: 100px;
    height: 100%;
}

.clear-fix {
    clear: both;
}

#display {
    z-index: 2;
    position: absolute;
    width: 150px;
    min-height: 100px;
    background-color: goldenrod;
    padding: 5px;
    margin: 5px;
    right: 0px;
}

.button {
    cursor: pointer;
    border: 1px solid yellow;
}

.content {
    /*margin-left: 10px;*/
    margin-right: 10px;
    padding-top: 78px;
    padding-bottom: 10px;
}

.content.admin {
    height: 100%;
}

.variables-list .value {
    margin-bottom: 10px;
    font-weight: bold;
}

.margin-left-5 {
    margin-left: 5px;
}

.margin-bottom-5 {
    margin-bottom: 10px;
}

.delete-form-pupper {
    position: relative;
    top: -49px;
}

.cursor-pointer {
    cursor: pointer;
}

.gray-hover:hover {
    background-color: #efefef;
}

.alice-blue-hover:hover {
    background-color: #f1f5f8;
}

.alice-hover-disable {
    opacity: 0.3;
}

.tracker-item {
    height: 30px;
    margin: 5px;
}

.header-title {
    margin-top: 15px;
    color: #4f4f4f;
    font-size: 16px;
    font-weight: 200;
    text-align: center;
}

.company-tracker-item {
    cursor: pointer;
    margin: 15.2px 13.5px;
    float: left;
    /*display: inline-block;*/
    width: 165px;
    height: 165px;
    background: #60a1d0; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(#60a1d0, #3d87bc); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(#60a1d0, #3d87bc); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(#60a1d0, #3d87bc); /* For Firefox 3.6 to 15 */
    background: linear-gradient(#60a1d0, #3d87bc); /* Standard syntax */
    box-shadow: 1px 2px 1px #417698;
    border-radius: 5px;
    color: #ffffff;
    text-shadow: 1px 1px 2px #397eb0;
}

.company-tracker-item:hover {
    opacity: 0.7;
}

.company-tracker-item .transport-number {
    font-size: 37px;
    width: 100%;
    text-align: center;
    margin-top: 42px;
    height: 26px;
    margin-bottom: 27px;
    font-weight: 200;
    letter-spacing: 1px;
}

.company-tracker-item .separator-dash {
    width: 55px;
    margin: 0 auto;
    border-bottom: 1px solid white;
}

.company-tracker-item .route-dispay {
    height: 70px;
}

.company-tracker-item .transport-route {
    font-size: 30px;
    width: 100%;
    margin-top: 12px;
    margin-bottom: 10px;
    text-align: center;
    height: 13px;
    font-weight: 400;
}

.company-tracker-item .transport-route-label {
    font-weight: 200;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 12px;
    width: 100%;
    opacity: 0.6;
    text-align: center;
    height: 12px;

}

.form {
    max-width: 900px;
    margin: 0 auto;
}

@media only screen and (max-device-width: 480px) {

    .desktop-text {
        display: none;
    }

}

#routes-list,
#trackers-history-list {
    overflow: scroll;
    min-height: 100%;
    height: 100%;
}

.stop-item-vindow .stop-title {
    font-weight: bold;
    font-size: 15px;
    margin-bottom: 8px;
}

.stop-item-vindow .route-title {
    font-weight: bold;
    margin-top: 8px;
}

.stop-item-vindow small {
    font-size: 10px;
}

.bus-item-popup {
    border-radius: 50px;
    margin: 25px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.bus-item-popup td {
    vertical-align: top;
    max-width: 250px;
}
.bus-id{
    font-weight: bold;
    font-size: 12pt;
}
.bus-item-popup a{
    text-decoration: underline;
}
.bus-item-popup table td:last-of-type {
    padding-left: 20px;
}

.bus-item-popup td > div{
    color: grey;
    font-size: 7pt;
    margin-top: 20px;
    font-weight: bold;
}
.bus-item-popup td > div div{
    margin-top: 3px;
    font-weight: 500;
    color: #000;
    font-size: 10pt;
}


.map-time-display{
    color: white;
    position: absolute;
    font-size: 48px;
    text-align: center;
    top: 80px;
    line-height: 70px;
    right: 20px;
    z-index: 2;
    width: 160px;
    height: 70px;
    border-radius: 6px;
    background-color: rgba(0,0,0,0.5);
}

.time-table .day {
    vertical-align: top;
    padding-right: 10px;
}

/*!** Styles for TIMESERIES *!*/

/*.circ {*/
/*fill: #60A1D0;*/
/*height: 15px;*/
/*width: 15px;*/
/*border-radius: 50%;*/
/*}*/

/*.tick a {*/
/*font-size: 14px;*/
/*font-weight: normal;*/
/*color: #646464;*/
/*}*/

/*.tick line {*/
/*stroke: #d5d5d5;*/
/*opacity: 0.7;*/
/*}*/

/*.bubble {*/
/*position: relative;*/
/*z-index: 100;*/
/*}*/

/*.tt-text {*/
/*font-size: 14px;*/
/*font-weight: normal;*/
/*color: #646464;*/
/*}*/

/*td .charts svg {*/
/*padding: 0;*/
/*margin: 0;*/
/*font-size: 5px !important;*/
/*line-height: 1px;*/
/*}*/

/*td .charts svg g {*/
/*line-height: 1 !important;*/
/*}*/

/*.week-day-6,*/
/*.week-day-7 {*/
/*background-color: rgba(127, 170, 0, 0.11);*/
/*}*/

#trackers-list {
    outline-width: 0;
    border: 0;
    position: absolute;
    z-index: 1;
    right: 11px;
    height: 100%;
    background-color: transparent;
    color: darkcyan;
}

.webglmap {
    box-sizing: border-box;
    padding: 0 !important;
}

#debug-display {
    padding: 3px;
    text-align: right;
    background-color: green;
    position: absolute;
    z-index: 1;
    right: 11px;
}

.search-form input {
    border-color: #ddd;
    border-width: 1px;
    border-style: solid;
    outline-width: 0;
}

.company-login-image-logo {
    background-image: url("../img/logo_login.svg");
    height: 152px;
    background-repeat: no-repeat;
    background-position: center center;
    margin-bottom: 30px;
}

.container.company .back-button {
    display: inline-block;
    height: 60px;
    line-height: 60px;
}

.navbar-fixed-bottom .navbar-inner > a {
    display: inline-block;
    line-height: 50px;
    height: 50px;
    padding-left: 15px;
    padding-right: 15px;
}

/* specially for nomi tablet */
@media only screen
and (min-device-width: 1024px)
and (max-device-width: 1024px)
and (min-device-height: 552px)
and (max-device-height: 552px), only screen
and (min-device-width: 600px)
and (max-device-width: 600px)
and (min-device-height: 976px)
and (max-device-height: 976px) {
    body {
        padding-top: 20px;
        /*background-color: lightgoldenrodyellow !important;*/
    }

    .container.company .navbar.navbar-fixed-top {
        padding-top: 20px;
        height: 80px;
        background-position: center 35px;
    }

    .content.login {
        margin-top: -20px !important;
    }
}

.container.company .top-search-form label {
    padding-bottom: 20px;
}

.container.company .top-search-form {
    margin-top: 15px;
    margin-right: 0;
}

.container.company .top-search-form input {
    height: 29px;
    width: 130px;
    font-weight: 100;
    font-size: 13px;
    letter-spacing: 1px;
    padding-left: 10px;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    border-right-width: 0px;
}

.container.company .top-search-form .search-button {
    background-image: url("../img/search_icon.svg");
    background-repeat: no-repeat;
    background-position: center center;
    width: 29px;
    height: 29px;
    border: none;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    float: right;
    background-color: #A6BE65;
    outline-width: 0;
}

.company-tracker-item.offline {
    background: #AAAAAA; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(#AAAAAA, #717171); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(#AAAAAA, #717171); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(#AAAAAA, #717171); /* For Firefox 3.6 to 15 */
    background: linear-gradient(#AAAAAA, #717171); /* Standard syntax */
}

.company-tracker-item.offline .transport-route {
    font-size: 18pt;
}

.login-form {
    margin-left: auto;
    margin-right: auto;
    width: 300px;
    color: #4f4f4f;
}

.login-form .form-group input[type="password"],
.login-form .form-group input[type="text"] {
    padding: 4px 15px;
    border-color: #3880BB;
    font-size: 16px;
    outline-width: 0;
}

.login-form .btn-green, .login-form .form-group input[type="submit"] {
    margin-top: 8px;
    background-color: #A6BE65;
    font-size: 18px;
    color: white;
    font-weight: bold;
    border-color: cadetblue;
    height: 40px;
    border: none;
    outline-width: 0;
}

.login-form .btn-green{
    width: 100%;
}

.login-form .tip{
    text-align: center;
    color: #fff;
}

/*.login-form .forget_password{*/
/*text-align: center;*/
/*display: block;*/
/*margin: 20px auto;*/
/*color: #FFFFFF;*/
/*text-decoration: underline;*/
/*}*/

.form-control {
    letter-spacing: 1px;
}

.content.login {
    margin: 0;
    background-color: #60a1d0;
    height: 100%;
    width: 100%;
    display: table;
    position: absolute;
    padding-top: 0px;
    padding-bottom: 0px;
}

.content.login .form-control {
    height: 40px;
}

.content.login .form-group {
    margin-bottom: 5px;
}

.container.company .navbar {
    height: 78px;
    padding: 10px 0;
    /*background-image: url("../img/logo_header.svg");*/
    background-repeat: no-repeat;
    background-position: center center;
}

.content.company {
    margin-bottom: 50px;
}

.content.company .tracker-items-list {
    margin: 0 auto;
    /*text-align: center;*/
}

/* width: 192 * n */
@media (min-width: 192px) {
    .tracker-items-list {
        width: 192px;
    }
}

@media (min-width: 384px) {
    .tracker-items-list {
        width: 384px;
    }
}

@media (min-width: 576px) {
    .tracker-items-list {
        width: 576px;
    }
}

@media (min-width: 768px) {
    .tracker-items-list {
        width: 768px;
    }

    #tracker-change-route-modal .modal-content {
        width: calc(100% - 200px);
    }
}

@media (min-width: 960px) {
    .tracker-items-list {
        width: 960px;
    }

    #tracker-change-route-modal .modal-content {
        width: 768px;
    }
}

@media (min-width: 1152px) {
    .tracker-items-list {
        width: 1152px;
    }
}

@media (min-width: 1344px) {
    .tracker-items-list {
        width: 1344px;
    }
}

@media (min-width: 1536px) {
    .tracker-items-list {
        width: 1536px;
    }
}

@media (min-width: 1728px) {
    .tracker-items-list {
        width: 1728px;
    }
}

@media (min-width: 1950px) {
    .tracker-items-list {
        width: 1920px;
    }
}

.navbar-fixed-bottom {
    height: 50px;
    border-top: 1px solid #dcdcdc;
    background-color: #ebebeb;
    /*background-image: url("../img/logo_footer.svg");*/
    background-repeat: no-repeat;
    background-position: center center;

}

#routes-list .admin-route-list-item.hidden-route {
    opacity: 0.3;
}

#busstop-list .hidden-busstop {
    opacity: 0.3;
}

.my-icon {
    background-repeat: no-repeat;
    background-position: center center;
    display: inline-block;
    width: 14px;
    height: 14px;
}

.up-icon {
    background-image: url("../img/up_icon.svg");
}

.refresh-icon {
    background-image: url("../img/refresh_icon.svg");
    top: 2px;
    position: relative;
}

.exit-icon {
    background-image: url("../img/logout_icon.svg");
}

#tracker-change-route-modal .modal-content {
    width: 570px;
}

#tracker-confirm-route-modal .modal-content {
    width: 500px;
}

#tracker-change-route-modal .modal-body {
    width: calc(100% - 68px);
    margin: 0 auto;
}

.modal-header-title {
    font-size: 18px;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0px;
    margin-top: 21px;
}

#tracker-change-route-modal .switch-buttons {
    margin-top: 24px;
    text-align: center;
}

#tracker-change-route-modal .switch-buttons span {
    line-height: 50px;
}

.change-route-button {
    width: 200px;
    height: 50px;
    font-size: 18px;
    font-weight: 600;
    font-style: normal;
    font-stretch: normal;
    text-align: center;
    color: #ffffff;
    background-color: #478ec1;
    border: none;
    border-radius: 4px;
}

.change-route-button.cancel {
    background-color: transparent;
    color: #fc9380;
    text-decoration: underline;
}

.change-route-button.success {
    background-color: #A6BE66;
}

#tracker-change-route-modal .modal-body .list-group {
    margin-top: 17px;
    max-height: 300px;
    overflow-y: scroll;
    border: 1px solid #ddd;
}

#tracker-change-route-modal .modal-body .list-group-item {
    font-size: 18px;
    height: 51px;
    margin-bottom: 0;
    background-color: #F5F5F5;
    padding: 0;
    line-height: 51px;
    border: none;
    border-bottom: 1px solid #ddd;

}

#tracker-change-route-modal .modal-body .list-group-item:last-child {
    border: none;
}

#tracker-change-route-modal .modal-body .list-group-item .route-item-wrapper {
    height: 51px;
    line-height: 51px;
    overflow: hidden;

}

#tracker-change-route-modal .modal-body .list-group-item .route-sid {
    font-size: 24px;
    font-weight: 600;
    width: 78px;
    text-align: right;
    display: inline-block;
    height: 100%;
    float: left;
}

#tracker-change-route-modal .modal-body .list-group-item .route-title {
    font-weight: 500;
    font-size: 18px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
    padding-left: 9px;
    /*width: 355px;*/
    width: calc(100% - 78px);
    height: 100%;
}

#tracker-change-route-modal .modal-body .list-group-item.current {
    color: #fff;
    background-color: #478ec1;
}

.modal-dialog button.close {
    background-image: url("../img/close_icon.svg");
    background-repeat: no-repeat;
    background-position: center center;
    width: 20px;
    height: 20px;
    margin-right: 12px;
    margin-top: 16px;
    opacity: 1;

}

#tracker-confirm-route-modal .modal-header-title {
    font-size: 24px;
    line-height: 33px;
}

#tracker-confirm-route-modal .modal-dialog button.close {
    margin-right: 0px;
    margin-top: 0px;
}

#tracker-confirm-route-modal .buttons {
    margin-top: 40px;
}

#tracker-change-route-modal .route-item {
    cursor: pointer;
}

.vertical-alignment-helper {
    display: table;
    height: 100%;
    width: 100%;
    pointer-events: none; /* This makes sure that we can still click outside of the modal to close it */
}

.vertical-align-center {
    /* To center vertically */
    display: table-cell;
    vertical-align: middle;
    pointer-events: none;
}

.modal-content {
    /* Bootstrap sets the size of the modal in the modal-dialog class, we need to inherit it */
    width: inherit;
    height: inherit;
    /* To center horizontally */
    margin: 0 auto;
    pointer-events: all;
}

.content-middle {
    display: table-cell;
    vertical-align: middle;
    padding-bottom: 190px;
}

.nav-usertitle {
    width: 370px;
    margin: 0 auto;
}

.nav-usertitle .navbar-brand {
    color: #979797;
    font-size: 14px;
    text-align: center;
    width: 100%;
}

.vodafone-info {
    /*border: 1px solid black;*/
}

.vodafone-info .hierarchy-path,
.vodafone-info .header {
    display: none;
}

.vodafone-info .header .tab-control {
    list-style: none;
    padding: 0px;
}

.vodafone-info .header .tab-strip {
    clear: both;
}

.vodafone-info .header .tab-control li {
    float: left;
    margin: 5px;
}

.vodafone-info .services-list li div.service-name {
    display: inline-block;
    width: 230px;
    font-size: 12px;
}

.vodafone-info td.label {
    color: black;
}

.vodafone-info .tab-content {
    margin-top: 10px;
    /*border: 1px solid black;*/
}

.vodafone-info .services-list li div.service-price {
    display: inline-block;
    width: 230px;
    font-size: 12px;
}

.no-padding-height-100 {
    padding-left: 0px;
    padding-right: 0px;
    height: 100%;
}

.history-progress-bar {
    position: relative;
    height: 60px;
}

.history-progress-bar-display,
.history-progress-bar-navigator {
    margin: 1px;
    position: absolute;
    border-bottom: 2px dashed #2274af;
    height: 27px;
    /*z-index: 1;*/
    width: 100%;
}

.history-progress-bar-navigator {
    z-index: 2;
}

.history-progress-bar .history-progress-bar-display .progress-bar-time-item {
    display: inline-block;
    width: 50px;
    height: 100%;
    text-align: center;
    position: absolute;
    /*border-left: 1px solid #0000FF;*/
    /*opacity: 0.5;*/
    z-index: 3;
    top: 27px;
    font-size: 14px;
    font-weight: normal;
    color: #646464;
}

.history-progress-bar .history-progress-bar-display .progress-bar-time-bar-item {
    display: inline-block;
    width: 1px;
    height: 100%;
    position: absolute;
    background-color: #60a1d0;
    opacity: 0.1;
}

.history-progress-bar .history-progress-bar-display .progress-bar-position-item {
    display: inline-block;
    width: 4px;
    cursor: pointer;
    height: 100%;
    position: absolute;
    background-color: #92bb22;
    z-index: 2;
    -webkit-animation: slide 1s forwards;
    -webkit-animation-delay: 2s;
    animation: slide 1s forwards;
}

.history-progress-bar .history-progress-bar-display .progress-bar-position-item:before {
    display: inline-block;
    content: '';
    position: absolute;
    top: -8px;
    text-align: center;
    left: -4px;
    border: 6px solid transparent;
    border-top: 12px solid #92bb22;
    z-index: 2;
}

.progress-bar-time-item .dot {
    display: block;
    width: 6px;
    height: 6px;
    background: #60a1d0;
    border: solid 1px #2274af;
    border-radius: 50%;
    position: absolute;
    top: -4px;
    left: -3px;
    right: auto;
    bottom: auto;
    z-index: 10;
}

.progress-bar-time-item .dot-time {
    position: absolute;
    top: 0;
    left: -19px;
    right: auto;
    bottom: auto;
    z-index: 5;
}

.history-progress-controls {

}

.history-progress-controls #play-pause {
    background-position: center center;
    background-repeat: no-repeat;
    border: 0;
    background-color: #4389BB;
    color: #aaaaaa;
    width: 77px;
    background-size: 12px;
    height: 35px;
    outline-offset: 0;
    outline-width: 0;
    margin: 0 5px;
}

.history-progress-controls .title {
    float: left;
    height: 35px;
    color: #aaaaaa;
    line-height: 35px;
    margin: 0 5px;

}

.history-progress-controls #speed-selector {
    background-position: center center;
    background-repeat: no-repeat;
    border: 1px solid gray;
    border-radius: 5px;
    color: #aaaaaa;
    display: inline-block;
    margin: 0 5px;
    width: 77px;
    height:  35px;
    line-height: 69px;
    outline-offset: 0;
    outline-width: 0;
}

.history-progress-controls #play-pause.play {
    background-image: url("../img/btn_play.svg");
}

.history-progress-controls #play-pause.pause {
    background-image: url("../img/btn_pause.svg");
}

.breadcrumbs {
    font-size: 24px;
    font-weight: normal;
    color: #646464;
}

.breadcrumbs .bread-link {
    font-size: 14px;
    font-weight: 500;
    color: #2274af;
}

.breadcrumbs .bread-link:focus,
.breadcrumbs .bread-link:hover {
    color: #2274af;
    opacity: 0.7;
}

.breadcrumbs .bred-separator {
    font-size: 14px;
}

@media (min-width: 960px) {
    #tracker-change-route-modal .modal-content {
        width: 650px;
    }
}

.pieChartChart-item,
.lineChartChart-item {
    width: 100%;
    height: 500px;
}

.jqstooltip {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.top-map-buttons {
    position: absolute;
    top: 15px;
    left: 127px;
    right: 127px;
    z-index: 10;
    text-align: center;
}

.top-map-buttons .action-buttons button:hover,
.top-map-buttons .action-buttons button:focus,
.top-map-buttons .action-buttons button.active {
    background-color: #2373AE;
    color: white;
    outline-width: 0;
}

.top-map-buttons #all-trackers {
    border-right-color: #FFFFFF !important;
}

.top-map-buttons #undefined-trackers {
    border-left: 1px solid #AAAAAA !important;
}

.top-map-buttons #undefined-trackers.active,
.top-map-buttons #all-trackers.active + #undefined-trackers {
    border-left: 1px solid #FFFFFF !important;
}

.top-map-buttons .action-buttons {
    border-color: #FFFFFF !important;
}

.btn {
    background-image: none;
    background-color: #2274af;
}

/*#company_chooser_company{*/
/*width: 138px;*/
/*border: 0px;*/
/*box-shadow: none;*/
/*text-decoration: underline;*/
/*font-weight: bolder;*/
/*color: #17547f;*/
/*}*/



.spinner-wrapper {
    position: fixed;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: 100;
}

.spinner-wrapper img {
    position: absolute;
    margin-top: -50px;
    margin-left: -50px;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 100px;
}

.embedded-spinner-wrapper {
    z-index: 100;
    position: relative;
}

.embedded-spinner-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
}

.history-date-container {
    padding: 20px 20px 0 30px;
}

/* -----------------------------------------------
* Timeline
* --------------------------------------------- */
.timeline {
    list-style: none;
    padding: 0 10px;
    position: relative;
    font-weight: 300;
    border-right: 7px solid #48a1d0;
}

.bus-timeline {
    list-style: none;
    padding: 0 10px;
    position: relative;
    font-weight: 300;
    border-left: 7px solid #a6be65;
    /*height: 100%;/*/
}

.timeline > li, .bus-timeline > li  {
    position: relative;
    width: 100%;
    float: left;
    clear: left;
}
.timeline > li:before, .timeline > li:after ,
.bus-timeline > li:before, .bus-timeline > li:after {
    content:" ";
    display: table;
}
.timeline > li:after,
.bus-timeline > li:after {
    clear: both;
}
.timeline > li:before, .timeline > li:after,
.bus-timeline > li:before, .bus-timeline > li:after {
    content:" ";
    display: table;
}
.timeline > li:after ,
.bus-timeline > li:after {
    clear: both;
}
.timeline > li > .timeline-panel, .bus-timeline > li > .timeline-panel {
    width: calc(100% - 25px);
    width: -moz-calc(100% - 25px);
    width: -webkit-calc(100% - 25px);
    float: left;
    background: transparent;
    position: relative;
}

.timeline > li > .timeline-dot {
    background-color: #ffffff;
    width: 32px;
    height: 32px;
    text-align: center;
    position: absolute;
    right: -29px;
    z-index: 100;
    border: 8px solid #60a1d0;
    -webkit-border-radius: 500px;
    -moz-border-radius: 500px;
    border-radius: 500px;
}

.bus-timeline .tracker {
    position: absolute;
    top: 0;
    right: 0;
}

.bus-timeline .tracker .timeline-body > p,.bus-timeline .tracker .timeline-body > ul {
    color: #89a04b;
}

.bus-timeline > li > .timeline-tracker-icon {
    width: 32px;
    height: 32px;
    background-color: #ffffff;
    text-align: center;
    position: absolute;
    left: -18px;
    z-index: 100;
    border: 4px solid #a6be65;
    -webkit-border-radius: 500px;
    -moz-border-radius: 500px;
    border-radius: 500px;
}

.timeline > li.timeline-inverted > .timeline-panel {
    float: right;
}
.timeline > li.timeline-inverted > .timeline-panel:before {
    border-left-width: 0;
    border-right-width: 15px;
    left: -15px;
    right: auto;
}
.timeline > li.timeline-inverted > .timeline-panel:after {
    border-left-width: 0;
    border-right-width: 14px;
    left: -14px;
    right: auto;
}
.timeline-badge > a {
    color: #ffffff !important;
}

.timeline-title {
    margin-top: 0;
    color: inherit;
}
.timeline-heading h4 {
    font-weight: 400;
    padding: 0 15px;
    color: #4679bd;
}
.timeline-body > p, .timeline-body > ul {
    text-align: center;
    color: #2274af;
    font-weight: bold;
    line-height: 32px;
    /*padding: 10px 15px;*/
    margin-bottom: 0;
}
.timeline-footer {
    padding: 5px 15px;
    background-color:#f4f4f4;
}
.timeline-footer p { margin-bottom: 0; }
.timeline-footer > a {
    cursor: pointer;
    text-decoration: none;
}
.timeline > li.timeline-inverted {
    float: right;
    clear: right;
}

.timeline > li.timeline-inverted > .timeline-badge a{
    color: #4679bd!important;
}
.timeline > li.timeline-inverted > .timeline-badge {
    left: -12px;
}
.no-float {
    float: none !important;
}

.timeline .sample {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.timeline .sample div{
    background-color: #60a1d0;
    color: #fff;
    padding: 8px;
    border-radius: 7px;
    line-height: 1;
}

.bus-timeline .time{
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
}

.followMeBar {
    position: relative;
    z-index: 1;
    color: #fff;
}

.bus-timeline .fixed {
    position: fixed;
    top: 60px;
    box-sizing: border-box;
    z-index: 0;
}

.bus-timeline .fixed.absolute {
    position: absolute;
}

.bus-timeline .time div{
    background-color: #a6be65;
    color: #fff;
    padding: 8px;
    border-radius: 7px;
    line-height: 1;
}


@media (max-width: 767px) {
    ul.timeline:before {
        left: 40px;
    }
    ul.timeline > li {
        margin-bottom: 0px;
        position: relative;
        width:100%;
        float: left;
        clear: left;
    }
    ul.timeline > li > .timeline-panel {
        width: calc(100% - 65px);
        width: -moz-calc(100% - 65px);
        width: -webkit-calc(100% - 65px);
    }
    ul.timeline > li > .timeline-badge {
        left: 28px;
        margin-left: 0;
        top: 16px;
    }
    ul.timeline > li > .timeline-panel {
        float: right;
    }
    ul.timeline > li > .timeline-panel:before {
        border-left-width: 0;
        border-right-width: 15px;
        left: -15px;
        right: auto;
    }
    ul.timeline > li > .timeline-panel:after {
        border-left-width: 0;
        border-right-width: 14px;
        left: -14px;
        right: auto;
    }
    .timeline > li.timeline-inverted {
        float: left;
        clear: left;
        margin-top: 30px;
        margin-bottom: 30px;
    }
    .timeline > li.timeline-inverted > .timeline-badge {
        left: 28px;
    }
}
