:root {
    /* VESO color palette */
    --vesoaqualab-blue:#06163A;
    --vesoaqualab-light-blue: #A5E4FA;
    --vesoblue: #1F2E4F;
    --vesoorange: #FF9E73;
    --vesogreen: #B4CDB3;
    --vesodarkgreen: #517D94;
}

/* Theme dependency */

[data-theme="light"] {
    --background-color: #B4B4B4;
    --font-color: var(--vesoaqualab-blue);
    --warning-color: #f5c945;
    --bg-success-color: #4ebf52;
    --success-color: #259929;
    --danger-color: #dc3545;
    --vesoblue-light: rgba(10,73,118,.52);
    --warning-font-color: #f5c945;
    --button-font-color: white;
    --primary-button-color: #007bff;
    --secondary-button-color: #6C757D;
    --secondary-outline-button-color: var(--primary-button-color);
    --table-header-color: #0A4976;
    --table-border-color: #dee2e6;
    --table-background-color: white;
    --table-striped-color: white;
    --table-background-hover-color: #FFEFC6;
    --table-background-hover-font-color: var(--font-color);
    --table-background-current-day-color:  #117DCA;
    --modal-background-color: var(--table-background-color);
    --dropdown-background-color: var(--vesoaqualab-blue);
    --weekschedule-background-standard-task-color: #E8E8E8;
    --table-striped-even-color: var(--weekschedule-background-standard-task-color);
    --table-striped-odd-color: white;
    --subcard-background-color: #f7f5f5;
    --weekschedule-table-header-icon-color: white;
    --navbar: var(--vesoaqualab-blue);
    --tab-pane-button-color: var(--primary-button-color);
    --disabled: gray;
}

[data-theme="dark"] {
    --background-color: var(--vesoblue);
    --font-color: white;
    --warning-color: #dee069;
    --danger-color: #e06d69;
    --bg-success-color: #86cf8d;
    --success-color: #86cf8d;
    --vesoblue-light: var(--vesoaqualab-light-blue);
    --warning-font-color: var(--vesoaqualab-blue);
    --button-font-color: var(--vesoaqualab-blue);
    --primary-button-color: var(--vesoaqualab-light-blue);
    --secondary-button-color: var(--vesoorange);
    --secondary-outline-button-color: var(--vesoorange);
    --table-header-color: var(--vesoorange);
    --table-border-color: #dee2e6;
    --table-background-hover-color: var(--vesoaqualab-light-blue);
    --table-background-hover-font-color: var(--button-font-color);
    --table-background-color: var(--vesoaqualab-blue);
    --table-striped-color: var(--vesoblue);
    --table-background-current-day-color:  var(--vesogreen);
    --modal-background-color: var(--vesoblue);
    --dropdown-background-color: white;
    --weekschedule-background-standard-task-color: #E8E8E8;
    --table-striped-even-color: var(--vesoaqualab-blue);
    --table-striped-odd-color: var(--vesoblue);
    --subcard-background-color: var(--vesoblue);
    --weekschedule-table-header-icon-color: var(--vesoaqualab-light-blue);
    --navbar: var(--vesoaqualab-blue);
    --tab-pane-button-color: var(--secondary-button-color);
    --disabled: gray;
}

.sortable-list .item {
    list-style: none;
    display: flex;
    cursor: move;
    background: var(--table-background-color);
    color: var(--font-color);
    align-items: center;
    border-radius: 5px;
    padding: 10px 13px;
    margin-bottom: 11px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.06);
    border: 1px solid #ccc;
    justify-content: space-between;
}

.clickable-table-header{
    color: var(--warning-font-color) !important;
}

.rawDataTable tbody tr:not(#input_row):not(.viewOnly) td:hover{
    background-color: var(--table-background-hover-color) !important;
    color: var(--table-background-hover-font-color);
    cursor: pointer;
}

.rawDataTable .form-control:disabled {
    background-color: var(--disabled) !important;
    color: white;
}

.disabled-text {
    background-color: var(--disabled) !important;
    color: white;
    border-radius: 3px;
}

.select2-container{
    color: var(--vesoblue) !important;
}

.select2-selection--single {
    height: 100% !important;
}
.select2-selection__rendered{
    word-wrap: break-word !important;
    text-overflow: inherit !important;
    white-space: normal !important;
}

.navbar, .footer{
    background-color: var(--navbar);
}

