:root{--bg:#FFF4F7;--surface:#fff;--ink:#2B1420;--muted:#7A5A68;--line:#F1D6E0;--berry:#D91E5B;--berry-ink:#fff;--butter:#FFD65C;--pista:#BDE5C3;--pista-ink:#1F4A2B;
--display:"Bagel Fat One","Arial Rounded MT Bold",system-ui,sans-serif;--body:"DM Sans",system-ui,sans-serif;--mono:"DM Mono",ui-monospace,monospace}
@media (prefers-color-scheme:dark){:root{--bg:#1D0E16;--surface:#2C1722;--ink:#FFEFF4;--muted:#C9A3B3;--line:#4A2A3B;--berry:#FF4D86;--berry-ink:#2B1420;--pista:#2E5A3A;--pista-ink:#CFF2D6;color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.5 var(--body);padding-inline:max(16px,env(safe-area-inset-left,0px)) max(16px,env(safe-area-inset-right,0px))}
.wrap{max-width:1040px;margin:0 auto}
nav{display:flex;justify-content:space-between;align-items:center;padding-block:18px;gap:12px}
.logo{font:400 26px var(--display);color:var(--berry);text-decoration:none}.logo span{color:var(--ink)}
.navlinks{display:flex;gap:14px;align-items:center;font-weight:700;font-size:14px}.navlinks a{color:var(--ink);text-decoration:none}
.btn{font:700 16px var(--body);background:var(--berry);color:var(--berry-ink);border:0;border-radius:12px;padding:14px 22px;cursor:pointer;box-shadow:0 4px 0 var(--ink);text-decoration:none;display:inline-block}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--ink)}.btn.ghost{background:transparent;color:var(--ink);box-shadow:none;border:2px solid var(--ink)}
.btn.big{font-size:18px;padding:18px 28px}
:focus-visible{outline:3px solid var(--butter);outline-offset:2px}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding-block:20px 40px}.hero>*{min-width:0}
h1{font:400 clamp(38px,6vw,68px)/1 var(--display);margin:0 0 16px;text-wrap:balance}
h1 em{font-style:normal;background:var(--butter);color:#2B1420;padding:0 .15em;border-radius:.2em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.lede{font-size:18px;color:var(--muted);max-width:48ch;margin:0 0 22px}
.form{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
label.lbl{display:block;font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
input[type=date],input[type=email],input[type=search]{font:500 16px var(--body);color:var(--ink);background:var(--surface);border:2px solid var(--ink);border-radius:12px;padding:12px 14px;min-width:0;max-width:100%}
.count{display:inline-flex;gap:8px;align-items:center;font:500 14px var(--mono);margin-top:16px;background:var(--pista);color:var(--pista-ink);padding:8px 14px;border-radius:999px}
.fine{font-size:13px;color:var(--muted);margin-top:12px}
.stat{background:var(--surface);border:2px solid var(--ink);border-radius:24px;padding:24px;display:grid;gap:14px}
.stat b{font:400 56px/1 var(--display);color:var(--berry)}.stat p{margin:0;color:var(--muted)}
.stat .row{display:flex;gap:8px;flex-wrap:wrap}
.tag{font:700 12px var(--body);padding:6px 10px;border-radius:999px;border:2px solid var(--ink)}
.c-sweet{background:var(--butter);color:#2B1420}.c-meal{background:var(--pista);color:var(--pista-ink)}.c-drink{background:#FF9DBB;color:#2B1420}.c-extra{background:#BFD8FF;color:#2B1420}
section{padding-block:36px;border-top:2px solid var(--line)}
h2{font:400 clamp(26px,4vw,38px)/1.05 var(--display);margin:0 0 18px;text-wrap:balance}
.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:18px}
.toolbar input[type=search]{flex:1 1 200px}
.chip{font:700 13px var(--body);border:2px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 13px;cursor:pointer}
.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.card{background:var(--surface);border:2px solid var(--line);border-radius:18px;padding:16px;display:grid;grid-template-columns:48px 1fr;gap:12px;align-content:start;text-decoration:none;color:inherit;transition:border-color .15s}
.card:hover{border-color:var(--ink)}.card.open{border-color:var(--berry)}
.card>*{min-width:0}
.ic{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;font:400 22px var(--display);color:#2B1420}
.card h3{margin:0;font:700 16px/1.2 var(--body)}.card p{margin:4px 0 0;font-size:13.5px;color:var(--muted)}
.card .meta{grid-column:1/3;display:flex;flex-wrap:wrap;gap:6px;font:500 11px var(--mono);letter-spacing:.04em}
.meta span{background:var(--bg);border-radius:8px;padding:4px 8px}.meta .now{background:var(--berry);color:var(--berry-ink)}
.empty{color:var(--muted);padding:24px 0}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.step{background:var(--surface);border:2px solid var(--ink);border-radius:20px;padding:20px}.step b{display:block;font:400 22px var(--display);color:var(--berry);margin-bottom:6px}.step p{margin:0;color:var(--muted)}
.band{background:var(--ink);color:var(--bg);border-radius:28px;padding:32px;display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center}
.band>*{min-width:0}.band h2{margin:0;color:var(--bg)}.band p{margin:8px 0 0;opacity:.8}
.band form{display:flex;gap:8px;flex-wrap:wrap}.band input{flex:1 1 180px;border-color:var(--bg)}.band .btn{box-shadow:0 4px 0 var(--butter)}
.band .msg{font-size:14px;margin-top:8px;opacity:.9}
footer{padding-block:32px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}footer a{color:inherit}
/* deal page */
.deal-head{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;padding-block:12px 20px}.deal-head .ic{width:72px;height:72px;font-size:32px;border-radius:18px}
.deal-head h1{font-size:clamp(28px,5vw,44px);margin:0}
.offer{font-size:20px;margin:0 0 20px}
.terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:22px}
.term{background:var(--surface);border:2px solid var(--line);border-radius:16px;padding:14px}.term small{display:block;font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.verify{display:inline-flex;gap:8px;align-items:center;background:var(--pista);color:var(--pista-ink);border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}
.breadcrumb{font-size:14px;color:var(--muted)}.breadcrumb a{color:inherit}
.prose{max-width:65ch}.prose p{color:var(--muted)}
@media(max-width:800px){.hero,.band{grid-template-columns:1fr}.band{padding:24px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
/* account page */
.person{grid-template-columns:48px 1fr}.person .meta{align-items:center}.person .meta label.sw{display:inline-flex;gap:6px;align-items:center;background:transparent;font:700 12px var(--body);letter-spacing:0}
.person .del{padding:4px 10px;font-size:12px}
.account-form{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:10px;align-items:end;background:var(--surface);border:2px solid var(--line);border-radius:18px;padding:16px;margin-bottom:20px}
.account-form>*{min-width:0}.account-form input,.account-form select{width:100%;font:500 16px var(--body);color:var(--ink);background:var(--bg);border:2px solid var(--ink);border-radius:12px;padding:12px 14px}
.account-form .btn{white-space:nowrap}
.topline{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;color:var(--muted);font-size:14px}
@media(max-width:800px){.account-form{grid-template-columns:1fr}}
