﻿:root {
    /*--auth-blue:        #158cba;*/
    --auth-blue: #1383A7;
    --auth-dk-blue: #316EA3;
    --auth-md-blue: #4A9EBA;
    --auth-lt-blue: #5fc1e8;
    --auth-ex-lt-blue: #BCECFF;
    --auth-muted-blue: #70A6B7;
    --auth-orange: #FF9E15; /*#ff851b;*/
    --auth-logo-orange: #FF9E15;
    --auth-lt-orange: #DD9937;
    --auth-green: #588E3E;
    --auth-dk-green: #33884D;
    --auth-md-green: #31a27e;
    /*--auth-red:         #DC3545;*/
    --auth-red: #C15454;
    --auth-red-hover: #D79797;
    --auth-lt-red: #F4D7DA;
    --auth-gray: #cccccc;
    --auth-lt-gray: #F8F8F8;
    --auth-gray-1: #555555;
    --auth-gray-2: #666666;
    --auth-gray-3: #777777;
    --auth-gray-4: #999999;
    --auth-gray-5: #B1B1B1;
    --auth-gray-6: #C1C1C1;
    --auth-gray-lt: #efefef;
    --auth-black: #000;
    --auth-white: #fff;
    --auth-selected: #FFF4E2;
    --auth-hover: #DEE2E6;
    --add-gray: #ADB5BD;
    --add-gray-2: #DEE2E6;
    --table-full-height: 360px;
    --table-calc: calc(100vh - 285px);
    --table-calc-btn: calc(100vh - 335px);
    --table-calc-tab-btn: calc(99vh - 367px);
    --table-calc-tab-btn-footer: calc(99vh - 427px);
    --alert-text-orange: #E28809;
    --alert-bkg-orange: #FDF1E3;
}

body {
    font-family: 'Inter', sans-serif;
    font-size: .9rem;
    padding-top: 65px;
}

.showVerticalScrollbars {
    overflow-y: scroll;
}

h1, h2, h3, h4, h5 {
    font-weight: 500;
}

h1 {
    font-size: 1.75rem;
}

h2 {
    font-size: 1.5rem;
}

h3 {
    font-size: 1.25rem;
}

h4 {
    font-size: 1.2rem;
}

h5 {
    font-size: 1.15rem;
}

.section-header, .bold-text {
    font-size: 1rem;
    font-weight: 600;
}

.flex {
    display: flex;
    flex-wrap: wrap;
}

.align-center {
    justify-content: center;
}

.no-flex {
    display: block;
}

.mr-2 {
    margin-right: 0.5rem !important;
}

.mr-1 {
    margin-right: 0.25rem !important;
}

.mr-0 {
    margin-right: 0rem !important;
}

.pr-0 {
    padding-right: 0 !important;
}

.pl-0 {
    padding-left: 0 !important;
}

.pr-1 {
    padding-right: 0.25rem !important;
}

.pt-1-5 {
    padding-top: 0.15rem !important;
}

.pt-7-px {
    padding-top: 7px !important;
}

.pt-15-px {
    padding-top: 15px !important;
}

.pt-175-rem {
    padding-top: 1.75rem !important;
}



/* set column width */
.col-flex-90 {
    flex: 0 0 90px;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left;
}

.test-block {
    width: 30px;
    height: 30px;
}

.auth-blue,
.auth-blue.accordion-button {
    background-color: var(--auth-blue);
    color: #fff;
}

.auth-dk-blue,
.auth-dk-blue.accordion-button {
    background-color: var(--auth-dk-blue);
    color: #fff;
}

.auth-lt-blue,
.auth-lt-blue.accordion-button {
    background-color: var(--auth-lt-blue);
    color: #fff;
}


.auth-orange,
.auth-orange.accordion-button {
    background-color: var(--auth-orange);
    color: #fff;
}

.auth-lt-orange,
.auth-lt-orange.accordion-button {
    background-color: var(--auth-lt-orange);
    color: #fff;
}

.auth-green,
.auth-green.accordion-button {
    background-color: var(--auth-green);
    color: #fff;
}

.auth-dk-green,
.auth-dk-green.accordion-button {
    background-color: var(--auth-dk-green);
    color: #fff;
}

.auth-gray-1,
.auth-gray-1.accordion-button {
    background-color: var(--auth-gray-1);
    color: #fff;
}

.auth-gray-2,
.auth-gray-2.accordion-button {
    background-color: var(--auth-gray-2);
    color: #fff;
}

.auth-gray-3,
.auth-gray-3.accordion-button {
    background-color: var(--auth-gray-3);
    color: #fff;
}

.auth-gray-4,
.auth-gray-4.accordion-button {
    background-color: var(--auth-gray-4);
    color: #fff;
}

.auth-gray-5,
.auth-gray-5.accordion-button {
    background-color: var(--auth-gray-5);
    color: #fff;
}

.auth-gray-6,
.auth-gray-6.accordion-button {
    background-color: var(--auth-gray-6);
    color: #fff;
}

.btn {
    font-weight: 600;
}

.btn.hide {
    display: none;
}



.btn-success {
    color: #fff;
    background-color: var(--auth-dk-green);
    border-color: var(--auth-dk-green);
}

.btnRefresh {
    font-size: 25px;
    vertical-align: middle;
}

.form-check-input {
    cursor: pointer;
}

.form-check-input:checked {
    background-color: var(--auth-blue);
    border-color: var(--auth-blue);
}

.form-check-input.check-red:checked {
    background-color: var(--auth-red);
    border-color: var(--auth-red);
}

.form-check-input[type="radio"]:checked {
    background-color: var(--auth-blue);
    border-color: var(--auth-blue);
}


.btn-success:hover {
    color: #fff;
    background-color: var(--auth-green);
    border-color: var(--auth-green);
}

