/**
 * Colour-coded visit-date calendar for the day-pass add-to-cart form.
 * Green = standard price, gold = peak (weekend/holiday) surcharge, yellow =
 * selected. Progressive enhancement: the native <input type=date> shows if JS
 * is off; once the calendar mounts it takes over. Colours reuse the theme
 * tokens (tokens.css is loaded on Woo pages) with hard fallbacks.
 */
.uforea-visit-date.uforea-cal-on > input[type="date"] {
  position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; margin: -1px;
}
.uforea-cal { display: none; }
/* The whole visit-date block is capped so the calendar and the help note below
   it share one width (client asked they match), tidy on desktop, full-width on
   mobile. The calendar fills that block rather than sitting narrower (was 340px). */
.uforea-visit-date { max-width: 460px; }
.uforea-cal-on .uforea-cal {
  display: block; max-width: 100%; margin-top: 4px;
  border: 1px solid var(--uforea-yellow, #FFBA01); border-radius: 14px;
  padding: 12px 12px 10px; background: var(--paper, #fff);
}
.uforea-cal__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.uforea-cal__title { font-weight: 600; font-size: 15px; color: var(--ink-strong, #2F2A28); }
.uforea-cal__nav {
  width: 32px; height: 32px; border-radius: 999px; border: 1px solid var(--uforea-yellow, #FFBA01);
  background: #fff; cursor: pointer; font-size: 18px; line-height: 1; color: var(--ink-strong, #2F2A28);
  display: grid; place-items: center;
}
.uforea-cal__nav:disabled { opacity: .35; cursor: default; }
.uforea-cal__dow { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin-bottom: 4px; }
.uforea-cal__dow span { text-align: center; font-size: 11px; color: var(--mute, #6E6560); }
.uforea-cal__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.uforea-cal__pad { aspect-ratio: 1 / 1; }
.uforea-cal__day {
  position: relative; aspect-ratio: 1 / 1; border: 1px solid transparent; border-radius: 9px;
  cursor: pointer; font-size: 14px; color: var(--ink-strong, #2F2A28); background: #f6f6f6;
  display: grid; place-items: center;
}
.uforea-cal__day.is-normal { background: var(--mint, #EAF9E4); }
.uforea-cal__day.is-peak   { background: #FFE08A; }
.uforea-cal__day.is-off    { background: #f3f3f3; color: #c4c4c4; cursor: default; }
.uforea-cal__day.is-today  { box-shadow: inset 0 0 0 1.5px var(--uforea-yellow, #FFBA01); }
.uforea-cal__day.is-sel    { background: var(--uforea-yellow, #FFBA01); color: #2F2A28; font-weight: 700; }
.uforea-cal__day:not(.is-off):not(.is-sel):hover { filter: brightness(.95); }
.uforea-cal__day:focus-visible { outline: 3px solid var(--uforea-yellow, #FFBA01); outline-offset: 1px; }
.uforea-cal__mark { position: absolute; top: 2px; right: 5px; font-size: 10px; font-weight: 700; color: #a8730a; line-height: 1; }
.uforea-cal__legend { display: flex; gap: 16px; margin-top: 12px; font-size: 12px; color: var(--ink, #4A4542); flex-wrap: wrap; }
.uforea-cal__legend .lg { display: inline-flex; align-items: center; gap: 6px; }
.uforea-cal__legend .lg::before { content: ""; width: 13px; height: 13px; border-radius: 4px; display: inline-block; }
.uforea-cal__legend .lg-normal::before { background: var(--mint, #EAF9E4); border: 1px solid #c3e3b6; }
.uforea-cal__legend .lg-peak::before   { background: #FFE08A; border: 1px solid #e6bf62; }
.uforea-cal__note { margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: var(--ink, #4A4542); }
.uforea-cal__note.is-peak { color: #8a6500; }

/* Inline weekend/holiday reprice on the grouped price rows (gold-date pick). */
.uforea-peak-reprice del { color: #9b8f88; font-weight: 400; margin-right: 6px; }
.uforea-peak-reprice del .amount { color: inherit; font-weight: inherit; }
.uforea-peak-reprice ins { text-decoration: none; color: #A05A00; font-weight: 700; }

/* Early-bird (book N+ days ahead) — % mark, legend chip, note tint. */
.uforea-cal__mark--eb { color: #1F7A33; font-weight: 700; }
.uforea-cal__day.is-early.is-normal { box-shadow: inset 0 -2px 0 #7CC68F; }
.uforea-cal__legend .lg-early::before { background: #7CC68F; }
.uforea-cal__note.is-early { color: #1F7A33; }
