/* Apply Lexend font globally */
.select2-container * {
    font-family: 'Lexend', sans-serif !important;
    font-size: 13px !important;
    color: var(--color-primary) !important;
}

/* Base select field styling for single select */
.select2-container--default .select2-selection--single {
    background-color: #FFFFFF !important;
    border: 1px solid #C084FC !important; /* Vibrant purple border */
    border-radius: 8px !important;
    height: 34px !important; /* Taller for better touch targets */
    padding: 2px 12px !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    position: relative !important; /* For absolute positioning of clear icon */
}

/* Base select field styling for multiple select */
.select2-container--default .select2-selection--multiple {
    background-color: #FFFFFF !important;
    border-radius: 8px !important;
    height: 45px !important;
    padding: 4px 12px !important;
    transition: all 0.3s ease !important;
}

/* Focus effect for both single and multiple */
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: #9F7AEA !important; /* Purple-400 */
    box-shadow: 0 0 0 4px rgba(159, 122, 234, 0.2) !important;
    outline: none !important;
}

/* Selected option text for single select */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #5B21B6 !important;
    padding-right: 30px !important; /* Space for clear icon */
}

/* Clear button for single select */
.select2-container--default .select2-selection--single .select2-selection__clear {
    color: #5B21B6 !important;
    font-size: 8px !important;
    top: 0 !important;
    position: absolute !important;
    right: 12px !important;
    transform: translateY(-50%) !important; /* Center vertically */
    margin-left: 10px !important; /* Spacing between text and icon */
    padding: 0px !important;
    padding-right: 4px !important;
    padding-left: 4px !important;
    opacity: 0.8 !important;
    transition: opacity 0.2s ease-in-out !important;
}
.select2-container--default .select2-selection--single .select2-selection__clear:hover {
    color: #A21CAF !important;
    opacity: 1 !important;
}

/* Dropdown arrow for single select */
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    right: 36px !important; /* Adjusted to accommodate clear icon */
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #6B21A8 !important;
    font-size: 1.3em !important;
}

/* Placeholder for single select */
.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #A78BFA !important;
    opacity: 0.7 !important;
}

/* Multi-select tags */
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #F3E8FF !important; /* Softer purple background */
    border: 1px solid #C084FC !important; /* Matching border */
    color: #5B21B6 !important;
    border-radius: 20px !important; /* Rounded tags */
    padding: 4px 12px !important;
    margin: 4px 10px 0 0 !important; /* More spacing */
    font-weight: 500 !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* Remove (x) icon in multi-select tags */
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: var(--color-primary) !important;
    font-size: 14px !important; /* Larger for better visibility */
    margin-right: 10px !important; /* Increased spacing */
    padding: 3px 7px !important; /* Better click area */
    font-weight: 600 !important;
    opacity: 0.8 !important;
    border-color: #C084FC !important;
    transition: all 0.2s ease-in-out !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: #A21CAF !important;
    opacity: 1 !important;
}

/* Dropdown menu */
.select2-container--default .select2-dropdown {
    border: 1px solid #D8B4FE !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 16px rgba(124, 58, 237, 0.1) !important;
    background-color: #FFFFFF !important;
    margin-top: 0px !important;
}

/* Dropdown options */
.select2-container--default .select2-results__option {
    padding: 1px 16px !important;
    color: #4B0082 !important;
    transition: all 0.2s ease-in-out !important;
}

/* Highlighted option on hover */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #C084FC !important; /* Vibrant purple */
    color: #FFFFFF !important;
}

/* Selected option in dropdown */
.select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: #F9F5FF !important; /* Very light purple */
    color: #6B21A8 !important;
    font-weight: 500 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    cursor: default;
    padding-left: 16px !important;
    padding-right: 2px !important;
}
