.modes{display:grid;gap:10px;margin:24px 0 16px}@media(min-width:800px){.modes{grid-template-columns:repeat(3,1fr)}}
.mode{text-align:left;background:var(--ink-2);border:1px solid var(--line);color:var(--bone);padding:16px 18px;border-radius:var(--radius);font:inherit;cursor:pointer;display:grid;gap:4px;min-height:48px}
.mode b{font-family:var(--serif);font-size:22px;font-weight:500}.mode span{color:var(--mute);font-size:14px}
.mode[aria-checked=true]{border-color:var(--mustard);box-shadow:inset 0 0 0 1px var(--mustard)}
.menu-tools{position:sticky;top:68px;z-index:40;background:rgba(14,20,18,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:10px 0 0}
.menu-tools>.wrap{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding-bottom:10px}
.search{flex:1 1 260px}.search input{width:100%;font:inherit;color:var(--bone);background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:0 14px;min-height:46px}
.diet{display:flex;gap:6px}.diet button,.rail a{font:inherit;font-size:14px;color:var(--bone-2);background:transparent;border:1px solid var(--line);border-radius:999px;padding:0 14px;min-height:40px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center}
.diet button[aria-pressed=true]{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.rail{display:flex;gap:6px;overflow-x:auto;padding-bottom:10px;scrollbar-width:none}.rail::-webkit-scrollbar{display:none}
.rail a.on{background:var(--red);border-color:var(--red);color:#fff}
.menu-body{display:grid;gap:40px;padding-top:30px}@media(min-width:1000px){.menu-body{grid-template-columns:1fr 340px;gap:60px}}
.cat{padding:28px 0 8px;scroll-margin-top:170px}.cat h2{font-size:clamp(30px,3.6vw,46px);margin-bottom:6px}.cat .note{color:var(--mute);margin:0 0 10px}
.dish{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line);width:100%;text-align:left;background:none;border-left:0;border-right:0;border-bottom:0;color:inherit;font:inherit;cursor:pointer;min-height:56px}
.dish:last-child{border-bottom:1px solid var(--line)}.dish:hover .dn{color:var(--mustard)}
.dish .dn{font-family:var(--serif);font-size:21px}.dish .dd{color:var(--mute);font-size:14px;margin-top:2px}
.dish .dp{font-variation-settings:"wdth" 110,"wght" 600;color:var(--bone-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.dish.has-img{grid-template-columns:64px 1fr auto}.dish img{width:64px;height:64px;object-fit:cover;border-radius:50%}
.veg{display:inline-block;width:10px;height:10px;border:1.5px solid #6DBB6A;border-radius:2px;margin-right:8px;vertical-align:middle;position:relative}.veg::after{content:"";position:absolute;inset:2px;border-radius:50%;background:#6DBB6A}
.nv{border-color:#C9573A}.nv::after{background:#C9573A}
.dish[hidden]{display:none}.cat[hidden]{display:none}
.shortlist{position:sticky;top:150px;align-self:start;background:var(--ink-2);border:1px solid var(--line);padding:22px;border-radius:var(--radius)}
.sl-items{list-style:none;padding:0;margin:14px 0}.sl-items li{display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px 0;border-top:1px solid var(--line);font-size:15px;align-items:center}
.sl-items .q{display:inline-flex;gap:4px;align-items:center}.sl-items .q button{min-width:32px;min-height:32px;background:transparent;border:1px solid var(--line);color:var(--bone);border-radius:4px;cursor:pointer}
.sl-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;font-size:17px}
.sheet{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.6);display:grid;place-items:end center}@media(min-width:700px){.sheet{place-items:center}}
.sheet-card{background:var(--ink-2);width:100%;max-width:560px;max-height:92svh;overflow:auto;border-radius:12px 12px 0 0;position:relative;border:1px solid var(--line)}@media(min-width:700px){.sheet-card{border-radius:8px}}
.sheet-x{position:absolute;top:10px;right:10px;width:44px;height:44px;border-radius:50%;background:rgba(14,20,18,.8);color:#fff;border:0;font-size:24px;cursor:pointer;z-index:2}
.sheet-img{aspect-ratio:16/9;background:var(--ink-3)}.sheet-img img{width:100%;height:100%;object-fit:cover}
.sheet-body{padding:22px}.opts{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.opts button{font:inherit;color:var(--bone);background:transparent;border:1px solid var(--line);border-radius:999px;padding:0 14px;min-height:40px;cursor:pointer}.opts button[aria-pressed=true]{background:var(--bone);color:var(--ink)}
.sheet-row{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:16px}.qty{display:inline-flex;align-items:center;gap:6px}.qty button{width:44px;height:44px;border-radius:50%;background:transparent;border:1px solid var(--line);color:var(--bone);font-size:20px;cursor:pointer}.qty output{min-width:28px;text-align:center}
.summary{background:#fff;color:#111;padding:24px;border-radius:6px;font-family:var(--sans)}.summary h3{color:#111}
