/* Filament DatePicker Custom Styles - Air Datepicker Theme */

/* Calendar Container */
.flatpickr-calendar {
    border-radius: 0.75rem !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid #e2e8f0 !important;
    font-family: inherit !important;
}

/* Header/Month Navigation */
.flatpickr-months {
    border-bottom: 1px solid #e2e8f0 !important;
    padding: 1rem !important;
}

.flatpickr-current-month {
    font-weight: 700 !important;
    color: #1e293b !important;
}

.flatpickr-prev-month,
.flatpickr-next-month {
    fill: #4f46e5 !important;
}

.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
    background: #f1f5f9 !important;
}

/* Weekday Labels */
.flatpickr-weekday {
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
}

/* Day Cells */
.flatpickr-day {
    color: #475569 !important;
    border-radius: 0.5rem !important;
}

/* Selected Date */
.flatpickr-day.selected,
.flatpickr-day.selected:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.startRange.endRange {
    background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
    border-color: transparent !important;
    color: white !important;
    font-weight: 600 !important;
}

/* Date Range */
.flatpickr-day.inRange {
    background: rgba(79, 70, 229, 0.1) !important;
    border-color: transparent !important;
    color: #4f46e5 !important;
    box-shadow: none !important;
}

/* Hover State */
.flatpickr-day:hover:not(.selected):not(.startRange):not(.endRange):not(.disabled) {
    background: #f8fafc !important;
    border-color: #4f46e5 !important;
    color: #4f46e5 !important;
}

/* Today */
.flatpickr-day.today {
    border-color: #4f46e5 !important;
    color: #4f46e5 !important;
    font-weight: 700 !important;
}

.flatpickr-day.today:hover {
    background: #f8fafc !important;
    border-color: #4f46e5 !important;
}

.flatpickr-day.today.selected {
    background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
    color: white !important;
}

/* Disabled Dates */
.flatpickr-day.disabled,
.flatpickr-day.disabled:hover {
    color: #cbd5e1 !important;
    cursor: not-allowed !important;
}

/* Input Field Styling */
input.flatpickr-input,
.fi-input[readonly] {
    cursor: pointer !important;
}

/* Time Picker */
.flatpickr-time {
    border-top: 1px solid #e2e8f0 !important;
}

.flatpickr-time input {
    color: #1e293b !important;
    font-weight: 600 !important;
}

.flatpickr-time input:hover {
    background: #f8fafc !important;
}

.numInputWrapper:hover {
    background: transparent !important;
}

.flatpickr-time .arrowUp,
.flatpickr-time .arrowDown {
    border: none !important;
}

.flatpickr-time .arrowUp:after,
.flatpickr-time .arrowDown:after {
    border-color: #4f46e5 !important;
}

/* Month/Year Select Dropdowns */
.flatpickr-monthDropdown-months,
.numInput.cur-year {
    font-weight: 700 !important;
    color: #1e293b !important;
}

.flatpickr-monthDropdown-months:hover,
.numInput.cur-year:hover {
    background: #f8fafc !important;
}

/* Animation */
.flatpickr-calendar.open {
    animation: fadeIn 0.2s ease-in-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
