﻿@font-face {
    font-family: elm-serif;
    src: url(../fonts/elm-serif.woff);
}

@font-face {
    font-family: elm-serif;
    src: url(../fonts/elm-serif-bold.woff);
    font-weight: bold;
}

@font-face {
    font-family: elm-sans;
    src: url(../fonts/elm-sans.woff);
}

@font-face {
    font-family: elm-sans;
    src: url(../fonts/elm-sans-bold.woff);
    font-weight: bold;
}

@font-face {
    font-family: elm-sans;
    src: url(../fonts/elm-sans-light.woff);
    font-weight: lighter;
}

@font-face {
    font-family: elm-sans-cond-light;
    src: url(../fonts/elm-sans-cond-light.woff);
    font-weight: lighter;
}

@font-face {
    font-family: elm-sans-cond-light-italic;
    src: url(../fonts/elm-sans-cond-light-italic.woff);
    font-weight: lighter;
    font-style: italic;
}


body {
    margin: 0;
    font-family: elm-sans;
    font-size: 1em;
    letter-spacing: .035em;
    min-width: 100%;
}

h4 {
    font-size: 1.1em;
}

a {
    color: #315363;
}

.saTopNav {
    background: #315363;
    color: #FFF;
    height: 35px;
    padding: 0 8px 0 10px;
    margin-top: auto;
    margin-bottom: auto;
    color: #ccc;
}

    .saTopNav a {
        color: #FFF;
        font-size: .9em;
    }

    .saTopNav sup {
        font-size: .3em;
        line-height: 0;
        vertical-align: 8px;
    }

    .saTopNav .dropdown-item {
        color: #333;
    }

a.saTopNavLogo {
    font-family: elm-serif;
    font-size: 1.15em;
    letter-spacing: 0.8px;
    text-decoration: none;
}

.footer {
    border-top: 1px solid #d0d0d0;
    margin-top: 40px;
    padding: 15px 0px;
}

.debug {
    padding: 15px;
    color: #888;
}

.pagetitle {
    font-size: 26px;
    margin: 0;
    padding: 0;
    padding-top: 6px;
}

.breadcrumb {
    font-size: 13px;
    background: none;
    padding: 0px;
    margin: 0px;
}

.size-h1 {
    font-size: 36px;
}

.size-h2 {
    font-size: 30px;
}

.size-h3 {
    font-size: 24px;
}

.size-h4 {
    font-size: 18px;
}

.size-h5 {
    font-size: 14px;
}

.size-h6 {
    font-size: 12px;
}


.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.absolute-center {
    width: 50%;
    height: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    text-align: center;
    line-height: 1;
}

.no-margin {
    margin: 0;
}

.no-pad {
    padding: 0;
}

.tab-pane-spacer {
    height: 10px;
}

.spacer {
    display: block;
    margin-top: 10px;
    min-height: 10px;
}

.form-group.required .col-form-label:after {
    content: "*";
    color: red;
}

.card-required-messaging:after {
    content: "*";
    color: red;
}

.disabled {
    /* background: #e5e5e5; */
    color: #ccc !important;
    cursor: not-allowed !important;
}

/* expandable/collapsable widget styling */
.toggler {
    padding: 6px;
    border-radius: 3px;
    border: 1px solid #d0d0d0;
    margin-bottom: 12px;
    background: #f5f5f5;
}

    .toggler .toggler-toggle {
        font-size: 85%;
    }

    .toggler .toggler-content {
        padding: 6px 0px;
        display: none;
    }

    .toggler .toggler-content-open {
        display: block;
    }

/* BOOTSTRAP CSS EXTENSIONS */

.progress-bar-muted {
    background-color: #d5d5d5;
}

/* END */

/* BOOTSTRAP BASE CSS OVERRIDES */

.progress {
    margin-bottom: 0px;
}


@media (max-width: 768px) {
    .sa-navbar {
        height: auto;
        position: relative;
    }

        .sa-navbar .navbar-brand {
            text-align: center;
            height: auto;
        }

    .sidebar {
        display: none;
    }

    .main {
        left: 0px !important;
        right: 0px !important;
        position: relative;
        top: auto;
    }

        .main .main-header {
            background: none;
            padding: 0;
            box-shadow: none;
        }

        .main .main-content {
            padding: 0px;
        }
}

