/* 
    Bootstrap theme overrides 
    Set Bootstrap controls with ADH site defaults.
    *This file reference should be placed after bootstrap.min.css
*/
:root {
    --adh-primary: rgb(9, 24, 60); /* overrides BS Primary color */
    --adh-primary-shaded: rgba(9, 24, 60, 0.85); /* Custom BS Primary color shaded */

    --adh-navbar-top: var(--adh-primary);
    --adh-navbar-middle: rgb(255, 255, 255);
    --adh-navbar-middle-border: rgb(86, 189, 255);
    --adh-navbar-bottom: rgb(0, 112, 190);
    --adh-logo-red: rgb(195, 32, 51);
    --adh-tooltip-bg: var(--adh-primary);
    --adh-tooltip-opacity: 1.0;
    --adh-tooltip-color: rgb(255,255,255);
}

/* Bootstrap overrides progress-bar */
.progress-bar {
    --bs-progress-bar-bg: var(--adh-primary-shaded);
}

.tooltip {
    --bs-tooltip-bg: var(--adh-tooltip-bg);
    --bs-tooltip-opacity: var(--adh-tooltip-opacity);
    --bs-tooltip-color: var(--adh-tooltip-color);
}

/* Bootstrap overrides btn-primary */
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--adh-primary);
    --bs-btn-border-color: var(--adh-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--adh-primary-shaded);
    --bs-btn-hover-border-color: #0a58ca;
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0a58ca;
    --bs-btn-active-border-color: #0a53be;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--adh-primary);
    --bs-btn-disabled-border-color: var(--adh-primary);
}

/* Bootstrap overrides form checks selected colors */
.form-check-input:checked {
    background-color: var(--adh-primary);
    border-color: var(--adh-primary);
}

/*
  End Bootstrap theme overrides
*/

.adh-text-primary {
    --bs-text-opacity: 1;
    color: var(--adh-primary) !important;
    padding-top: 0.8rem;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

.clickable {
    cursor: pointer !important;
}

.form-switch > label {
    cursor: pointer;
}

.home-middle-section {
    background-color: #e7e7e7;
    background-image: url(../images/home-login-right.png);
    background-repeat: no-repeat;
    background-position: right center;
    height: 412px;
}

.home-text {
    background: linear-gradient(90deg, rgba(231, 231, 231, 1) 90%, rgba(231, 231, 231, 0) 100%);
    height: 412px;
    padding: 50px 50px;
    width: 75%;
}

.yes-no-switch ~ .no-label {
    display: inline-block;
}

.yes-no-switch ~ .yes-label {
    display: none;
}

.yes-no-switch:checked ~ .no-label {
    display: none;
}

.yes-no-switch:checked ~ .yes-label {
    display: inline-block;
}

a.nav-link i {
    width: 25px;
    text-align: center;
}

.navbar-adh-initial {
    background-image: url('/images/banner-bkgr.png');
    background-repeat: repeat-x;
    background-size: auto 100%;
    background-position: center;
    position: relative;
    height: 140px;
}

.navbar-adh-text {
    color: var(--adh-primary);
    font-size: 1.5rem;
}

.navbar-adh {
    background-image: url('/images/banner-bkgr.png');
    background-repeat: repeat-x;
    background-size: auto 100%;
    background-position: center;
    position: relative;
    height: 70px;
    padding-top: 0;
}

.sidebar-nav {
    min-height: 0;
    min-width: 15rem;
    color: var(--adh-primary);
}

.sidebar-nav ul {
    padding-top: 5rem;
}

.sidebar-nav .nav-link {
    color: var(--adh-primary);
}

.sidebar-nav .nav-item:hover {
    color: var(--adh-primary);
    background-color: var(--bs-border-color);
}

.sidebar-nav .nav-item.active, .sidebar-nav .nav-item:active {
    color: var(--adh-primary);
}

.sidebar-nav .nav-item:focus {
    color: var(--adh-primary);
}

.sidebar-nav-divider {
    margin: 10px 8px 10px 8px;
    padding-left: 1rem;
}

label.required::after {
    content: " *";
    color: red;
    font-weight: bold;
}

/* jquery validation */
.form-control.input-validation-error {
    color: var(--bs-danger-text-emphasis) !important;
    border-color: var(--bs-danger-border-subtle) !important;
    background-color: var(--bs-danger-bg-subtle) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right calc(.375em + .1875rem) center !important;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem) !important;
    padding-right: calc(1.5em + .75rem) !important;
}

.field-validation-error {
    color: var(--bs-danger-text-emphasis);
    background-color: var(--bs-danger-bg-subtle);
    border-radius: var(--bs-border-radius-sm);
    font-size: .8rem;
    margin: 0 5px;
    padding: 0px 6px 2px;
}

