.flatpickr-calendar {
    font-family: inherit !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2) !important;
    border: 1px solid #e5e7eb !important;
    padding-bottom: 8px !important;
    width: max-content !important;
}

.flatpickr-months {
    padding: 8px 16px 0 16px !important;
}

.flatpickr-innerContainer {
    padding: 0 16px 8px 16px !important;
}

.flatpickr-day.today {
    border-color: #ec4899 !important;
    background: #ec4899 !important;
    color: white !important;
    font-weight: bold;
}

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
    border-color: #db2777 !important;
    background: #db2777 !important;
    color: white !important;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: white !important;
}

.booking-date-field {
    cursor: pointer;
}

.booking-date-field:hover {
    background: #fff;
}

.booking-date-field .flatpickr-wrapper {
    flex: 1;
    min-width: 0;
}

.booking-date-field .flatpickr-input {
    width: 100%;
    background: transparent;
    border: 0;
    padding: 0;
    font-size: 13px;
    font-weight: 600;
    color: #1e293b;
    cursor: pointer;
    line-height: 1.25;
}

.booking-date-field .flatpickr-input:focus {
    outline: none;
    box-shadow: none;
}

.booking-date-field .flatpickr-input::placeholder {
    color: #64748b;
}
