body {
    margin: 0;
    background:url('/images/thrive-bg.png') repeat center top;
    font-family: 'Source Sans Pro', sans-serif;
}

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

th {
    color: #043999;
    cursor: pointer;
}

td {
    border: solid 1px #000000;
    padding: 2px;
}

.no-display {
    display: none;
}

table.comments {
    margin-top: 10px;
    float: right;
    width: 75%;
    border-collapse: separate;
    border-spacing: 10px;
}
table.comments tr:nth-child(even) {
    background-color: #FFEBC7;
}
table.comments td.active {
    background-color: #96B7FF;
}
table.comments td {
    cursor: pointer;
    padding: 5px;
    background-color: #FFEBC7;
}

tr.total {
    background-color: #CBCFFF;
    font-weight: bold;
}

tr.max-hidden {
    display: none;
}

tr.max-hidden.show {
    display: table-row;
}

#table-details td {
    text-align: center;
}

#table-historical-shift-efficiency td:not(:nth-child(1)) {
    text-align: center;
}

#shift-table-details td:nth-child(5) {
    text-align: center;
}

#planned-downtime-detail td:nth-child(5) {
    text-align: center;
}

button.hint {
    position: absolute;
    right: 10px;
    top: 10px;
}

#controls {
    width: 100%;
    min-height: 50px;
    line-height: 50px;
    background-color: #363636;
    color: white;
}
#controls input[type="text"] {
    width: 160px;
    text-align: center;
    color: #4680E3;
    font-size: 15px;
    padding: 5px 8px;
}
#controls input[type="submit"], .action-button {
    background-color: #4784F7;
    color: white;
    border: none;
    margin-left: 10px;
    padding: 8px 15px;
}
#controls input[type="submit"]:hover, .action-button:hover {
    cursor: pointer;
    background-color: #215bc3;
}
#nav {
    width: 100%;
    background-color: rgba(230, 230, 230, 0.5);
    margin-bottom: 30px;
}
.wrapper {
    width: 1000px;
    margin: 0 auto;
}
.downtime {
    color: yellow;
    font-weight: bold;
    font-size: 150%;
}
#controls .left {
    float: left;
    width: 79%;
}
#controls .left select {
    max-width: 375px;
    height: 31px;
    margin-left: 10px;
}
#controls .right {
    float: left;
    width: 21%;
    height: inherit;
    text-align: right;
}
#controls label + label {
    margin-left: 10px;
}
.logout {
    position: absolute;
    right: 0;
    top: 0;
    line-height: 50px;
    height: 50px;
    margin-right: 10px;
    color: #000;
}
.logout button {
    height: 31px;
}
#logo {
    margin-top: 14px;
}
#nav .left {
    width: 24%;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
}
#nav .right {
    box-sizing: border-box;
    display: inline-block;
    width: 75%;
    height: 94px;
    padding: 0;
}
#nav .right > ul {
    background-color: #73BF43;
    margin: 0;
}
#nav select {
    display: none;
}
#nav ul {
    display: block;
    margin: 0 10px;
    padding: 0;
}
#nav li {
    list-style-type: none;
    display: inline-block;
    height: 100%;
}
#nav li a {
    display: inline-block;
    color: #ffffff;
    padding: 0 25px;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    line-height: 43px;
}
#nav li:hover {
    background-color: #56AF20;
}
#nav li.active {
    background-color: #4AA313;
}
#nav .submenu.active {
    display: block;
    background-color:#4681F1;
}
#nav .submenu.active button {
    color: #fff;
    background-color: #4681F1;
    width: 70px;
    margin-right: 5px;
    padding: 5px;
}
#nav .submenu {
    display: none;
    border-top: 2px solid #FFFFFF;
    min-height: 50px;
    line-height: 50px;
    padding-left: 8px;
    padding-right: 8px;
}
#nav .submenu a {
    box-sizing: border-box;
    padding: 5px 10px;
    color: #ffffff;
    text-decoration: none;
}
#nav .submenu a:hover {
    background-color: #215BC3;
}
#nav .submenu a.active {
    background-color: #043999;
}
ul.tabs {
    display: none;
    padding: 0;
    margin-bottom: 25px;
}
.tabs li {
    cursor: pointer;
    list-style-type: none;
    display: inline;
    background-color: #4784F7;
    padding: 5px 15px;
    color: white;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.tabs li.active {
    padding-bottom: 2px;
    border-bottom: 3px solid #033999;
}
.chart {
    text-align: center;
    width: 48%;
    min-height: 350px;
    font-weight: bold;
    float: left;
}
.chart.spacer {
    width: 4%;
    height: 300px;
}
.chart.full {
    width: 100%;
    float: none;
    clear: both;
}
.chart .header {
    height: 40px;
    line-height: 40px;
}
.chart .footer {
    font-size: 11px;
    height: 40px;
    line-height: 40px;
    background-color: #999999;
}
#main {
    padding-bottom: 10px;
}

#footer {
    background-color: #73BF43;
    min-height: 60px;
    width: 100%;
    color: #ffffff;
    line-height: 20px;
    clear: both;
}

#footer .wrapper {
    text-align: center;
    font-size: 12px;
}

#footer a {
    color: #ffffff;
}

#footer .wrapper > span {
    display: inline-block;
}

#footer .wrapper > span:first-child {
    padding-top: 30px;
}

#footer .wrapper > span:last-child {
    padding-bottom: 30px;
}

.day-selector {
    margin-bottom: 20px;
}

.day-selector button {
    padding: 10px 20px;
    font-size: 20px;
}

.day-selector button.active {
    border: 3px solid black;
}

body > .sweet-alert > p {
    text-align: left;
    padding-left: 25px;
}

.coming-soon {
    background: url('/images/dashboard-coming-soon.png') no-repeat 50%, center;
    width: 100%;
    height: 300px;
}

#downtime-label button.hint {
    right: -30px;
    top: 6px;
}

.jBox-content button {
    font-size: 20px;
}

.jBox-content h3 {
    margin-top: 0;
}

@media (max-width: 1000px) {
    .wrapper {
        width: 100%;
    }
    #controls .left, #controls .right {
        width: 100%;
        float: none;
        clear: both;
        text-align: center;
    }
    #controls .left label {
        width: 50%;
        margin: 0;
    }
    .logout {
        display: block;
        clear: both;
        top: inherit;
        margin: 0;
    }
    #nav .left {
        width: 100%;
        text-align: center;
    }
    #nav .right {
        width: 100%;
        margin-bottom: 15px;
    }
    #downtime-label button.hint {
        position: static;
        margin-left: 10px;
    }
    .chart {
        width: 100%;
        overflow-x: hidden;
    }
    .chart.spacer {
        height: 0;
        min-height: 0;
    }
    #footer .wrapper {
        text-align: center;
    }
    #footer {
        clear: both;
    }
}


@media (max-width: 800px) {
    #controls .left label {
        width: 50%;
        float: left;
        display: block;
    }
    #nav select {
        display: block;
        font-size: 16px;
        text-align: center;
        width: 100%;
    }
    #nav ul select {
        margin-top: 10px;
        font-size: 20px;
    }
    #nav li, #nav a {
        display: none;
    }
    #nav .submenu > select {
        margin-top: 15px;
    }
}

@media (max-width: 600px) {
    #controls .left label {
        width: 100%;
        display: block;
    }
}

body.has-margin {
    margin: 30px;
}
.dashboard .vue-grid-item {
    background: #f0f0f008 !important;
}
.link {
    cursor: pointer;
    text-decoration: underline;
    text-decoration-line: underline;
    text-decoration-style: initial;
    text-decoration-color: initial;
    color: blue;
}
