:root{--reserve-green:#1f8f46;--reserve-red:#cf2e2e;--reserve-blue:#0b72d6;--reserve-ink:#1d2320;--reserve-card:#f7f1e5}.reserve-page-wrap{padding:28px 4vw 40px}.reserve-page-grid.single-focus{display:grid;grid-template-columns:minmax(300px,520px) minmax(320px,620px);gap:18px;align-items:start}.card-paper{background:#f7f1e5;border:1px solid #d6c9b4;border-radius:20px;padding:24px;box-shadow:0 10px 30px rgba(0,0,0,.06)}.section-kicker{display:inline-block;margin-bottom:12px;color:#ee7a1d;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.reserve-copy h1{font-size:2.25rem;line-height:1.05;margin:10px 0 18px}.reserve-copy p{line-height:1.52}.reserve-copy ul{padding-left:18px}.reserve-copy li{margin:10px 0;font-weight:700}.text-green{color:var(--reserve-green)}.text-red{color:var(--reserve-red)}.inline-legend-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px;color:#334}.legend-color{display:inline-block;width:14px;height:14px;border-radius:50%;vertical-align:-2px;margin-right:6px;border:2px solid rgba(0,0,0,.08)}.legend-color.available{background:var(--reserve-green)}.legend-color.unavailable{background:var(--reserve-red)}.legend-color.selected{background:var(--reserve-blue)}.reserve-form-modern .grid2{gap:16px}.inline-date-wrap{position:relative}.inline-date-input{position:relative;z-index:1;color:transparent!important;caret-color:transparent;background:#fff;cursor:pointer;padding-right:52px!important}.date-display{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#111;font-weight:700;pointer-events:none;z-index:2}.date-trigger{position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:3;border:0;background:transparent;font-size:1.15rem;cursor:pointer}.inline-availability-helper{background:#fff7ed;border:1px solid #ffd5a9;border-radius:14px;padding:10px 12px;color:#6b4f1b;font-weight:600}.availability-inline-picker{position:absolute;width:360px;max-width:calc(100vw - 24px);background:#242635;color:#fff;border-radius:18px;padding:14px;box-shadow:0 18px 50px rgba(0,0,0,.35);z-index:10020}.availability-inline-picker.hidden{display:none}.availability-inline-picker.loading{opacity:.7}.picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.picker-head button{width:36px;height:36px;border:0;border-radius:10px;background:#33384d;color:#fff;font-size:1.4rem;cursor:pointer}.picker-head strong{font-size:1rem;font-weight:800}.picker-subtitle{font-size:.9rem;color:#d8dbea;margin-bottom:10px}.picker-weekdays,.picker-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.picker-weekday{font-size:.82rem;color:#adb4cf;text-align:center;padding:6px 0}.picker-day{height:38px;border:0;border-radius:10px;font-weight:800;cursor:pointer;transition:transform .15s ease,filter .15s ease}.picker-day:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.05)}.picker-day.blank{background:transparent;pointer-events:none}.picker-day.available{background:#1f8f46;color:#fff;border:1px solid rgba(255,255,255,.25)}.picker-day.unavailable{background:#cf2e2e;color:#fff;border:1px solid rgba(255,255,255,.20);cursor:not-allowed;opacity:.85}.picker-day.selected{background:var(--reserve-blue)!important;color:#fff!important;border:1px solid rgba(255,255,255,.5)}.picker-day.in-range{box-shadow:inset 0 0 0 2px rgba(11,114,214,.45)}.picker-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.picker-secondary{border:1px solid rgba(255,255,255,.18);background:#32364b;color:#fff;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.availability-admin-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);gap:18px;align-items:start;margin-bottom:20px}.availability-legend.big{display:grid;gap:10px}.availability-legend i{width:14px;height:14px;border-radius:50%;display:inline-block;margin-right:8px}.availability-legend i.available{background:#1f8f46}.availability-legend i.unavailable{background:#cf2e2e}@media(max-width:900px){.reserve-page-grid.single-focus,.availability-admin-grid{grid-template-columns:1fr}.reserve-copy h1{font-size:1.9rem}.availability-inline-picker{width:min(360px,calc(100vw - 24px))}}