@media (max-width: 1280px) {
    .main {
        left: 0;
    }
}

@media print {

    a[href]:after {
        content: none;
    }
}

/* END */


.shiftcol {
    width: 60px;
}

th, th a {
    background-color: #436a7c;
    font-weight: normal;
    text-transform: uppercase;
    color: white;
}

    th a:hover {
        color: #EEE;
    }

.center {
    text-align: center;
    vertical-align: middle;
}

.no-border {
    border-left: none;
}

.no-border-bottom {
    border-bottom: none;
}

.leaf-checked {
    color: orange;
}

.leaf-unchecked {
    color: lightgrey;
}

#collapseInstructions {
    background-color: #eee;
    padding: 0;
    border-radius: calc(.25rem - 1px);
    margin: 0;
}

    #collapseInstructions a:not(.btn) {
        text-decoration: underline;
    }


.instructions {
    font-size: 16px;
    margin: 0;
    padding: 15px;
}

.static-instructions {
    background-color: #eee;
    padding: 15px;
    border-radius: calc(.25rem - 1px);
    margin: 10px 0px;
}


.btn-xs {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}

.custom-breadcrumb {
    list-style: none;
    overflow: hidden;
}

    .custom-breadcrumb li {
        text-decoration: none;
        padding: 10px 0 10px 50px;
        position: relative;
        display: block;
        float: left;
    }

        .custom-breadcrumb li:after {
            content: " ";
            display: block;
            width: 0;
            height: 0;
            border-top: 50px solid transparent;
            border-bottom: 50px solid transparent;
            position: absolute;
            top: 50%;
            margin-top: -50px;
            left: 100%;
            z-index: 2;
        }

        .custom-breadcrumb li:before {
            content: " ";
            display: block;
            width: 0;
            height: 0;
            border-top: 50px solid transparent;
            border-bottom: 50px solid transparent;
            border-left: 30px solid white;
            position: absolute;
            top: 50%;
            margin-top: -50px;
            margin-left: 1px;
            left: 100%;
            z-index: 1;
        }

.secondary-crumb {
    background-color: #2980b9;
    color: white;
}

    .secondary-crumb:after {
        border-left: 30px solid #2980b9;
    }

.gray-crumb {
    background-color: #bdc3c7;
}

    .gray-crumb:after {
        border-left: 30px solid #bdc3c7;
    }

.primary-crumb:after {
    border-left: 30px solid #3498db;
}

.primary-crumb {
    background: #3498db;
    color: white;
}

.faded-crumb:after {
    border-left: 30px solid #ecf0f1;
}

.faded-crumb {
    background: #ecf0f1;
    color: #95a5a6;
}

.navbar.second-navbar {
    margin-top: 35px;
    background-color: #2980b9;
    padding: 0px 0px 0px 0px;
}

.container-fluid {
    margin-top: 60px;
}

.dashboard-card-body {
    display: flex;
    flex-direction: row;
}

.dashboard-card-div {
    padding-left: 30px;
    text-indent: -15px;
}

    .dashboard-card-div:hover {
        text-decoration: underline;
    }

.my-auto {
    font-size: smaller;
    align-content: center;
}

/* site summary network summary table squares*/

/*.tablesquare {
    text-align:center; 
    border: solid 1px; 
    padding:8px 0px;
}

.square:after {
    content: "";
    display: block;
    padding-bottom: 100%;
}*/

/*UNUSED*/
/*.toolbar
{
    display: block;
    margin: 0.5em 0;
    text-align: right;
}*/

/*.icon-add
{
    background-image: url(/images/icons/16/add.png);
}

.icon-export
{
    background-image: url(/images/icons/16/export1.png);
}

.icon-email
{
    background-image: url(/images/icons/16/email.png); 
}

.icon-view
{
    background-image: url(/images/icons/16/view.png);
}*/