.table-bordered thead{
    background-color: var(--table-header-color) !important;
    color: var(--button-font-color) !important;
}

.master-schedule-static-header{
    background-color: var(--table-background-current-day-color) !important;
    color: var(--button-font-color) !important;
}

.table-bordered thead th,
.table-bordered td,
.table-bordered th{
    border: 1px solid var(--table-border-color);
    border-bottom: 1px solid var(--table-border-color);
}

.table-background-current-day {
    background-color: var(--table-background-current-day-color) !important;
    color:var(--button-font-color);
}

.table-striped tbody tr:nth-of-type(even) {
    background-color:var(--table-striped-odd-color) !important;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color:var(--table-striped-even-color) !important;
}

.dropdown-menu, .menu-item{
    color: var(--button-font-color) !important;
    background-color: var(--dropdown-background-color);
}

.modal-content{
    background-color: var(--modal-background-color);
    color: var(--font-color);
}

.bg-medio {
    background-color: var(--background-color);
    color: var(--font-color) !important;
}

.bg-success {
    background-color: var(--bg-success-color) !important;
    color: var(--vesoaqualab-blue) !important;
}

.bg-warning, .badge-success, .btn-success{
    background-color: var(--success-color) !important;
    color: var(--button-font-color) !important;
}

.bg-danger, .badge-danger, .btn-danger{
    background-color: var(--danger-color) !important;
    color: var(--button-font-color) !important;
}

.bg-warning, .badge-warning, .btn-warning, .table-warning{
    background-color: var(--warning-color) !important;
    color: var(--vesoaqualab-blue) !important;
}

.table-success, .text-success, .text-success {
    color: var(--success-color) !important;
}

.text-danger {
    color: var(--danger-color) !important;
}

.text-warning {
    color: var(--warning-color) !important;
}

.text-vesoblue-light {
    color: var(--vesoblue-light) !important;
}

.badge-dark {
    background-color: var(--secondary-button-color) !important;
    color: var(--button-font-color) !important;
}

.username-badge{
    background-color: var(--secondary-button-color) !important;
    color: var(--button-font-color) !important;
}

.text-theme-dependent {
    color: var(--font-color) !important;
}

.card {
    margin-bottom: 10px;
    background-color: var(--table-background-color);
    color: var(--font-color);
    border-radius: 0.5rem !important;
}

.sub-card {
    margin-bottom: 10px;
    background-color: var(--subcard-background-color);
    color: var(--font-color);
    border: var(--secondary-outline-button-color) 1px solid;
    border-radius: 0.25rem !important;
} 

.btn-primary{
    color: var(--button-font-color) !important;
    background-color: var(--primary-button-color) !important;
}

.btn-light, .btn-secondary{
    color: var(--font-color) !important;
    border-color: var(--secondary-button-color) !important;
    background-color: var(--table-background-color) !important;
}

.btn-secondary-icon {
    color: var(--secondary-button-color) !important;
}

.btn-outline {
    border-color: var(--primary-button-color) !important;
}

.btn-outline-secondary{
    color: var(--secondary-outline-button-color) !important;
    border-color: var(--secondary-outline-button-color);
}

.btn-outline-secondary:hover{
    background-color: var(--background-color) !important;
    border-color: var(--secondary-outline-button-color);
}

.close {
    color: var(--secondary-button-color);
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    text-shadow: none;
    opacity: 1;
}

.close:hover {
    color: var(--primary-button-color);
}

.breadcrumb {
    padding: .5rem 01rem;
    margin-bottom: 0.35rem;
    background-color: var(--table-background-color);
}

.breadcrumb-item {
    color: var(--font-color) !important;
}

.full-width a {
    width:100%;
}

.weekbox-mobile {
    padding-top: 0;
    padding-left: 3px;
    padding-bottom: 0;
    width: 97%;
    float: left;
    margin-bottom: 2px;
    max-height: 34px;
    line-height: 1rem;
    color: var(--font-color);
    background-color: var(--weekschedule-background-standard-task-color);
    border-radius: 3px;
}
.weekbox {
    padding-top: 0;
    padding-bottom: 0;
    width: 82%;
    float: left;
    margin-bottom: 2px;
    max-height: 34px;
    line-height: 1rem;
    color: var(--font-color);
    background-color: var(--weekschedule-background-standard-task-color);
    border-radius: 3px;
}
.icon-table-header {
    background-color: var(--weekschedule-table-header-icon-color);
}

