[hidden]{display:none!important}
@font-face{font-family:Marcellus;src:url(/assets/Marcellus-Regular.woff2) format("woff2");font-display:swap}
@font-face{font-family:Manrope;font-weight:500;src:url(/assets/Manrope-500.woff2) format("woff2");font-display:swap}
@font-face{font-family:Manrope;font-weight:700;src:url(/assets/Manrope-700.woff2) format("woff2");font-display:swap}
@font-face{font-family:Manrope;font-weight:800;src:url(/assets/Manrope-800.woff2) format("woff2");font-display:swap}
:root{--ox:#4A1417;--ox2:#5A1A1E;--gold:#C6A56B;--gold-d:#9A7434;--cream:#F7F1E6;--card:#FFFDF8;--ink:#2B1B15;--mute:#7A6A5E;--line:#E6DCCB;--ok:#2E6B3F}
*{box-sizing:border-box}
html{scroll-padding-top:110px}
body{margin:0;background:var(--cream);color:var(--ink);font:500 16px/1.4 Manrope,system-ui,sans-serif;-webkit-text-size-adjust:100%}
a{color:var(--ox2)}
.top{background:var(--ox);color:var(--cream);text-align:center;padding:22px 16px 16px}
.logo{width:200px;height:auto;display:block;margin:0 auto}
.tagline{margin:8px 0 14px;font-size:13px;letter-spacing:.08em;color:var(--gold)}
.mode{display:grid;gap:8px;max-width:560px;margin:0 auto;text-align:left}
.chip-info{background:rgba(255,255,255,.07);border:1px solid rgba(198,165,107,.35);border-radius:10px;padding:9px 12px;font-size:14px}
.chip-info b{color:var(--gold)}
#free{display:block;color:var(--cream);opacity:.85;font-size:13px;margin-top:2px}
.cats{position:sticky;top:0;z-index:5;display:flex;gap:8px;overflow-x:auto;padding:10px 12px;background:var(--cream);border-bottom:1px solid var(--line);scrollbar-width:none}
.cats::-webkit-scrollbar{display:none}
.cats a{flex:none;text-decoration:none;color:var(--ox);border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 13px;font:700 14px Manrope;white-space:nowrap}
.cats a.on{background:var(--ox);color:var(--cream);border-color:var(--ox)}
.search-wrap{max-width:720px;margin:12px auto 0;padding:0 14px}
#search{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:10px;font:500 16px Manrope;background:var(--card)}
main{max-width:720px;margin:0 auto;padding:4px 14px 120px}
.loading,.empty{text-align:center;color:var(--mute);padding:40px 0}
section.cat{margin-top:22px}
section.cat h2{font:400 26px/1.1 Marcellus,serif;color:var(--ox);margin:0 0 4px;padding-bottom:8px;border-bottom:2px solid var(--gold)}
.grp{font:800 12px Manrope;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d);margin:16px 0 4px}
.item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.item.off{opacity:.55}
.item .nm{font:700 16px/1.25 Manrope}
.item .meta{font-size:13px;color:var(--mute);margin-top:2px}
.badge{display:inline-block;font:800 11px Manrope;letter-spacing:.06em;text-transform:uppercase;background:var(--gold);color:var(--ox);padding:2px 7px;border-radius:4px;margin:0 0 4px}
.badge.fri{background:var(--ox2);color:var(--cream)}
.why{font-size:13px;color:var(--ox2);margin-top:3px;font-weight:700}
.right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:96px}
.price{font:800 16px Manrope;color:var(--ox2);white-space:nowrap}
.mp{font:700 13px Manrope;color:var(--mute);text-align:right;max-width:120px}
.opts{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.opt-row{display:flex;align-items:center;gap:8px;font-size:14px}
.opt-row span{color:var(--mute)} .opt-row b{color:var(--ox2);min-width:44px;text-align:right}
.add,.step button{border:0;background:var(--ox);color:var(--cream);font:800 18px Manrope;width:34px;height:34px;border-radius:9px;cursor:pointer;line-height:1}
.step{display:flex;align-items:center;gap:6px} .step span{min-width:18px;text-align:center;font-weight:800}
.step button{background:var(--cream);color:var(--ox);border:1px solid var(--ox)}
.foot{text-align:center;color:var(--mute);font-size:14px;padding:20px 14px 110px;border-top:1px solid var(--line);max-width:720px;margin:0 auto}
.foot .small,.small{font-size:12px;color:var(--mute)}
.cartbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:9;display:flex;justify-content:space-between;align-items:center;
  max-width:696px;margin:0 auto;border:0;border-radius:14px;background:var(--ox);color:var(--cream);font:700 15px Manrope;padding:15px 18px;box-shadow:0 6px 20px rgba(43,27,21,.35);cursor:pointer}
.cartbar b{color:var(--gold);font-size:17px}
.sheet{position:fixed;inset:0;z-index:20}
.sheet-bg{position:absolute;inset:0;background:rgba(20,10,8,.55)}
.sheet-card{position:absolute;left:0;right:0;bottom:0;max-height:92vh;overflow:auto;background:var(--card);border-radius:18px 18px 0 0;padding:16px 18px calc(24px + env(safe-area-inset-bottom));max-width:720px;margin:0 auto}
.sheet-head{display:flex;justify-content:space-between;align-items:center}
.sheet-head h2{font:400 24px Marcellus;color:var(--ox);margin:4px 0}
.x{border:0;background:none;font-size:30px;color:var(--mute);cursor:pointer}
.line{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}
.line .nm{font-weight:700} .line .sub{font-size:13px;color:var(--mute)}
.total-row{display:flex;justify-content:space-between;font:800 18px Manrope;padding:14px 0;color:var(--ox)}
form h3{font:400 20px Marcellus;color:var(--ox);margin:10px 0 6px}
label{display:block;font:700 14px Manrope;margin:10px 0}
input,select,textarea{display:block;width:100%;margin-top:5px;padding:12px;border:1px solid #CDBFA8;border-radius:10px;font:500 16px Manrope;background:#fff;color:var(--ink)}
input[aria-invalid=true],select[aria-invalid=true]{border-color:#B3261E;background:#FFF5F4}
.opt{font-weight:500;color:var(--mute)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ghost{width:100%;padding:12px;border:1px dashed var(--gold-d);background:#FFF9EE;border-radius:10px;font:700 15px Manrope;color:var(--ox);cursor:pointer}
.gps p{margin:6px 2px} .gps .ok{color:var(--ok);font-weight:700}
.err{color:#B3261E;font-weight:700;min-height:1em}
.primary{width:100%;padding:16px;border:0;border-radius:12px;background:#1F7A4A;color:#fff;font:800 17px Manrope;cursor:pointer;margin-top:6px}
.center{text-align:center}
@media (min-width:760px){.top{padding:30px} .logo{width:240px}}
