:root{color:var(--ink,#241c18);background:var(--surface,#fffaf4);font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea{font:inherit}button,.button{cursor:pointer;min-height:44px}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--accent,#efb64b);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.center{text-align:center;place-items:center;min-height:100vh;padding:2rem;display:grid}.hero{padding:max(1rem, env(safe-area-inset-top)) max(1rem, calc((100vw - 1040px) / 2)) 1.5rem;background:var(--primary,#8b1e2d);color:#fff}.brand{align-items:center;gap:.9rem;display:flex}.brand img{object-fit:contain;background:#fff;border-radius:14px;width:54px;height:54px}.brand h1{margin:.15rem 0;font-size:clamp(1.6rem,6vw,2.5rem)}.brand small{opacity:.8;text-transform:uppercase;letter-spacing:.12em}.open,.closed{background:#ffffff29;border-radius:999px;margin:.75rem 0 0;padding:.4rem .7rem;display:inline-block}.open:before{content:"●";color:#8af0a4;margin-right:.4rem}.closed:before{content:"●";color:#ffd166;margin-right:.4rem}main{width:min(100% - 2rem,1040px);margin:0 auto;padding:1.25rem 0 7rem}main section{margin:1.75rem 0}h2{margin-bottom:.75rem}.muted,.product p{color:color-mix(in srgb, var(--ink,#241c18) 68%, transparent)}.search{z-index:2;display:block;position:sticky;top:.5rem}.search input{background:#fff;border:1px solid #ddd3cb;border-radius:16px;width:100%;min-height:52px;padding:0 1rem;box-shadow:0 8px 28px #2d1e1414}.product-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:.85rem;display:grid}.product{background:#fff;border:1px solid #eee4dc;border-radius:18px;overflow:hidden}.product>button{width:100%;color:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;gap:1rem;padding:1rem;display:flex}.product h3{margin:0 0 .35rem}.product p{margin:.25rem 0 .75rem;line-height:1.4}.product img{object-fit:cover;border-radius:14px;flex:none;width:96px;height:96px}.product.unavailable{opacity:.58}.product>small{padding:0 1rem 1rem;display:block}.cart-bar{z-index:4;bottom:max(1rem, env(safe-area-inset-bottom));background:var(--primary,#8b1e2d);color:#fff;border:0;border-radius:16px;justify-content:space-between;align-items:center;width:min(100% - 2rem,620px);padding:.85rem 1rem;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #1e0f0a47}.backdrop{z-index:10;background:#160f0b94;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.dialog{background:var(--surface,#fffaf4);width:min(100%,620px);max-height:92dvh;padding:1.25rem max(1.25rem, env(safe-area-inset-right)) max(1.25rem, env(safe-area-inset-bottom));border-radius:24px 24px 0 0;position:relative;overflow-y:auto}.close{background:#eee5df;border:0;border-radius:50%;width:44px;font-size:1.5rem;position:absolute;top:.8rem;right:.8rem}.dialog h2{padding-right:3rem}fieldset{border:0;margin:1.25rem 0;padding:0}legend{width:100%;margin-bottom:.65rem;font-weight:750}legend small{float:right;color:#786b64;font-weight:400}.option{align-items:center;gap:.7rem;min-height:46px;padding:.5rem 0;display:flex}.option input{width:20px;height:20px;accent-color:var(--primary,#8b1e2d)}.option small{margin-left:auto}label textarea,label>input{background:#fff;border:1px solid #d8ccc4;border-radius:10px;width:100%;min-height:44px;margin-top:.35rem;padding:.7rem;display:block}textarea{resize:vertical;min-height:76px}.primary,.button{background:var(--primary,#8b1e2d);color:#fff;text-align:center;border:0;border-radius:12px;padding:.75rem 1rem;text-decoration:none}.secondary{color:var(--primary,#8b1e2d);background:0 0;border:1px solid}.full{width:100%;margin-top:.75rem;font-weight:750}.primary:disabled{opacity:.5;cursor:not-allowed}.allergens,.warning{background:#fff1ca;border-radius:10px;padding:.75rem}.cart-line{border-bottom:1px solid #e6dcd5;justify-content:space-between;gap:1rem;padding:1rem 0;display:flex}.cart-line small{color:#746860;margin-top:.25rem;display:block}.quantity{align-items:center;gap:.55rem;display:flex}.quantity button{background:#fff;border:1px solid #d6cbc4;border-radius:10px;width:40px}.total{justify-content:space-between;align-items:center;padding:1.25rem 0 .5rem;font-size:1.1rem;display:flex}.fields{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.fields .wide{grid-column:1/-1}.chips{flex-wrap:wrap;gap:.45rem;display:flex}.chips input{opacity:0;position:absolute}.chips span{cursor:pointer;background:#fff;border:1px solid #d7cbc4;border-radius:999px;padding:.65rem .8rem;display:block}.chips input:checked+span{background:var(--primary,#8b1e2d);color:#fff;border-color:var(--primary,#8b1e2d)}.chips input:focus-visible+span{outline:3px solid var(--accent,#efb64b)}.error{color:#8b1525;background:#ffe8eb;border-radius:10px;padding:.75rem}.link{width:100%;color:var(--primary,#8b1e2d);background:0 0;border:0;text-decoration:underline}.ack-note{text-align:center;color:#746860;font-size:.82rem}.order-card{border-left:5px solid var(--accent,#efb64b);background:#fff;border-radius:16px;padding:1rem;box-shadow:0 7px 22px #2d1e1412}.order-card h2,.order-card p{margin:.3rem 0}.actions{flex-wrap:wrap;gap:.6rem;margin-top:.8rem;display:flex}.actions button{background:var(--primary,#8b1e2d);color:#fff;border:0;border-radius:12px;padding:.7rem 1rem}.empty{text-align:center;padding:3rem 1rem}@media (width>=700px){.backdrop{align-items:center;padding:1.5rem}.dialog{border-radius:24px}}@media (width<=520px){.fields{grid-template-columns:1fr}.fields .wide{grid-column:auto}}@media (prefers-reduced-motion:no-preference){.dialog{animation:.18s ease-out enter}@keyframes enter{0%{opacity:.7;transform:translateY(18px)}}}