.btn-link, .breadcrumb a{
    color: var(--primary-button-color) !important;
}

.list-group-item-primary{
    background-color: var(--primary-button-color) !important;
}

.nav-item .btn-link{
    color: white !important;
}

.nav-item .list-group-item:hover {
    background-color: var(--vesoaqualab-light-blue);
    color: black;
}

.nav-item .list-group-item, .dropdown-item {
    background-color: var(--dropdown-background-color);
    color: var(--button-font-color)
}

.nav-tabs{
    border-bottom: 1px solid var(--tab-pane-button-color)  !important;
}

.nav-link {
    color: var(--tab-pane-button-color) !important;
}
.nav-link:hover {
    border-color: var(--secondary-button-color) !important;
    color: var(--secondary-button-color) !important;
}
.nav-link.active {
    border-color: var(--tab-pane-button-color) var(--tab-pane-button-color) var(--table-background-color) !important;
    background-color: var(--button-font-color) !important;
    color: var(--font-color) !important;
}

/* End theme dependency */

.notify-count {
    border-radius: 0.8em;
    -moz-border-radius: 0.8em;
    -webkit-border-radius: 0.8em;
    color: #ffffff;
    display: inline-block;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.2em;
    margin-right: 5px;
    text-align: center;
    width: 1.2em;
}

.didre-logo {
    text-transform: uppercase;
    letter-spacing: -1px;
    font-size: 1.25rem;
    font-weight: 500;
}

.btn-cell-list {
    width: 25px;
    font-size: 1.15rem;
    font-weight: 500;
}

.nav-text {
    font-size: 1.15rem;
    font-weight: 500;
}

.nav-item {
    margin-right: 5px;
}

.text-vesoblue {
    color: #0A4976 !important;
}


.text-vesogreen {
    color: #B4CDB3 !important;
}

.text-medio {
    color: #b4b4b4 !important;
}

.card {
    margin-bottom: 10px;
}

.nav-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.unselectable {
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+/Edge */
    user-select: none; /* Standard */
}

.card-sub-title{
    display: flex;
    flex-direction: row;
    gap: 10px;
}

.alert-black {
    font-weight: bold;
    color: #fff4f7;
    background-color: #404040;
    border-color: #404040;
}

.alert-black hr {
    border-top-color: #707070;
}

.alert-black .alert-link {
    color: #002752;
}

.alert-center-text {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding-top: 50px;
    padding-bottom: 20px;
}

.inlineblock {
    display: inline-block !important;
}

.inlineheader {
    display: inline-block !important;
    margin-right: 10px;
}

@media (min-width: 992px) {
    .modal-lg, .modal-xl {
        max-width: 1150px !important;
    }
}
.xxl-modal-dialog{
    width: 90%;
    margin: 10px;
    padding: 10px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 20%);
}

.checkbox-1x {
    transform: scale(1.5);
}

.table-primary-dark{
    background-color: var(--vesoorange);
}

.table-custom-border td,
.table-custom-border th{
    border-bottom: 1px solid var(--vesoorange);
}

.table-custom-border  thead th {
    color: var(--vesoaqualab-blue);
    background-color: var(--vesoorange);
}

.table-bordered-dark .first-column{
    color: white !important;
    background-color: var(--vesoaqualab-blue) !important;
}

.table-bordered-dark thead th,
.table-bordered-dark td,
.table-bordered-dark th{
    border: 1px solid var(--vesoaqualab-blue);
    border-bottom: 1px solid var(--vesoaqualab-blue);
}

.table-bordered-dark thead th {
    color: var(--vesoaqualab-blue);
    background-color: var(--vesoorange);
}

.tr-light-gray{
    background: rgba(255,255,255,.75) !important;
}

.table-background-current-day-dark {
    background-color: var(--vesogreen) !important;
    color:var(--button-font-color);
}

.table-striped-dark tbody tr:nth-of-type(even) {
    background-color:var(--vesoaqualab-blue);
}

.table-striped-dark tbody tr:nth-of-type(odd) {
    background-color:var(--vesoblue);
}

td .checkbox-1x {
    margin-left:7px;
    margin-top: 12px;
}

.checkbox-2x {
    transform: scale(1.75);
    margin-left:3px;
    margin-top: 3px;
}

