/* AAT — dark/gold theme for flatpickr (booking form Step 1).
 * Brand: #D4AF37 gold, #0a0a0a / rgba(10,10,10,0.95) panel.
 */

.flatpickr-calendar.aat-theme,
.aat-theme.flatpickr-calendar {
    background: rgba(10, 10, 10, 0.97);
    border: 1px solid rgba(212, 175, 55, 0.30);
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(212, 175, 55, 0.06) inset;
    color: #fff;
    font-family: inherit;
    padding: 8px;
    backdrop-filter: blur(8px);
}

.aat-theme.flatpickr-calendar.arrowTop:before,
.aat-theme.flatpickr-calendar.arrowTop:after,
.aat-theme.flatpickr-calendar.arrowBottom:before,
.aat-theme.flatpickr-calendar.arrowBottom:after {
    border-bottom-color: rgba(212, 175, 55, 0.30);
}

/* Month / year header */
.aat-theme .flatpickr-months,
.aat-theme .flatpickr-month,
.aat-theme .flatpickr-current-month {
    background: transparent;
    color: #fff;
    fill: #fff;
}
.aat-theme .flatpickr-current-month input.cur-year,
.aat-theme .flatpickr-current-month .cur-month {
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.05em;
}
.aat-theme .flatpickr-current-month input.cur-year { background: transparent; }
.aat-theme .flatpickr-monthDropdown-months {
    background: rgba(10, 10, 10, 0.95);
    color: #fff;
}
.aat-theme .flatpickr-monthDropdown-months option {
    background: #0a0a0a;
    color: #fff;
}

.aat-theme .flatpickr-prev-month,
.aat-theme .flatpickr-next-month {
    color: #D4AF37;
    fill: #D4AF37;
}
.aat-theme .flatpickr-prev-month:hover svg,
.aat-theme .flatpickr-next-month:hover svg {
    fill: #ebd573;
}
.aat-theme .flatpickr-prev-month svg,
.aat-theme .flatpickr-next-month svg { fill: #D4AF37; }

/* Weekday header */
.aat-theme .flatpickr-weekdays { background: transparent; }
.aat-theme span.flatpickr-weekday {
    color: rgba(212, 175, 55, 0.7);
    background: transparent;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: 0.15em;
}

/* Day cells */
.aat-theme .flatpickr-day {
    color: rgba(255, 255, 255, 0.85);
    border-radius: 10px;
    border: 1px solid transparent;
    background: transparent;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.aat-theme .flatpickr-day:hover,
.aat-theme .flatpickr-day:focus {
    background: rgba(212, 175, 55, 0.12);
    border-color: rgba(212, 175, 55, 0.35);
    color: #fff;
}
.aat-theme .flatpickr-day.today {
    border-color: rgba(212, 175, 55, 0.55);
    color: #D4AF37;
    font-weight: 700;
}
.aat-theme .flatpickr-day.today:hover { background: rgba(212, 175, 55, 0.15); color: #fff; }
.aat-theme .flatpickr-day.selected,
.aat-theme .flatpickr-day.selected:hover {
    background: #D4AF37;
    border-color: #D4AF37;
    color: #0a0a0a;
    font-weight: 800;
}
.aat-theme .flatpickr-day.flatpickr-disabled,
.aat-theme .flatpickr-day.flatpickr-disabled:hover,
.aat-theme .flatpickr-day.prevMonthDay,
.aat-theme .flatpickr-day.nextMonthDay {
    color: rgba(255, 255, 255, 0.20);
    background: transparent;
    border-color: transparent;
}

/* Time picker (inline + dropdown) */
.aat-theme .flatpickr-time {
    background: transparent;
    color: #fff;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.aat-theme .flatpickr-time input {
    background: transparent;
    color: #fff;
    font-weight: 700;
}
.aat-theme .flatpickr-time input:hover,
.aat-theme .flatpickr-time input:focus {
    background: rgba(212, 175, 55, 0.08);
}
.aat-theme .flatpickr-time .flatpickr-time-separator,
.aat-theme .flatpickr-time .flatpickr-am-pm {
    color: #D4AF37;
}
.aat-theme .flatpickr-time .numInputWrapper span.arrowUp:after { border-bottom-color: #D4AF37; }
.aat-theme .flatpickr-time .numInputWrapper span.arrowDown:after { border-top-color: #D4AF37; }

/* Standalone time picker (no calendar) */
.aat-theme.hasTime.noCalendar .flatpickr-time { border-top: 0; }

/* Inline input cursor */
#input_date, #input_time {
    caret-color: transparent;
}
