/* ++++ CORE ++++ */
    :root,
    [data-bs-theme=light],
    [data-bs-theme=dark] {
        --tblr-primary: #078641 !important;
        --tblr-primary-rgb: 7, 134, 65 !important;
        --tblr-primary-lt-rgb: 229, 247, 237 !important;
    }

    /* ++++ SCROLLBAR ++++ */
    * {
        scrollbar-color: rgba(var(--tblr-scrollbar-color,var(--tblr-body-color-rgb)),.16)
    }

    ::-webkit-scrollbar {
        width: 1rem;
        height: 1rem;
        -webkit-transition: background .3s;
        transition: background .3s
    }
    
    @media (prefers-reduced-motion:reduce) {
        ::-webkit-scrollbar {
            -webkit-transition: none;
            transition: none
        }
    }
    
    ::-webkit-scrollbar-thumb {
        border-radius: 1rem;
        border: 5px solid transparent;
        box-shadow: inset 0 0 0 1rem rgba(var(--tblr-scrollbar-color,var(--tblr-body-color-rgb)),.16)
    }
    
    ::-webkit-scrollbar-track {
        background: 0 0
    }
    
    :hover::-webkit-scrollbar-thumb {
        box-shadow: inset 0 0 0 1rem rgba(var(--tblr-scrollbar-color,var(--tblr-body-color-rgb)),.32);
    }
    
    ::-webkit-scrollbar-corner {
        background: 0 0
    }
    /* ---- SCROLLBAR ---- */

    .font-21 {
        font-size: 1.3125rem !important;
    }

    .notyf-icon{
        font-size: 1.5rem !important;
    }

    a {
        color: rgba(var(--tblr-primary-rgb),var(--tblr-link-opacity,1));
        text-decoration: none;
    }
    
    .text-limited {
        display: block !important;
        white-space: nowrap !important;
        width: 16rem !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .breadcrumb a {
        color: var(--tblr-primary);
        font-weight: 500;
    }

    .nav-item .ti {
        font-size: 20px !important;
    }

    .empty-img img {
        height: 12rem !important;
        width: auto;
    }

    .page-center {
        justify-content: center;
    }

    .pagination {
        --tblr-pagination-focus-box-shadow: 0 0 0 0.25rem rgb(7 134 65 / 25%) !important;
    }

    .form-control:focus {
        border-color: 0 0 0 0.25rem rgb(7 134 65 / 50%) !important;
        box-shadow: 0 0 0 0.25rem rgb(7 134 65 / 25%) !important;
        border-color: var(--tblr-primary) !important;
    }

    .focus .ts-control {
        border-color: 0 0 0 0.25rem rgb(7 134 65 / 50%) !important;
        box-shadow: 0 0 0 0.25rem rgb(7 134 65 / 25%) !important;
        border-color: var(--tblr-primary) !important;
    }

    .form-select:focus {
        border-color: 0 0 0 0.25rem rgb(7 134 65 / 50%) !important;
        box-shadow: 0 0 0 0.25rem rgb(7 134 65 / 25%) !important;
        border-color: var(--tblr-primary) !important;
    }

    .form-check-input:focus {
        border-color: rgb(7 134 65 / 50%) !important;
        box-shadow: 0 0 0 0.25rem rgb(7 134 65 / 25%) !important;
    }

    .col-form-label.optional:after, .form-label.optional:after {
        content: "(Opcional)";
        margin-left: .25rem;
        color: #667382;
    }

    .ts-wrapper .option .title {
        display: block;
    }

    .ts-wrapper .option .url {
        font-size: 12px;
        display: block;
        color: #a0a0a0;
    }

    select, input[type="text"]:not([disabled]), input[type="email"]:not([disabled]), input[type="password"]:not([disabled]), input[type="number"]:not([disabled]), 
    input[type="date"]:not([disabled]), input[type="time"]:not([disabled]), input[type="file"]:not([disabled]), input[type="tel"]:not([disabled]), 
    input[type="url"]:not([disabled]), textarea, .form-select {
        background-color: #f8f8f875 !important;
    }

    .form-select:disabled {
        background-color: var(--tblr-gray-100) !important;
        color: var(--tblr-muted) !important;
    }

    .form-selectgroup-input:focus+.form-selectgroup-label {
        box-shadow: 0 0 0 0.25rem rgb(7 134 65 / 25%) !important;
        border-color: var(--tblr-primary) !important;
    }

    .btn-webmovel {
        background-color: #078641 !important;
    }

    .btn-webmovel:hover {
        background-color: #066933 !important;
    }
    
    .border-primary {
        border-color: #078641 !important;
    }
    
    .nav-item.active::after {
        border: 0 solid #078641 !important;
        border-bottom-width: 2px !important;
    }

    .dropdown-item.active, .dropdown-item:active {
        color: #078641;
        text-decoration: none;
        background-color: rgba(7,132,65,.06);
    }

    .modal-xlg {
        --tblr-modal-width: 900px !important;
    }   

    .nav-link:focus, .nav-link:hover {
        color: #078641;
        text-decoration: none;
    }

    .card-footer-webmovel {
        border-top: none;
    }

    .daterangepicker .drp-buttons .btn {
        margin-left: 8px;
        font-size: 12px;
        font-weight: bold;
        padding: 4px 8px;
        border-radius: var(--tblr-border-radius) !important;
    }

    td.active.start-date.active.end-date.available {
        border-radius: var(--tblr-border-radius) !important;
    }

    .DT_lengh {
        overflow: hidden !important;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 1 !important;
        line-clamp: 1;
        -webkit-box-orient: vertical;
        min-height: 20px !important;
        max-height: 20px !important;
    }

    .litepicker .container__months .month-item-header .button-previous-month, 
    .litepicker .container__months .month-item-header .button-next-month {
        cursor: pointer !important;
    }

    /* .btn-check+.btn:checked:hover { */
    .btn-check:checked+.btn:hover {
        color: var(--tblr-primary) !important;
        background-color: var(--tblr-btn-active-bg) !important;
        border-color: var(--tblr-primary) !important;
    }
/* ---- CORE ---- */

/* ++++ DATERANGE ++++ */
.daterangepicker td.in-range {
    background-color: #b4e4ca !important;
    border-color: transparent !important;
    color: #000 !important;
    border-radius: 0 !important;
}
 
.daterangepicker td.active, .daterangepicker td.active:hover {
    background-color: #078641 !important;
    border-color: transparent !important;
    color: #fff !important;
}
 
.daterangepicker td.end-date {
    border-radius: 0 4px 4px 0 !important;
}
/* ---- DATERANGE ---- */

/* ++++ LOAD SPINNER ++++ */
#page-loader {
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(255,255,255,0.8);
    z-index: 99999;
}

