/* =========================
   SELECT2 - BOOTSTRAP STYLE
========================= */
.select2-container {
    width: 100% !important;
}

/* container */
.select2-container .select2-selection--single {
    height: 48px !important;
    border-radius: 0.5rem !important; /* Bootstrap default */
    border: 1px solid #ced4da !important;
    background-color: #fff;

    display: flex !important;
    align-items: center;

    padding: 0;
    transition: all 0.2s ease-in-out;

    box-shadow: none;
}

/* text */
.select2-container .select2-selection__rendered {
    padding-left: 12px !important;
    padding-right: 30px !important;
    font-size: 0.95rem;
    color: #212529;
    line-height: 48px !important;
}

/* arrow */
.select2-container .select2-selection__arrow {
    height: 100% !important;
    right: 10px;
}

/* hover */
.select2-container .select2-selection--single:hover {
    border-color: #86b7fe !important;
}

/* focus (Bootstrap exact look) */
.select2-container--default.select2-container--focus .select2-selection--single {
    border-color: #86b7fe !important;
    box-shadow: 0 0 0 0.25rem rgba(13,110,253,.25);
}

/* disabled */
.select2-container--disabled .select2-selection--single {
    background-color: #e9ecef !important;
    cursor: not-allowed;
}

/* =========================
   DROPDOWN
========================= */
.select2-dropdown {
    border-radius: 0.5rem !important;
    border: 1px solid #dee2e6 !important;
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,.15);
    overflow: hidden;
}

/* search box */
.select2-search--dropdown .select2-search__field {
    border-radius: 0.375rem;
    border: 1px solid #ced4da;
    padding: 6px 10px;
    font-size: 0.9rem;
}

/* options */
.select2-results__option {
    padding: 8px 12px;
    font-size: 0.95rem;
}

/* selected / hover */
.select2-results__option--highlighted {
    background-color: #0d6efd !important;
    color: #fff !important;
}

/* selected persistent */
.select2-results__option--selected {
    background-color: #e9f2ff !important;
    color: #0d6efd !important;
}

/* =========================
   BACKGROUND CLEAN
========================= */
.page-background {
    display: none;
}

#theme-modern .page-background {
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;

    background-color: var(--page-background-color, #f8f9fa);
}

/* subtle overlay */
#theme-modern .page-background .dark-cover {
    display: block;
    position: absolute;
    inset: 0;

    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.05) 0%,
        rgba(0,0,0,0.0) 50%,
        rgba(0,0,0,0.08) 100%
    );
}