/* Main Select2 container */
.select2-container .select2-selection--single {
    height: 56px !important;
    padding: 12px 16px !important;
    font-size: 1.125rem;
    border-radius: 0.5rem !important;
    border: 1px solid #d1d5db !important;
    display: flex;
    align-items: center;
}

/* Focus effect like Tailwind */
.select2-container--default.select2-container--focus .select2-selection--single {
    border-color: transparent !important;
    box-shadow: 0 0 0 2px #3b82f6 !important;
}

/* Arrow alignment */
.select2-selection__arrow {
    height: 100% !important;
    right: 12px !important;
}

/* Remove default weird outline */
.select2-selection--single:focus {
    outline: none !important;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: rgb(37 99 235) !important;
    color: white !important;
}

.daterangepicker .drp-buttons .btn {
    cursor: pointer !important;
}

.daterangepicker .drp-buttons .btn:hover {
    cursor: pointer !important;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    background-color: rgb(37 99 235) !important;
    border-color: transparent !important;
    color: #fff !important;
}

.select2-error+.select2-container .select2-selection {
    border: 1px solid rgb(239 68 68) !important;
}

/* Alert Animations */
.alert-box {
    animation: slideInDown 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes slideInDown {
    from {
        transform: translateY(-20px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.alert-progress {
    animation: progressAnim var(--progress-duration) linear forwards;
}

@keyframes progressAnim {
    from {
        width: 100%;
    }

    to {
        width: 0%;
    }
}