#page-loader::after {
    content: '';
    display: block;
    position: absolute;
    left: 48%; 
    top: 40%;
    width: 40px;
    height: 40px;
    border-style: solid;
    border-color: black;
    border-top-color: transparent;
    border-width: 4px;
    border-radius: 50%;
    -webkit-animation: spin .8s linear infinite;
    animation: spin .8s linear infinite;
}

@-webkit-keyframes spin {
	from { -webkit-transform:rotate(0deg); }
    to { -webkit-transform:rotate(360deg); }
}

@keyframes spin {
	from { transform:rotate(0deg); }
    to { transform:rotate(360deg); }
}
/* ---- LOAD SPINNER ---- */

/* ++++ DATATABLES ++++ */
table.dataTable {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

div.dataTables_wrapper div.dataTables_info {
    padding-top: 0px !important;
}

.dataTable thead th {
    font-size: 0.75rem !important;
    padding: 0.5rem 1rem !important;
}

.dataTable tbody td {
    padding-bottom: 0.6rem !important;
    padding-top: 0.6rem !important;
}

.dataTable > tbody {
    border-color: lightgray !important;
}

.page-link:hover {
    color: var(--tblr-primary) !important;
}

.page-link:focus {
    color: var(--tblr-primary) !important;
}

li.paginate_button.page-item.active a {
    color: white !important;
}

.consumption-option{
    color: #4472C4;
}
/* ---- DATATABLES ---- */


/* ++++ TOM SELECT ++++ */
/* .form-select {
    padding: 0 !important;
} */
/* ---- TOM SELECT ---- */

/* MODAL XXL */
@media (min-width: 1200px) {
    .modal-xxl {
        --tblr-modal-width: 1440px;
    }
}