/*.form-group.required .control-label:after { 
    color: #d00;
    content: "*";
    position: absolute;
    margin-left: 5px;
    font-family: 'Glyphicons Halflings', Verdana, Geneva, 'DejaVu Sans', sans-serif;
    font-weight: normal;
}*/

/*.main
{
    position: absolute;
    left: 0;
    right: 0;
    top: 50px; 
    overflow: auto;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 10;
    background: none;
}*/

/*.main-header
{
    margin: 0px;
    margin-bottom: 8px;
    padding: 15px;
    border: none;
    width: 100%;
    background-color: rgb(231, 231, 231);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

.main-content {
    padding: 15px; 
}*/

/*.control-label-required
{
    color: #cc0000;    
}*/

/*.input-required-marker
{
    background: url(/images/form-control-required-icon.gif) center center no-repeat;
}*/

/*.required-indicator
{
    vertical-align: top;
    font-size:8px;
}*/

/* BOOTSTRAP OVERRIDE */
.btn-primary {
    background-color: #1288ad;
    color: #FFF;
}

    .btn-primary:hover {
        background-color: #0096c4;
        color: #FFF;
    }

/* END BOOTSTRAP OVERRIDE */

div.datepicker-days > table.table-condensed > thead > tr > th {
    background-color: #FFF;
    color: #333;
}

.tableFixedHeader th {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}