.btn-check:focus + .btn-primary {
    background-color: var(--auth-md-blue);
    border-color: var(--auth-md-blue);
}


.btn-lt-blue {
    color: #fff;
    background-color: var(--auth-lt-blue);
    border-color: var(--auth-lt-blue);
}

.btn-lt-blue:hover {
    color: #fff;
    background-color: var(--auth-blue);
    border-color: var(--auth-blue);
}


.btn-green {
    color: #fff;
    background-color: var(--auth-green);
    border-color: var(--auth-green);
}

.btn-green:hover {
    color: #fff;
    background-color: var(--auth-dk-green);
    border-color: var(--auth-dk-green);
}

.btn-dk-green {
    color: #fff;
    background-color: var(--auth-dk-green);
    border-color: var(--auth-dk-green);
}

.btn-dk-green:hover {
    color: #fff;
    background-color: var(--auth-green);
    border-color: var(--auth-green);
}



.btn-outline-primary {
    color: var(--auth-blue);
    border-color: var(--auth-blue);
}

.btn-outline-primary:hover {
    background-color: var(--auth-blue);
    border-color: var(--auth-blue);
}

.btn-dk-gray-1 {
    color: #fff;
    background-color: var(--auth-gray-2);
    border-color: var(--auth-gray-2);
}

.btn-otl {
    color: var(--auth-white);
    border-color: var(--auth-white);
    background-color: rgba(255,255,255,0)
}

.btn-xs {
    padding: 0.15rem 0.5rem;
    font-size: 0.70rem;
}

.accordion-header .btn-dk-gray-1:not(.active) {
    border-color: #fff;
}

.btn-dk-gray-1.active, .btn-otl.active {
    color: #fff;
    background-color: var(--auth-orange);
    border-color: var(--auth-orange);
}

.btn-dk-gray-1:hover {
    color: #fff;
    background-color: var(--auth-gray-3);
    border-color: var(--auth-gray-3);
}

.btn-otl:hover {
    color: var(--auth-white);
    background-color: rgba(255,255,255,.25)
}

a {
    color: var(--auth-blue);
}

a.badge {
    text-decoration: none;
}

a.orange-link {
    color: var(--auth-orange);
}

/*Used on POLI Details for the badges outside of tabulator*/
.badgeAlign {
    min-width: 24px;
    text-align: center;
}

.badgeAlign > .badge {
    min-width: 24px;
    vertical-align: middle;
}

/*
    navigation updates
*/

.badge[class*='outline-'] {
    line-height: calc(1em - 2px);
}

.navbar-nav li a.nav-link {
    font-weight: 600;
}

li.active {
    background: var(--auth-logo-orange);
    border-radius: 0.25em;
}

.navbar-nav li.active a.nav-link.text-dark {
    color: #fff !important;
}

.navbar-nav .nav-item .dropdown-item:active {
    background-color: var(--auth-logo-orange);
}
/*
    base page overrides
*/

.container {
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.smaller-text {
    font-size: .75em;
}

.small-gray-text {
    font-size: 1em;
    color: #6C757D
}

/*
    form controls
*/

/*
    focus effects
*/
/* initial click */
/*.btn:active:focus,*/ .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus .form-select,
.select2-container--bootstrap-5.select2-container--focus .select2-selection, .select2-container--bootstrap-5.select2-container--open .select2-selection,
.select2-container--classic.select2-container--open .select2-selection--multiple, .form-select:focus {
    animation-name: borderFade;
    animation-duration: 2s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    border-color: var(--auth-blue)
}
/*

    prevent scrollbar on select 2 dropdown results

*/
.select2-dropdown.no-scroll ul.select2-results__options {
    max-height: none !important;
}


/*reset event on buttons and inputs*/
.btn:active, .form-control:active, .form-check-input:active {
    animation-name: none;
}

@keyframes borderFade {
    from {
        box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--auth-blue);
    }

    to {
        box-shadow: 0 0 0 0.1rem transparent;
    }
}

/*
    user screens
*/

.nav-link {
    color: var(--auth-blue);
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    background-color: var(--auth-blue);
}

.input-group.force-rounded input, .input-group.force-rounded .btn {
    border-radius: 0.25rem !important;
}

/*
    background colors
*/
.background-blue, .bg-primary {
    color: #fff;
    background-color: var(--auth-blue) !important;
}

.background-orange, .bg-orange {
    color: #fff;
    background-color: var(--auth-orange) !important;
}

.background-red, .bg-red {
    color: #fff;
    background-color: var(--auth-red) !important;
}

.background-lt-gray {
    background: var(--auth-lt-gray);
}

.background-gray-1 {
    background: var(--auth-gray-1);
}

.background-gray-2 {
    background: var(--auth-gray-2);
}

.background-gray-3 {
    background: var(--auth-gray-3);
}

.background-gray-4 {
    background: var(--auth-gray-4);
}

.background-gray-5 {
    background: var(--auth-gray-5);
}

.background-gray-6 {
    background: var(--auth-gray-6);
}

.background-gray-lt {
    background: var(--auth-gray-lt);
}

/*
    border color
*/
.rounded {
    border-radius: .25rem;
}

.border-blue {
    border-color: var(--auth-blue) !important;
}

.border-dk-blue {
    border-color: var(--auth-dk-blue) !important;
}

.border-lt-blue {
    border-color: var(--auth-lt-blue) !important;
}

.border-lt-orange {
    border-color: var(--auth-lt-orange) !important;
}

.border-orange {
    border-color: var(--auth-orange) !important;
}

.border-green {
    border-color: var(--auth-green) !important;
}

.border-dk-green {
    border-color: var(--auth-dk-green) !important;
}

.border-lt-gray {
    border-color: var(--auth-lt-gray) !important;
}

