/* Staff-approved purchase requests */
.delivery-method-stage { min-width:0; margin:4px 0 22px; }
.delivery-method-prompt { display:flex; align-items:center; gap:12px; padding:14px 15px; border:1px dashed rgba(176,139,90,.24); border-radius:18px; color:#cbbba9; background:rgba(176,139,90,.045); }
.delivery-method-prompt>.ph { flex:0 0 auto; margin:0; color:var(--accent-light); font-size:1.35rem; }
.delivery-method-prompt span { display:grid; gap:2px; min-width:0; }
.delivery-method-prompt strong { color:var(--text); font-size:.82rem; }
.delivery-method-prompt small { color:var(--muted); font-size:.7rem; line-height:1.7; }
.delivery-request-form.is-delivery-enhanced .delivery-choice-field:not(.is-ready):not(.has-error) { display:none; }
.delivery-request-form.is-delivery-enhanced .delivery-method-prompt.is-complete { display:none; }
.delivery-choice-field { min-width:0; margin:0; padding:0; border:0; }
.delivery-choice-field legend { width:100%; margin-bottom:10px; color:var(--text); font-size:.9rem; font-weight:850; }
.delivery-choice-field legend span { display:block; margin-bottom:3px; color:var(--accent-light); font-size:.65rem; letter-spacing:.02em; }
.delivery-option-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.delivery-option { position:relative; min-width:0; min-height:158px; display:grid; grid-template-columns:42px minmax(0,1fr); grid-template-rows:auto 1fr; align-content:start; gap:10px 11px; margin:0; padding:15px; overflow:hidden; border:1px solid rgba(176,139,90,.16); border-radius:19px; background:linear-gradient(145deg,rgba(245,241,234,.045),rgba(245,241,234,.018)); cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.035); transition:border-color .2s ease,background .2s ease,transform .2s ease; }
.delivery-option:hover { transform:translateY(-1px); border-color:rgba(176,139,90,.42); }
.delivery-option input { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.delivery-option-mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(176,139,90,.2); border-radius:14px; color:var(--accent-light); background:rgba(176,139,90,.09); }
.delivery-option-mark .ph { margin:0; font-size:1.25rem; }
.delivery-option-copy { min-width:0; display:grid; align-content:start; }
.delivery-option-copy strong { font-size:.86rem; }
.delivery-option-copy small { margin-top:4px; color:var(--muted); font-size:.69rem; font-weight:500; line-height:1.75; }
.delivery-option-check { position:absolute; top:11px; left:11px; width:22px; height:22px; display:grid; place-items:center; border:1px solid rgba(176,139,90,.2); border-radius:50%; color:transparent; background:#151311; }
.delivery-option-check .ph { margin:0; font-size:.75rem; }
.delivery-option:has(input:checked) { border-color:rgba(232,199,149,.68); background:radial-gradient(circle at 100% 0,rgba(176,139,90,.2),transparent 42%),linear-gradient(145deg,rgba(137,105,62,.2),rgba(245,241,234,.025)); box-shadow:0 15px 36px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.06); }
.delivery-option:has(input:checked) .delivery-option-check { border-color:var(--accent-light); color:#1a140e; background:var(--accent-light); }
.delivery-option:focus-within { outline:2px solid var(--accent-light); outline-offset:3px; }
.delivery-option.is-unavailable { border-style:dashed; opacity:.58; cursor:not-allowed; }
.delivery-choice-field.has-error { padding:12px; border:1px solid rgba(183,93,81,.38); border-radius:20px; background:rgba(183,93,81,.045); }
.delivery-summary-note { display:flex; align-items:flex-start; gap:8px; margin:16px 0 0; padding:12px 13px; border:1px solid rgba(176,139,90,.18); border-radius:14px; color:#c9b9a7; background:rgba(176,139,90,.065); font-size:.73rem; line-height:1.8; }
.delivery-summary-note .ph { flex:0 0 auto; margin-top:.35em; color:var(--accent-light); }
.order-summary .delivery-summary-note { display:flex; }
.order-delivery-card .eyebrow { margin-bottom:5px; }
.purchase-request-page { min-height:68vh; }
.narrow-wide { max-width:1080px; }
.request-detail-head { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:28px; }
.request-detail-head h1 { margin:5px 0 7px; font-size:clamp(2rem,4vw,3.4rem); }
.request-detail-head p:last-child { margin:0; color:var(--muted); }
.purchase-flow-steps,.purchase-timeline { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin:24px 0 30px; }
.purchase-flow-steps::before,.purchase-timeline::before { content:""; position:absolute; z-index:0; top:22px; right:8%; left:8%; height:1px; background:linear-gradient(90deg,transparent,rgba(176,139,90,.42),transparent); }
.purchase-flow-steps span,.purchase-timeline span { position:relative; z-index:1; min-width:0; display:grid; justify-items:center; align-content:start; gap:8px; color:var(--muted); text-align:center; font-size:.76rem; font-weight:800; }
.purchase-flow-steps b,.purchase-timeline .ph { width:44px; height:44px; display:grid; place-items:center; margin:0; border:1px solid rgba(176,139,90,.18); border-radius:15px; color:#c6b8a7; background:linear-gradient(145deg,#24201c,#181614); box-shadow:0 10px 28px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.05); font-size:1rem; }
.purchase-flow-steps .active,.purchase-timeline .active,.purchase-timeline .done { color:var(--text); }
.purchase-flow-steps .active b,.purchase-timeline .active .ph { border-color:rgba(232,199,149,.62); color:#211a13; background:linear-gradient(145deg,#d9b77f,#9d7443); box-shadow:0 12px 34px rgba(137,105,62,.28); }
.purchase-timeline .done .ph { border-color:rgba(176,139,90,.48); color:var(--accent-light); background:linear-gradient(145deg,rgba(137,105,62,.38),rgba(47,36,26,.88)); }
.request-detail-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr); align-items:start; gap:24px; }
.request-status-card { min-width:0; padding:30px; border-color:rgba(176,139,90,.24); background:radial-gradient(circle at 90% 0,rgba(176,139,90,.13),transparent 38%),linear-gradient(145deg,rgba(36,32,28,.94),rgba(20,18,16,.98)); }
.request-status-card h2 { margin:0 0 10px; font-size:1.45rem; }
.request-status-card>p { max-width:680px; color:#c9beb1; line-height:2; }
.request-status-card form,.request-status-card>a { margin-top:14px; }
.request-status-card .text-button { color:#d3aa7b; }
.reservation-countdown { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:23px 0; padding:18px 20px; border:1px solid rgba(232,199,149,.26); border-radius:19px; background:rgba(10,9,8,.34); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
.reservation-countdown small { color:var(--muted); }
.reservation-countdown strong { color:var(--accent-light); font-size:1.08rem; font-variant-numeric:tabular-nums; }
.reservation-countdown.is-expired { border-color:rgba(160,111,91,.35); opacity:.72; }
.request-product-summary>small { display:block; margin-top:18px; color:var(--muted); line-height:1.9; }
.fake-gateway-card { max-width:620px; margin-inline:auto; text-align:center; }
.fake-gateway-card .summary-total { margin:24px 0 10px; }
.fake-gateway-card form { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:24px; }

@media (max-width:700px) {
  .delivery-option-grid { grid-template-columns:1fr; gap:8px; }
  .delivery-option { min-height:104px; grid-template-columns:38px minmax(0,1fr); padding:13px; border-radius:17px; }
  .delivery-option-mark { width:38px; height:38px; border-radius:13px; }
  .delivery-option-copy small { font-size:.68rem; }
  .purchase-request-page { padding:22px 0 calc(112px + env(safe-area-inset-bottom)); }
  .purchase-request-page .checkout-grid { gap:16px; }
  .purchase-request-page .lead { font-size:.9rem; line-height:1.9; }
  .request-detail-head { align-items:stretch; flex-direction:column; gap:15px; margin-bottom:18px; }
  .request-detail-head h1 { font-size:2rem; }
  .request-detail-head .button { width:100%; }
  .purchase-flow-steps,.purchase-timeline { width:100%; grid-template-columns:repeat(5,minmax(0,1fr)); gap:2px; margin:18px 0 22px; padding:2px 0 8px; overflow:visible; }
  .purchase-flow-steps::before,.purchase-timeline::before { top:clamp(17px,5.25vw,20px); right:9%; left:9%; }
  .purchase-flow-steps span,.purchase-timeline span { max-width:100%; overflow-wrap:normal; word-break:normal; font-size:clamp(.56rem,2.6vw,.64rem); line-height:1.55; }
  .purchase-flow-steps b,.purchase-timeline .ph { width:clamp(34px,10.5vw,40px); height:clamp(34px,10.5vw,40px); border-radius:13px; }
  .request-detail-grid { grid-template-columns:1fr; gap:14px; }
  .request-status-card { padding:20px; border-radius:24px; }
  .request-status-card h2 { font-size:1.2rem; }
  .request-status-card>p { font-size:.84rem; line-height:1.9; }
  .reservation-countdown { align-items:flex-start; flex-direction:column; gap:5px; padding:15px; }
  .reservation-countdown strong { font-size:.96rem; }
  .request-product-summary { order:-1; }
  .fake-gateway-card { padding:22px; }
  .fake-gateway-card form { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