.border-grey {
    border: 1px solid #9a9a9a;
    border-radius: 4px;
}

.btn {
    padding: 0.35rem .6rem;
}

.custhide {
    display: none;
}

.btn-fontawsm {
    width: 35px !important;
}
td .btn, th .btn {
    padding: 2px 6px;
}
td .form-control {
    padding: 2px 6px;
    height: 30px;
}

.card-mini-body {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 0.5rem 0.75rem;
}

.card-mini-body-button-only {
    display: flex;
    padding: 0.2rem;
    flex-direction: column;
    position: relative;
    color: var(--vesoaqualab-blue);
}

.badge-lg {
    padding: 6px 8px;
    font-size: 90%;
    font-weight: 600;
}

.fa-textneighbour {
    display: inline-block;
    margin-bottom: 10px;
}

.fa-vertical-align {
    vertical-align: middle;
}

.img-bg-1p {
    background: url(../images/bg_05.png) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
}

.background-error-page {
    background: url(../images/crying-salmon.jpg) no-repeat center center;
    background-size: auto 80%;
    background-color: #a3ccd2;
    height: 91vh;
    padding-top: 100px;
    padding-bottom: 3%;
}

.translucent {
    background-color: rgba(33, 37, 41, 0.8) !important;
}

.unbreakable {
    white-space: nowrap !important;
}

.alert {
    width: auto !important;
}
.tab-border {
    border: 1px solid rgba(0,0,0,.125);
    border-radius: .25rem;
}

hr {
    border: 0;
    height: 1px !important;
    background: #808080;
    background-image: linear-gradient(to right, #ececec, #808080, #ECECEC);
}

.navbar {
    padding-top: .04rem;
    padding-bottom: .05rem;
}

.list-sm {
    padding: .25rem .5rem;
}

.item.dragging {
    opacity: 0.6;
}
.item.dragging :where(.details, i) {
    opacity: 0;
}

.bg-light-purple {
    background-color: #a64dff  !important;
}

.table-wrap-xy {
    border: 1px solid #3d3d3d;
    outline-style: solid;
    outline-color: #9e9e9e;
}

@media (max-width: 900px) {
    #invoicing_chart{
        display: none;
    }
}

.sortable-list {
    background: #fff;
    border-radius: 7px;
    padding: 30px 10px 20px;
}

.container {
    width: 100%;
}

@media (min-width: 576px) {
    .container {
        max-width: 100%;
    }
}
@media (min-width: 768px) {
    .container {
        max-width: 97%;
    }
}
@media (min-width: 850px) {
    .container {
        max-width: 95%;
    }
}
@media (min-width: 992px) {
    .container {
        max-width: 93%;
    }
}
@media (min-width: 1200px) {
    .container {
        max-width: 90%;
    }
}
@media (min-width: 1400px) {
    .container {
        max-width: 88%;
    }
}
@media (min-width: 1600px) {
    .container {
        max-width: 86%;
    }
}
@media (min-width: 1800px) {
    .container {
        max-width: 85%
    }
}

.fa-xl {
    font-size: 1.63333333em;
    line-height: 0.75em;
    vertical-align: -15%;
}

.border-cust-medio {
    border-left:    #b4b4b4 1px solid;
    border-bottom:  #b4b4b4 1px solid;
}

.no-outer-border-table tr:first-child td {
    border-top: 0;
}
.no-outer-border-table tr td:first-child {
    border-left: 0;
}
.no-outer-border-table tr:last-child td {
    border-bottom: 0;
}
.no-outer-border-table tr td:last-child {
    border-right: 0;
}
.no-outer-border-table tr:first-child th {
    border-top: 0;
}
.no-outer-border-table tr th:first-child {
    border-left: 0;
}

/* Portrait tablet to landscape and desktop */
@media (min-width: 850px) and (max-width: 4000px) {
    .mt-sticky-week {
        position: fixed;
        top: 2.6rem;
        right: 0;
        left: 0;
        z-index: 999;
        border-bottom: none;
    }
    .mt-sticky-week-giveroom {
        margin-top: 1.8rem;
        border-top: none !important;
    }

    .tableFixHead          { overflow-y: auto; height: 100px; }
    .tableFixHead thead th { position: sticky; top: 5.2rem; z-index:2; background-color: var(--table-header-color);}
}