.border-gray-1 {
    border-color: var(--auth-gray-1) !important;
}

.border-gray-2 {
    border-color: var(--auth-gray-2) !important;
}

.border-gray-3 {
    border-color: var(--auth-gray-3) !important;
}

.border-gray-4 {
    border-color: var(--auth-gray-4) !important;
}

.border-gray-5 {
    border-color: var(--auth-gray-5) !important;
}

.border-gray-6 {
    border-color: var(--auth-gray-6) !important;
}

/*
    text color
*/
.text-blue {
    color: var(--auth-blue);
}

.text-dk-blue {
    color: var(--auth-dk-blue);
}

.text-lt-blue {
    color: var(--auth-lt-blue);
}

.text-lt-orange {
    color: var(--auth-lt-orange);
}

.text-orange {
    color: var(--auth-orange);
}

.text-green {
    color: var(--auth-green);
}

.text-dk-green {
    color: var(--auth-dk-green);
}

.text-red {
    color: var(--auth-red);
}

.text-gray {
    color: var(--auth-gray);
}

.text-lt-gray {
    color: var(--auth-lt-gray);
}

.underline {
    border-bottom: 1px solid var(--auth-gray);
}

.underline-bold {
    border-bottom: 3px solid var(--auth-gray);
}

.outline {
    border: 1px solid var(--auth-gray);
    border-radius: 0.25rem;
}

.outline-blue {
    color: var(--auth-blue);
    border: 1px solid var(--auth-blue);
    background: transparent;
}

.outline-red {
    color: var(--auth-red);
    border: 1px solid var(--auth red);
    background: transparent;
}
/*
    accordian-buttons
*/
.fill, .flex-1 {
    flex: 1;
}

.col-130 {
    flex: 0 0 130px;
}

.width-100 {
    width: 100%;
}

.min-width-256 {
    min-width: 256px
}

.accordion-body {
    padding: 0.5rem;
}

.accordion-item,
.accordion-item:first-of-type {
    border-radius: .25rem !important;
}

.accordion-button {
    width: inherit;
    font-weight: 600;
}

.accordion-button,
.accordion-button:not(.collapsed) {
    box-shadow: none;
}

.accordion-header {
    display: flex;
    min-height: 51px;
    box-shadow: none;
}

.accordion-header .btn {
    box-shadow: none;
}

.accordion-header button.btn.btn-outline-light.text-orange {
    font-size: 1.85em;
    padding: 4.25px 6.5px;
    line-height: .5;
}

.accordion-item:not(:first-of-type) {
    border-top: 1px solid;
}

/*
    full height rules
*/

.accordion-body.full {
    padding-bottom: 0.5rem !important;
}

.inline-block {
    display: inline-block;
}

.block {
    display: block;
}

.accordion-button::after {
    display: none !important;
}

.accordion-button::before {
    font-family: bootstrap-icons;
    background-image: none !important;
    content: "\F235";
    margin-right: .5em;
}

.accordion-button.collapsed::before {
    font-family: bootstrap-icons;
    background-image: none !important;
    content: "\F229";
}

.accordion-button:not(.collapsed)::before {
    transform: rotate(0deg) !important;
}

.accordion-button:focus {
    border-color: transparent !important;
    box-shadow: none;
}

.accordion-body {
    padding-top: 0.5rem;
}

.accordion-button::before {
    color: var(--auth-logo-orange);
}

.btn-outline-light {
    border-radius: 0.25rem !important;
}

.nav-tabs .nav-link {
    background: var(--auth-gray-1);
    color: #fff;
    margin-right: .1rem;
    font-weight: 600;
}

.nav-tabs .nav-link.disabled {
    background: var(--auth-gray-6);
    color: #fff;
}

.nav-tabs .nav-link.active {
    border-color: var(--auth-logo-orange);
    background: var(--auth-logo-orange);
    color: #fff;
    font-weight: 600;
}

.nav-tabs {
    border-bottom: 3px solid var(--auth-logo-orange);
}

.nav-tabs .nav-item {
    /*flex: 1;*/
    width: 150px;
    text-align: center;
}

.nav-tabs.modal-tabs .nav-item {
    width: 200px;
    text-align: center;
}

/* Breadcrumb button adjustments */

.breadcrumb-container .btn-group-sm > .btn, .btn-sm {
    padding: 0.15rem 0.5rem;
}

.border-top-bottom {
    border-top: 1px solid var(--auth-black);
    border-bottom: 1px solid var(--auth-black);
    font-weight: 600;
}



/*
    form data
*/
.form-control::placeholder,
select:required:invalid,
option[value=""] {
    color: var(--auth-gray-5);
    opacity: 1;
}

.form-row {
    display: flex;
    flex-wrap: wrap;
}

.form-row-xs {
    display: inline-flex;
    flex-wrap: wrap;
    font-size: .75rem;
    margin-top: -.8rem
}

.form-row-xs span.select2-selection--single button.select2-selection__clear {
    right: 1.25rem;
}

.form-row-xs .form-control,
.form-row-xs .form-select,
.form-row-xs span.select2-selection--single {
    font-size: .8rem;
    padding: .1rem .3rem;
}

.form-row-xs .form-select,
.form-row-xs span.select2-selection--single {
    background-size: 10px 10px;
    background-position: right .25rem center;
}

.form-row-xs .select2-container .select2-selection--single {
    height: 1.5rem;
    min-height: 1.5rem !important;
    width: 100%;
}

.form-row-xs .select2-selection__arrow {
    height: 5px !important;
}

.form-row-xs .form-label {
    margin-bottom: .25rem;
}

.form-row-xs .form-check-inline {
    margin: 0;
}

