:root{color:#151515;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}.mobile-carousel{overscroll-behavior:contain;scrollbar-width:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;display:block;position:relative;overflow:auto}.mobile-carousel::-webkit-scrollbar{display:none}.mobile-carousel{touch-action:pan-y;overflow:auto hidden}.mobile-carousel[data-dragging=true]{cursor:none}.mobile-carousel-content{width:max-content;min-width:100%;transform:translateX(var(--mobile-carousel-overdrag));will-change:transform;display:flex}.mobile-carousel-scrollbar{z-index:4;opacity:0;pointer-events:none;transition:opacity .15s;position:absolute;inset:0}.mobile-carousel-scrollbar[data-visible=true]{opacity:1}.mobile-carousel-scrollbar-thumb{background:#00000059;border-radius:999px;height:3px;position:absolute;bottom:4px;right:4px}body{min-width:320px;overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}.phone-stage{place-items:center;width:100%;height:100%;padding:24px;display:grid;position:relative}.device-menu-bar{z-index:100;border-radius:12px;padding:3px;position:absolute;top:18px;right:18px}.device-picker-trigger{color:#151515;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;height:34px;padding:0 10px 0 12px;font:600 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-trigger:hover,.device-picker-trigger[data-state=open]{background:#0000000e}.device-picker-trigger:focus-visible{outline-offset:2px;outline:2px solid #000000b8}.device-picker-menu{z-index:200;min-width:168px;transform-origin:var(--radix-dropdown-menu-content-transform-origin);background:#fffffffa;border-radius:12px;padding:3px;animation:.12s ease-out device-menu-in;box-shadow:0 0 1px #0000000f,0 0 0 1px #00000014,0 4px 4px #0000000d}.device-picker-item{color:#181818;-webkit-user-select:none;user-select:none;border-radius:8px;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 9px 0 10px;font:500 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-item[data-highlighted]{background:#f0f0f0}.device-picker-item[data-state=checked]{font-weight:600}.device-picker-check{color:#181818;place-items:center;display:grid}@keyframes device-menu-in{0%{opacity:0;transform:scale(.98)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.phone-scale-box{position:relative}.phone-device{transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.phone-bezel{object-fit:contain;z-index:2;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.device-screen{cursor:none;z-index:1;-webkit-user-select:none;user-select:none;background:#fff;border-radius:42px;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.device-camera{z-index:75;pointer-events:none;background:#050505;border-radius:50%;display:block;position:absolute;box-shadow:inset 0 0 0 1px #ffffff14}.device-screen,.device-screen *{cursor:none!important}.device-screen img,.keyboard-asset{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.device-screen input,.device-screen textarea,.device-screen select,.device-screen option,.device-screen [contenteditable=true]{-webkit-user-select:auto;user-select:auto}.device-screen:active,.device-screen:active *,.device-screen input,.device-screen textarea,.device-screen button,.device-screen a,.device-screen [role=button]{cursor:none!important}.device-screen[data-cursor-debug=true],.device-screen[data-cursor-debug=true] *{cursor:default!important}.device-screen :focus,.device-screen :focus-visible{box-shadow:none!important;outline:0!important}.flow-stack,.flow-scenes,.flow-screen,.mobile-app-viewport{position:absolute;inset:0}.mobile-app-viewport[data-platform=android][data-keyboard-visible=false]{bottom:var(--device-safe-area-bottom,48px)}.flow-stack{--flow-header-height:0px;--flow-header-content-height:0px;--flow-header-safe-area:0px;--flow-footer-height:0px;--keyboard-height:0px;touch-action:pan-y;background:0 0;overflow:hidden}.flow-fixed-header{z-index:12;height:var(--flow-header-height);padding-top:var(--flow-header-safe-area);box-sizing:border-box;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;position:absolute;top:0;left:0;right:0}.flow-fixed-footer{z-index:12;right:0;bottom:var(--keyboard-height);height:var(--flow-footer-height);background:0 0;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0}.flow-scenes{top:var(--flow-header-height);bottom:0;overflow:hidden}.flow-screen{will-change:transform;background:0 0;overflow:hidden}.mobile-page{--mobile-safe-area-height:var(--device-safe-area-bottom,34px);--keyboard-height:0px;position:absolute;inset:0}.mobile-page[data-keyboard-visible=true],.mobile-app-viewport[data-platform=android] .mobile-page{--mobile-safe-area-height:0px}.mobile-scroll{top:0;right:0;bottom:var(--keyboard-height);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;touch-action:none;-webkit-user-select:none;user-select:none;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;overflow:hidden auto}.mobile-scroll::-webkit-scrollbar{display:none}.mobile-scroll[data-dragging=true]{cursor:none}.mobile-cursor{z-index:80;opacity:0;pointer-events:none;will-change:transform;background:radial-gradient(circle at 50% 44%,#ffffffb3 0 34%,#ffffff8a 58%,#eeeeee7a 100%);border:.5px solid #0000001f;border-radius:999px;width:48px;height:48px;transition:opacity 90ms,background 80ms,box-shadow 80ms;position:absolute;top:0;left:0;box-shadow:inset 0 1px 2px #fff9,inset 0 -5px 10px #0000000d,inset 0 0 0 1px #00000006}.mobile-cursor:before{content:"";pointer-events:none;background:linear-gradient(#ffffff61,#fff0);border-radius:999px;width:32px;height:17px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.mobile-cursor:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 1px 0 3px #ffffff47,inset -1px 0 3px #00000005}.mobile-cursor-hotspot{pointer-events:none;background:#ffffffd1;border:1px solid #007afff2;border-radius:999px;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffffbf,0 0 0 3px #007aff29}.mobile-cursor-hotspot:before,.mobile-cursor-hotspot:after{content:"";background:#007afff2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-cursor-hotspot:before{width:17px;height:1px}.mobile-cursor-hotspot:after{width:1px;height:17px}.mobile-cursor[data-visible=true]{opacity:1}.mobile-cursor[data-active=true]{background:radial-gradient(circle at 50% 55%,#e8e8e894 0 30%,#f8f8f880 62%,#ffffffad 100%);box-shadow:inset 0 3px 7px #00000014,inset 0 -4px 8px #ffffff57,inset 0 0 0 1px #00000008}.mobile-cursor[data-active=true]:before{background:linear-gradient(#0000000e,#0000)}.mobile-cursor[data-active=true]:after{box-shadow:inset 0 5px 9px #0000000b,inset 0 -3px 7px #ffffff47}.mobile-scroll-content{will-change:transform;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;padding:0;display:grid}.app-screen{background:#fff}.mobile-scrollbar{z-index:9;top:4px;right:5px;bottom:calc(var(--mobile-safe-area-height) + var(--keyboard-height) + 4px);opacity:0;pointer-events:none;width:4px;transition:bottom .26s cubic-bezier(.2,.8,.2,1),opacity .18s;position:absolute}.mobile-page[data-keyboard-dragging=true] .mobile-scroll,.mobile-page[data-keyboard-dragging=true] .mobile-scrollbar,.flow-stack[data-keyboard-dragging=true] .flow-fixed-footer{transition:none}.mobile-scrollbar[data-visible=true]{opacity:1}.mobile-scrollbar-thumb{background:#00000047;border-radius:999px;width:4px;min-height:36px;transition:background .12s;box-shadow:0 0 0 1px #ffffff2e}.status-bar{z-index:72;color:#050505;pointer-events:none;background:0 0;grid-template-columns:1fr auto;align-items:center;height:54px;padding:10px 34px 0 36px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;display:grid;position:absolute;top:0;left:0;right:0}.device-screen[data-device=pixel-10] .status-bar{align-items:start;height:auto;padding:32px 32px 0;font-family:Roboto,Arial,sans-serif}.status-time{text-align:center;letter-spacing:0;justify-self:start;min-width:58px;font-size:15px;font-weight:600;line-height:1}.status-indicators{justify-self:end;align-items:center;display:flex}.status-indicator-svg{display:block}.status-indicator-svg[data-platform=ios]{width:79px;height:13px}.status-indicator-svg[data-platform=android]{width:50px;height:14px}.device-screen[data-device=pixel-10] .status-time{font-weight:500;transform:translateY(2px)}.home-indicator-svg{z-index:70;width:100%;height:var(--device-safe-area-bottom,34px);pointer-events:none;display:block;position:absolute;bottom:0;left:0;right:0}.android-navigation-bar{z-index:70;width:428px;height:var(--device-safe-area-bottom,48px);pointer-events:none;-webkit-user-drag:none;display:block;position:absolute;bottom:-1px;left:-1px}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:26px;line-height:1.08}h2{font-size:15px}p{color:#555;font-size:14px;line-height:1.45}.field-label{color:#555;font-size:13px;font-weight:800}.mobile-field{gap:8px;display:grid}.mobile-field input{color:#151515;background:#fff;border:1px solid #0000001a;border-radius:8px;outline:0;width:100%;min-height:44px;padding:0 12px}.mobile-field input:focus{box-shadow:none;border-color:#00000029}.device-screen .mobile-field input:focus,.device-screen .mobile-field input:focus-visible{border-color:#0000001f;box-shadow:none!important;outline:0!important}.sheet-overlay{z-index:20;background:#00000057;position:absolute;inset:0}.bottom-sheet{z-index:21;touch-action:none;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;min-height:260px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 -16px 48px #0003}.sheet-handle-zone{touch-action:none;place-items:center;height:30px;display:grid}.sheet-handle{background:#c9c9c4;border-radius:999px;width:42px;height:5px}.sheet-header{gap:4px;padding:0 18px 14px;display:grid}.sheet-title{margin:0;font-size:18px;font-weight:900}.sheet-description{color:#737373;margin:0;font-size:13px;line-height:1.35}.sheet-content{padding:0 18px 24px;overflow:auto}.keyboard-dock{z-index:30;height:339px;box-shadow:none;pointer-events:none;will-change:transform;background:#d8d9de;border-radius:32px 32px 0 0;padding:0;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden}.keyboard-dock[data-platform=android]{background:#f3f2f6;border-radius:0;box-shadow:0 -1px 2px #00000014}.keyboard-dock[data-visible=true]{pointer-events:auto}.keyboard-asset{z-index:1;border-radius:inherit;object-fit:cover;object-position:center bottom;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:relative}.keyboard-dock[data-platform=android] .keyboard-asset{object-fit:fill;border-radius:0}@font-face{font-family:Menu Serif Fallback;src:local(Songti SC),local(STSong),local(Noto Serif CJK SC);font-display:swap}:root{--menu-paper:#faf6ed;--menu-paper-soft:#fdfaf3;--menu-ink:#332b25;--menu-muted:#8d7562;--menu-olive:#687827;--menu-line:#65523e2e;--menu-serif:"Menu Serif Fallback", "Songti SC", "STSong", Georgia, serif;--menu-sans:"PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif}.app-screen{background:var(--menu-paper);color:var(--menu-ink);font-family:var(--menu-sans)}.app-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;width:100%;height:100%;overflow:hidden auto}.menu-page{width:100%;max-width:560px;min-height:100%;padding:calc(env(safe-area-inset-top) + 14px) 0 calc(env(safe-area-inset-bottom) + 34px);background:var(--menu-paper);margin:0 auto}.menu-page.recommended-home{background-color:var(--menu-paper);background-image:url(/assets/menu/decor/pearl-garden-couture-linework-preview-20260811.jpg);background-position:top;background-repeat:no-repeat;background-size:100% 100%}.recommended-home .menu-masthead,.recommended-home .menu-kicker{background:linear-gradient(90deg,#faf6ede0,#faf6ed75 72%,#0000)}.recommended-home .category-carousel{background:#faf6edeb}.menu-masthead{justify-content:space-between;align-items:flex-start;padding:8px 24px 0;display:flex}.restaurant-name,.restaurant-name-en,.menu-kicker,.section-heading h1,.section-heading p,.menu-footer span,.sheet-header h2,.sheet-header p{margin:0}.restaurant-name{font-family:var(--menu-serif);letter-spacing:.08em;font-size:clamp(23px,6.5vw,29px);font-weight:500;line-height:1.2}.restaurant-name-en{color:var(--menu-muted);letter-spacing:.28em;margin-top:7px;font:500 10px/1.2 Georgia,Times New Roman,serif}.icon-button{width:42px;height:42px;color:var(--menu-olive);background:0 0;border:0;place-items:center;padding:0;display:grid}.icon-button svg{width:24px;height:24px}.menu-kicker{color:var(--menu-olive);font:500 12px/1.2 Georgia, "Times New Roman", var(--menu-serif);letter-spacing:.12em;padding:20px 24px 14px}.category-carousel{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf6edf5;border-bottom:1px solid #5a45311a;position:sticky;top:0}.category-scroller{width:100%}.category-track{gap:0;width:100%;min-width:max-content;padding:0 4px 0 0;display:flex}.category-button{min-width:max-content;height:42px;color:var(--menu-ink);font-family:var(--menu-serif);letter-spacing:.045em;background:0 0;border:0;flex:none;padding:0 8px;font-size:15px;font-weight:500;transition:background-color .18s,color .18s;position:relative}.category-button:after{content:none}.category-button[data-active=true]{background:var(--menu-olive);color:var(--menu-paper-soft);border-radius:0 14px 0 0;box-shadow:inset 1px 0 #ffffff2e,8px 0 18px #40481a1f}.menu-chapter{animation:.42s cubic-bezier(.22,1,.36,1) chapter-settle}.hero-story{overflow:hidden}.new-arrivals-heading{padding:25px 24px 20px;position:relative}.recommended-home .new-arrivals-heading{background:linear-gradient(90deg,#faf6edb8,#faf6ed33 64%,#0000)}.new-arrivals-heading h1{color:var(--menu-olive);font-family:var(--menu-serif);letter-spacing:.12em;margin:0;font-size:clamp(30px,8.5vw,38px);font-weight:500;line-height:1.2}.hero-carousel{touch-action:pan-y;position:relative;overflow:hidden}.hero-carousel:after{z-index:1;content:"";pointer-events:none;border:1px solid #fffbf14d;border-radius:0;position:absolute;inset:0}.hero-visual{aspect-ratio:1;background:#e9e0d1;border:0;border-radius:0;width:100%;height:auto;padding:0;display:block;position:relative;overflow:hidden}.hero-visual img{object-fit:cover;object-position:center center;width:100%;height:100%;animation:.52s cubic-bezier(.22,1,.36,1) hero-ad-enter}.hero-carousel-control{z-index:3;width:34px;height:34px;color:var(--menu-olive);background:#faf6eddb;border:1px solid #fffcf4b8;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 6px 18px #30281f29}.hero-carousel-control svg{width:18px;height:18px}.hero-carousel-previous{left:14px}.hero-carousel-next{right:14px}.hero-carousel-dots{z-index:3;background:#30281f9e;border-radius:999px;align-items:center;gap:6px;padding:7px 9px;display:flex;position:absolute;bottom:18px;right:18px}.hero-carousel-dots button{background:#fffcf485;border:0;border-radius:999px;width:6px;height:6px;padding:0;transition:background-color .18s}.hero-carousel-dots button[data-active=true]{background:#fffaf0;width:18px}.hero-copy{width:100%;min-height:60px;color:var(--menu-ink);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:18px;padding:8px 28px 6px;display:flex}.recommended-home .hero-copy{background:linear-gradient(90deg,#faf6ede6,#faf6eda3 52%,#faf6edd1)}.hero-copy>span:first-child,.dish-row-copy,.search-result>span:first-child{gap:6px;min-width:0;display:grid}.hero-copy strong{font-family:var(--menu-serif);letter-spacing:.045em;font-size:clamp(21px,5.9vw,26px);font-weight:500;line-height:1.28}.hero-copy small{color:var(--menu-muted);letter-spacing:.09em;font:500 11px/1.2 Georgia,Times New Roman,serif}.dish-price{color:var(--menu-olive);font:500 13px/1.2 var(--menu-sans);text-align:right;white-space:nowrap;flex:none;gap:6px;display:grid}.dish-price-main{line-height:1.2;display:block}.dish-member-price{color:var(--menu-muted);font:500 10px/1.2 var(--menu-sans);letter-spacing:.02em}.hero-copy>.dish-price{font-family:var(--menu-serif);padding-top:4px;font-size:18px}.dish-unit{font-family:var(--menu-sans);color:#5c4a3a;font-size:12px;font-weight:500}.dish-price-pending{color:#46342661;font-family:var(--menu-serif)}.editorial-rule{height:9px;color:var(--menu-olive);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:0 28px;display:grid}.editorial-rule span{background:var(--menu-line);height:1px}.editorial-leaf{object-fit:contain;width:30px;height:28px}.dish-section{padding:8px 24px 0;scroll-margin-top:58px}.section-heading h1{font-family:var(--menu-serif);letter-spacing:.05em;font-size:25px;font-weight:500;line-height:1.2}.section-heading p{color:var(--menu-olive);letter-spacing:.22em;margin-top:6px;font:500 10px/1.2 Georgia,Times New Roman,serif}.dish-list{margin-top:18px}.dish-row{border:0;border-bottom:1px solid var(--menu-line);width:100%;min-height:94px;color:var(--menu-ink);text-align:left;background:0 0;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:15px;padding:15px 0;display:grid}.dish-thumb{object-fit:cover;border:1px solid #68782729;border-radius:48% 52% 45% 55%/52% 43% 57% 48%;width:72px;height:58px;transition:transform .18s}.dish-row:nth-child(2n) .dish-thumb{border-radius:55% 45% 52% 48%/46% 58% 42% 54%;width:66px;height:66px;margin-left:5px}.dish-index{width:40px;height:40px;color:var(--menu-olive);letter-spacing:.08em;border:1px solid #66771d38;border-radius:50%;place-items:center;font:500 11px/1 Georgia,Times New Roman,serif;display:grid}.dish-row-copy strong,.search-result strong{font-family:var(--menu-serif);letter-spacing:.03em;font-size:17px;font-weight:500;line-height:1.4}.dish-row-copy small,.search-result small{color:var(--menu-muted);letter-spacing:.05em;font:500 10px/1.2 Georgia,Times New Roman,serif}.promotion-section{padding:12px 18px 0}.promotion-poster{color:#fbf6e9;background:#515b31;border:1px solid #f5edd780;border-radius:0 46px;padding:28px 20px 18px;overflow:hidden;box-shadow:0 16px 36px #433d2324,inset 0 0 0 7px #515b31,inset 0 0 0 8px #f5edd740}.promotion-poster-header{padding:5px 4px 24px}.promotion-poster-header>span{color:#fbf6e9ad;letter-spacing:.18em;font:600 9px/1.2 Georgia,Times New Roman,serif;display:block}.promotion-poster-header h1{font-family:var(--menu-serif);letter-spacing:.12em;margin:16px 0 0;font-size:clamp(31px,9vw,39px);font-weight:500;line-height:1.22}.promotion-poster-header p{color:#fbf6e9c7;max-width:19em;font-family:var(--menu-serif);letter-spacing:.07em;margin:15px 0 0;font-size:13px;line-height:1.8}.promotion-poster-gallery{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:8px;display:grid}.promotion-poster-dish{min-width:0;color:var(--menu-ink);text-align:left;background:#f7f0df;border:1px solid #fbf6e970;padding:0;display:grid;overflow:hidden}.promotion-poster-dish[data-feature=lead]{grid-row:span 2}.promotion-poster-dish img{object-fit:cover;width:100%;height:88px;transition:transform .22s;display:block}.promotion-poster-dish[data-feature=lead] img{height:220px}.promotion-poster-dish>span{align-content:center;gap:5px;min-height:52px;padding:8px 9px;display:grid}.promotion-poster-dish[data-feature=lead]>span{min-height:60px;padding:10px 12px}.promotion-poster-dish strong{font-family:var(--menu-serif);letter-spacing:.025em;font-size:12px;font-weight:500;line-height:1.35}.promotion-poster-dish[data-feature=lead] strong{font-size:15px}.promotion-poster-dish small{color:var(--menu-muted);font:600 8px/1.2 var(--menu-sans);letter-spacing:.12em}.promotion-poster-footer{color:#fbf6e99e;letter-spacing:.14em;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:18px 3px 2px;font:600 8px/1 Georgia,Times New Roman,serif;display:grid}.promotion-poster-footer>span:nth-child(2){background:#fbf6e957;height:1px}.book-folio{color:var(--menu-olive);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:8px 24px 0;display:grid}.book-folio span{background:#687827b8;height:2px}.book-folio b{letter-spacing:.08em;font:500 18px/1 Georgia,Times New Roman,serif}.menu-footer{border-top:1px solid var(--menu-line);color:#4937297a;letter-spacing:.16em;justify-content:space-between;margin:34px 22px 0;padding-top:18px;font:500 9px/1.2 Georgia,Times New Roman,serif;display:flex}.new-arrivals-menu-footer{background:linear-gradient(90deg,#faf6edd1,#0000 38% 62%,#faf6edd1);margin-top:clamp(58px,15vw,82px)}.promotion-backdrop{z-index:120;padding:calc(env(safe-area-inset-top) + 58px) 26px calc(env(safe-area-inset-bottom) + 42px);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1b1e12d6;place-items:center;animation:.18s ease-out promotion-backdrop-in;display:grid;position:fixed;inset:0}.promotion-dialog{grid-template-rows:minmax(0,1fr) auto;justify-items:center;width:min(84vw,470px);height:min(76dvh,720px);min-height:0;display:grid;position:relative}.promotion-close{z-index:2;color:#fffdf6;background:#212417b8;border:1px solid #fffcf4d1;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;top:-52px;right:-8px}.promotion-close svg{width:24px;height:24px}.promotion-poster-stage{touch-action:pan-y;cursor:grab;outline:none;place-items:center;width:100%;min-height:0;display:grid;position:relative;overflow:hidden}.promotion-poster-stage:active{cursor:grabbing}.promotion-poster-stage img{object-fit:contain;filter:drop-shadow(0 24px 27px #05070361);-webkit-user-select:none;user-select:none;width:100%;height:100%;animation:.26s ease-out promotion-slide-in;display:block;position:absolute;inset:0}.promotion-poster-stage:focus-visible img{outline-offset:4px;outline:2px solid #fffcf4e6}.promotion-navigation{color:#fffcf4c7;letter-spacing:.08em;justify-items:center;gap:10px;padding-top:15px;font:500 13px/1 Georgia,Times New Roman,serif;display:grid}.promotion-dots{align-items:center;gap:10px;display:flex}.promotion-dots button{background:#fffcf447;border:1px solid #fffcf485;border-radius:50%;width:9px;height:9px;padding:0}.promotion-dots button[data-active=true]{background:#fffdf6;border-color:#fffdf6}.sheet-backdrop{z-index:100;padding-top:env(safe-area-inset-top);background:#1e161061;align-items:end;display:grid;position:fixed;inset:0}.sheet-panel{background:var(--menu-paper-soft);-webkit-overflow-scrolling:touch;border-radius:24px 24px 0 0;width:100%;max-width:560px;max-height:min(84dvh,760px);margin:0 auto;animation:.18s ease-out sheet-in;overflow:auto;box-shadow:0 -16px 42px #2a1e1524}.sheet-header{z-index:2;border-bottom:1px solid var(--menu-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbf8f1f7;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 20px 15px;display:flex;position:sticky;top:0}.sheet-header h2{font-family:var(--menu-serif);letter-spacing:.04em;font-size:22px;font-weight:500}.sheet-header p{color:var(--menu-muted);letter-spacing:.08em;margin-top:5px;font:500 11px/1.3 Georgia,Times New Roman,serif}.sheet-header button,.search-box button{width:36px;height:36px;color:var(--menu-muted);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.sheet-header button svg{width:20px;height:20px}.sheet-body{padding:18px 20px calc(env(safe-area-inset-bottom) + 26px)}.search-box{background:var(--menu-paper);height:48px;color:var(--menu-olive);border:1px solid #43342829;border-radius:12px;grid-template-columns:20px minmax(0,1fr) 32px;align-items:center;gap:9px;padding:0 8px 0 14px;display:grid}.search-box input{width:100%;height:100%;color:var(--menu-ink);font-family:var(--menu-sans);background:0 0;border:0;outline:none;padding:0;font-size:16px}.search-box input::placeholder{color:#4334286b}.search-results{margin-top:13px}.search-result{border:0;border-bottom:1px solid var(--menu-line);width:100%;min-height:62px;color:var(--menu-ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:14px;padding:10px 2px;display:flex}.empty-search{color:var(--menu-muted);text-align:center;margin:32px 0;font-size:14px}.dish-detail{color:var(--menu-ink)}.dish-detail>img{object-fit:cover;border-radius:14px;width:100%;height:clamp(210px,58vw,300px);display:block}.dish-detail>img.dish-detail-poster{object-fit:contain;background:#f4eddf;height:auto}.dish-detail-meta{justify-content:space-between;align-items:center;gap:18px;margin-top:18px;display:flex}.dish-detail-meta>span:first-child{color:var(--menu-muted);font-size:13px}.dish-detail p{color:#675442;margin:18px 0 0;font-size:14px;line-height:1.75}.dish-detail .dish-note{color:var(--menu-olive);margin-top:12px;font-size:13px}.dish-detail .pending-note{color:var(--menu-muted);font-size:12px}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #66771db8}@media (hover:hover){.dish-row:hover .dish-thumb,.promotion-poster-dish:hover img{transform:translateY(-2px)scale(1.015)}}@keyframes chapter-settle{0%{opacity:.76;clip-path:inset(0 0 22px);transform:translateY(9px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-ad-enter{0%{opacity:.7;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@keyframes promotion-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes promotion-slide-in{0%{opacity:.7;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@media (width>=720px){.app-scroll{background:#eee8dc}.menu-page{box-shadow:0 0 42px #35291d14}}@media (width<=360px){.menu-masthead,.menu-kicker,.dish-section,.editorial-rule,.book-folio{padding-left:18px;padding-right:18px}.hero-copy{padding-left:20px;padding-right:20px}.category-track{padding-right:16px}.category-button{padding-left:13px;padding-right:13px}.dish-row{grid-template-columns:68px minmax(0,1fr) auto;gap:12px}.dish-thumb{width:64px;height:54px}.dish-row:nth-child(2n) .dish-thumb{width:60px;height:60px}.promotion-section{padding-left:12px;padding-right:12px}.promotion-poster{padding-left:16px;padding-right:16px}.promotion-backdrop{padding-left:20px;padding-right:20px}.promotion-dialog{width:min(88vw,470px);height:min(74dvh,640px)}}@media (prefers-reduced-motion:reduce){.category-button,.menu-chapter,.hero-visual img,.dish-thumb,.promotion-poster-dish img,.promotion-backdrop,.promotion-poster-stage img,.sheet-panel{transition:none;animation:none}}.admin-app{--admin-ink:#202821;--admin-muted:#728077;--admin-green:#334f3a;--admin-green-dark:#243b2b;--admin-green-pale:#edf2ec;--admin-gold:#a5864f;--admin-line:#e3e7e1;width:100%;height:100%;color:var(--admin-ink);font-family:var(--menu-sans);background:#f7f8f5;grid-template-columns:236px minmax(0,1fr);display:grid;overflow:hidden}.admin-sidebar{background:var(--admin-green-dark);color:#f8f4e9;border-right:1px solid #ffffff14;flex-direction:column;min-height:0;display:flex}.admin-brand{border-bottom:1px solid #ffffff17;padding:32px 26px 26px}.admin-brand span,.admin-brand p,.admin-brand h1,.admin-topbar h2,.admin-topbar p,.admin-editor h3,.admin-editor small,.admin-status-grid small,.admin-status-grid strong,.admin-status-grid span{margin:0}.admin-brand span,.admin-brand p{color:#c4b589;letter-spacing:.25em;font:600 9px/1.2 Georgia,serif}.admin-brand h1{font-family:var(--menu-serif);letter-spacing:.08em;margin:8px 0 9px;font-size:21px;font-weight:500}.admin-sidebar nav{min-height:0;padding:18px 12px;overflow-y:auto}.admin-sidebar nav button{color:#ffffffb3;text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;width:100%;height:40px;padding:0 13px;font-size:13px;display:flex}.admin-sidebar nav button:hover{color:#fff;background:#ffffff0e}.admin-sidebar nav button[data-active=true]{color:#fff;background:#ffffff1c;box-shadow:inset 2px 0 #c6a96c}.admin-sidebar nav button b{text-align:center;background:#00000029;border-radius:999px;min-width:26px;padding:3px 6px;font-size:10px;font-weight:600}.admin-sidebar>footer{color:#ffffffb3;border-top:1px solid #ffffff14;align-items:flex-start;gap:10px;margin-top:auto;padding:20px 18px 22px;display:flex}.admin-sidebar>footer strong,.admin-sidebar>footer small{font-size:11px;display:block}.admin-sidebar>footer small{color:#ffffff6b;margin-top:3px;font-size:9px}.admin-local-dot{background:#78b889;border-radius:50%;width:7px;height:7px;margin-top:3px;box-shadow:0 0 0 4px #78b8891f}.admin-main{min-width:0;min-height:0;padding:0 30px 30px;overflow-y:auto}.admin-topbar{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f8f5f0;justify-content:space-between;align-items:center;gap:24px;min-height:88px;display:flex;position:sticky;top:0}.admin-topbar p{color:var(--admin-muted);margin-bottom:7px;font-size:10px}.admin-topbar h2{font-family:var(--menu-serif);letter-spacing:.03em;font-size:25px;font-weight:600}.admin-actions{gap:9px;display:flex}.admin-actions button,.admin-list-tools>button,.admin-editor footer button,.admin-message button{border:1px solid #0000;border-radius:7px;height:38px;padding:0 16px;font-size:12px;font-weight:600}.admin-actions button:disabled,.admin-editor footer button:disabled{cursor:default;opacity:.45}.admin-primary-button{border-color:var(--admin-green)!important;background:var(--admin-green)!important;color:#fff!important}.admin-primary-button:hover:not(:disabled){background:var(--admin-green-dark)!important}.admin-secondary-button{color:var(--admin-green)!important;background:#fff!important;border-color:#ccd5cc!important}.admin-ghost-button{color:var(--admin-muted);background:0 0}.admin-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.admin-status-grid article{border:1px solid var(--admin-line);background:#fff;border-radius:10px;flex-direction:column;justify-content:center;min-height:92px;padding:15px 18px;display:flex;box-shadow:0 4px 18px #27332906}.admin-status-grid article[data-accent=true]{background:#fcf9f2;border-color:#a5864f61}.admin-status-grid small{color:var(--admin-muted);font-size:10px}.admin-status-grid strong{color:var(--admin-green-dark);font-family:Georgia, var(--menu-serif);margin:6px 0 4px;font-size:25px;line-height:1}.admin-status-grid .admin-date-value{font-family:var(--menu-sans);font-size:14px;line-height:1.2}.admin-status-grid span{color:#98a19a;font-size:9px}.admin-notice{color:#31543a;background:#eef6ed;border:1px solid #cbdcca;border-radius:8px;align-items:center;gap:8px;min-height:40px;margin-bottom:14px;padding:8px 13px;font-size:12px;display:flex}.admin-notice-error{color:#98463c;background:#fdf0ee;border-color:#efcbc6}.admin-notice svg{flex:none}.admin-workspace{border:1px solid var(--admin-line);background:#fff;border-radius:11px;grid-template-columns:minmax(520px,1fr) minmax(320px,400px);min-height:580px;display:grid;overflow:hidden;box-shadow:0 10px 35px #2733290a}.admin-list-panel{border-right:1px solid var(--admin-line);min-width:0}.admin-list-tools{border-bottom:1px solid var(--admin-line);gap:10px;padding:16px;display:flex}.admin-list-tools label{color:#8b958e;background:#fafbf9;border:1px solid #dfe4df;border-radius:7px;flex:1;align-items:center;gap:8px;min-width:0;height:38px;padding:0 12px;display:flex}.admin-list-tools input{min-width:0;color:var(--admin-ink);background:0 0;border:0;outline:0;flex:1;font-size:12px}.admin-list-tools>button{color:var(--admin-green);background:#fff;border-color:#d7ddd7;align-items:center;gap:6px;display:flex}.admin-table-heading,.admin-dish-row{grid-template-columns:minmax(250px,1fr) 100px 74px;align-items:center;gap:16px;display:grid}.admin-table-heading{border-bottom:1px solid var(--admin-line);color:#939d95;letter-spacing:.08em;background:#fbfcfa;height:34px;padding:0 16px;font-size:9px}.admin-dish-list{max-height:600px;overflow-y:auto}.admin-dish-row{width:100%;min-height:72px;color:var(--admin-ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0ec;padding:9px 16px}.admin-dish-row:hover,.admin-dish-row[data-selected=true]{background:#f4f7f2}.admin-dish-row[data-selected=true]{box-shadow:inset 3px 0 var(--admin-green)}.admin-dish-identity{align-items:center;gap:11px;min-width:0;display:flex}.admin-dish-identity>img,.admin-image-placeholder{object-fit:cover;color:#9aa59c;background:#eef1ec;border-radius:6px;flex:none;place-items:center;width:50px;height:48px;display:grid}.admin-dish-identity>span:last-child,.admin-row-price{min-width:0}.admin-dish-identity strong,.admin-dish-identity small,.admin-row-price strong,.admin-row-price small{display:block}.admin-dish-identity strong{font-family:var(--menu-serif);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.admin-dish-identity small,.admin-row-price small{color:#929c94;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:9px;overflow:hidden}.admin-row-price strong{color:var(--admin-green);font:600 13px/1 Georgia,serif}.admin-row-status{color:#8a928c;text-align:center;background:#f0f1ef;border-radius:999px;padding:5px 7px;font-size:9px}.admin-row-status[data-active=true]{color:#4a7252;background:#e8f2e8}.admin-empty{color:var(--admin-muted);text-align:center;padding:50px 20px;font-size:12px}.admin-editor{background:#fcfdfb;flex-direction:column;min-width:0;min-height:0;display:flex}.admin-editor>header{border-bottom:1px solid var(--admin-line);justify-content:space-between;align-items:center;gap:12px;min-height:74px;padding:14px 18px;display:flex}.admin-editor>header small{color:var(--admin-gold);letter-spacing:.2em;font:600 8px/1 Georgia,serif}.admin-editor h3{font-family:var(--menu-serif);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:17px;font-weight:600;overflow:hidden}.admin-editor>header>span{color:#899188;background:#f0f1ef;border-radius:999px;flex:none;padding:5px 8px;font-size:9px}.admin-editor>header>span[data-active=true]{color:#446b4c;background:#e7f1e7}.admin-editor-scroll{flex:1;min-height:0;padding:17px 18px;overflow-y:auto}.admin-image-editor{background:#e9ede7;border-radius:9px;height:160px;margin-bottom:17px;position:relative;overflow:hidden}.admin-image-editor>img{object-fit:cover;width:100%;height:100%}.admin-image-editor>div{color:#8d988f;align-content:center;place-items:center;gap:7px;width:100%;height:100%;font-size:10px;display:grid}.admin-image-editor>label{height:32px;color:var(--admin-green);cursor:pointer;background:#fffffff0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:600;display:flex;position:absolute;bottom:10px;right:10px;box-shadow:0 3px 12px #18221a26}.admin-image-editor input{opacity:0;width:1px;height:1px;position:absolute}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-form-grid label>span{color:#6f7a71;margin-bottom:6px;font-size:10px;display:block}.admin-form-grid input,.admin-form-grid textarea{width:100%;color:var(--admin-ink);background:#fff;border:1px solid #dfe4df;border-radius:6px;outline:none;font-size:12px}.admin-form-grid input{height:36px;padding:0 10px}.admin-form-grid textarea{resize:vertical;padding:9px 10px}.admin-form-grid input:focus,.admin-form-grid textarea:focus{border-color:#718b75;box-shadow:0 0 0 3px #435f4814}.admin-field-wide{grid-column:1/-1}.admin-price-input{position:relative}.admin-price-input b{color:var(--admin-gold);font:600 12px/1 Georgia,serif;position:absolute;top:10px;left:10px}.admin-price-input input{padding-left:25px}.admin-switches{border-top:1px solid var(--admin-line);gap:8px;margin-top:17px;padding-top:14px;display:grid}.admin-switches label{cursor:pointer;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;display:grid}.admin-switches input{opacity:0;position:absolute}.admin-switches label>span{background:#cfd5cf;border-radius:999px;width:34px;height:19px;transition:background .16s;position:relative}.admin-switches label>span:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .16s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0000002e}.admin-switches input:checked+span{background:var(--admin-green)}.admin-switches input:checked+span:after{transform:translate(15px)}.admin-switches strong,.admin-switches small{display:block}.admin-switches strong{color:#465047;font-size:10px}.admin-switches small{color:#969f97;margin-top:2px;font-size:8px}.admin-editor>footer{border-top:1px solid var(--admin-line);background:#fff;justify-content:space-between;align-items:center;gap:10px;min-height:65px;padding:12px 18px;display:flex}.admin-delete-button{color:#9b5a52;background:0 0!important;border:0!important;padding:0!important;font-size:10px!important}.admin-message{width:100%;height:100%;color:var(--admin-green-dark,#243b2b);font-family:var(--menu-sans);text-align:center;background:#f6f7f4;align-content:center;place-items:center;gap:11px;padding:30px;display:grid}.admin-message>svg{color:#607c65;width:28px;height:28px}.admin-message h1,.admin-message p{max-width:540px;margin:0}.admin-message h1{font-family:var(--menu-serif);font-size:25px}.admin-message p{color:#748078;font-size:13px;line-height:1.6}.admin-message .admin-message-note{color:#9aa29c;font-size:11px}.admin-message button{color:#fff;background:#334f3a;border-color:#334f3a;margin-top:6px}.admin-error-message>svg{color:#a85a50}@media (width<=1100px){.admin-workspace{grid-template-columns:minmax(430px,1fr) 340px}.admin-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=840px){.admin-app{display:block;overflow-y:auto}.admin-sidebar{display:none}.admin-main{padding:0 16px 20px;overflow:visible}.admin-topbar{flex-direction:column;align-items:flex-start;padding:18px 0 14px;position:relative}.admin-actions{width:100%;overflow-x:auto}.admin-actions button{flex:none}.admin-workspace{display:block}.admin-list-panel{border-right:0}.admin-editor{border-top:1px solid var(--admin-line)}}@media (width<=560px){.admin-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-list-tools{flex-wrap:wrap}.admin-list-tools label{flex-basis:100%}.admin-table-heading{display:none}.admin-dish-row{grid-template-columns:minmax(0,1fr) 78px;gap:8px}.admin-row-status{display:none}.admin-form-grid{grid-template-columns:1fr}.admin-field-wide{grid-column:auto}}