.field-validation-valid {
    display: none;
}
.question-review span {
    padding-left: 0.5rem;
}
.question-review .question-review-question {
    font-weight: 500 !important;
}
.tabulator .tabulator-footer .tabulator-page {
    padding: 0.25rem 0.5rem;
}
.tabulator .tabulator-footer .tabulator-page.active {
    background-color: var(--adh-navbar-bottom);
    border-color: var(--adh-navbar-bottom);
    color: #fff;
}
.tabulator .tabulator-col-title .btn-filter {
    cursor: pointer;
}
.tabulator .tabulator-col-title .btn-filter:hover {
    color: rgba(0,0,0,0.7);
}
.tabulator .tabulator-col-title .btn-filter.btn-filter-on {
    color: var(--adh-logo-red);
}
.tabulator .tabulator-col-title .btn-filter.btn-filter-on::after {
    content: '*';
}
.tabulator-table .fa-comment {
    color: #FFFFFF;
    font-size: 20px;
    position: relative;
}
.tabulator-table .fa-comment:before {
    position: absolute;
    left: -30px;
    top: -14px;
    z-index: 1;
}
.tabulator-table .fa-comment span {
    background-color: #0070be;
    display: block;
    width: 31px;
    height: 31px;
    position: absolute;
    top: -20px;
    left: -35px;
    border-radius: 5px;
}
.tabulator-row .tabulator-cell {
    line-height: 30px;
}
.comment {
    border: 1px solid lightgrey;
    padding: 10px;
    border-radius: 5px;
    position: relative;
}
.comment:first-child {
    margin-top: 5px;
}
.comment:not(:last-child) {
    margin: 0 0 20px;
}
.comment span {
    font-size: 12px;
    font-weight: bold;
    position: absolute;
    top: -10px;
    background-color: #FFF;
}
.blob-img {
    max-width: 300px;
}
#view-license-accordian-body .accordion-body .document {
    width: 300px;
    cursor: pointer;
}
#additional-docs-accordian-body .accordion-body {
    display: flex;
}
#additional-docs-accordian-body .accordion-body .document {
    width: 200px;
    cursor: pointer;
    text-align: center;
}
.pdf-download {
    width: 150px;
    position: absolute;
    right: 5px;
    top: 5px;
}
.paymentDataTable h2 {
    margin: 0;
    padding: 0 0 5px 0;
    font-size: 18px;
    color: #5090a3;
}
.paymentDataTable .transaction-detail {
    display: inline-table;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 20px;
}
.paymentDataTable .transaction-detail thead {
    background-color: #dadada;
}
.paymentDataTable .transaction-detail th, .paymentDataTable .transaction-detail td {
    padding: 5px 10px;
    border: 1px solid black;
}
.paymentDataTable .info th {
    padding-right: 15px;
}
.w-15 {
    width: 15%;
}
.w-30 {
    width: 30%;
}
.w-40 {
    width: 40%;
}
.w-55 {
    width: 55%;
}
.tabulator-headers, .tabulator-table {
    width: 100%;
}
.tabulator-cell-responsive {
    display: flex;
    justify-content: space-between;
    padding: 10px 15px;
    width: 100%;
}
.tabulator-cell-responsive p {
    margin: 0;
}
.mobileLogout {
    margin: 10px 0;
    padding: 10px 0;
}
.contentMain {
    overflow-y: auto;
    height: calc(100vh - 70px - 57px); /* 100% viewport height - header - footer */
}
#questions-grid .tabulator-tableholder {
    overflow: inherit;
}

@media (max-width: 991px) {
    .home-text {
        padding: 20px 50px 20px 20px;
        width: 55%;
    }
    #navSidebar {
        position: absolute;
        z-index: 1;
        height: 100%;
        top: 0;
        right: 0;
        border-left: 2px solid #dee2e6;
    }
    #navSidebar.mobileHide {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .mobileLogout {
        display: none;
    }
}

@media (max-width: 767px) {
    .navbar-adh-initial {
        height: 90px;
    }
    .navbar-brand-logo {
        width: 75px;
        height: 75px;
    }
    .home-middle-section {
        background-position: right -75px center;
    }
    .tabulator {
        font-size: 14px !important;
    }
    .tabulator-table .fa-comment {
        font-size: 15px !important;
    }
    .tabulator-table .fa-comment:before {
        left: -27px !important;
        top: -11px !important;
    }
    .tabulator-table .fa-comment span {
        width: 31px !important;
        height: 27px !important;
        top: -17px !important;
        left: -35px !important;
    }
    .tabulator-header, .tabulator-cell, .tabulator-col-resize-handle {
        display: none !important;
    }
    .pdf-download {
        right: 14px !important;
        top: 7px !important;
    }
    .paymentDataTable .transaction-detail {
        margin-bottom: 0 !important;
    }
    .paymentDataTable .info-wrapper {
        margin: 10px 0;
    }
    .paymentDataTable p {
        margin: 0;
    }
    .desktopOnly {
        display: none;
    }
}

@media (min-width: 768px) {
    .tabulator-cell-responsive {
        display: none !important;
    }
    .transaction-info {
        display: flex;
    }
    .paymentDataTable .info-wrapper:not(:last-child) {
        margin-right: 30px;
    }
    .mobileOnly {
        display: none;
    }
}