.form-row-xs input:not([type=checkbox]):not(.breakpoint-field),
.form-row-xs span.select2-selection--single {
    width: 8vw;
    min-width: 6vw;
}

.form-row-xs .input-sm input:not([type=checkbox]):not(.breakpoint-field) {
    min-width: 5.5rem;
    width: 5.5rem;
}

.form-row-xs .form-group.input-sm {
    width: 5.5rem !important;
}

.form-row.no-flex {
    display: block;
}

.rates-row .form-label,
.rates-row-comparison .form-label {
    font-size: .75rem;
    margin-bottom: .25rem;
}

.rates-row-comparison .estimate-field-label {
    font-size: .8rem;  
    padding-top: .5rem;
}

.rates-row-comparison .estimate-field {
    width: 60%;
    margin-left: .25rem !important;
}

.checkbox-md .form-check-input[type=checkbox] {
    width: 20px;
    height: 20px;
}

.checkbox-lg .form-check-input[type=checkbox] {
    width: 25px;
    height: 25px;
}

.checkbox-xl .form-check-input[type=checkbox] {
    width: 30px;
    height: 30px;
}

.checkbox-lg .form-check-input[type=checkbox][role=switch] {
    width: 50px;
}

.checkbox-lg .form-check-label {
    padding-top: 5px;
    padding-left: 6px;
    font-weight: 700;
}

.form-check .form-check-input {
    margin-left: 0;
}

.checkbox-lg .form-check-input[type=radio] {
    border-radius: 50%;
    width: 25px;
    height: 25px;
}


.form-group .bootstrap-select .dropdown-toggle:focus, .bootstrap-select > select.mobile-device:focus + .dropdown-toggle {
    outline-color: transparent !important;
}

form.data-entry label.form-label {
    font-weight: 700;
}

.modal-header {
    background: var(--auth-black);
    color: var(--auth-white);
}

.modal-title {
    flex: 1;
}

.modal-focus-end {
    opacity: 0;
    position: absolute;
    pointer-events: none;
    height: 1px;
    width: 1px;
}

.red-header {
    background: var(--auth-red);
    color: var(--auth-white);
}

.form-group.date {
    display: flex;
    width: calc(100% - 42px);
}

.form-group-horiz {
    display: flex;
    align-items: center;
}

.form-group-horiz .form-label {
    display: inline-block;
}

.form-group-horiz .input-group {
    flex: 1;
}

.form-control-plaintext {
    padding-left: 0.375rem;
    font-size: 1.15em;
    padding-top: 15px;
}

.form-control-plaintext.wt-btn {
    width: auto;
    margin-right: 10px;
}


.form-control-plaintext.wt-btn + button {
    margin-top: -7px;
}

.form-control-plaintext.is-invalid {
    color: var(--auth-red);
    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");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 1rem 1rem;
}

.calendar-picker {
    margin-right: 5px;
}

.datepicker {
    padding: 15px;
}

.modal-header .btn-close {
    background-color: #fff;
    margin: 0;
    padding-left: 9px;
}

.text-red-box {
    background-color: var(--auth-red);
    border-radius: .25rem;
}

/***********************



*/


.subView {
    background-color: white;
}

.select2 {
    width: inherit !important;
}

.select2.select2-container--classic {
    width: 100% !important;
}

span.select2.select2-container.select2-container--bootstrap-5 {
    width: 100% !important;
}

.select2-container--classic .select2-selection--multiple {
    padding: 5px;
    border: 1px solid #ced4da;
    min-height: 37.61px;
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: right 0.75rem center;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}

.select2-container {
    z-index: 0 !important;
}

.select2-container--open {
    z-index: 9999 !important;
}

.select2.with-button,
.select2.with-button + span.select2.select2-container.select2-container--bootstrap-5 {
    width: unset !important;
}

#select2-selectBOL-results,
.select2-dropdown.larger-ddl .select2-results .select2-results__options {
    max-height: calc(100vh - var(--page-header-height) * 5);
    overflow-y: auto;
}

.fit-options-content .select2-results__options {
    max-height: fit-content !important;
    overflow-y: auto !important;
}

.select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
    margin-right: 1.5rem;
}

.select2-selection--single.select2-selection--clearable .select2-selection__rendered {
    margin-right: 2.5rem;
}

.scrollable-multiselect + .select2-container .select2-selection.select2-selection--multiple {
    max-height: 120px;
    overflow-y: auto;
}

.alert.alert-danger {
    color: var(--auth-red);
    background-color: var(--auth-lt-red);
    border-color: var(--auth-red);
}

.alert.alert-warning {
    color: var(--alert-text-orange);
    background-color: var(--alert-bkg-orange);
    border-color: var(--alert-text-orange);
}

/* alerts preserve returns */
#Alerts .alert {
    /*white-space: pre-wrap;*/
    padding: 0.5rem;
    margin-bottom: 0.5rem;
}

select.with-button + .select2 {
    width: 1% !important; /*This override allows the select2 dropdown to let the width be inline*/
    /*margin-right: 10px;*/
}

li.select2-selection__choice {
    margin: 1px 1px 1px 0 !important;
    padding: 0 5px !important;
    font-size: .9em !important;
}

.select2-selection--multiple li.select2-selection__choice {
    font-size: 1em !important;
    background-color: #ffffff !important;
}

.select2-container--bootstrap-5 .select2-selection {
    padding: 0.3rem 0.75rem;
}

.select2-container--bootstrap-5 .select2-selection--multiple .select2-search {
    display: none;
}

