/* ppr-datepicker.css — iOS-style (dark) one-tap calendar popover for assets/js/ppr-datepicker.js.
   Mimics the iOS 17/18 inline date picker; accent = brand gold #F59E0B instead of iOS blue. No animation. */
.pdp[hidden] { display: none !important; }
.pdp { position: fixed; inset: 0; z-index: 1000; color: #fff; -webkit-tap-highlight-color: transparent;
  font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', system-ui, 'Segoe UI', Roboto, sans-serif; }
.pdp *, .pdp *::before, .pdp *::after { box-sizing: border-box; }
.pdp-backdrop { position: absolute; inset: 0; background: rgba(0, 0, 0, .28); }

.pdp-card { position: fixed; top: 0; left: 0; width: 340px; padding: 4px 8px 10px; background: #1c1c1e; color: #fff;
  border: 1px solid rgba(255, 255, 255, .06); border-radius: 13px;
  box-shadow: 0 14px 44px rgba(0, 0, 0, .55), 0 2px 10px rgba(0, 0, 0, .35); }

/* Header: "October 2026 ›" left, ‹ › right (accent, no circles) */
.pdp-head { display: flex; align-items: center; justify-content: space-between; height: 46px; padding-left: 8px; }
.pdp-month { display: inline-flex; align-items: center; gap: 3px; min-width: 0; }
.pdp-month-t { font-size: 17px; line-height: 22px; font-weight: 600; letter-spacing: -.02em; color: #fff; white-space: nowrap; }
.pdp-month-c { width: 15px; height: 15px; flex: none; fill: none; stroke: #F59E0B; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.pdp-navs { display: inline-flex; align-items: center; margin-right: -2px; }
.pdp-nav { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; margin: 0;
  border: 0; background: transparent; color: #F59E0B; cursor: pointer; touch-action: manipulation; }
.pdp-nav svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.pdp-nav:active:not(:disabled) { opacity: .45; }
.pdp-nav:disabled { color: #48484a; cursor: default; }

/* Weekday row: SUN … SAT */
.pdp-dow { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); height: 22px; margin-bottom: 2px; }
.pdp-dow span { display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; letter-spacing: .01em; color: #8e8e93; }

/* Day grid: 7 columns, 44px rows, 6 rows always */
.pdp-grid { display: block; }
.pdp-row { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.pdp-row > span { display: block; min-width: 0; height: 44px; }
.pdp-day { display: flex; align-items: center; justify-content: center; width: 100%; height: 44px; padding: 0; margin: 0; border: 0;
  background: transparent; color: #fff; font: inherit; cursor: pointer; touch-action: manipulation; }
.pdp-n { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%;
  font-size: 20px; line-height: 1; font-weight: 400; letter-spacing: -.01em; font-variant-numeric: tabular-nums; }
.pdp-day.is-today .pdp-n { color: #F59E0B; font-weight: 600; }
.pdp-day:disabled { cursor: default; }
.pdp-day:disabled .pdp-n { color: #545458; font-weight: 400; }
@media (hover: hover) { .pdp-day:hover:not(:disabled):not(.is-sel) .pdp-n { background: rgba(245, 158, 11, .14); } }
.pdp-day:active:not(:disabled):not(.is-sel) .pdp-n { background: rgba(255, 255, 255, .10); }
.pdp-day.is-sel .pdp-n { background: #F59E0B; color: #0a0a0a; font-weight: 600; }

.pdp button:focus { outline: none; }
.pdp-nav:focus-visible { outline: 2px solid #FACC15; outline-offset: -4px; border-radius: 10px; }
.pdp-day:focus-visible { outline: none; }
.pdp-day:focus-visible .pdp-n { box-shadow: 0 0 0 2px #FACC15; }

/* The field itself: no caret / text selection / iOS tap flash */
.pdp-field { caret-color: transparent; cursor: pointer; -webkit-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent; }
