.menu-shell{--menu-fg:#1a1a1a;--menu-bg:#fff;--menu-accent:#e07a3d;--menu-muted:color-mix(in srgb, var(--menu-fg) 48%, transparent);--menu-subtle:#f4f4f5;--menu-line:color-mix(in srgb, var(--menu-fg) 8%, transparent);--menu-surface:#fff;--menu-danger:#b91c1c;--menu-ok:#15803d;--menu-font-display:var(--font-outfit), system-ui, sans-serif;--menu-font-body:var(--font-outfit), system-ui, sans-serif;--menu-radius:1.25rem;--menu-radius-sm:.75rem;--menu-radius-pill:999px;--menu-space-1:.25rem;--menu-space-2:.5rem;--menu-space-3:.75rem;--menu-space-4:1rem;--menu-space-5:1.25rem;--menu-space-6:1.5rem;--menu-space-8:2rem;--menu-shadow:0 1px 2px #0000000a, 0 8px 24px -10px #0000001a;--menu-shadow-sticky:0 1px 0 var(--menu-line);--menu-max:26.5rem;font-family:var(--menu-font-body);color:var(--menu-fg);background:color-mix(in srgb, var(--menu-bg) 86%, #e7edf3);-webkit-font-smoothing:antialiased}.menu-shell *{box-sizing:border-box}.menu-container{width:100%;max-width:var(--menu-max);padding-inline:var(--menu-space-4);margin-inline:auto}@media (min-width:480px){.menu-shell{--menu-max:28rem}.menu-container{padding-inline:var(--menu-space-5)}}.menu-display{font-family:var(--menu-font-body);letter-spacing:-.03em;font-size:clamp(1.65rem,5.4vw,2rem);font-style:normal;font-weight:600;line-height:1.15}.menu-title{font-family:var(--menu-font-body);letter-spacing:-.025em;font-size:clamp(1.35rem,4vw,1.6rem);font-weight:700;line-height:1.2}.menu-body{letter-spacing:-.01em;font-size:.9375rem;font-weight:650;line-height:1.35}.menu-caption{color:var(--menu-muted);font-size:.75rem;font-weight:450;line-height:1.45}.menu-eyebrow{letter-spacing:0;text-transform:none;color:var(--menu-muted);font-size:.75rem;font-weight:500}.menu-price{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:.9375rem;font-weight:700}.menu-meta{color:var(--menu-muted);font-variant-numeric:tabular-nums;font-size:.6875rem;font-weight:500}.menu-cat-grid{padding-block:var(--menu-space-2) var(--menu-space-8);flex-direction:column;gap:.875rem;margin:0;padding-inline:0;list-style:none;display:flex}.menu-cat-card{background:var(--menu-surface,#fff);text-align:left;cursor:pointer;width:100%;min-height:7.75rem;color:var(--menu-fg);border:1px solid #ffffffd9;border-radius:1.35rem;padding:0;transition:transform .15s,box-shadow .15s;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb3,0 8px 28px #1a1d240f}.menu-cat-card:active{transform:scale(.985)}.menu-cat-card__media{pointer-events:none;width:58%;position:absolute;top:0;bottom:0;right:0}.menu-cat-card__media img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.menu-cat-card__fade{background:linear-gradient(90deg, var(--menu-surface,#fff) 0%, color-mix(in srgb, var(--menu-surface,#fff) 92%, transparent) 14%, color-mix(in srgb, var(--menu-surface,#fff) 45%, transparent) 42%, transparent 68%);pointer-events:none;position:absolute;inset:0}.menu-cat-card__body{z-index:1;flex-direction:column;justify-content:center;max-width:54%;min-height:7.75rem;padding:1.15rem 1rem 1.15rem 1.35rem;display:flex;position:relative}.menu-cat-card:not(.menu-cat-card--photo) .menu-cat-card__body{max-width:100%}.menu-cat-card__name{letter-spacing:-.03em;color:var(--menu-fg);font-size:1.125rem;font-weight:700;line-height:1.2}.menu-cat-card__desc{color:var(--menu-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.35rem;font-size:.8125rem;font-weight:450;line-height:1.4;display:-webkit-box;overflow:hidden}@media (min-width:480px){.menu-cat-card{min-height:8.5rem}.menu-cat-card__body{max-width:48%;min-height:8.5rem;padding:1.35rem 1.25rem 1.35rem 1.6rem}.menu-cat-card__media{width:62%}.menu-cat-card__name{font-size:1.25rem}}.menu-card{background:var(--menu-surface);cursor:pointer;border:0;border-radius:1.15rem;align-items:center;gap:.8rem;padding:.7rem .75rem .7rem .7rem;transition:transform .12s;display:flex;box-shadow:0 1px 2px #0000000a,0 8px 20px #0000000d}.menu-card:active{transform:scale(.985)}.menu-card-media{object-fit:cover;background:var(--menu-subtle);border-radius:.9rem;flex-shrink:0;width:4.6rem;height:4.6rem}.menu-card-desc{color:var(--menu-accent);margin-top:.2rem;font-size:.78rem;line-height:1.35}.menu-price-pill{background:color-mix(in srgb, var(--menu-accent) 16%, #fff);color:var(--menu-accent);letter-spacing:-.02em;white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;align-self:center;padding:.42rem .7rem;font-size:.875rem;font-weight:700}.menu-card-media--placeholder{color:color-mix(in srgb, var(--menu-fg) 32%, transparent);background:var(--menu-subtle);justify-content:center;align-items:center;font-size:.95rem;font-weight:600;display:flex}.menu-list{gap:var(--menu-space-3);flex-direction:column;display:flex}.menu-section{padding-bottom:var(--menu-space-8);scroll-margin-top:8.25rem}.menu-sticky{z-index:20;background:color-mix(in srgb, var(--menu-bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);box-shadow:var(--menu-shadow-sticky);position:sticky;top:0}.menu-icon-btn{border-radius:var(--menu-radius-pill);width:2.25rem;height:2.25rem;color:var(--menu-fg);cursor:pointer;background:#ffffffb8;border:1px solid #ffffffd9;justify-content:center;align-items:center;transition:background .15s;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.menu-icon-btn--light{background:var(--menu-subtle);color:var(--menu-fg)}.menu-icon-btn:hover{opacity:.88}.menu-pill{border-radius:var(--menu-radius-pill);background:var(--menu-subtle);height:2rem;color:var(--menu-fg);cursor:pointer;border:0;align-items:center;gap:.25rem;padding-inline:.85rem;font-size:.6875rem;font-weight:550;display:inline-flex}.menu-field{border-radius:var(--menu-radius-pill);background:var(--menu-subtle);width:100%;height:2.125rem;color:var(--menu-fg);border:0;outline:none;padding-inline:.875rem;font-size:.8125rem}.menu-field::placeholder{color:color-mix(in srgb, var(--menu-fg) 35%, transparent)}.menu-field:focus{box-shadow:0 0 0 2px color-mix(in srgb, var(--menu-accent) 30%, transparent)}.menu-chip{color:#fff;white-space:nowrap;border-radius:.35rem;align-items:center;height:1.25rem;padding-inline:.4rem;font-size:.625rem;font-weight:650;display:inline-flex}.menu-chip--danger{background:var(--menu-danger)}.menu-chip--ok{background:var(--menu-subtle);color:var(--menu-fg)}.menu-nav{gap:.5rem;padding:.35rem 0 .7rem;display:flex;overflow-x:auto}.menu-nav-item{color:var(--menu-fg);white-space:nowrap;cursor:pointer;background:#fff;border:0;border-radius:999px;flex-shrink:0;padding:.55rem .9rem;font-size:.78rem;font-weight:700;box-shadow:0 1px 2px #0000000f}.menu-nav-item[data-active=true]{background:var(--menu-fg);color:var(--menu-bg,#fff)}.menu-back{border-radius:var(--menu-radius-pill);background:var(--menu-subtle);height:2.25rem;color:var(--menu-fg);cursor:pointer;border:0;align-items:center;gap:.35rem;padding-inline:.85rem;font-size:.75rem;font-weight:600;transition:opacity .15s,transform .15s;display:inline-flex}.menu-back:active{transform:scale(.96)}.menu-footer{margin-top:var(--menu-space-6);padding-block:var(--menu-space-8) 3rem;border-top:1px solid var(--menu-line);color:var(--menu-muted);font-size:.75rem}.menu-choice-card{width:100%;padding:var(--menu-space-4) var(--menu-space-5);border-radius:var(--menu-radius);border:1px solid var(--menu-line);background:var(--menu-surface);text-align:left;cursor:pointer;box-shadow:var(--menu-shadow);justify-content:space-between;align-items:center;display:flex}.menu-choice-card--primary{background:var(--menu-fg);color:var(--menu-surface);border-color:var(--menu-fg)}@keyframes menu-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-fade-simple{0%{opacity:0}to{opacity:1}}.menu-fade{will-change:opacity, transform;animation:.24s cubic-bezier(.16,1,.3,1) both menu-fade-in}.menu-fade-quick{will-change:opacity;animation:.18s ease-out both menu-fade-simple}.menu-detail-page{z-index:40;overscroll-behavior:contain;background:var(--menu-bg,#fff);color:var(--menu-fg);animation:.2s ease-out both menu-fade-simple;position:fixed;inset:0;overflow-y:auto}.menu-detail{width:100%;max-width:var(--menu-max);background:var(--menu-surface,#fff);min-height:100%;margin-inline:auto}.menu-detail-media{position:relative}.menu-detail-photo{object-fit:cover;background:var(--menu-subtle);width:100%;height:min(52vh,28rem);display:block}.menu-detail-photo--empty{color:var(--menu-muted);justify-content:center;align-items:center;font-size:.875rem;display:flex}.menu-detail-close{width:2rem;height:2rem;color:var(--menu-fg);cursor:pointer;background:#ffffffe0;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:.85rem;display:inline-flex;position:absolute;top:.75rem;right:.75rem;box-shadow:0 1px 4px #0000001f}.menu-detail-body{padding:1.25rem 1.25rem calc(1.75rem + env(safe-area-inset-bottom))}.menu-detail-price{letter-spacing:-.03em;color:var(--menu-accent);margin-top:.35rem;font-size:1.35rem;font-weight:700}.menu-detail-desc{color:color-mix(in srgb, var(--menu-fg) 72%, var(--menu-accent));margin-top:.85rem;font-size:.95rem;line-height:1.45}.menu-splash{z-index:100;background:var(--menu-bg,#fff);color:var(--menu-fg,#1a1a1a);flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;transition:opacity .55s;display:flex;position:fixed;inset:0}.menu-splash--exit{opacity:0;pointer-events:none}.menu-splash-mark{text-align:center;flex-direction:column;align-items:center;width:min(100%,22rem);display:flex}.menu-splash-logo-wrap{justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.menu-splash-logo{object-fit:cover;border-radius:1.15rem;width:4.5rem;height:4.5rem;animation:.9s both menu-splash-logo-in;box-shadow:0 1px 2px #0000000d,0 10px 24px #0000000f}.menu-splash-name{animation:.8s .22s both menu-splash-rise}.menu-splash-table{margin-top:.55rem;animation:.7s .35s both menu-splash-rise}.menu-splash-wifi{background:color-mix(in srgb, var(--menu-fg) 5%, #f4f4f5);width:100%;color:inherit;cursor:pointer;border:0;border-radius:1.15rem;flex-direction:column;align-items:stretch;gap:.85rem;margin-top:1.5rem;padding:1rem 1.1rem .95rem;animation:.7s .42s both menu-splash-rise;display:flex}.menu-splash-wifi-row{flex-direction:column;align-items:center;gap:.15rem;display:flex}.menu-splash-wifi-label{color:var(--menu-muted);font-size:.75rem;font-weight:600}.menu-splash-wifi-value,.menu-splash-wifi-password{letter-spacing:-.02em;word-break:break-all;font-size:1.05rem;font-weight:650}.menu-wifi-btn{background:color-mix(in srgb, var(--menu-fg) 6%, #f4f4f5);width:2.5rem;height:2.5rem;color:var(--menu-fg);cursor:pointer;border:0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.menu-wifi-layer{z-index:80;background:#00000073;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.menu-wifi-popup{background:var(--menu-surface,#fff);width:min(100%,18.5rem);color:var(--menu-fg,#1a1a1a);text-align:center;border-radius:1.25rem;padding:1.35rem 1.25rem 1.2rem;position:relative;box-shadow:0 18px 50px #0000002e}.menu-wifi-popup-close{background:color-mix(in srgb, var(--menu-fg,#1a1a1a) 6%, #f4f4f5);width:1.85rem;height:1.85rem;color:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:.7rem;right:.7rem}.menu-wifi-popup-title{margin:0 1.5rem .9rem;font-size:1rem;font-weight:650}.menu-wifi-popup-row{flex-direction:column;gap:.15rem;margin-top:.75rem;display:flex}.menu-wifi-popup-label{color:var(--menu-muted,#71717a);font-size:.75rem;font-weight:600}.menu-wifi-popup-value{letter-spacing:-.02em;word-break:break-all;font-size:1.05rem;font-weight:650}.menu-wifi-popup-copy{background:var(--menu-fg,#1a1a1a);width:100%;color:var(--menu-bg,#fff);font:inherit;cursor:pointer;border:0;border-radius:999px;margin-top:1rem;padding:.7rem 1rem;font-size:.9rem;font-weight:650}.menu-splash-enter{background:var(--menu-fg);width:100%;color:var(--menu-bg,#fff);font:inherit;cursor:pointer;border:0;border-radius:999px;margin-top:.75rem;padding:.9rem 1rem;font-size:.95rem;font-weight:650;animation:.7s .5s both menu-splash-rise}.menu-splash-enter:active{transform:scale(.985)}@keyframes menu-splash-logo-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes menu-splash-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.menu-fade,.menu-fade-quick,.menu-detail-page{transition:none!important;animation:none!important}.menu-splash{display:none!important}}