.is-invalid + .select2-container--classic .select2-selection--multiple,
.is-invalid + .select2-container--bootstrap-5 .select2-selection {
    padding: 5px;
    border-color: #dc3545;
    min-height: 37.61px;
    padding-right: 2.25rem;
    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");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

/* added select2 state for dropdown */


/* Added for Add Contacts select 2 button group */
.button-cell span.select2.select2-container.select2-container--bootstrap-5 {
    width: calc(100% - 150px) !important;
}

.button-cell .form-label {
    display: block;
    width: 100%;
}


label.form-label.lock, .add-gray {
    color: var(--add-gray);
}

.select2-container--bootstrap-5.select2-container--disabled .select2-selection {
    background-color: var(--auth-white);
    border-color: var(--add-gray-2);
}


.bi-check-square:hover, .bi-x-square:hover, .bi-pencil-square:hover, .bi-chat-square-text-fill:hover, .tabulator-cell.hoverCell:hover, .tabulator-cell .rounded-pill:hover {
    cursor: pointer;
}

/* Select2 Hide Selected options */
.hide-selected .select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--selected {
    display: none;
}

/* header search control */
@media screen and (min-width:1400px) {
    .input-group.max-width-search {
        max-width: 50%;
        margin-left: 50%;
    }
}

/* dropdown style*/
.color-gray-2 {
    color: var(--auth-gray-2);
}

.smaller-dropdown {
    font-size: .8em;
    padding-left: 5px;
}

.header-dropdown {
    font-size: .9em;
}

/* search toggles */
.input-group.closed, button.closed {
    display: none;
}

.open .select2.select2-container.select2-container--bootstrap-5 {
    width: calc(100% - 42px) !important;
}


.input-group.open .btn {
    border-left: none;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

:root {
    --page-header-height: 3.5rem;
    --page-header-margin: .5rem;
    --navbar-height: calc(3rem + 15px);
    --tabs-height: 50px;
}

@media (max-width: 1240px) {
    #divWProjDetails {
        --tabs-height: calc(100px - 0.75rem);
    }
}

.page-header {
    display: flex;
    align-items: center;
    height: var(--page-header-height);
    margin-left: var(--page-header-margin);
    margin-right: var(--page-header-margin);
    border-bottom: 1px solid var(--auth-gray);
}

.page-header h1 {
    padding-left: 0.5rem;
}

.page-header > * {
    margin: 0px;
}

.header-subtitle {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.header-subtitle h4 {
    font-size: 1rem;
}

.header-subtitle h1, .header-subtitle h4 {
    margin-bottom: 0;
}

.header-btn {
    display: flex;
    align-items: center;
    height: var(--page-header-height);
}

footer.footer {
    border-top: 7px solid var(--auth-lt-gray);
}

.fixed-header, .fixed-breadcrumb, .fixed-tabs, .fixed-tabs-with-breadcrumb {
    position: fixed;
    top: var(--navbar-height);
    left: .25rem;
    z-index: 1030;
    width: calc(100% - var(--page-header-margin));
    background-color: var(--auth-white);
}

.fixed-breadcrumb {
    width: calc(100% - var(--page-header-margin) - 1rem);
    left: .75rem !important;
}

    .fixed-header + .content-with-header,
    .fixed-breadcrumb + .content-with-header {
        margin-top: var(--page-header-height);
       
    }

.fixed-header.header-with-button + .content-with-header {
    margin-top: calc(var(--page-header-height) * 2);
}

.fixed-breadcrumb + .fixed-header {
    top: calc(2*var(--page-header-height));
}

.fixed-tabs-with-breadcrumb {
    top: calc(3*var(--page-header-height));
}

.fixed-tabs {
    top: calc(var(--page-header-height)*2 + .5rem - 1px);
}

.fixed-tabs + .tab-view-container {
    margin-top: calc(var(--page-header-height) + var(--tabs-height) );
}

.fixed-tabs-with-breadcrumb + .tab-view-container {
    margin-top: calc( 2*var(--page-header-height) + var(--tabs-height) - .5rem);
}

.modal-open .fixed-breadcrumb {
    width: calc(100% - 41.33px);
}

.modal-open .fixed-header {
    width: calc(100% - 24.6px);
}

.modal-open .fixed-tabs, .modal-open .fixed-tabs-with-breadcrumb {
    width: calc(100% - 1.5rem);
}


.modal ul.errorlist li {
    display: block;
    margin: 10px 0;
}

.content-with-header {
    margin: 0.25rem;
    margin-top: 0;
    width: calc(100% - .5rem - 1px);
}

.fixed-top {
    z-index: 1040;
}

input[type=number]:not(.show-spin-buttons)::-webkit-outer-spin-button,
input[type=number]:not(.show-spin-buttons)::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number]:not(.show-spin-buttons) {
    -moz-appearance: textfield;
}


.m-spacer {
    margin: 0.16rem !important;
}

modal.fade.zoom .modal-dialog {
    transition: transform 0.2s ease-out;
    transform: scale(1);
}

.modal.fade.zoom:not(.show) .modal-dialog {
    transform: scale(0.3);
}

.modal-backdrop.show {
    opacity: 0.3;
}

.has-clear {
    display: block;
    width: 100%;
}

.has-clear-auto {
    width: auto;
}

.has-clear.shown {
    display: flex;
    flex-wrap: wrap;
}

.has-clear.shown span.select2.select2-container.select2-container--bootstrap-5 {
    flex: 0 0 calc(100% - 35px);
}

.has-clear.shown .select2-container--bootstrap-5 .select2-selection {
    border-radius: .25rem 0 0 .25rem;
}

.btn.clear-connected {
    border-radius: 0 .25rem .25rem 0;
}

.btn.btn-select-end {
    border: 1px solid #ced4da;
    border-left: none;
    font-size: .9em;
    padding-top: 8px;
}

.tabulator-header-filter input:focus,
.select2-container--classic.select2-container--open .select2-selection--multiple,
.select2-container--classic.select2-container--open .select2-dropdown {
    border-color: var(--auth-blue) !important;
}

.tabulator-edit-list .tabulator-edit-list-item:hover,
option:hover, .select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable,
.select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #e9ecef;
    color: black;
}

