:root{--paper:#faf7f2;--card:#fff;--ink:#0f172a;--ink-soft:#64748b;--line:#e2e8f0;--act:#114232;--act-ink:#eef5f2;--price:#856a34;--danger:#a33420;--navy:#0d2c22;--gold:#d89150;--shadow-card:0 1px 3px #1f1a0e0a, 0 10px 24px -14px #1f1a0e2e;--shadow-card-hover:0 4px 10px #1f1a0e0f, 0 18px 34px -16px #1f1a0e42;--elev:#fff;--wash:#e8f0ec;--backdrop:#0f172a73;--shadow-modal:0 30px 80px -24px #0f172a66;--hairline:#d8915052;--menu-bg:#f4f1e9;--menu-surface:#fbf9f3;--menu-elevated:#fefcf7;--menu-text:#201e1a;--menu-muted:#6a655b;--menu-line:#ded8c9;--menu-pine:#8a6a1e;--menu-copper:#8a6a1e;--menu-hero-start:#14130f;--menu-hero-end:#211d14;--menu-on-hero:#f6efdf;--menu-action-bg:#d4af37;--menu-action-text:#17130a;--menu-action-border:#a98a2e;--menu-action-hover:#e5a93c;--menu-price:#8a6a1e;--menu-soft:#ede7d8;--menu-pattern:#8a6a1e0f;--menu-disabled-bg:#e7e1d3;--menu-disabled-text:#8a857a;--menu-danger:#a33420;--menu-focus:#8a6a1e;--menu-backdrop:#14110ca8;--menu-shadow:0 4px 18px -10px #28201029;--menu-shadow-hover:0 14px 32px -14px #28201042;--menu-shadow-modal:0 24px 72px -20px #14110c57;--menu-topbar-h:61px;--menu-hero-bg:#14130f;--menu-hero-spine:#d9b24a;--menu-gold:#d4af37;--menu-amber:#e5a93c;--menu-accent-text:#8a6a1e;--menu-action-grad:linear-gradient(180deg, #ecc864, #d4af37 55%, #c29a2a);--menu-action-inner:inset 0 1px 0 #ffffff73, inset 0 -1px 0 #785a1438;--menu-glass:#fbf9f3e6;--menu-glass-border:#8a6a1e38;--menu-hairline:#201e181f;--menu-glow:inset 0 1px 0 #ffffffd9;--menu-aura:#d4af3721;--menu-serif:"Fraunces", Georgia, "Times New Roman", serif;--menu-skeleton-base:#ebe5d6;--menu-skeleton-shine:#f7f3e9;--menu-ease:cubic-bezier(.22, .85, .32, 1);--menu-quickbar-h:140px}:root[data-theme=dark]{--paper:#0b1310;--card:#131e19;--ink:#f1ede4;--ink-soft:#98a79e;--line:#26332c;--act:#46a688;--act-ink:#04120c;--price:#d9ba82;--danger:#e88168;--navy:#0c1a15;--gold:#dfa06a;--shadow-card:0 1px 2px #0006, 0 12px 28px -14px #000000b3;--shadow-card-hover:0 4px 10px #00000073, 0 20px 40px -16px #000c;--elev:#18261f;--wash:#172a22;--backdrop:#000000a8;--shadow-modal:0 30px 80px -24px #000c;--hairline:#cfa96757;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--menu-bg:#0b0c10;--menu-surface:#141519;--menu-elevated:#191a1f;--menu-text:#ecebea;--menu-muted:#aeafb7;--menu-line:#35363d;--menu-pine:#e4c463;--menu-copper:#e5a93c;--menu-hero-start:#17181c;--menu-hero-end:#0e0f12;--menu-on-hero:#f6efdf;--menu-action-bg:#d4af37;--menu-action-text:#17130a;--menu-action-border:#b9982b;--menu-action-hover:#e5c15a;--menu-price:#e4c463;--menu-soft:#1e1f24;--menu-action-grad:linear-gradient(180deg, #e7c355, #d4af37 55%, #b9982b);--menu-action-inner:inset 0 1px 0 #ffffff47, inset 0 -1px 0 #0000004d;--menu-serif:"Fraunces", Georgia, "Times New Roman", serif;--menu-pattern:#d4af370b;--menu-disabled-bg:#292a30;--menu-disabled-text:#aeafb7;--menu-danger:#f2a59a;--menu-focus:#e5a93c;--menu-backdrop:#000000b8;--menu-shadow:0 4px 18px -8px #0000007a;--menu-shadow-hover:0 14px 32px -10px #000000a6;--menu-shadow-modal:0 24px 72px -16px #000c;--menu-hero-bg:#121212;--menu-hero-spine:#d4af37;--menu-gold:#d4af37;--menu-amber:#e5a93c;--menu-accent-text:#d4af37;--menu-glass:#121212f0;--menu-glass-border:#d4af3738;--menu-hairline:#ecebea1f;--menu-glow:inset 0 1px 0 #ffffff0e;--menu-aura:#d4af3713;--menu-skeleton-base:#202126;--menu-skeleton-shine:#32343c;--menu-ease:cubic-bezier(.22, .85, .32, 1);--menu-quickbar-h:140px}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font:16px/1.45 Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3,.brand,.item-price,.order-no{letter-spacing:-.02em;font-family:Plus Jakarta Sans,sans-serif;font-weight:800}input:focus,textarea:focus,button:focus-visible{outline:none;box-shadow:0 0 0 3px #1142322e}input,textarea,select{transition:border-color .15s,box-shadow .15s}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line);border:2px solid var(--paper);border-radius:999px}.app{max-width:520px;margin:0 auto;padding-bottom:96px;animation:.2s fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.app{animation:none}}.app.kiosk{max-width:720px;font-size:1.08em}.app.kiosk button{min-height:48px}.app.kiosk .cartbar{min-height:64px;font-size:1.1em}.splash{z-index:100;background:var(--paper);place-content:center;justify-items:center;animation:.4s 1.05s forwards splash-out;display:grid;position:fixed;inset:0}.splash-word{letter-spacing:2px;color:var(--ink);font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(36px,10vw,52px);font-weight:700;display:flex}.splash-word span{opacity:0;animation:.5s cubic-bezier(.22,.85,.32,1) forwards letter-in;display:inline-block;transform:translateY(18px)}.splash-bar{background:var(--act);transform-origin:0;border-radius:999px;width:56px;height:3px;margin-top:14px;animation:.45s .5s forwards bar-in;transform:scaleX(0)}@keyframes letter-in{to{opacity:1;transform:none}}@keyframes bar-in{to{transform:scaleX(1)}}@keyframes splash-out{to{opacity:0;visibility:hidden}}@media (prefers-reduced-motion:reduce){.splash{animation:none;display:none}}.gate{text-align:center;place-content:center;gap:8px;min-height:100dvh;padding:24px 24px 110px;display:grid}.welcome-screen{z-index:50;background:radial-gradient(130% 100% at 50% -10%,#1c4a3a 0%,#0d2c22 55%,#071b15 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.welcome-video,.welcome-photo,.welcome-fallback{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.welcome-fallback{background:radial-gradient(80% 60% at 50% 0,#16a34a2e,#0000 70%),linear-gradient(160deg,#16382c,#0b241c)}.welcome-kenburns{transform-origin:50% 40%;animation:22s ease-in-out infinite alternate welcome-kb}@keyframes welcome-kb{0%{transform:scale(1.06)}to{transform:scale(1.16)}}.welcome-scrim{background:linear-gradient(#0714108c 0%,#0714104d 38%,#071410d1 100%);position:absolute;inset:0}.welcome-vignette{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 180px 40px #0000008c}.welcome-screen .top-controls{z-index:5;position:absolute;top:18px;right:18px}[dir=rtl] .welcome-screen .top-controls{left:18px;right:auto}.welcome-screen .lang-toggle,.welcome-screen .theme-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#ffffff1f;border-color:#ffffff4d}.welcome-content{z-index:1;text-align:center;width:100%;max-width:460px;padding:32px 32px calc(32px + env(safe-area-inset-bottom,0px));flex-direction:column;align-items:center;margin:0 auto;display:flex;position:relative}.welcome-content>*{opacity:0;animation:.7s cubic-bezier(.22,.85,.32,1) forwards welcome-rise;transform:translateY(14px)}.welcome-content>:first-child{animation-delay:50ms}.welcome-content>:nth-child(2){animation-delay:.16s}.welcome-content>:nth-child(3){animation-delay:.24s}.welcome-content>:nth-child(4){animation-delay:.32s}.welcome-content>:nth-child(5){animation-delay:.42s}.welcome-content>:nth-child(6){animation-delay:.54s}.welcome-content>:nth-child(7){animation-delay:.62s}@keyframes welcome-rise{to{opacity:1;transform:none}}.welcome-logo{object-fit:cover;border:1px solid #4ade80b3;border-radius:50%;width:76px;height:76px;margin-bottom:22px;box-shadow:0 0 0 6px #ffffff0d,0 14px 34px #00000073}.welcome-monogram{color:#f4ede0;border:1px solid #4ade80b3;border-radius:50%;place-content:center;width:76px;height:76px;margin-bottom:22px;font-family:Fraunces,Georgia,serif;font-size:34px;font-weight:500;display:grid;box-shadow:0 0 0 6px #ffffff0d,0 14px 34px #00000073}.welcome-overline{letter-spacing:.42em;text-indent:.42em;text-transform:uppercase;color:#4ade80eb;font-size:11px;font-weight:700}.welcome-rule{color:#4ade8099;align-items:center;gap:12px;width:128px;margin:12px 0 14px;font-size:9px;display:flex}.welcome-rule i{background:linear-gradient(90deg,#0000,#4ade808c);flex:1;height:1px}.welcome-rule i:last-child{background:linear-gradient(90deg,#4ade808c,#0000)}.welcome-name{font-optical-sizing:auto;color:#fdfbf6;letter-spacing:.005em;text-shadow:0 2px 18px #0006;margin:0;font-family:Fraunces,Georgia,Times New Roman,serif;font-size:clamp(30px,8.5vw,44px);font-weight:500;line-height:1.12}.welcome-tagline{color:#fdfbf6d1;max-width:22em;margin:12px 0 0;font-family:Fraunces,Georgia,serif;font-size:clamp(14px,4vw,17px);font-style:italic;font-weight:400;line-height:1.5}.welcome-cta{color:#fff;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#22c55e,#15803d);border:none;border-radius:999px;align-items:center;gap:8px;margin-top:30px;padding:15px 30px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:800;transition:transform .12s,box-shadow .2s;display:inline-flex;box-shadow:inset 0 1px #ffffff40,0 12px 30px -8px #16a34a8c}.welcome-cta:active{transform:scale(.97)}.welcome-cta svg{margin-right:-4px}.welcome-meta{letter-spacing:.22em;text-transform:uppercase;color:#fdfbf699;margin-top:22px;font-size:10.5px;font-weight:600}@media (prefers-reduced-motion:reduce){.welcome-kenburns{animation:none;transform:none}.welcome-content>*{opacity:1;animation:none;transform:none}}.welcome-about-fab{z-index:4;bottom:calc(18px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font:inherit;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:6px;padding:9px 15px;font-size:13px;font-weight:700;display:flex;position:fixed;right:18px}[dir=rtl] .welcome-about-fab{left:18px;right:auto}.welcome-about-fab:active{transform:scale(.96)}.welcome-modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0714109e;place-items:center;padding:24px;animation:.2s fade-in;display:grid;position:fixed;inset:0}.welcome-modal{text-align:center;background:linear-gradient(#0f3227,#0b241c);border:1px solid #4ade804d;border-radius:20px;width:100%;max-width:400px;padding:34px 26px 30px;animation:.3s cubic-bezier(.22,.85,.32,1) welcome-rise;position:relative;box-shadow:0 30px 80px -20px #000000b3}.welcome-modal .welcome-overline{display:block}.welcome-modal .welcome-rule{margin:12px auto 16px}.welcome-modal-body{color:#fdfbf6d9;white-space:pre-wrap;max-height:52vh;margin:0;font-size:14.5px;line-height:1.62;overflow-y:auto}.welcome-modal-x{cursor:pointer;color:#fdfbf6cc;background:#ffffff14;border:1px solid #ffffff29;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:12px;right:12px}[dir=rtl] .welcome-modal-x{left:12px;right:auto}.welcome-modal-x:active{transform:scale(.94)}@media (prefers-reduced-motion:reduce){.welcome-modal-backdrop,.welcome-modal{animation:none}}.brand{letter-spacing:.5px;margin:0;font-size:40px}.home-shell{max-width:520px;min-height:100dvh;margin:0 auto;position:relative}.bottom-nav{z-index:6;background:var(--card);border-top:1px solid var(--line);width:min(520px,100%);padding:8px 18px calc(10px + env(safe-area-inset-bottom,0px));justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -6px 20px #0f172a14}.bottom-nav-item{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:3px;padding:6px 14px;font-size:12px;font-weight:700;display:flex}.bottom-nav-item.on{color:var(--act)}.bottom-nav-icon{font-size:20px}.bottom-nav-scan-wrap{flex-direction:column;align-items:center;gap:4px;margin-top:-30px;display:flex}.bottom-nav-scan{border:4px solid var(--paper);background:var(--act);width:60px;height:60px;color:var(--act-ink);cursor:pointer;border-radius:999px;place-content:center;display:grid;box-shadow:0 8px 20px #11423266}.bottom-nav-scan:active{transform:scale(.96)}.bottom-nav-scan-icon{font-size:24px}.bottom-nav-scan-label{color:var(--act);font-size:12px;font-weight:700}.discover{padding:8px 16px 120px}.discover-grid{gap:10px;margin-top:12px;display:grid}.discover-card{text-align:left;background:var(--card);border:1px solid var(--line);width:100%;font:inherit;color:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.discover-card:active{transform:scale(.99)}.discover-card-fallback{background:var(--paper);border:1px solid var(--line);width:40px;height:40px;color:var(--act);border-radius:10px;flex-shrink:0;place-content:center;font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:700;display:grid}.discover-card-info{flex-direction:column;gap:2px;min-width:0;display:flex}.preview{padding-bottom:150px}.preview-header{align-items:center;gap:12px;padding:4px 16px 12px;display:flex}.cartbar.preview-cta{bottom:calc(92px + env(safe-area-inset-bottom,0px))}.topbar{z-index:5;background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.restaurant{white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:700;overflow:hidden}.table{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.menu{padding:8px 16px 24px}.cat{margin:26px 0 14px;padding-bottom:10px;font-size:21px;font-weight:700;position:relative}.cat:after{content:"";background:var(--gold);border-radius:2px;width:30px;height:3px;position:absolute;bottom:0;left:0}.item,.cartline{background:var(--card);text-align:left;width:100%;box-shadow:var(--shadow-card);border:none;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:14px;display:flex}.cartline-price{color:var(--price);margin-top:4px;font-size:14px;font-weight:700}button.item{cursor:pointer;font:inherit;color:inherit}button.item:active{transform:scale(.99)}button.item:disabled{opacity:.55;cursor:default}.item-name{letter-spacing:-.01em;font-size:15.5px;font-weight:700}.item-desc{color:var(--ink-soft);margin-top:3px;font-size:13px;line-height:1.45}.item-out{color:var(--danger);margin-top:2px;font-size:13px;font-weight:600}.item-price{color:var(--price);white-space:nowrap;background:var(--paper);border-radius:999px;flex-shrink:0;padding:5px 12px;font-size:15.5px;font-weight:800}.item-price-old{color:var(--ink-soft);font-size:12.5px;font-weight:500;text-decoration:line-through}.happy-hour-tag{color:var(--danger);margin-top:2px;font-size:12px;font-weight:700}.cross-sell{margin:4px 0 14px}.cross-sell-title{color:var(--ink-soft);margin-bottom:8px;font-size:13px;font-weight:700}.cross-sell-item{background:var(--card);border:1px dashed var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.cross-sell-name{font-size:14px;font-weight:600}.cross-sell-price{color:var(--price);margin-top:2px;font-size:13px}.cross-sell-add{background:var(--act);color:var(--act-ink);font:inherit;cursor:pointer;border:none;border-radius:999px;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:700}.cross-sell-add:active{transform:scale(.96)}.item-nutrition{color:var(--ink-soft);flex-wrap:wrap;gap:8px;margin-top:2px;font-size:12px;display:flex}.item-nutrition span:not(:last-child):after{content:"·";margin-left:8px}p.item-nutrition{margin:4px 0 0}.cartbar{z-index:6;background:var(--act);width:min(488px,100% - 24px);color:var(--act-ink);font:inherit;cursor:pointer;border:none;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;font-size:16px;font-weight:700;display:flex;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #11423259}.cartbar:before{content:"";background:radial-gradient(circle at 5px 5px, var(--paper) 4px, transparent 4.5px) repeat-x;background-size:14px 10px;height:10px;position:absolute;top:-5px;left:12px;right:12px}.cartbar-count{background:var(--act-ink);color:var(--act);border-radius:999px;place-content:center;min-width:26px;height:26px;font-size:14px;display:grid}.cartbar-total{font-family:Plus Jakarta Sans,sans-serif;font-size:18px}.sheet-backdrop{background:var(--backdrop);z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:20px;animation:.18s fade-in;display:grid;position:fixed;inset:0}.sheet{background:var(--elev);border:1px solid var(--hairline);width:min(460px,100%);max-height:min(88dvh,760px);box-shadow:var(--shadow-modal);border-radius:22px;padding:26px 20px 22px;animation:.22s cubic-bezier(.22,.85,.32,1) sheet-pop;position:relative;overflow-y:auto}@keyframes sheet-pop{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sheet-backdrop,.sheet{animation:none}}.sheet h3{margin:0 0 12px;font-size:22px}.sheet-x{z-index:2;cursor:pointer;background:var(--paper);border:1px solid var(--line);width:32px;height:32px;color:var(--ink-soft);border-radius:50%;place-items:center;display:grid;position:absolute;top:12px;right:12px}[dir=rtl] .sheet-x{left:12px;right:auto}.sheet-x:active{transform:scale(.94)}.sheet-share{z-index:2;cursor:pointer;background:var(--paper);border:1px solid var(--line);width:32px;height:32px;color:var(--ink-soft);border-radius:50%;place-items:center;display:grid;position:absolute;top:12px;right:54px}[dir=rtl] .sheet-share{left:54px;right:auto}.sheet-share:active{transform:scale(.94)}.sheet-share-toast{white-space:nowrap;background:var(--ink);color:var(--paper);pointer-events:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;position:absolute;top:calc(100% + 8px);right:0}.mgroup{margin-bottom:16px}.mgroup-title{margin-bottom:8px;font-weight:700}.mgroup-title em{color:var(--ink-soft);font-size:13px;font-weight:400}.mod{background:var(--paper);border:1.5px solid var(--line);width:100%;font:inherit;color:inherit;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 14px;display:flex}.mod.on{border-color:var(--act);background:var(--wash);font-weight:600}.mod-price{color:var(--price);font-weight:600}.primary{background:var(--act);width:100%;color:var(--act-ink);font:inherit;cursor:pointer;border:none;border-radius:12px;margin-top:6px;padding:15px;font-size:16px;font-weight:700}.primary:disabled{opacity:.45;cursor:default}.qty{align-items:center;gap:4px;display:flex}.qty button{border:1.5px solid var(--line);background:var(--paper);cursor:pointer;width:34px;height:34px;color:var(--ink);border-radius:8px;font-size:18px}.qty span{text-align:center;min-width:26px;font-weight:700}.note{resize:vertical;background:var(--card);border:1px solid var(--line);width:100%;min-height:70px;font:inherit;color:inherit;border-radius:12px;margin:8px 0;padding:12px}.receipt-total{border-top:2px dashed var(--line);justify-content:space-between;align-items:baseline;padding:14px 4px 10px;font-size:18px;display:flex}.paynote{color:var(--ink-soft);text-align:center;margin:10px 0 0;font-size:13px}.order{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:14px}.order-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.order-no{font-size:20px;font-weight:700}.badge{background:var(--line);color:var(--ink);border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700}.badge.s-RECEIVED{color:#7a5600;background:#f3e6c8}.badge.s-PREPARING{color:#1c4f80;background:#d9e7f5}.badge.s-READY{color:#1d6b34;background:#d4ecd9}.badge.s-DELIVERED{background:var(--line);color:var(--ink-soft)}.badge.s-CANCELLED{color:var(--danger);background:#f4ddd7}:root[data-theme=dark] .badge.s-RECEIVED{color:#e8cf87;background:#3a3117}:root[data-theme=dark] .badge.s-PREPARING{color:#9cc3e6;background:#1c3348}:root[data-theme=dark] .badge.s-READY{color:#8fd6a3;background:#1c3a26}:root[data-theme=dark] .badge.s-CANCELLED{color:#e88168;background:#3d211a}.track{margin:2px 0 12px;display:flex}.track-step{text-align:center;flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.track-step:not(:first-child):before{content:"";background:var(--line);z-index:0;width:100%;height:2px;transition:background .3s;position:absolute;top:10px;left:-50%}.track-step.line-done:before{background:var(--act)}.track-dot{background:var(--card);border:2px solid var(--line);color:#0000;z-index:1;border-radius:50%;justify-content:center;align-items:center;width:21px;height:21px;font-size:11px;font-weight:800;transition:background .25s,border-color .25s,color .25s,box-shadow .25s;display:flex;position:relative}.track-step.done .track-dot,.track-step.current .track-dot{background:var(--act);border-color:var(--act);color:#fff}.track-step.current .track-dot{animation:1.6s ease-in-out infinite track-pulse}.track-label{color:var(--ink-soft);margin-top:5px;font-size:10.5px;line-height:1.2}.track-step.done .track-label,.track-step.current .track-label{color:var(--ink);font-weight:700}@keyframes track-pulse{0%,to{box-shadow:0 0 0 3px #1142322e}50%{box-shadow:0 0 0 6px #1142320d}}@media (prefers-reduced-motion:reduce){.track-step.current .track-dot{animation:none}}.order-line{justify-content:space-between;gap:10px;padding:3px 0;font-size:14px;display:flex}.order-line em{color:var(--ink-soft);font-style:normal}.order-line.total{border-top:1px dashed var(--line);margin-top:6px;padding-top:8px;font-weight:700}.order-line.discount span:last-child{color:var(--act);font-weight:700}.error{color:var(--danger);background:#f4ddd7;border-radius:10px;margin:10px 16px;padding:10px 14px}:root[data-theme=dark] .error{background:#3d211a}.empty{color:var(--ink-soft);text-align:center;padding:24px 0}.linklike{color:var(--act);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.linklike.center{margin:16px auto 0;display:block}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.item,.cartline,.order{box-shadow:var(--shadow-card);transition:box-shadow .15s,transform .1s}button.item:hover:not(:disabled){box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.cartbar{transition:transform .12s}.cartbar:active{transform:translate(-50%)scale(.98)}.primary{transition:opacity .15s,transform .1s}.primary:active:not(:disabled){transform:scale(.98)}.waiter-btn,.catnav button{transition:border-color .15s,color .15s}.modal{box-shadow:0 -12px 40px #0f172a33}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.item,.cat-tile{animation:.45s cubic-bezier(.22,.85,.32,1) backwards rise-in;animation-delay:calc(var(--stagger,0) * 45ms)}@media (prefers-reduced-motion:reduce){.item,.cat-tile{animation:none}}.item-photo{object-fit:cover;border:none;border-radius:14px;flex-shrink:0;width:100px;height:100px}.item{align-items:center}.item-info{flex:1;min-width:0}.item-photo-placeholder{background:linear-gradient(155deg, var(--paper), #f0ebe0);opacity:.5;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:100px;height:100px;font-size:26px;display:flex}.search{background:var(--card);width:100%;font:inherit;color:inherit;box-shadow:var(--shadow-card);border:none;border-radius:14px;margin:10px 0 4px;padding:14px 16px}.catnav{z-index:4;background:var(--paper);-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:10px 0;display:flex;position:sticky;top:61px;overflow-x:auto}.catnav::-webkit-scrollbar{display:none}.ai-search-btn{white-space:nowrap;background:linear-gradient(135deg, var(--navy), var(--act));color:#fff;font:inherit;cursor:pointer;border:none;border-radius:12px;margin:10px 0 4px;padding:0 16px;font-weight:700}.ai-search-box{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.ai-search-box input{background:var(--card);border:1px solid var(--line);min-width:160px;font:inherit;color:inherit;border-radius:12px;flex:1;padding:13px 14px}.ai-search-box .primary{width:auto;margin-top:0;padding:0 18px}.ai-search-result{background:linear-gradient(135deg, #eef4f1, var(--card));border:1.5px solid var(--act);border-radius:14px;margin-bottom:12px;padding:12px 14px}.ai-search-reply{margin:0 0 6px;font-weight:600;line-height:1.4}.catnav button{background:var(--card);border:1.5px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;border-radius:999px;flex-shrink:0;padding:8px 15px;font-weight:600}.catnav button:active{border-color:var(--act);color:var(--act)}.cat-grid{grid-template-columns:repeat(2,1fr);gap:22px 14px;margin:22px 0 8px;display:grid}.cat-tile{cursor:pointer;text-align:left;min-height:96px;font:inherit;background:0 0;border:none;padding:0;display:block;position:relative}.cat-tile-bg{background:linear-gradient(155deg, var(--act), #0a2a1e);transition:transform .12s var(--ease-press,ease), filter .12s ease;border:1px solid #d8915052;border-radius:16px;position:absolute;inset:0;box-shadow:0 10px 24px -12px #0f172a73}.cat-tile:active .cat-tile-bg{filter:brightness(1.1);transform:scale(.97)}.cat-tile-icon{z-index:1;background:var(--paper);width:44px;height:44px;color:var(--act);border:1.5px solid var(--gold);border-radius:50%;justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;top:-16px;left:16px;box-shadow:0 4px 12px -4px #0f172a66}.cat-tile-name{z-index:1;color:#fff;text-transform:uppercase;letter-spacing:.3px;padding:40px 16px 18px;font-size:15px;font-weight:800;line-height:1.2;display:block;position:relative}.cat-tile-hero{grid-column:1/-1;min-height:76px}.cat-tile-hero .cat-tile-icon{width:52px;height:52px;font-size:26px;top:-18px}.cat-tile-hero .cat-tile-name{padding:44px 20px 18px;font-size:20px}.cat-tile.cat-tile-photo{border-radius:14px;min-height:136px;overflow:hidden;box-shadow:0 8px 20px -8px #0f172a73}.cat-tile-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;transition:transform .2s;position:absolute;inset:0}.cat-tile-photo:active .cat-tile-img{transform:scale(1.05)}.cat-tile-scrim{border-radius:inherit;background:linear-gradient(#0b192c00 40%,#0b192cd1 100%);position:absolute;inset:0}.cat-tile.cat-tile-photo .cat-tile-name{z-index:1;text-transform:none;letter-spacing:0;text-shadow:0 1px 3px #0000004d;padding:14px;position:absolute;bottom:0;left:0;right:0}.cat-tile.cat-tile-hero.cat-tile-photo{min-height:176px}.cat-tile.cat-tile-hero.cat-tile-photo .cat-tile-name{padding:18px;font-size:20px}.cat-back{margin:10px 0 4px;font-weight:700}.sheet-photo{object-fit:cover;border-radius:21px 21px 0 0;width:calc(100% + 40px);max-height:240px;margin:-26px -20px 16px;display:block}.sheet-desc{color:var(--ink-soft);margin:-6px 0 14px;line-height:1.6}.nutri-row{flex-wrap:wrap;gap:6px;margin:-6px 0 14px;display:flex}.nutri-pill{background:var(--paper);color:var(--ink-soft);border:none;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}section{scroll-margin-top:118px}.topbar{flex-wrap:wrap;row-gap:8px}.topbar-brand{flex:160px;align-items:center;gap:10px;min-width:0;display:flex}.topbar-brand-text{flex:1;min-width:0}.logo{object-fit:cover;border:1px solid var(--line);border-radius:10px;flex-shrink:0;width:40px;height:40px}.topbar-actions{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:8px 14px;display:flex}.topbar-actions>*{white-space:nowrap;flex-shrink:0}.waiter-btn{background:var(--card);border:1.5px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;border-radius:999px;padding:8px 13px;font-size:14px;font-weight:700}.waiter-btn:disabled{opacity:.55}.toast{z-index:20;background:var(--ink);color:var(--paper);border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;animation:.28s cubic-bezier(.22,.85,.32,1) toast-in;position:fixed;top:74px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000040}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(-10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.offline-banner{color:#6b5510;text-align:center;background:#fdf3d8;border-bottom:1.5px solid #e8cf87;padding:7px 10px;font-size:13px;font-weight:600}.pay-in{background:var(--paper);border:1.5px solid var(--line);width:100%;font:inherit;color:inherit;border-radius:10px;margin-bottom:8px;padding:12px 14px}.pay-frame{background:#fff;border:none;border-radius:12px;width:100%;height:68dvh}.checkbox-row{color:var(--ink-soft);cursor:pointer;align-items:center;gap:8px;margin:2px 0 8px;font-size:14px;display:flex}.checkbox-row input[type=checkbox]{width:17px;height:17px;accent-color:var(--act);flex-shrink:0}.pay-done{text-align:center;padding:32px 8px;font-size:19px;font-weight:700}.celebrate-overlay{z-index:30;pointer-events:none;position:fixed;inset:0;overflow:hidden}.celebrate-msg{background:var(--navy);color:#fff;white-space:nowrap;border-radius:999px;padding:14px 26px;font-size:18px;font-weight:800;animation:.4s cubic-bezier(.22,.85,.32,1) celebrate-pop;position:absolute;top:18%;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -8px #00000059}@keyframes celebrate-pop{0%{opacity:0;transform:translate(-50%)scale(.7)}to{opacity:1;transform:translate(-50%)scale(1)}}.confetti-piece{border-radius:2px;width:9px;height:14px;animation:1.8s ease-in forwards confetti-fall;position:absolute;top:-20px}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(540deg)}}@media (prefers-reduced-motion:reduce){.confetti-piece{display:none}.celebrate-msg{animation:none}}.split-picker{margin-bottom:14px}.split-count-row{align-items:center;gap:12px;margin:8px 0 4px;font-size:15px;font-weight:700;display:flex}.quiet-note{color:var(--ink-soft);margin:0;font-size:12px}.split-banner{background:var(--card);border:1.5px solid var(--gold);border-radius:14px;flex-direction:column;gap:8px;margin-bottom:14px;padding:14px;display:flex}.split-banner .primary{margin-top:2px}.tip-picker{margin-bottom:14px}.tip-label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.tip-options{flex-wrap:wrap;gap:8px;display:flex}.tip-pill{background:var(--paper);border:1.5px solid var(--line);min-width:56px;font:inherit;color:inherit;cursor:pointer;border-radius:10px;flex:1;padding:10px 8px;font-weight:600}.tip-pill.on{border-color:var(--gold);color:#8a6d2f;background:#fbf5ea}.spin-cta{margin-top:8px}.spin-wheel-wrap{width:220px;height:220px;margin:8px auto 20px;position:relative}.spin-wheel-pointer{z-index:2;color:var(--gold);text-shadow:0 1px 2px #0000004d;font-size:22px;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.spin-wheel{border:4px solid var(--card,#fff);border-radius:999px;width:100%;height:100%;transition:transform 3.1s cubic-bezier(.17,.87,.15,1);position:relative;box-shadow:0 4px 18px #0000002e}.spin-wheel-label{transform-origin:0 0;color:#fff;text-shadow:0 1px 2px #0006;pointer-events:none;width:90px;margin-top:-6px;margin-left:6px;font-size:11px;font-weight:700;position:absolute;top:50%;left:50%}.reserve-page{max-width:520px;margin:0 auto;padding-top:8px;position:relative}@media (width>=640px){.reserve-page{padding-top:40px}}.reserve-hero{background:linear-gradient(160deg, var(--navy), #132a44);text-align:center;border-radius:22px;margin-top:18px;padding:30px 24px;box-shadow:0 20px 45px -22px #0b192c8c}.reserve-hero img{object-fit:cover;border-radius:14px;width:56px;height:56px;margin:0 auto 14px;display:block}.reserve-eyebrow{color:var(--gold);letter-spacing:2.5px;font-size:12px;font-weight:800}.reserve-hero h2{color:#fff;margin:8px 0 0;font-size:24px}.reserve-hero-sub{color:#ffffffa6;margin-top:8px;font-size:14px}.reserve-divider{background:var(--gold);border-radius:2px;width:40px;height:3px;margin:16px auto 0}.reserve-card{background:var(--card);border-radius:20px;gap:18px;margin-top:16px;padding:22px 20px;display:grid;box-shadow:0 1px 2px #0f172a0a,0 16px 36px -20px #0f172a38}.field{gap:6px;display:grid}.field>label{color:var(--ink-soft);font-size:13px;font-weight:700}.field input,.field select{background:var(--paper);width:100%;font:inherit;color:inherit;appearance:none;border:1.5px solid #0000;border-radius:12px;padding:14px 15px;font-size:16px;transition:border-color .15s}.field input:focus,.field select:focus{border-color:var(--gold)}.field-row{gap:10px;display:flex}.field-row .field{flex:1;min-width:0}.field .qty{background:var(--paper);border:1.5px solid #0000;border-radius:999px;justify-content:space-between;padding:8px 14px}.field .qty span{font-size:17px}.field .qty button{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:999px;width:32px;height:32px;font-size:17px}.reserve-submit{background:linear-gradient(135deg, var(--navy), var(--act));color:#fff;width:100%;font:inherit;cursor:pointer;border:none;border-radius:999px;margin-top:2px;padding:17px;font-size:16px;font-weight:700;transition:opacity .15s,transform .1s;box-shadow:0 14px 30px -14px #0b192c8c}.reserve-submit:disabled{opacity:.5;cursor:default}.reserve-submit:active:not(:disabled){transform:scale(.98)}.reserve-done{text-align:center;place-content:center;gap:10px;max-width:420px;min-height:100dvh;margin:0 auto;padding:24px;display:grid}.reserve-done-check{background:var(--navy);width:64px;height:64px;color:var(--gold);border-radius:999px;place-items:center;margin:0 auto 6px;font-size:30px;display:grid}.reserve-done h2{margin:0;font-size:22px}.reserve-done p{color:var(--ink-soft);margin:0;line-height:1.5}.reserve-zones{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.reserve-zones button{background:var(--paper);font:inherit;color:var(--ink-soft);cursor:pointer;border:none;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700}.reserve-zones button.on{background:var(--navy);color:#fff}.reserve-floor{background:var(--paper);border-radius:14px;min-height:220px;max-height:320px;padding:4px;position:relative;overflow:auto}.reserve-table{text-align:center;border:1.5px solid var(--line);width:88px;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;padding:12px 8px;font-size:13px;font-weight:700;transition:border-color .15s,box-shadow .15s;position:absolute}.reserve-table:hover{box-shadow:0 6px 16px -8px #0f172a40}.reserve-table.on{border-color:var(--gold);background:#fbf5ea;border-width:2px;box-shadow:0 6px 16px -8px #d8915080}.perk-box{background:var(--card);border:1px dashed var(--line);border-radius:12px;gap:8px;margin:10px 0;padding:12px 14px;display:grid}.perk-label{color:var(--ink-soft);font-size:13px;font-weight:700}.perk-box input[type=range]{accent-color:var(--act)}.tier-box{border-style:solid;border-color:var(--act)}.badge-row{flex-wrap:wrap;gap:6px;display:flex}.badge-pill{background:var(--paper);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:600}.scope-toggle{background:var(--card);border:1px solid var(--line);border-radius:12px;gap:6px;margin:10px 0;padding:4px;display:flex}.scope-toggle button{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:10px;font-size:13px;font-weight:700}.scope-toggle button.on{background:var(--act);color:var(--act-ink)}.person-tag{background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700}.order-line.total em{color:var(--act);font-size:12px;font-style:normal}.winback-banner{background:linear-gradient(135deg, #e8f0ec, var(--card));border:1.5px solid var(--act);border-radius:12px;margin:10px 0;padding:12px 14px;font-size:14px;line-height:1.5}.cancel-order{color:var(--danger);margin-top:8px;font-size:13px;display:block}.cancel-order:disabled{opacity:.5}.reorder-btn{margin-top:8px;font-size:13px;display:block}.reorder-btn:disabled{opacity:.5}.help-btn{background:var(--card);border:1.5px solid var(--line);width:34px;height:34px;font:inherit;color:var(--ink-soft);cursor:pointer;border-radius:999px;font-weight:700}.lang-picker{display:inline-block;position:relative}.top-controls{align-items:center;gap:8px;display:inline-flex}.lang-toggle,.theme-toggle{background:var(--card);border:1.5px solid var(--line);height:34px;font:inherit;letter-spacing:.5px;color:var(--ink-soft);cursor:pointer;border-radius:999px;font-size:13px;font-weight:800}.lang-toggle{padding:0 12px}.theme-toggle{place-items:center;width:34px;padding:0;display:grid}.theme-toggle:active{transform:scale(.94)}.home-shell .top-controls,.reserve-page .top-controls{z-index:5;position:absolute;top:16px;right:16px}[dir=rtl] .home-shell .top-controls,[dir=rtl] .reserve-page .top-controls{left:16px;right:auto}.lang-picker-backdrop{z-index:9;position:fixed;inset:0}.lang-picker-menu{z-index:10;background:var(--card);border:1.5px solid var(--line);box-shadow:var(--shadow-card,0 6px 20px #0000001f);border-radius:12px;gap:2px;min-width:96px;max-height:min(60vh,420px);padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}[dir=rtl] .lang-picker-menu{left:0;right:auto}.lang-picker-menu button{text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:700}[dir=rtl] .lang-picker-menu button{text-align:right}.lang-picker-menu button:hover{background:var(--paper)}.lang-picker-menu button.on{color:var(--act);background:var(--paper)}.wifi-picker{display:inline-block;position:relative}.wifi-backdrop{z-index:9;position:fixed;inset:0}.wifi-menu{z-index:10;background:var(--card);border:1.5px solid var(--line);box-shadow:var(--shadow-card,0 6px 20px #0000001f);white-space:nowrap;border-radius:12px;gap:6px;min-width:180px;padding:12px 14px;font-size:13px;display:grid;position:absolute;top:calc(100% + 6px);right:0}[dir=rtl] .wifi-menu{left:0;right:auto}.faq-list{gap:8px;display:grid}.faq-item{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}.faq-q{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:14px;font-weight:600;display:flex}.faq-caret{color:var(--act);font-size:18px;font-weight:800}.faq-a{color:var(--ink-soft);margin:0;padding:0 14px 14px;font-size:14px;line-height:1.5}.review-card{text-align:center;gap:12px;width:min(360px,100%);display:grid}.stars{justify-content:center;gap:6px;display:flex}.star{cursor:pointer;color:var(--line);background:0 0;border:none;font-size:40px;line-height:1;transition:color .1s,transform .1s}.star.on{color:var(--price);transform:scale(1.08)}dialog.qr-scan{box-sizing:border-box;width:100%;max-width:100%;height:100dvh;max-height:100dvh;padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:var(--menu-bg);color:var(--menu-text);border:0;border-radius:0;margin:0;position:fixed;inset:0;overflow-y:auto}dialog.qr-scan[open]{flex-direction:column;gap:24px;display:flex}.qr-scan::backdrop{background:#000}.qr-scan-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.qr-scan-header h2{margin:0;font-size:24px;line-height:1.2}.qr-scan-cancel{border:1px solid var(--menu-line);background:var(--menu-surface);min-height:48px;color:var(--menu-text);font:inherit;cursor:pointer;border-radius:8px;flex-shrink:0;padding:10px 18px;font-weight:700}.qr-scan-cancel:focus-visible{outline:3px solid var(--menu-focus);outline-offset:3px}.qr-scan-stage{background:#000;border-radius:12px;flex:1;align-self:center;width:100%;max-width:720px;min-height:240px;position:relative;overflow:hidden}.qr-scan-stage[hidden]{display:none}.qr-scan-video{object-fit:cover;border:0;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.qr-scan-frame{aspect-ratio:1;border:3px solid var(--menu-copper);pointer-events:none;border-radius:12px;width:min(65%,280px);position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #0006}.qr-scan p{text-align:center;align-self:center;max-width:38ch;margin:0;font-size:16px;line-height:1.65}.qr-scan-guide{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;padding-block:32px;display:flex}.qr-scan-guide>svg{color:var(--menu-text);border-bottom:3px solid var(--menu-copper);box-sizing:content-box;padding-bottom:16px}.qr-scan-error{color:var(--menu-danger);font-weight:700}.item-pick-check{vertical-align:-3px;width:16px;height:16px;accent-color:var(--act);margin-right:8px}.item-select-bar{background:var(--card);border:1px solid var(--line);border-radius:14px 14px 0 0;justify-content:space-between;align-items:center;gap:10px;margin:14px -4px -4px;padding:12px 14px;font-size:13px;font-weight:700;display:flex;position:sticky;bottom:0;box-shadow:0 -6px 18px #00000014}.item-select-actions{align-items:center;gap:10px;display:flex}.primary.small{width:auto;margin-top:0;padding:9px 16px;font-size:13px}.icon-text{align-items:center;gap:6px;display:inline-flex}.icon-text svg{flex-shrink:0}.bottom-nav-icon svg,.bottom-nav-scan-icon svg{display:block}.ui-dialog-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a6b;place-items:center;padding:16px;animation:.14s ui-fade;display:grid;position:fixed;inset:0}@keyframes ui-fade{0%{opacity:0}to{opacity:1}}.ui-dialog{background:var(--card);color:var(--ink);border-radius:18px;width:min(460px,100%);max-height:90vh;animation:.16s cubic-bezier(.2,.8,.3,1) ui-pop;overflow-y:auto;box-shadow:0 30px 80px -24px #0f172a66}.ui-dialog-sm{width:min(400px,100%)}.ui-dialog-lg{width:min(760px,100%)}@keyframes ui-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ui-dialog-backdrop,.ui-dialog{animation:none}}.ui-dialog-head{justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 10px;display:flex}.ui-dialog-head h3{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:800}.ui-dialog-x{width:34px;height:34px;color:var(--ink-soft);cursor:pointer;background:#0f172a0f;border:none;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.ui-dialog-x:hover{color:var(--ink);background:#0f172a1f}.ui-dialog-body{padding:4px 20px 20px}[dir=rtl] .ui-dialog-head{flex-direction:row-reverse}@media (width<=560px){.ui-dialog-sheet{border-radius:20px 20px 0 0;align-self:end;width:100%}.ui-dialog-backdrop{place-items:end center;padding:0}}.ui-confirm-msg{color:var(--ink);font-size:15px;line-height:1.55}.ui-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.ui-btn-primary,.ui-btn-ghost,.ui-btn-danger{min-height:44px;font:inherit;cursor:pointer;border:1.5px solid #0000;border-radius:11px;align-items:center;gap:7px;padding:11px 20px;font-size:15px;font-weight:700;display:inline-flex}.ui-btn-primary{background:var(--act);color:var(--act-ink)}.ui-btn-danger{background:var(--danger);color:#fff}.ui-btn-ghost{border-color:var(--line);color:var(--ink-soft);background:0 0}.ui-btn-ghost:hover{border-color:var(--ink-soft);color:var(--ink)}.ui-btn-primary:hover,.ui-btn-danger:hover{opacity:.92}.ui-skeleton{gap:10px;width:100%;padding:2px 0;display:grid}.ui-skeleton-bar{background:linear-gradient(90deg,#0f172a0f 25%,#0f172a1f 37%,#0f172a0f 63%) 0 0/400% 100%;border-radius:7px;height:13px;animation:1.4s infinite ui-shimmer}@keyframes ui-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.ui-skeleton-bar{animation:none}}.ui-state{text-align:center;color:var(--ink);flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.ui-state-icon{background:var(--paper);border:1px solid var(--line);width:54px;height:54px;color:var(--price);border-radius:16px;place-items:center;margin-bottom:4px;display:grid}.ui-state-error .ui-state-icon{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.ui-state-title{margin:0;font-size:16px;font-weight:700}.ui-state-hint{color:var(--ink-soft);max-width:320px;margin:0;font-size:13.5px;line-height:1.5}.ui-state-action{margin-top:10px}.gate-home{place-content:center;justify-items:center;gap:0;padding:28px 24px 120px}.gate-brand{justify-items:center;gap:10px;margin-bottom:36px;display:grid}.gate-brand .brand{font-size:clamp(38px,12vw,52px)}.gate-brand .brand:after{content:"";background:var(--gold);border-radius:999px;width:52px;height:4px;margin:14px auto 0;display:block}.gate-tagline{color:var(--ink-soft);max-width:300px;margin:0;font-size:16px;font-weight:500;line-height:1.5}.gate-actions{justify-items:center;gap:16px;width:100%;max-width:320px;display:grid}.gate-scan-cta{width:100%;box-shadow:0 12px 28px -12px color-mix(in srgb, var(--act) 60%, transparent);border-radius:14px;justify-content:center;align-items:center;gap:9px;padding:17px 24px;font-size:17px;display:inline-flex}.gate-discover-link{align-items:center;gap:6px;padding:6px;font-size:14.5px;display:inline-flex}.gate-hint{color:var(--ink-soft);text-align:center;max-width:300px;margin:4px 0 0;font-size:13.5px;line-height:1.5}.discover-card-skeleton{pointer-events:none;min-height:84px;padding:14px;display:block}.preview-header-skeleton{padding:18px 4px}.waiter-btn,.ai-search-btn,.linklike.icon-text{min-height:40px}.bottom-nav-item,.bottom-nav-scan{min-height:44px}.checkout-steps{align-items:center;gap:0;margin:4px 0 18px;padding:0;list-style:none;display:flex}.checkout-step{color:var(--ink-soft);flex-direction:column;flex:1;align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex;position:relative}.checkout-step:before{content:"";background:var(--line);z-index:0;width:100%;height:2px;position:absolute;top:12px;right:50%}.checkout-step:first-child:before{display:none}.checkout-step.done:before,.checkout-step.active:before{background:var(--act)}.checkout-step-dot{z-index:1;background:var(--card);border:2px solid var(--line);width:26px;height:26px;color:var(--ink-soft);border-radius:50%;place-items:center;font-size:12px;display:grid;position:relative}.checkout-step.active .checkout-step-dot{border-color:var(--act);color:var(--act)}.checkout-step.done .checkout-step-dot{background:var(--act);border-color:var(--act);color:var(--act-ink)}.checkout-step.active .checkout-step-label,.checkout-step.done .checkout-step-label{color:var(--ink)}.menu.has-checkout-bar{padding-bottom:150px}.checkout-bar{z-index:6;background:var(--card);border:1px solid var(--line);border-radius:16px;gap:10px;width:min(488px,100% - 24px);padding:12px 16px 14px;display:grid;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 -2px 10px #0f172a0a,0 14px 34px -14px #0f172a47}.checkout-bar-summary{gap:3px;display:grid}.checkout-bar-line{color:var(--ink-soft);justify-content:space-between;align-items:baseline;font-size:13.5px;display:flex}.checkout-bar-line.checkout-bar-total{color:var(--ink);padding-top:4px;font-size:17px;font-weight:700}.checkout-bar-line.checkout-bar-total strong{font-family:Plus Jakarta Sans,sans-serif}.checkout-bar-note{color:var(--ink-soft);margin:0;font-size:11.5px}.checkout-bar .primary{margin-top:0}.app.kiosk .menu.has-checkout-bar{padding-bottom:170px}.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}:root :is(body:has(.app.diner-menu),.app.diner-menu,.preview,.home-shell,.menu-catalog,.menu-item-sheet,.menu-item-backdrop,.menu-filter,.ui-dialog-backdrop:has(.menu-filter),.menu-quickbar,.qr-scan){--menu-bg:#f7f8f5;--menu-surface:#fff;--menu-elevated:#fff;--menu-text:#202624;--menu-muted:#59636b;--menu-line:#dfe6e1;--menu-pine:#166534;--menu-copper:#168447;--menu-hero-start:#111a16;--menu-hero-end:#1b2921;--menu-on-hero:#fff;--menu-action-bg:#168447;--menu-action-text:#fff;--menu-action-border:#15803d;--menu-action-hover:#15733e;--menu-price:#166534;--menu-soft:#f0f7f2;--menu-pattern:#16a34a0d;--menu-disabled-bg:#e6ebe7;--menu-disabled-text:#59636b;--menu-danger:#a33420;--menu-focus:#15803d;--menu-backdrop:#0c181299;--menu-shadow:0 2px 8px #14281c0f;--menu-shadow-hover:0 6px 18px #14281c1a;--menu-shadow-modal:0 20px 56px -16px #0c18123d;--menu-hero-bg:#111a16;--menu-hero-spine:#16a34a;--menu-gold:#168447;--menu-amber:#e9bb58;--menu-accent-text:#166534;--menu-action-grad:linear-gradient(180deg, #168447, #15803d);--menu-action-inner:inset 0 1px 0 #ffffff1a;--menu-glass:#f2faf5f5;--menu-glass-border:#1684472e;--menu-hairline:#20262417;--menu-glow:inset 0 1px 0 #ffffffa6;--menu-aura:#16a34a1a;--menu-skeleton-base:#e8ede9;--menu-skeleton-shine:#f8faf8}:root[data-theme=dark] :is(body:has(.app.diner-menu),.app.diner-menu,.preview,.home-shell,.menu-catalog,.menu-item-sheet,.menu-item-backdrop,.menu-filter,.ui-dialog-backdrop:has(.menu-filter),.menu-quickbar,.qr-scan){--menu-bg:#0d1410;--menu-surface:#151e19;--menu-elevated:#19231e;--menu-text:#f0f5f1;--menu-muted:#b4beb7;--menu-line:#34473b;--menu-pine:#86efac;--menu-copper:#4ade80;--menu-hero-start:#101a14;--menu-hero-end:#1b2921;--menu-on-hero:#fff;--menu-action-bg:#168447;--menu-action-text:#fff;--menu-action-border:#4ade80;--menu-action-hover:#15733e;--menu-price:#86efac;--menu-soft:#24332b;--menu-pattern:#4ade800d;--menu-disabled-bg:#2b3830;--menu-disabled-text:#b4beb7;--menu-danger:#f2a59a;--menu-focus:#86efac;--menu-backdrop:#000000b8;--menu-shadow:0 2px 8px #0000003d;--menu-shadow-hover:0 6px 18px #00000057;--menu-shadow-modal:0 20px 56px -16px #000000a6;--menu-hero-bg:#101a14;--menu-hero-spine:#4ade80;--menu-gold:#168447;--menu-amber:#e9bb58;--menu-accent-text:#86efac;--menu-action-grad:linear-gradient(180deg, #168447, #15803d);--menu-action-inner:inset 0 1px 0 #ffffff14;--menu-glass:#15231af5;--menu-glass-border:#4ade8038;--menu-hairline:#f0f5f11a;--menu-glow:inset 0 1px 0 #ffffff0a;--menu-aura:#4ade8014;--menu-skeleton-base:#25352b;--menu-skeleton-shine:#354a3d}.menu-catalog{background:var(--menu-bg);padding:8px 16px 24px}.menu-tools{flex-direction:column;gap:10px;margin-bottom:4px;display:flex}.menu-catalog .search{background:var(--menu-surface);width:100%;min-height:48px;color:var(--menu-text);border:.5px solid var(--menu-line);box-shadow:none;border-radius:14px;margin:0;padding:14px 16px;font-size:16px}.menu-catalog .search::placeholder{color:var(--menu-muted)}.menu-toolbtns{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.menu-layout-toggle{border:.5px solid var(--menu-hairline);background:var(--menu-surface);border-radius:14px;flex-shrink:0;gap:3px;margin-inline-start:auto;padding:3px;display:inline-flex}.menu-layout-toggle button{width:44px;min-height:44px;color:var(--menu-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;display:grid}.menu-layout-toggle button[aria-pressed=true]{color:var(--menu-accent-text);background:var(--menu-soft);box-shadow:inset 0 -2px 0 var(--menu-accent-text)}.menu-catnav{top:var(--menu-topbar-h);z-index:4;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:auto;border-radius:16px;gap:6px;margin-block:8px 12px;padding:6px;display:flex;position:sticky;overflow-x:auto}.menu-catnav::-webkit-scrollbar{display:none}.menu-catnav,.cartbar.menu-quickbar,.home-shell .bottom-nav{background:var(--menu-surface);border:.5px solid var(--menu-glass-border);box-shadow:var(--menu-glow), var(--menu-shadow)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.menu-catnav,.cartbar.menu-quickbar,.home-shell .bottom-nav{background:var(--menu-glass);-webkit-backdrop-filter:blur(18px)saturate(115%);backdrop-filter:blur(18px)saturate(115%)}}@media (prefers-reduced-transparency:reduce){.menu-catnav,.cartbar.menu-quickbar,.home-shell .bottom-nav{background:var(--menu-surface);-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-backdrop.menu-item-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0b0c10}}.menu-catnav button{min-height:44px;color:var(--menu-muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:11px;flex-shrink:0;padding:0 14px;font-weight:700;position:relative}.menu-catnav button.on{background:var(--menu-action-bg);color:var(--menu-action-text);box-shadow:none}.menu-hero{background:radial-gradient(120% 90% at 85% 0%, var(--menu-aura), transparent 60%), linear-gradient(135deg, var(--menu-hero-start), var(--menu-hero-end));border:.5px solid var(--menu-glass-border);padding:26px 24px;min-height:148px;color:var(--menu-on-hero);box-shadow:var(--menu-glow);border-radius:18px;flex-direction:column;justify-content:flex-end;margin:12px 0 22px;padding-inline-start:30px;display:flex;position:relative;overflow:hidden}.menu-hero[data-initial]:after{content:attr(data-initial);z-index:0;inset-inline-end:-.12em;pointer-events:none;font-family:var(--menu-serif);color:#ffffff12;font-size:clamp(140px,34vw,220px);font-weight:500;line-height:1;position:absolute;bottom:-.34em}.menu-hero>*{z-index:1;position:relative}.menu-hero .rule{z-index:1;background:var(--menu-hero-spine);width:2px;position:absolute;inset-block:22px;inset-inline-start:0}.menu-hero h2{max-width:16ch;font-family:var(--menu-serif);font-optical-sizing:auto;letter-spacing:-.012em;overflow-wrap:anywhere;margin:0;font-size:clamp(30px,7.4vw,44px);font-weight:440;line-height:1.08}.menu-hero p{letter-spacing:.02em;text-transform:lowercase;color:#ffffffc7;margin-top:12px;font-size:12.5px;font-weight:500;line-height:19px}.menu-hero.is-sparse{min-height:104px;margin-bottom:18px;padding:20px 22px;padding-inline-start:28px}.menu-hero.is-sparse h2{font-size:clamp(26px,6vw,34px)}.menu-hero.is-sparse[data-initial]:after{font-size:clamp(96px,24vw,150px)}.menu-section-title{font-family:var(--menu-serif);font-optical-sizing:auto;letter-spacing:-.01em;color:var(--menu-text);margin:22px 0 12px;font-size:22px;font-weight:460;line-height:28px}.menu-catalog section{scroll-margin-top:calc(var(--menu-topbar-h) + 72px)}.menu-list{display:block}.menu-catalog.layout-grid .menu-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.menu-catalog.layout-list .menu-list{display:block}.menu-item{background:var(--menu-surface);min-width:0;color:var(--menu-text);border:.5px solid var(--menu-hairline);display:block;overflow:hidden}.menu-item.has-photo{box-shadow:var(--menu-glow), var(--menu-shadow);border-radius:18px}.menu-item.no-photo{background:var(--menu-soft);box-shadow:none;border-radius:12px}.menu-catalog.layout-grid .menu-item{margin-bottom:0}.menu-catalog.layout-list .menu-item{margin-bottom:14px}.menu-catalog.layout-list .menu-item.no-photo{margin-bottom:8px}.menu-item .item-detail-target{isolation:isolate;display:block;position:relative}.menu-item.no-photo .item-detail-target{align-items:center;gap:12px;padding:14px 16px 0;display:flex}.menu-item.no-photo .item-photo-placeholder{flex-shrink:0}.menu-catalog.layout-list .menu-item.has-photo{border-radius:14px}.menu-catalog.layout-list .menu-item.has-photo .item-detail-target{align-items:center;gap:12px;padding:10px 12px 0;display:flex}.menu-catalog.layout-list .menu-item.has-photo .item-photo-frame{aspect-ratio:1;border-radius:10px;flex-shrink:0;width:64px;height:64px}.menu-catalog.layout-list .menu-item.has-photo .item-name{flex:1;min-width:0;padding:0;font-size:16.5px;line-height:21px}.menu-catalog.layout-list .menu-item.has-photo .item-info{padding:8px 12px 12px 88px}.menu-catalog.layout-list .menu-item.has-photo .item-desc{-webkit-line-clamp:2}.menu-catalog.layout-list .menu-item.has-photo .item-footer{flex-direction:row;align-items:center}.menu-catalog .item-photo-frame{aspect-ratio:16/9;background:var(--menu-skeleton-base);width:100%;display:block;position:relative;overflow:hidden}.menu-catalog.layout-grid .item-photo-frame{aspect-ratio:4/3}.menu-catalog .menu-item.has-photo .item-photo{aspect-ratio:auto;object-fit:cover;object-position:center;opacity:0;width:100%;height:100%;transition:opacity .22s ease, transform .5s var(--menu-ease);border-radius:0;display:block;position:absolute;inset:0;transform:scale(1)}.menu-catalog .item-photo-skeleton{pointer-events:none;background:linear-gradient(100deg, var(--menu-skeleton-base) 25%, var(--menu-skeleton-shine) 45%, var(--menu-skeleton-base) 65%);background-size:240% 100%;transition:opacity .22s;animation:1.5s linear infinite menu-photo-shimmer;position:absolute;inset:0}.menu-catalog .item-photo-frame.is-loaded .item-photo{opacity:1}.menu-catalog .item-photo-frame.is-loaded .item-photo-skeleton{opacity:0;animation:none}.menu-catalog .ui-skeleton-bar{background-image:linear-gradient(90deg, var(--menu-skeleton-base) 25%, var(--menu-skeleton-shine) 37%, var(--menu-skeleton-base) 63%)}@keyframes menu-photo-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.menu-item.is-out .item-photo{filter:saturate(.35)}.menu-item .item-photo-placeholder{background-color:var(--menu-soft);background-image:repeating-linear-gradient(135deg, transparent 0 11px, var(--menu-pattern) 11px 12px);width:48px;height:48px;color:var(--menu-accent-text);opacity:1;border-radius:12px;place-items:center;font-family:Plus Jakarta Sans,sans-serif;font-size:22px;font-weight:800;line-height:28px;display:grid}.menu-catalog .menu-item.no-photo .item-photo-placeholder{background:var(--menu-elevated);border:.5px solid var(--menu-hairline);width:38px;height:38px;color:var(--menu-accent-text);font-family:var(--menu-serif);border-radius:10px;font-size:19px;font-weight:500}.menu-item .item-name{font-family:var(--menu-serif);font-optical-sizing:auto;letter-spacing:-.005em;color:var(--menu-text);margin:0;font-size:20px;font-weight:500;line-height:25px}.menu-catalog.layout-grid .menu-item .item-name{font-size:17px;line-height:22px}.menu-item.no-photo .item-name{font-size:17.5px}.menu-item.has-photo .item-name{padding:16px 16px 0}.menu-item.no-photo .item-name{overflow-wrap:anywhere;min-width:0;padding:0}.menu-item .item-detail-trigger{appearance:none;font:inherit;letter-spacing:inherit;color:inherit;text-align:start;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.menu-item .item-detail-trigger:after{content:"";z-index:1;position:absolute;inset:0}.menu-item .item-detail-trigger:focus-visible{outline:2px solid var(--menu-focus);outline-offset:3px;border-radius:6px}.menu-catalog .item-detail-target:has(.item-detail-trigger:focus-visible){outline:2px solid var(--menu-focus);outline-offset:-3px;border-radius:8px}.menu-catalog .item-detail-target:has(.item-detail-trigger:focus-visible) .item-detail-trigger:focus-visible{outline:none}.menu-catalog .item-info{padding:6px 16px 16px}.menu-catalog .item-desc{color:var(--menu-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:21px;display:-webkit-box;overflow:hidden}.menu-catalog .item-combo{color:var(--menu-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:13px;font-weight:500;line-height:19px;display:-webkit-box;overflow:hidden}.menu-catalog p.item-nutrition{color:var(--menu-muted);flex-wrap:wrap;gap:8px;margin:10px 0 0;font-size:12px;font-weight:500;line-height:18px;display:flex}.menu-catalog .item-nutrition span{border:.5px solid var(--menu-hairline);border-radius:6px;padding:3px 7px}.menu-catalog .item-nutrition span:not(:last-child):after{content:none}.menu-catalog .item-out{color:var(--menu-danger);margin:10px 0 0;font-size:12px;font-weight:700}.menu-catalog .happy-hour-tag{background:var(--menu-soft);color:var(--menu-danger);border-radius:999px;margin:10px 0 0;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.menu-item .item-footer{border-top:.5px solid var(--menu-hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;display:flex}.menu-item .item-price{letter-spacing:-.4px;color:var(--menu-price);font-variant-numeric:tabular-nums;background:0 0;border-radius:0;flex-direction:column;align-items:flex-start;gap:0;padding:0;font-size:20px;font-weight:800;line-height:26px;display:flex}:root:not([data-theme=dark]) .menu-item .item-price{color:var(--menu-accent-text)}.menu-item .item-price-old{color:var(--menu-muted);font-size:12px;font-weight:500;line-height:18px;text-decoration:line-through}.menu-item .item-add{border:1px solid var(--menu-action-border);background:var(--menu-action-bg);min-width:96px;min-height:44px;color:var(--menu-action-text);font:inherit;letter-spacing:-.1px;cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:12px 16px;font-size:14px;font-weight:800;line-height:20px;display:inline-flex}.menu-item .item-add:disabled{background:var(--menu-disabled-bg);border-color:var(--menu-disabled-bg);color:var(--menu-disabled-text);box-shadow:none;cursor:default}.menu-item .item-add:not(:disabled),.gate-home .gate-scan-cta,.menu-quickbar .quickbar-cart,.menu-filter-foot .primary,.menu-item-sheet .sheet-foot .primary:not(:disabled),.home-shell .bottom-nav-scan{background:var(--menu-action-grad);box-shadow:var(--menu-action-inner), var(--menu-shadow)}.home-shell .bottom-nav-scan{box-shadow:var(--menu-action-inner), var(--menu-shadow-hover)}.menu-catalog.layout-grid .item-name{overflow-wrap:anywhere;font-size:16px;line-height:1.35}.menu-catalog.layout-grid .menu-item.has-photo .item-name{padding:12px 12px 0}.menu-catalog.layout-grid .item-info{padding:6px 12px 12px}.menu-catalog.layout-grid .item-desc{font-size:13px;line-height:20px}.menu-catalog.layout-grid .item-footer{flex-direction:column;align-items:stretch;gap:10px}.menu-catalog.layout-grid .item-price{overflow-wrap:anywhere;font-size:18px;line-height:24px}.menu-catalog.layout-grid .item-add{width:100%;min-width:0;padding:10px 6px}.menu-catalog.layout-grid .menu-item.no-photo .item-detail-target{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 12px 0}.menu-catalog.layout-grid .menu-item.no-photo .item-name{padding:0}.menu-catalog .menu-item,.menu-catalog .cat-tile{transition:transform .24s var(--menu-ease), box-shadow .24s ease, border-color .24s ease}.menu-catnav button,.menu-layout-toggle button,.menu-item .item-add,.menu-quickbar button,.gate-home .gate-scan-cta{transition:transform .15s var(--menu-ease), background-color .18s ease, box-shadow .18s ease}@media (hover:hover) and (pointer:fine){.menu-catalog .menu-item:hover,.menu-catalog .cat-tile:hover{border-color:var(--menu-glass-border);box-shadow:var(--menu-glow), var(--menu-shadow-hover);transform:translateY(-2px)}.menu-catalog .menu-item:hover .item-photo-frame.is-loaded .item-photo{transform:scale(1.05)}.menu-item .item-add:hover:not(:disabled),.gate-home .gate-scan-cta:hover{background:var(--menu-action-hover)}}.menu-catalog .menu-item:active,.menu-catalog .cat-tile:active,.menu-catnav button:active,.menu-layout-toggle button:active,.menu-item .item-add:active:not(:disabled),.menu-quickbar button:active:not(:disabled),.gate-home .gate-scan-cta:active{transform:scale(.98)}.menu-catalog .menu-item:has(.item-add:active){transform:none}.menu-catalog .cat-grid{grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 8px;display:grid}.menu-catalog .cat-tile,.menu-catalog .cat-tile.cat-tile-hero,.menu-catalog .cat-tile.cat-tile-photo{border:.5px solid var(--menu-hairline);background:var(--menu-surface);min-height:0;box-shadow:var(--menu-glow), var(--menu-shadow);text-align:start;font:inherit;color:var(--menu-text);cursor:pointer;border-radius:16px;flex-direction:column;grid-column:auto;padding:0;display:flex;position:relative;overflow:hidden}.menu-catalog .cat-tile-media{aspect-ratio:16/9;background:var(--menu-soft);width:100%;position:relative}.menu-catalog .cat-tile-img{object-fit:cover;border-radius:0;width:100%;height:100%;display:block;position:static;inset:auto}.menu-catalog .cat-tile-placeholder{opacity:1;background-color:var(--menu-soft);background-image:repeating-linear-gradient(135deg, transparent 0 18px, var(--menu-pattern) 18px 20px);width:100%;height:100%;color:var(--menu-accent-text);border-inline-start:2px solid var(--menu-accent-text);place-items:center;font-family:Plus Jakarta Sans,sans-serif;font-size:40px;font-weight:800;display:grid}.menu-catalog .cat-tile-name{font-family:var(--menu-serif);font-optical-sizing:auto;letter-spacing:-.005em;color:var(--menu-text);text-transform:none;text-shadow:none;padding:12px 12px 4px;font-size:17px;font-weight:500;line-height:22px;position:static;inset:auto}.menu-catalog .cat-tile-count{color:var(--menu-muted);padding:0 12px 12px;font-size:12px;line-height:18px}.menu-catalog .cat-tile:focus-visible,.menu-catnav button:focus-visible,.menu-layout-toggle button:focus-visible,.menu-item .item-add:focus-visible,.menu-quickbar button:focus-visible{outline:2px solid var(--menu-focus);outline-offset:2px}.menu-catalog .cat-back{color:var(--menu-accent-text);font-weight:700}.menu-catalog .ai-search-btn,.menu-catalog .tip-pill{border:.5px solid var(--menu-hairline);background:var(--menu-surface);min-height:44px;color:var(--menu-text);background-image:none;margin:0}.menu-catalog .tip-pill.on{border-color:var(--menu-accent-text);background:var(--menu-soft);color:var(--menu-accent-text)}.menu-catalog .ai-search-box input,.menu-catalog .ai-search-result{background:var(--menu-surface);border-color:var(--menu-line);color:var(--menu-text)}.menu-catalog .ai-search-box .primary{background:var(--menu-action-bg);color:var(--menu-action-text)}.menu-catalog .linklike{color:var(--menu-accent-text)}.menu-catalog .ui-state{color:var(--menu-text)}.menu-catalog .ui-state-hint{color:var(--menu-muted)}.menu-catalog .ui-state-icon{background:var(--menu-soft);color:var(--menu-accent-text);border-color:var(--menu-line)}.sheet-backdrop.menu-item-backdrop{background:var(--menu-backdrop);-webkit-backdrop-filter:blur(10px)saturate(90%);backdrop-filter:blur(10px)saturate(90%)}.sheet.menu-item-sheet{background:var(--menu-elevated);color:var(--menu-text);border:.5px solid var(--menu-glass-border);width:min(480px,100vw - 32px);max-width:min(480px,100vw - 32px);max-height:88dvh;box-shadow:var(--menu-glow), var(--menu-shadow-modal);border-radius:24px;flex-direction:column;padding:0;display:flex;overflow:hidden}.menu-item-sheet .sheet-photo{aspect-ratio:16/9;object-fit:cover;border-radius:23px 23px 0 0;flex-shrink:0;width:100%;max-height:none;margin:0;display:block}.menu-item-sheet video.sheet-photo{object-fit:contain;background:#000}.menu-item-sheet .sheet-mono{background-color:var(--menu-soft);background-image:repeating-linear-gradient(135deg, transparent 0 11px, var(--menu-pattern) 11px 12px);width:48px;height:48px;color:var(--menu-text);border-radius:12px;place-items:center;margin:20px 20px 0;font-family:Plus Jakarta Sans,sans-serif;font-size:22px;font-weight:800;display:grid}.menu-item-sheet .sheet-body{flex:1;padding:20px;overflow-y:auto}.menu-item-sheet .sheet-body h3{color:var(--menu-text);margin:0 0 8px;font-size:24px;font-weight:800;line-height:30px}.menu-item-sheet .sheet-desc{color:var(--menu-muted);margin:0 0 14px;font-size:15px;line-height:23px}.menu-item-sheet .nutri-row{gap:6px;margin:0 0 14px}.menu-item-sheet .nutri-pill{background:var(--menu-soft);color:var(--menu-muted);border:0;border-radius:999px;padding:6px 10px;font-size:12px;line-height:18px}.menu-item-sheet .mgroup-title{color:var(--menu-text)}.menu-item-sheet .mod{background:var(--menu-surface);border-color:var(--menu-line);color:var(--menu-text)}.menu-item-sheet .mod.on{border-color:var(--menu-pine);background:var(--menu-soft);font-weight:600}.menu-item-sheet .mod-price{color:var(--menu-price)}.menu-item-sheet.readonly .mod{cursor:default}.menu-item-sheet .sheet-foot{border-top:1px solid var(--menu-line);background:var(--menu-elevated);flex-shrink:0;padding:16px 20px}.menu-item-sheet .sheet-foot .primary{background:var(--menu-action-bg);min-height:48px;color:var(--menu-action-text);border-radius:12px;margin-top:0}.menu-item-sheet .sheet-foot .primary:disabled{background:var(--menu-disabled-bg);color:var(--menu-disabled-text)}.menu-item-sheet .sheet-x{top:12px;inset-inline-end:12px;z-index:3;background:var(--menu-elevated);border-color:var(--menu-line);width:44px;height:44px;color:var(--menu-text);right:auto}.menu-item-sheet .sheet-share{top:12px;inset-inline-end:64px;z-index:3;background:var(--menu-elevated);border-color:var(--menu-line);width:44px;height:44px;color:var(--menu-text);right:auto}.menu-item-sheet .sheet-share-toast{background:var(--menu-text);color:var(--menu-elevated)}.menu-item-sheet .readonly-note{color:var(--menu-muted);text-align:center;margin:12px 0 0;font-size:13px;line-height:19px}.sheet-title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.sheet-title-row h3{flex:1;min-width:0;margin:0}.sheet-price-pill{background:var(--menu-action-bg);color:var(--menu-action-text);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;flex-shrink:0;margin-top:2px;padding:5px 12px;font-size:15px;font-weight:800}.dietary-badges{flex-wrap:wrap;gap:6px;margin:-6px 0 14px;display:flex}.dietary-badge{border:.5px solid var(--menu-hairline);color:#475569;background:#e8eef2;border-radius:999px;align-items:center;gap:5px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.dietary-badge.is-featured{color:#9a3412;background:#fed7aa;border-color:#0000}.dietary-badge.is-chef-pick{background:var(--menu-elevated);border-color:var(--menu-pine);color:var(--menu-pine)}:root[data-theme=dark] .dietary-badge:not(.is-featured):not(.is-chef-pick){color:#cbd5e1;background:#26313c}:root[data-theme=dark] .dietary-badge.is-featured{color:#fdba74;background:#432719}.allergens-section{margin:0 0 16px}.allergens-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--menu-muted);margin-bottom:8px;font-size:11px;font-weight:800}.allergens-list{flex-wrap:wrap;gap:6px;display:flex}.allergen-pill{background:var(--menu-soft);color:var(--menu-muted);border-radius:999px;align-items:center;gap:5px;padding:6px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.nutri-macros{background:var(--menu-surface);border-radius:14px;margin:0 0 16px;padding:14px 16px}.nutri-macros-head{letter-spacing:.04em;text-transform:uppercase;color:var(--menu-muted);align-items:baseline;gap:6px;margin:0 0 12px;font-size:12px;font-weight:800;display:flex}.nutri-macros-head small{text-transform:none;letter-spacing:0;color:var(--menu-muted);opacity:1;font-size:11px;font-weight:600}.nutri-macro-grid{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:10px;margin-bottom:12px;display:grid}.nutri-macro-stat{text-align:center}.nutri-macro-stat b{color:var(--menu-text);font-size:18px;font-weight:800;line-height:1.2;display:block}.nutri-macro-stat span{letter-spacing:.04em;text-transform:uppercase;color:var(--menu-muted);margin-top:2px;font-size:10.5px;font-weight:700;display:block}.nutri-macro-bar{background:var(--menu-line);border-radius:999px;height:6px;display:flex;overflow:hidden}.nutri-macro-bar>span{height:100%}.macro-bar-protein{background:#65b8ad}.macro-bar-carb{background:var(--menu-amber)}.macro-bar-fat{background:#78bd87}.prep-time{color:var(--menu-muted);align-items:center;gap:7px;margin:0 0 16px;font-size:13px;font-weight:600;display:flex}.prep-time svg{color:var(--menu-accent-text);flex-shrink:0}.similar-products{margin:4px 0 0}.similar-products-title{color:var(--menu-text);margin-bottom:10px;font-size:13px;font-weight:800}.similar-products-row{padding-bottom:2px;gap:10px;margin:0 -20px;padding-inline:20px;display:flex;overflow-x:auto}.similar-card{text-align:start;font:inherit;cursor:pointer;background:0 0;border:0;flex:0 0 108px;padding:0}.similar-card-photo{object-fit:cover;background:var(--menu-soft);border-radius:12px;width:108px;height:108px;margin-bottom:6px;display:block}.similar-card-mono{background:var(--menu-soft);width:108px;height:108px;color:var(--menu-muted);border-radius:12px;place-items:center;margin-bottom:6px;font-size:22px;font-weight:800;display:grid}.similar-card-name{color:var(--menu-text);font-size:12.5px;font-weight:700;line-height:1.3}.similar-card-price{color:var(--menu-price);margin-top:2px;font-size:12px;font-weight:700}.ui-dialog-backdrop:has(.menu-filter){background:var(--menu-backdrop);-webkit-backdrop-filter:blur(10px)saturate(90%);backdrop-filter:blur(10px)saturate(90%)}.ui-dialog:has(.menu-filter){background:var(--menu-elevated);color:var(--menu-text);border:.5px solid var(--menu-glass-border);box-shadow:var(--menu-glow), var(--menu-shadow-modal);border-radius:24px}.ui-dialog:has(.menu-filter) .ui-dialog-head{padding:18px 20px 8px}.ui-dialog:has(.menu-filter) .ui-dialog-head h3{color:var(--menu-text);letter-spacing:-.01em;font-size:18px;font-weight:800}.ui-dialog:has(.menu-filter) .ui-dialog-x{background:var(--menu-soft);color:var(--menu-text);border:.5px solid var(--menu-hairline)}.ui-dialog:has(.menu-filter) .ui-dialog-body{padding:0 20px 20px}.menu-filter-lead{color:var(--menu-muted);margin:0 0 14px;font-size:13px;line-height:19px}.menu-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.menu-filter-chip{border:.5px solid var(--menu-hairline);background:var(--menu-surface);min-height:44px;color:var(--menu-text);font:inherit;text-align:start;cursor:pointer;transition:border-color .15s var(--menu-ease), background-color .15s var(--menu-ease), color .15s var(--menu-ease);border-radius:12px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.menu-filter-chip .menu-filter-tick{border:1.5px solid var(--menu-line);width:18px;height:18px;color:var(--menu-action-text);border-radius:6px;flex-shrink:0;place-items:center;display:grid}.menu-filter-chip.on{border-color:var(--menu-accent-text);background:var(--menu-soft);color:var(--menu-accent-text)}.menu-filter-chip.on .menu-filter-tick{background:var(--menu-gold);border-color:var(--menu-gold)}.menu-filter-chip:active{transform:scale(.98)}.menu-filter-chip:focus-visible{outline:2px solid var(--menu-focus);outline-offset:2px}.menu-filter-foot{border-top:.5px solid var(--menu-hairline);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:14px;display:flex}.menu-filter-foot .linklike{color:var(--menu-accent-text)}.menu-filter-foot .linklike:disabled{color:var(--menu-disabled-text);cursor:default}.menu-filter-foot .primary{background:var(--menu-action-bg);width:auto;min-height:44px;color:var(--menu-action-text);border-radius:12px;margin:0;padding:11px 22px;font-weight:800}@media (prefers-reduced-motion:reduce){.menu-filter-chip{transition:none}.menu-filter-chip:active{transform:none}}@media (prefers-reduced-transparency:reduce){.ui-dialog-backdrop:has(.menu-filter){-webkit-backdrop-filter:none;backdrop-filter:none;background:#0b0c10}}.cartbar:before{content:none}.cartbar.menu-quickbar{bottom:calc(12px + env(safe-area-inset-bottom,0px));color:var(--menu-text);cursor:default;border-radius:22px;gap:8px;padding:8px;transition:none;display:grid}.cartbar.menu-quickbar:active{transform:translate(-50%)}.menu-quickbar button{min-width:0;min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:14px;padding:10px 12px;font-size:13px;font-weight:700}.menu-quickbar .quickbar-cart{background:var(--menu-action-bg);min-height:52px;color:var(--menu-action-text);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.quickbar-cart .cartbar-total{font-variant-numeric:tabular-nums;margin-inline-start:auto;font-size:18px}.quickbar-cart .cartbar-count{background:var(--menu-action-text);color:var(--menu-action-bg);flex-shrink:0}.quickbar-services{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quickbar-services button{background:var(--menu-soft);color:var(--menu-text);text-align:center;justify-content:center;align-items:center;gap:8px;display:flex}.quickbar-services button:disabled{background:var(--menu-disabled-bg);color:var(--menu-disabled-text);cursor:default}.app.diner-menu{padding-bottom:calc(var(--menu-quickbar-h) + 24px + env(safe-area-inset-bottom,0px))}.app.kiosk .cartbar.menu-quickbar{width:min(688px,100% - 24px)}:is(body:has(.home-shell),body:has(.app.diner-menu)){background:var(--menu-bg);color:var(--menu-text)}.home-shell,.app.diner-menu{background:var(--menu-bg);color:var(--menu-text);min-height:100dvh}.gate-home{background:radial-gradient(ellipse at 50% 32%, var(--menu-aura), transparent 62%), var(--menu-bg);padding:88px 24px calc(140px + env(safe-area-inset-bottom,0px));position:relative}.gate-brand{animation:menu-gate-enter .42s var(--menu-ease) both;gap:14px;margin-bottom:32px}.gate-actions{animation:menu-gate-enter .42s var(--menu-ease) 60ms both}@keyframes menu-gate-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.gate-wordmark-main{color:var(--menu-text)}.gate-wordmark-accent{color:var(--menu-accent-text)}.gate-brand .brand:after{background:var(--menu-gold);width:40px;height:1px;margin-top:20px}.gate-welcome{color:var(--menu-text);letter-spacing:-.5px;margin:12px 0 0;font-size:24px;font-weight:600}.gate-tagline,.gate-hint{color:var(--menu-muted)}.gate-home .gate-scan-cta{border:1px solid var(--menu-action-border);background:var(--menu-action-bg);min-height:60px;color:var(--menu-action-text);box-shadow:var(--menu-glow), var(--menu-shadow-hover);border-radius:18px;margin-top:0}.gate-discover-link{min-height:44px;color:var(--menu-accent-text)}.gate-hint.error-text{color:var(--menu-danger)}.home-shell .bottom-nav{color:var(--menu-text);border-bottom:0;border-radius:22px 22px 0 0}.home-shell .bottom-nav-item{color:var(--menu-muted)}.home-shell .bottom-nav-item.on,.home-shell .bottom-nav-scan-label{color:var(--menu-accent-text)}.home-shell .bottom-nav-scan{background:var(--menu-action-bg);color:var(--menu-action-text);border-color:var(--menu-bg);box-shadow:var(--menu-shadow-hover)}.app.diner-menu .topbar{background:var(--menu-bg);color:var(--menu-text);border-bottom:.5px solid var(--menu-hairline)}.app.diner-menu .restaurant{white-space:normal;overflow-wrap:anywhere}.app.diner-menu .table,.app.diner-menu .menu-welcome{color:var(--menu-muted)}.app.diner-menu .topbar .linklike{color:var(--menu-accent-text)}.app.diner-menu .topbar .logo{border-color:var(--menu-hairline)}.home-shell .top-controls button,.app.diner-menu .top-controls button,.app.diner-menu .help-btn{background:var(--menu-surface);color:var(--menu-text);border-color:var(--menu-line)}.menu-welcome{margin-block:3px 6px;font-size:13px}.menu-header-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app.diner-menu .table,.menu-hours{background:var(--menu-soft);color:var(--menu-muted);white-space:normal;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;line-height:18px;display:inline-flex}.home-shell .discover{background:var(--menu-bg);color:var(--menu-text)}.home-shell .discover .brand,.home-shell .discover .brand>span:first-child{color:var(--menu-text)}.home-shell .discover .brand>span:last-child{color:var(--menu-accent-text)}.home-shell .discover .item-desc{color:var(--menu-muted)}.home-shell .discover .search{background:var(--menu-surface);color:var(--menu-text);border:.5px solid var(--menu-line);border-radius:14px}.home-shell .discover-card{background:var(--menu-surface);color:var(--menu-text);border:.5px solid var(--menu-hairline);box-shadow:var(--menu-glow), var(--menu-shadow);border-radius:16px}.home-shell .discover-card .item-name{color:var(--menu-text)}.home-shell .discover-card .item-desc{color:var(--menu-muted)}.home-shell .discover-card-fallback{background:var(--menu-soft);border:.5px solid var(--menu-hairline);color:var(--menu-accent-text)}.home-shell .discover-card .logo{border-color:var(--menu-hairline)}@media (hover:hover) and (pointer:fine){.home-shell .discover-card:hover{border-color:var(--menu-glass-border);box-shadow:var(--menu-glow), var(--menu-shadow-hover)}}.home-shell .discover-card:active{transform:scale(.99)}dialog.qr-scan{background:var(--menu-bg);color:var(--menu-text)}.qr-scan-frame{border-width:2px;border-color:var(--menu-gold);box-shadow:0 0 0 1px #000000a6}.preview{background:var(--menu-bg);color:var(--menu-text)}.preview .preview-header,.preview .restaurant{color:var(--menu-text)}.preview .table{color:var(--menu-muted)}.preview .linklike,.preview .cat-back{color:var(--menu-accent-text)}.preview .topbar{background:var(--menu-bg);border-bottom:.5px solid var(--menu-hairline)}.preview .topbar-actions{margin-inline-start:auto}.preview .top-controls button{background:var(--menu-surface);color:var(--menu-text);border-color:var(--menu-line)}.cartbar.preview-cta{background:var(--menu-glass);color:var(--menu-text);border:.5px solid var(--menu-glass-border);box-shadow:var(--menu-glow), var(--menu-shadow)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.cartbar.preview-cta{-webkit-backdrop-filter:blur(18px)saturate(115%);backdrop-filter:blur(18px)saturate(115%)}}.cartbar.preview-cta:before{content:none}.app{animation:none}.view-stage{animation:menu-view-enter .24s var(--menu-ease);position:relative}@keyframes menu-view-enter{0%{opacity:0;top:8px}to{opacity:1;top:0}}@media (width>=640px){.app.kiosk .menu-catalog.layout-grid .menu-list{gap:16px}.app.kiosk .menu-catalog .item-add{min-height:48px}}[dir=rtl] .menu-catalog .item-name,[dir=rtl] .menu-item .item-price,[dir=rtl] .menu-hero h2,[dir=rtl] .menu-section-title{letter-spacing:0}@media (prefers-reduced-motion:reduce){.menu-catalog .menu-item,.menu-catalog .cat-tile,.menu-catalog .item-photo,.menu-catalog .item-photo-skeleton,.menu-catalog .ui-skeleton-bar,.menu-catnav button,.menu-layout-toggle button,.menu-item .item-add,.menu-quickbar button,.gate-home .gate-scan-cta,.gate-brand,.gate-actions,.view-stage{transition:none!important;animation:none!important}.menu-catalog .menu-item,.menu-catalog .cat-tile,.menu-catalog .cat-tile-img,.menu-catalog .item-photo,.menu-catnav button,.menu-layout-toggle button,.menu-item .item-add,.menu-quickbar button,.gate-home .gate-scan-cta,.home-shell .bottom-nav-scan{transform:none!important}}
