/* Select2 Dark Theme Customization */
.select2-container--custom-dark .select2-selection--multiple {
    background: #000000;
    border: 1px solid rgba(187, 134, 252, 0.3);
    border-radius: 8px;
    padding: 0.5rem;
    min-height: 45px;
    outline: none !important;
}

.select2-container--custom-dark .select2-selection--multiple .select2-selection__placeholder {
    color: #bb86fc !important;
    font-size: 0.9rem;
    opacity: 0.6;
    background: transparent !important;
}

.select2-container--custom-dark .select2-selection__placeholder {
    color: #bb86fc !important;
    opacity: 0.6;
    background: transparent !important;
}

.select2-container--custom-dark .select2-selection--multiple:focus,
.select2-container--custom-dark.select2-container--focus .select2-selection--multiple {
    border-color: rgba(187, 134, 252, 0.5);
    box-shadow: none;
    outline: none;
}

.select2-container--custom-dark .select2-selection__choice {
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(187, 134, 252, 0.3);
    border-radius: 12px;
    padding: 0.25rem 0.75rem;
    margin: 0.25rem;
    font-size: 0.85rem;
}

.select2-container--custom-dark .select2-selection__choice__remove {
    display: none !important;
}

.select2-container--custom-dark .select2-selection__choice {
    cursor: pointer;
    transition: all 0.2s ease;
}

.select2-container--custom-dark .select2-selection__choice:hover {
    opacity: 0.7;
    transform: scale(0.95);
}

.select2-container--custom-dark .select2-search__field {
    color: #ffffff;
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

.select2-container--custom-dark .select2-search__field:focus {
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

.select2-container--custom-dark .select2-search__field::placeholder {
    color: #bb86fc !important;
    opacity: 0.5;
    background: transparent !important;
}

.select2-search--inline .select2-search__field {
    color: #ffffff !important;
    background: transparent !important;
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

.select2-search--inline .select2-search__field:focus {
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

.select2-search--inline .select2-search__field::placeholder {
    color: #bb86fc !important;
    opacity: 0.5;
    background: transparent !important;
}

.select2-container--custom-dark .select2-selection__rendered {
    background: transparent !important;
}

.select2-container--custom-dark .select2-selection__rendered {
    padding-left: 0;
}

.select2-container--custom-dark .select2-selection--multiple .select2-selection__rendered li {
    margin: 0.25rem 0.25rem 0.25rem 0;
}

.select2-dropdown {
    background: #1e1e1e !important;
    border: 1px solid rgba(187, 134, 252, 0.3);
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
}

.select2-results {
    background: #1e1e1e !important;
}

.select2-results__options {
    background: #1e1e1e !important;
}

.select2-container--custom-dark .select2-results__option {
    background: #1e1e1e;
    color: #e0e0e0;
    padding: 0.75rem 1rem;
    transition: all 0.2s ease;
}

.select2-container--custom-dark .select2-results__option--highlighted {
    background: linear-gradient(135deg, rgba(187, 134, 252, 0.2), rgba(3, 218, 198, 0.1));
    color: #ffffff;
}

.select2-container--custom-dark .select2-results__option--selected {
    display: none !important;
}

.select2-results__option::before,
.select2-results__option::after,
.select2-container--custom-dark .select2-results__option::before,
.select2-container--custom-dark .select2-results__option::after {
    display: none !important;
    content: none !important;
}

.select2-container--custom-dark .select2-search--dropdown .select2-search__field {
    background: rgba(0, 0, 0, 0.5);
    border: 1px solid rgba(187, 134, 252, 0.3);
    color: #ffffff;
    border-radius: 6px;
    padding: 0.5rem;
}

/* Date range picker styling */
.daterange-picker {
    background: #000000 !important;
    border: 1px solid rgba(187, 134, 252, 0.3);
    color: #bb86fc !important;
    cursor: pointer;
    padding: 0.75rem 1rem;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.daterange-picker::placeholder {
    color: #bb86fc !important;
    opacity: 0.7;
}

.daterange-picker:focus {
    background: rgba(0, 0, 0, 0.5);
    border-color: rgba(187, 134, 252, 0.5);
    box-shadow: none;
    outline: none;
}

.daterangepicker {
    background: #1e1e1e;
    border: 1px solid rgba(187, 134, 252, 0.3);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
    border-radius: 12px;
}

.daterangepicker .calendar-table {
    background: transparent;
    border: none;
}

.daterangepicker td.available:hover,
.daterangepicker th.available:hover {
    background: rgba(187, 134, 252, 0.2);
    color: #ffffff;
}

.daterangepicker td.off {
    background: transparent !important;
    color: #4a4a4a !important;
}

.daterangepicker td.off.available:hover {
    background: rgba(187, 134, 252, 0.1) !important;
    color: #6a6a6a !important;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    background: linear-gradient(135deg, #bb86fc, #03dac6);
    color: #000000;
}

.daterangepicker td.in-range {
    background: rgba(187, 134, 252, 0.1);
    color: #ffffff;
}

.daterangepicker .ranges li {
    color: #e0e0e0;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    margin-bottom: 0.5rem;
    transition: all 0.2s ease;
}

.daterangepicker .ranges li:hover {
    background: rgba(187, 134, 252, 0.2);
    color: #ffffff;
}

.daterangepicker .ranges li.active {
    background: linear-gradient(135deg, #bb86fc, #03dac6);
    color: #000000;
}

.daterangepicker select.monthselect,
.daterangepicker select.yearselect {
    background: rgba(0, 0, 0, 0.5);
    border: 1px solid rgba(187, 134, 252, 0.3);
    color: #ffffff;
    border-radius: 6px;
}

.daterangepicker .drp-buttons {
    border-top: 1px solid rgba(187, 134, 252, 0.2);
}

.daterangepicker .btn {
    background: linear-gradient(135deg, #bb86fc, #03dac6);
    border: none;
    color: #000000;
    font-weight: 600;
    border-radius: 8px;
    padding: 0.5rem 1.5rem;
}

.daterangepicker .btn.btn-default {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #e0e0e0;
}

.daterangepicker .btn:hover {
    opacity: 0.9;
}

.daterangepicker th,
.daterangepicker td {
    color: #e0e0e0;
}

.daterangepicker .calendar-table thead tr:first-child th {
    color: #bb86fc;
    font-weight: 600;
}

/* Chart interconnectivity visual feedback */
.chart-container {
    transition: all 0.3s ease;
}

.chart-container.filtered {
    opacity: 0.6;
    filter: grayscale(0.3);
}