.tabulator-edit-list .tabulator-edit-list-item.active,
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--selected,
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) {
    background-color: var(--auth-logo-orange);
}

.tabulator-edit-list .tabulator-edit-list-item.focused {
    /*outline: 0px  var(--auth-logo-orange);*/
    background-color: #dee2e6;
    outline: 0px transparent;
}

.datepicker table tr td.active,
.datepicker table tr td.active:hover {
    background-image: none;
    background: linear-gradient( 0deg, gold, var(--auth-logo-orange));
}

@media(max-width: 1265px) {
    #mainNav #settings .label,
    #mainNav #security .label {
        display: none;
    }
}


.rate-table {
}

.rate-table .header-row,
.rate-table .header-row-comparison,
.rate-table .body .rates-row,
.rate-table .body .rates-row-comparison {
    display: grid;
    grid-auto-rows: 1fr;
}

.rate-table .header-row,
.rate-table .body .rates-row {
    grid-template-columns: 200px 1fr 60px 50px;
}

.rate-table .body .rates-row,
.rate-table .body .rates-row-comparison {
    margin: 0;
}

/*.rate-table .body .rates-row:not(:first-of-type) {
        margin-top: 0.25rem;
    }*/

/*.rate-table .body .rates-row-comparison:not(:first-of-type) {
        margin-top: 0.5rem;
    }*/

.rate-table .header-row div {
    height: 2.5rem;
    line-height: 2.5rem;
    margin-top: auto;
    font-weight: bold;
    text-align: center;
    font-size: 0.8rem;
}

.rate-table .header-row-comparison div,
.rate-table .header-row-label div {
    height: 1.5rem;
    line-height: 1.5rem;
    margin-top: auto;
    font-weight: bold;
    text-align: center;
    font-size: 0.8rem;
}


.rate-table .header-row div.header-cell {
    font-size: 1rem;
    background-color: var(--auth-gray-lt);
    border: 1px solid var(--auth-gray-3);
    border-radius: 5px 5px 0 0;
    padding-left: 1em;
    padding-right: 1em;
    text-align: left;
}

.rate-table .header-row-comparison div.header-cell,
.rate-table .header-row-label div.header-cell {
    background-color: var(--auth-gray-lt);
    border: 1px solid var(--auth-gray-3);
    border-radius: 5px 5px 0 0;
    padding-left: 1em;
    padding-right: 1em;
    text-align: left;
}


.rate-table .body {
    margin-top: 0.25em;
}

.rate-table .body .rates-row > div {
    padding-top: .1em;
    padding-bottom: .1em;
    border-bottom: 2px solid var(--auth-gray-lt);
}

.rate-table .body .rates-row-comparison > div {
    padding-top: .1em;
    padding-bottom: .5em;
    border-bottom: 2px solid var(--auth-gray-lt);
}

.rate-table .rate-type-fields {
    /*margin-top: -10px;*/
}

.rate-table .header-row > div:not(:first-child):not(.separator + .header-cell),
.rate-table .header-row-comparison > div:not(:first-child):not(.separator + .header-cell) {
    margin-left: 0.5em;
}


.rate-table .body .rates-row > div:not(:first-child):not(.separator),
.rate-table .body .rates-row-comparison > div:not(:first-child):not(.separator) {
    padding-left: .5em;
}

.rate-table .body .rates-row .separator,
.rate-table .body .rates-row-comparison .separator {
    border: 0px;
    border-right: 1px solid var(--auth-gray);
    margin-right: calc(50% - 1px);
    margin-bottom: .25rem;
}

.rate-table .body input[disabled],
.rate-table .body select[disabled] {
    color: var(--auth-gray-6);
}


.rate-table .body .rates-row[disabled] {
    color: var(--auth-gray-6);
}

.rate-table .body label {
    font-weight: bold;
}

.rate-table .body .rates-row.inactive {
    opacity: 50%;
}

.rate-table .body .rates-row .not-applicable input,
.rate-table .body .rates-row .not-applicable select,
.rate-table .body .rates-row .not-applicable span.select2-selection,
.rate-table .body .rates-row .not-applicable span.select2-selection__rendered {
    border-color: #D79797;
    color: #D79797;
}

.rate-table .body .rates-row .not-applicable label {
    color: #D79696;
}


.rate-table .body .rates-row .not-applicable .NAGroup label {
    color: black;
}

.rate-table #btn-deleteRate.disabled {
    pointer-events: none;
    opacity: 0.4;
    filter: grayscale(1);
}

.rate-table .body .rates-row .select2-container--disabled .select2-selection--single,
.rate-table .body .rates-row-comparison .select2-container--disabled .select2-selection--single {
    border-color: transparent;
    background-image: none;
    pointer-events: none;
}

.rate-table .body .rates-row .select2-container--disabled .select2-selection__clear,
.rate-table .body .rates-row-comparison .select2-container--disabled .select2-selection__clear {
    display: none;
}

.rate-table .body .rates-row .form-control[readonly],
.rate-table .body .rates-row .form-control[readonly]:focus,
.rate-table .body .rates-row .not-applicable .select2-container--disabled .select2-selection--single,
.rate-table .body .rates-row .not-applicable span.select2-selection__rendered,
.rate-table .body .rates-row-comparison .form-control[readonly],
.rate-table .body .rates-row-comparison .form-control[readonly]:focus,
.rate-table .body .rates-row-comparison .ignored .select2-container--disabled .select2-selection--single,
.rate-table .body .rates-row-comparison .ignored span.select2-selection__rendered,
.rate-table .body .rates-row-comparison .not-applicable .select2-container--disabled .select2-selection--single,
.rate-table .body .rates-row-comparison .not-applicable span.select2-selection__rendered {
    border-color: transparent;
    animation: none;
    box-shadow: none;
}

