/* ==========================================================================
   DAYTONA RENT — tema scuro per il date/time picker (flatpickr)
   Sostituisce il calendario nativo del browser con uno in stile con il sito.
   ========================================================================== */

.flatpickr-calendar {
  background: var(--black-soft);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  font-family: var(--font-body);
}
.flatpickr-calendar.arrowTop::before,
.flatpickr-calendar.arrowTop::after { border-bottom-color: var(--black-soft); }
.flatpickr-calendar.arrowBottom::before,
.flatpickr-calendar.arrowBottom::after { border-top-color: var(--black-soft); }

.flatpickr-months { padding: 14px 10px 4px; }
.flatpickr-months .flatpickr-month { color: var(--white-pure); fill: var(--white-pure); }
.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month { fill: var(--grey-light); }
.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg { fill: var(--red-light); }

.flatpickr-current-month .flatpickr-monthDropdown-months {
  background: transparent;
  color: var(--white-pure);
  font-family: var(--font-display);
  font-weight: 600;
}
.flatpickr-current-month .flatpickr-monthDropdown-months option { background: var(--black-soft); }
.flatpickr-current-month input.cur-year { color: var(--white-pure); font-family: var(--font-display); font-weight: 600; }

span.flatpickr-weekday {
  color: var(--grey-light);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 0.72rem;
  text-transform: uppercase;
  background: transparent;
}

.flatpickr-day {
  color: var(--white);
  border-radius: var(--radius-sm);
}
.flatpickr-day.today { border-color: var(--red); }
.flatpickr-day:hover,
.flatpickr-day:focus { background: rgba(225,6,0,0.16); border-color: transparent; }
.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
  background: var(--red);
  border-color: var(--red);
  color: var(--white-pure);
}
.flatpickr-day.inRange {
  background: rgba(225,6,0,0.18);
  border-color: transparent;
  box-shadow: -5px 0 0 rgba(225,6,0,0.18), 5px 0 0 rgba(225,6,0,0.18);
}
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay { color: var(--grey); opacity: 0.4; }

.flatpickr-time {
  border-top: 1px solid rgba(255,255,255,0.1);
}
.flatpickr-time input,
.flatpickr-time .flatpickr-am-pm {
  color: var(--white-pure);
  background: transparent;
  font-family: var(--font-display);
  font-weight: 600;
}
.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus { background: rgba(255,255,255,0.06); }
.flatpickr-time .numInputWrapper span.arrowUp:after { border-bottom-color: var(--grey-light); }
.flatpickr-time .numInputWrapper span.arrowDown:after { border-top-color: var(--grey-light); }
.flatpickr-time .numInputWrapper:hover { background: transparent; }

/* icona calendario dentro al campo, coerente con gli altri input del form */
.js-datetime-wrap { position: relative; }
.js-datetime-wrap i {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--red-light);
  pointer-events: none;
}
