*{box-sizing:border-box;margin:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;background:var(--bg);color:var(--tx);max-width:640px;margin:auto;padding-bottom:90px}
button{font:inherit;cursor:pointer;border:0}
.hero{padding:28px 18px;background:var(--hero);color:var(--herotx);text-align:center}
.hero h1{font-size:2.2rem}.hero p{opacity:.85;margin:4px 0}.hero small{opacity:.75}
.bar{position:sticky;top:0;z-index:5;background:var(--bg);padding:10px 12px;border-bottom:1px solid var(--line)}
#q{width:100%;padding:11px 14px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);color:var(--tx);font:inherit}
#chips{display:flex;gap:8px;overflow-x:auto;padding-top:10px;scrollbar-width:none}
.chip{white-space:nowrap;padding:8px 14px;border-radius:var(--rc);background:var(--chip);color:var(--chiptx)}
.chip.on{background:var(--accent);color:var(--accenttx)}
main{padding:6px 12px}
.sec{margin:20px 4px 10px;font-size:1.15rem;color:var(--sec)}
.item{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px;margin-bottom:10px}
.ph-img{font-size:2rem;width:60px;height:60px;flex:none;display:grid;place-items:center;background:var(--imgbg);border-radius:var(--r)}
.txt{flex:1;min-width:0}.txt h3{font-size:1rem}.txt p{font-size:.82rem;opacity:.7;margin-top:2px}
.buy{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.price{font-weight:700;color:var(--price)}
.add{background:var(--accent);color:var(--accenttx);padding:7px 16px;border-radius:var(--rc)}
.qty{display:flex;align-items:center;gap:8px}
.qty button{width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--accenttx);font-size:1.1rem}
#cartbar{position:fixed;bottom:0;left:0;right:0;max-width:640px;margin:auto;padding:10px 12px;z-index:9}
#open{width:100%;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-radius:var(--r);background:var(--accent);color:var(--accenttx);box-shadow:0 4px 16px #0004}
#cnt{background:var(--accenttx);color:var(--accent);border-radius:50%;min-width:26px;height:26px;display:grid;place-items:center;font-weight:700}
#sheet,#osheet{position:fixed;inset:0;background:#0008;z-index:20;display:flex;align-items:flex-end}
#sheet[hidden],#osheet[hidden]{display:none}
.panel{background:var(--bg);width:100%;max-width:640px;margin:auto;max-height:85vh;overflow:auto;border-radius:18px 18px 0 0;padding:16px}
.ph{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.ph button{background:none;color:var(--tx);font-size:1.3rem}
.line{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:.92rem}
.del{background:none}
#note{width:100%;margin-top:12px;padding:10px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);color:var(--tx);font:inherit;min-height:64px}
.sum{display:flex;justify-content:space-between;margin:14px 0;font-size:1.1rem}
#send{width:100%;padding:14px;border-radius:var(--r);background:#25d366;color:#fff;font-weight:700}
#send:disabled{opacity:.4}
.empty{text-align:center;padding:24px;opacity:.6}
footer{text-align:center;font-size:.75rem;opacity:.5;padding:20px}
.ph-img img{width:100%;height:100%;object-fit:cover;border-radius:inherit}

.hero{position:relative;overflow:hidden}
.hero-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:2px}
.hero.has-img{color:#fff}.hero.has-img::after{content:"";position:absolute;inset:0;background:#0007}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero.has-img .hero-in{z-index:2}
.logo{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#fff;margin-bottom:8px}
.welcome{font-size:.92rem}
.acts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}
.act{display:inline-block;padding:7px 14px;border-radius:var(--rc);background:#ffffff26;color:inherit;border:1px solid currentColor;text-decoration:none;font-size:.85rem}
.act.soon{opacity:.6;border-style:dashed}
.paused{background:#f5c542;color:#222;text-align:center;padding:10px;font-size:.9rem}
.line small{display:block;opacity:.65;font-size:.74rem}
.hasopt{display:block;opacity:.8;font-size:.78rem;color:var(--price)}
fieldset{border:0;margin:0 0 14px;padding:0}
legend{font-weight:700;margin-bottom:6px}legend em{font-style:normal;font-size:.72rem;background:var(--accent);color:var(--accenttx);border-radius:6px;padding:1px 6px;margin-right:6px}
.opt{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid var(--line)}
.opt span{flex:1}.opt em{font-style:normal;opacity:.7;font-size:.85rem}
.opt input{width:20px;height:20px;accent-color:var(--accent)}
#oadd{width:100%;padding:14px;border-radius:var(--r);background:var(--accent);color:var(--accenttx);font-weight:700}
.qr{display:block;margin:0 auto 10px;border-radius:8px;background:#fff}
.switch{display:flex;gap:6px;justify-content:center;padding:8px;background:#000d;position:sticky;top:0;z-index:30}
.switch a{color:#fff;font-size:.78rem;padding:4px 12px;border-radius:999px;border:1px solid #fff7;text-decoration:none}
.switch a.on{background:#fff;color:#000}
.bar{top:38px}