.rate-breakpoints-list {
    counter-reset: item;
    list-style-type: none;
    padding-left: 0;
}

.rate-breakpoints-row {
    position: relative;
    padding-left: 1rem;
    min-height: 50px;
}

.rate-breakpoints-row::before {
    counter-increment: item;
    content: counter(item) ". ";
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 50%;
}

.rate-row-column {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.rate-table .body .rates-row.surcharge {
    grid-template-columns: 250px 1fr 60px 50px;
}

.rates-row.surcharge div#rateTypeVisible {
    width: 250px;
    vertical-align: super;
}

.rate-table .header-row.hide,
/*#cardBody-4 .rate-table .body #rateTypeColumn,*/
.rate-table .body .rates-row.surcharge .separator,
.rate-table .body .rates-row.surcharge #revenueColumn,
.rate-table .body #costColumn .rates-row.surcharge .NAGroup {
    display: none !important;
}

.rate-fields .select2-simple {
    position: relative !important;
}

.disabled-rate-row {
    background-color: var(--auth-lt-gray);
}

.disabled-rate-row > * {
    display: none !important;
}

.disabled-rates-header {
    color: var(--auth-gray-5);
}

#noRatesBadge {
    background-color: #C15454 !important;
}

input.shrink-readonly[readonly] {
    width: 5vw !important;
    min-width: 5vw !important;
}

/*
    Outbound Rates list rule for  CostBreakpointMax, RevenueBreakpointMax
    WarehouseContracts Rates.
*/

ol.rate-breakpoints-list li .lastBreakpoint {
    display: none;
}

ol.rate-breakpoints-list li:last-of-type .lastBreakpoint {
    display: block;
}

ol.rate-breakpoints-list li:last-of-type input[name="CostBreakpointMax"],
ol.rate-breakpoints-list li:last-of-type input[name="RevenueBreakpointMax"] {
    display: none;
}

/*
    Outbound Rates list rule for  CostBreakpointMax, RevenueBreakpointMax
*/

.preferred-contract {
    font-weight: bold;
    color: var(--auth-orange);
}

.rate-types-accordion {
    border: none !important;
}

.rate-types-accordion .accordion-header {
    display: flex;
    justify-content: flex-end;
    height: 40px;
    min-height: 40px;
}

.rate-types-accordion .accordion-button.rates-collapse {
    border-radius: 10px !important;
    height: 40px;
    width: 40px;
    padding: 16px 12px;
}

.accordion-header.header-sm {
    min-height: 40px;
}

.header-sm .section-header {
    height: 40px;
    font-size: .9rem !important;
}

/*.accordion-item.horizontal-extended {
    min-width: 1280px;
}

.accordion-item.horizontal-collapsed {
    max-width: 600px;
}*/

.accordion-item.horizontal-collapsed .hz-collapsible,
.category-table.horizontal-collapsed .hz-collapsible {
    display: none !important;
}

.accordion-item.horizontal-collapsed .hz-collapsible-span,
.category-table.horizontal-collapsed .hz-collapsible-span {
    visibility: hidden !important;
}

.horizontal-extended .rate-table .header-row-comparison,
.horizontal-extended .rate-table .body .rates-row-comparison {
    grid-template-columns: 175px 50px 650px 1em 780px;
}

.horizontal-collapsed .rate-table .header-row-comparison,
.horizontal-collapsed .rate-table .body .rates-row-comparison {
    grid-template-columns: 175px 200px 1em 200px;
}

.rates-footer-comparison .footer-extended {
    display: grid;
    grid-template-columns: 175px 50px 650px 1em 780px;
}

.rates-footer-comparison .footer-collapsed {
    display: grid;
    grid-template-columns: 175px 200px 1em 200px;
}

.rate-table .body .rates-row-comparison .ignored input,
.rate-table .body .rates-row-comparison .ignored select,
.rate-table .body .rates-row-comparison .ignored span.select2-selection,
.rate-table .body .rates-row-comparison .ignored span.select2-selection__rendered,
.rate-table .body .rates-row-comparison .not-applicable input,
.rate-table .body .rates-row-comparison .not-applicable select,
.rate-table .body .rates-row-comparison .not-applicable span.select2-selection,
.rate-table .body .rates-row-comparison .not-applicable span.select2-selection__rendered {
    border-color: #D79797;
    color: #D79797;
}

.rate-table .body .rates-row-comparison .ignored label,
.rate-table .body .rates-row-comparison .not-applicable label {
    color: #D79696;
}

.rates-row-comparison.empty-row {
    height: 60px;
    border-bottom: 2px solid var(--auth-gray-lt);
}

.invisible {
    visibility: hidden !important;
}

.visible {
    visibility: visible !important;
}

.w-6vw {
    width: 6vw;
}

.w-8vw {
    width: 8vw;
}

.w-10vw {
    width: 10vw;
}

.w-12vw {
    width: 12vw;
}

.dropdown-menu li:first-child .dropdown-item:hover {
    border-top-left-radius: 0.275rem;
    border-top-right-radius: 0.275rem;
}

.dropdown-menu li:last-child .dropdown-item:hover {
    border-bottom-left-radius: 0.275rem;
    border-bottom-right-radius: 0.275rem;
}

.col-flex-25 {
    flex: 2.5;
}

.col-flex-75 {
    flex: 7.5;
}

.col-flex-95 {
    flex: 9.5;
}

/*LOADING VIEW*/

#loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9998;
}

.loading-modal {
    position: relative;
    z-index: 9999;
    background: white;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
}