.col-form-label-right {
    padding-top: calc(.375rem + 1px);
    padding-bottom: calc(.375rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
    text-align: right;
}

.center-vertical {
    margin-top: 7px;
}

.rotate {
    transition: .3s transform ease-in-out;
}

.card-body:has(> .table),
.card-body:has(> .table-responsive > .table) {
    padding: 0;
}

.card-body > .table,
.card-body > .table-responsive > .table {
    margin-bottom: 0;
}

.card-body > .table-bordered > thead td,
.card-body > .table-bordered > thead th,
.card-body > .table-responsive > .table-bordered > thead td,
.card-body > .table-responsive > .table-bordered > thead th {
    border-bottom-width: 1px;
}

.card-body > .table-bordered > thead > tr:first-of-type > th,
.card-body > .table-responsive > .table-bordered > thead > tr:first-of-type > th {
    border-top: none;
}

.card-body > .table-bordered > thead > tr > th:first-of-type,
.card-body > .table-responsive > .table-bordered > thead > tr > th:first-of-type {
    border-left: none;
}

.card-body > .table-bordered > thead > tr > th:last-of-type,
.card-body > .table-responsive > .table-bordered > thead > tr > th:last-of-type {
    border-right: none;
}

.card-body > .table-bordered > tbody > tr > td:first-of-type,
.card-body > .table-responsive > .table-bordered > tbody > tr > td:first-of-type {
    border-left: none;
}

.card-body > .table-bordered > tbody > tr > td:last-of-type,
.card-body > .table-responsive > .table-bordered > tbody > tr > td:last-of-type {
    border-right: none;
}

.card-body > .table-bordered > tbody > tr:first-of-type > td,
.card-body > .table-responsive > .table-bordered > tbody > tr:first-of-type > td {
    border-top: none;
}

.card-body > .table-bordered > tbody > tr:last-of-type > td,
.card-body > .table-responsive > .table-bordered > tbody > tr:last-of-type > td {
    border-bottom: 1px solid #dee2e6;
}

.card > .card-options {
    padding: 12px 20px;
    background: #eee;
    border-bottom: 1px solid #ddd;
    border-collapse: collapse;
}

.table-nested {
    width: 100%;
}

    .table-nested tbody tr:nth-child(even) {
        background-color:rgba(0,0,0,.05);
    }

    .table-nested td {
        width: auto;
    }

.column-kpi {
    text-align: center;
    min-width: 60px;
    width: auto;
}


.checkboxlist {
    display: block;
}

.checkboxlist input[type=checkbox] + label {
    margin-left: 10px;
}

/*
    Styles for Key Performance Indicators
*/

.kpi-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

    .kpi-list > li {
        display: inline-block;
        text-align: center;
        vertical-align: middle;
    }

        .kpi-list > li:not(:last-child) {
            margin-right: .5rem;
        }

        .kpi-list > li.seperator {
            color: #ccc;
            vertical-align: top;
        }

.kpi {
}

.kpi-green {
}

    .kpi-green > .kpi-value {
        border: 1px solid #008000;
    }

    .kpi-green > .kpi-indicator {
        color: #008000;
    }

.kpi-yellow {
}

    .kpi-yellow > .kpi-value {
        border: 1px solid #f4c500;
    }

    .kpi-yellow > .kpi-indicator {
        color: #f4c500;
    }

.kpi-red {
}

    .kpi-red > .kpi-value {
        border: 1px solid #aa0000;
    }

    .kpi-red > .kpi-indicator {
        color: #aa0000;
    }

.kpi-orange {
}

    .kpi-orange > .kpi-value {
        border: 1px solid orange;
    }

    .kpi-orange > .kpi-indicator {
        color: orange;
    }

.kpi-indicator {
}

.kpi-value {
    padding: 5px;
}

.kpi-indicator + .kpi-value {
    margin-top: 5px;
}

/*
    Impact Event Styling
*/

.impact-event-id-label {
    font-size: 0.8em;
    vertical-align: middle;
    display: inline-block;
}

.cell-impact-event-id {
    width: 150px;
}

/* Responsive text aligning */
.text-xs-left {
    text-align: left;
}

.text-xs-right {
    text-align: right;
}

.text-xs-center {
    text-align: center;
}

.text-xs-justify {
    text-align: justify;
}

.text-left-not-xs, .text-left-not-sm, .text-left-not-md, .text-left-not-lg {
    text-align: left;
}

.text-center-not-xs, .text-center-not-sm, .text-center-not-md, .text-center-not-lg {
    text-align: center;
}

.text-right-not-xs, .text-right-not-sm, .text-right-not-md, .text-right-not-lg {
    text-align: right;
}

.text-justify-not-xs, .text-justify-not-sm, .text-justify-not-md, .text-justify-not-lg {
    text-align: justify;
}

.dropdown-menu-right-md {
    right: auto;
    left: auto;
}

@media (min-width: 768px) {

    .dropdown-menu-right-md {
        right: 0;
        left: auto;
    }

    .text-sm-left {
        text-align: left;
    }

    .text-sm-right {
        text-align: right;
    }

    .text-sm-center {
        text-align: center;
    }

    .text-sm-justify {
        text-align: justify;
    }

    .text-left-not-sm, .text-center-not-sm, .text-right-not-sm, .text-justify-not-sm {
        text-align: inherit;
    }
}

@media (min-width: 992px) {

    .text-md-left {
        text-align: left;
    }

    .text-md-right {
        text-align: right;
    }

    .text-md-center {
        text-align: center;
    }

    .text-md-justify {
        text-align: justify;
    }

    .text-left-not-md, .text-center-not-md, .text-right-not-md, .text-justify-not-md {
        text-align: inherit;
    }
}

@media (min-width: 1200px) {
    .text-lg-left {
        text-align: left;
    }

    .text-lg-right {
        text-align: right;
    }

    .text-lg-center {
        text-align: center;
    }

    .text-lg-justify {
        text-align: justify;
    }

    .text-left-not-lg, .text-center-not-lg, .text-right-not-lg, .text-justify-not-lg {
        text-align: inherit;
    }
}

/*
    Responsive pull aligning
*/
.pull-xs-left {
    float: left;
}

.pull-xs-right {
    float: right;
}

@media (min-width: 768px) {
    .pull-sm-left {
        float: left;
    }

    .pull-sm-right {
        float: right;
    }
}

@media (min-width: 992px) {
    .pull-md-left {
        float: left;
    }

    .pull-md-right {
        float: right;
    }
}

@media (min-width: 1200px) {
    .pull-lg-left {
        float: left;
    }

    .pull-lg-right {
        float: right;
    }
}

@media (max-width: 767px) {

    .tab-content-reveal-sm .tab-pane {
        visibility: visible !important;
        display: block;
        height: auto;
    }
}