.spinner {
    margin: 0 auto;
    width: 40px;
    height: 40px;
    border: 4px solid transparent;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.quote-contract {
    flex: 0 0 auto;
}

.quote-contract .contract-name {
    border-bottom: 3px solid var(--auth-logo-orange);
}

.quote-contract .contract-name .contract-tab {
    display: inline-flex;
    align-items: center;
    background: var(--auth-gray-1);
    color: #fff;
    font-weight: 600;
    border-radius: 5px 5px 0 0;
}

.preferred-icon {
    cursor: pointer;
    font-size: 1.5em;
}

.contract-chevron {
    cursor: pointer;
    font-size: 1.2em;
}

.contract-tab.no-preferred {
    border: 2px solid var(--auth-gray-1);
    border-bottom: none;
}

.contract-tab.preferred {
    border: 2px solid var(--auth-logo-orange);
    border-bottom: none;
}






/*Rates comparison*/
.accordion-button.white-toggle::before {
    color: white;
}

.horizontal-extended.category-table.one-column.show-cost .rate-table .header-row-comparison,
.horizontal-extended.category-table.one-column.show-cost .rate-table .body .rates-row-comparison,
.horizontal-extended.category-table.one-column.show-cost .rates-footer-comparison .footer-extended {
    grid-template-columns: 175px 50px 650px;
}

.horizontal-extended.category-table.one-column.show-revenue .rate-table .header-row-comparison,
.horizontal-extended.category-table.one-column.show-revenue .rate-table .body .rates-row-comparison,
.horizontal-extended.category-table.one-column.show-revenue .rates-footer-comparison .footer-extended {
    grid-template-columns: 175px 50px 780px;
}

.horizontal-collapsed.category-table.one-column .rate-table .header-row-comparison,
.horizontal-collapsed.category-table.one-column .rate-table .body .rates-row-comparison,
.horizontal-collapsed.category-table.one-column .rates-footer-comparison .footer-collapsed {
    grid-template-columns: 175px 200px;
}

.category-table .column-hidden,
.total-footer .column-hidden,
.estimates-rates-footer .column-hidden {
    display: none !important;
}

.category-table.one-column .separator,
.total-footer.one-column .separator,
.estimates-rates-footer.one-column .separator {
    display: none !important;
}

.total-footer {
    bottom: 0;
    background-color: var(--auth-gray-lt);
    padding: 8px;
    text-align: center;
    font-weight: bold;
    display: grid;
    grid-auto-rows: 1fr;
    font-size: 0.8rem;
}

.total-footer.extended {
    grid-template-columns: 225px 650px 1em 780px;
}

.total-footer.collapsed {
    grid-template-columns: 175px 200px 1em 200px;
}

.total-footer.extended.one-column.show-cost {
    grid-template-columns: 225px 650px;
}

.total-footer.extended.one-column.show-revenue {
    grid-template-columns: 225px 780px;
}

.total-footer.collapsed.one-column {
    grid-template-columns: 175px 200px;
}

/** Estimates */
.rate-table .header-row-comparison.estimate-rates-header,
.rate-table .body .rates-row-comparison.estimate-rates-row,
.estRates-category-footer {
    display: grid;
    grid-template-columns: 175px 650px 1em 780px;
}

.category-table.one-column.show-cost .rate-table .estimate-rates-header,
.category-table.one-column.show-cost .rate-table .body .rates-row-comparison.estimate-rates-row,
.category-table.one-column.show-cost .estRates-category-footer {
    display: grid;
    grid-template-columns: 175px 650px;
}

.category-table.one-column.show-revenue .rate-table .estimate-rates-header,
.category-table.one-column.show-revenue .rate-table .body .rates-row-comparison.estimate-rates-row,
.category-table.one-column.show-revenue .estRates-category-footer {
    display: grid;
    grid-template-columns: 175px 780px;
}

.estimates-rates-footer {
    bottom: 0;
    background-color: var(--auth-gray-lt);
    padding: 8px;
    text-align: center;
    font-weight: bold;
    display: grid;
    grid-auto-rows: 1fr;
    font-size: 0.8rem;
    grid-template-columns: 175px 650px 1em 780px;
}

.estimates-rates-footer.one-column.show-cost {
    grid-template-columns: 175px 650px;
}

.estimates-rates-footer.one-column.show-revenue {
    grid-template-columns: 175px 780px;
}

/***/


/* Sticky Buttons*/
.sticky-buttons {
    position: fixed;
    right: 0;
    z-index: 1040;
}

.stick-top {
    box-shadow: 2px 4px 8px gray;
}

.stick-bottom {
    bottom: 10px;
    box-shadow: -2px -4px 8px gray;
}

.sticky-container {
    margin-right: 12px;
    padding: 8px;
    background-color: white;
    border-radius: 4px;
    margin-top: -2px;
}

/* Inputs with counter and feedback */

.input-with-counter ~ .invalid-feedback {
  display: inline-block;
  width: 85%;
  visibility: hidden;
}

.input-with-counter.is-invalid ~ .invalid-feedback {
  visibility: visible;
}

.input-with-counter ~ .inline-counter {
  display: inline-block;
  width: 15%;
  text-align: right;
  vertical-align: top;
}

input.input-ellipsis[readonly] {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.accordion-header.metrics-card {
    background-color: var(--add-gray-2);
    color: #000;
    min-height: 45px !important;
}

.accordion-header.metrics-card .accordion-button {
    background-color: var(--add-gray-2);
}

.accordion-header.metrics-card .accordion-button::before {
    color: #000;
}

.select-icon {
    cursor: pointer;
}

.fade-on-disable:disabled {
    color: transparent !important;
}

.option-toggle-item.disabled,
.display-option-item.disabled {
    opacity: 0.5;
    cursor: not-allowed !important;
    pointer-events: none;
}