.menu-root{--menu-bg:#faf7f2;--menu-surface:#f2ede5;--menu-text:#1a1816;--menu-text-secondary:#847e76;--menu-accent:#9b8564;--menu-accent-light:#c4ad82;--menu-divider:#e0dbd3;--menu-recipe-bg:#f7f4ee;--menu-recipe-border:#e8e3da;--menu-text-secondary-aa:color-mix(in srgb,var(--menu-text-secondary)75%,var(--menu-text));--menu-accent-text:color-mix(in srgb,var(--menu-accent)70%,var(--menu-text));--menu-error:#a33b2b;--menu-error-bg:color-mix(in srgb,var(--menu-error)8%,var(--menu-bg));--menu-field-border:var(--menu-text-secondary);--menu-scrim:color-mix(in srgb,var(--menu-text)40%,transparent);--menu-hover:color-mix(in srgb,var(--menu-surface)60%,var(--menu-bg));--menu-space-1:4px;--menu-space-2:8px;--menu-space-3:12px;--menu-space-4:16px;--menu-space-5:24px;--menu-space-6:32px;--menu-space-7:48px;--menu-tap:44px;--menu-width:560px;--menu-thumb:76px;--menu-radius-sm:8px;--menu-radius-md:12px;--menu-radius-lg:20px;--menu-fs-xs:12px;--menu-fs-sm:13.5px;--menu-fs-md:15px;--menu-fs-lg:17px;--menu-fs-xl:22px;--menu-fs-2xl:32px;--menu-fs-3xl:56px;--menu-dur-fast:.14s;--menu-dur:.24s;--menu-ease-out:cubic-bezier(.22,1,.36,1);--menu-ring:0 0 0 2px var(--menu-bg),0 0 0 4px var(--menu-accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html:has(.menu-root){--menu-bg:#faf7f2;--menu-surface:#f2ede5;--menu-text:#1a1816;--menu-text-secondary:#847e76;--menu-accent:#9b8564;--menu-accent-light:#c4ad82;--menu-divider:#e0dbd3;--menu-recipe-bg:#f7f4ee;--menu-recipe-border:#e8e3da;--menu-text-secondary-aa:color-mix(in srgb,var(--menu-text-secondary)75%,var(--menu-text));--menu-accent-text:color-mix(in srgb,var(--menu-accent)70%,var(--menu-text));--menu-error:#a33b2b;--menu-error-bg:color-mix(in srgb,var(--menu-error)8%,var(--menu-bg));--menu-field-border:var(--menu-text-secondary);--menu-scrim:color-mix(in srgb,var(--menu-text)40%,transparent);--menu-hover:color-mix(in srgb,var(--menu-surface)60%,var(--menu-bg));--menu-space-1:4px;--menu-space-2:8px;--menu-space-3:12px;--menu-space-4:16px;--menu-space-5:24px;--menu-space-6:32px;--menu-space-7:48px;--menu-tap:44px;--menu-width:560px;--menu-thumb:76px;--menu-radius-sm:8px;--menu-radius-md:12px;--menu-radius-lg:20px;--menu-fs-xs:12px;--menu-fs-sm:13.5px;--menu-fs-md:15px;--menu-fs-lg:17px;--menu-fs-xl:22px;--menu-fs-2xl:32px;--menu-fs-3xl:56px;--menu-dur-fast:.14s;--menu-dur:.24s;--menu-ease-out:cubic-bezier(.22,1,.36,1);--menu-ring:0 0 0 2px var(--menu-bg),0 0 0 4px var(--menu-accent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.menu-root{--menu-font-display:var(--menu-font-latin),var(--menu-font-tc),"Noto Serif TC",Georgia,serif;--menu-font-body:system-ui,-apple-system,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif;background:var(--menu-bg);min-height:100dvh;color:var(--menu-text);font-family:var(--menu-font-body);font-size:var(--menu-fs-md);-webkit-tap-highlight-color:transparent;line-height:1.55}html:has(.menu-root) body{background:var(--menu-bg)}html:not([data-menu-lang=en]) .menu-root [data-l=en],html[data-menu-lang=en] .menu-root [data-l=zh]{display:none}.menu-root :focus-visible{box-shadow:var(--menu-ring);outline:none}.menu-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.menu-page{max-width:var(--menu-width);padding:0 var(--menu-space-4)calc(var(--menu-space-7)*2 + env(safe-area-inset-bottom,0px));margin:0 auto}.menu-header{justify-content:space-between;align-items:flex-start;gap:var(--menu-space-4);padding:var(--menu-space-6)0 var(--menu-space-4);display:flex}.menu-kicker{margin:0 0 var(--menu-space-1);font-size:var(--menu-fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--menu-accent-text)}.menu-title{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-2xl);letter-spacing:-.01em;margin:0;line-height:1.1}.menu-subtitle{margin:var(--menu-space-2)0 0;color:var(--menu-text-secondary-aa);font-size:var(--menu-fs-sm)}.menu-btn{justify-content:center;align-items:center;gap:var(--menu-space-2);min-height:var(--menu-tap);padding:0 var(--menu-space-4);border-radius:var(--menu-radius-md);font:inherit;font-weight:600;font-size:var(--menu-fs-md);cursor:pointer;transition:transform var(--menu-dur-fast)var(--menu-ease-out),opacity var(--menu-dur-fast)var(--menu-ease-out);border:1px solid transparent;text-decoration:none;display:inline-flex}.menu-btn:active:not(:disabled){transform:scale(.98)}.menu-btn:disabled,.menu-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.menu-btn-primary{background:var(--menu-text);color:var(--menu-bg)}.menu-btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--menu-text)85%,var(--menu-accent))}.menu-btn-secondary{background:var(--menu-bg);color:var(--menu-text);border-color:var(--menu-field-border)}.menu-btn-secondary:hover:not(:disabled){background:var(--menu-surface)}.menu-btn-ghost{color:var(--menu-text);background:0 0}.menu-btn-ghost:hover:not(:disabled){background:var(--menu-surface)}.menu-btn-block{width:100%;min-height:52px}.menu-btn-icon{width:var(--menu-tap);padding:0}.menu-lang{min-width:var(--menu-tap);font-size:var(--menu-fs-sm);letter-spacing:.04em;border-color:var(--menu-divider)}.menu-spinner{border:2px solid;border-right-color:transparent;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite menu-spin}@keyframes menu-spin{to{transform:rotate(360deg)}}.menu-cats{z-index:5;margin:0 calc(var(--menu-space-4)*-1);padding:0 var(--menu-space-2);background:var(--menu-bg);border-bottom:1px solid var(--menu-divider);position:-webkit-sticky;position:sticky;top:0}.menu-cats-list{gap:var(--menu-space-1);scrollbar-width:none;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.menu-cats-list::-webkit-scrollbar{display:none}.menu-cat{min-height:var(--menu-tap);padding:0 var(--menu-space-3);color:var(--menu-text-secondary-aa);white-space:nowrap;font-size:var(--menu-fs-sm);border-radius:var(--menu-radius-sm);align-items:center;text-decoration:none;display:flex;position:relative}.menu-cat:hover{color:var(--menu-text)}.menu-cat:after{content:"";left:var(--menu-space-3);right:var(--menu-space-3);background:var(--menu-accent);transform-origin:0;height:2px;transition:transform var(--menu-dur)var(--menu-ease-out);position:absolute;bottom:0;transform:scaleX(0)}.menu-cat[aria-current=true]{color:var(--menu-text);font-weight:600}.menu-cat[aria-current=true]:after{transform:scaleX(1)}.menu-section{scroll-margin-top:calc(var(--menu-tap) + var(--menu-space-2));padding-top:var(--menu-space-6)}.menu-section-head{align-items:baseline;gap:var(--menu-space-3);margin:0 0 var(--menu-space-1);display:flex}.menu-section-no{font-family:var(--menu-font-display);font-style:italic;font-size:var(--menu-fs-lg);color:var(--menu-accent-text)}.menu-section-title{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-xl);margin:0}.menu-list{margin:0;padding:0;list-style:none}.menu-row{grid-template-columns:1fr var(--menu-thumb);gap:var(--menu-space-4);padding:var(--menu-space-4)var(--menu-space-2);margin:0 calc(var(--menu-space-2)*-1);border-bottom:1px solid var(--menu-divider);border-radius:var(--menu-radius-sm);color:inherit;transition:background-color var(--menu-dur-fast)var(--menu-ease-out);align-items:center;text-decoration:none;display:grid}.menu-list>li:last-child .menu-row{border-bottom:0}.menu-row:hover{background:var(--menu-hover)}.menu-row:active{background:var(--menu-surface)}.menu-row-name{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-lg);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.3;display:-webkit-box;overflow:hidden}.menu-row-desc{margin:var(--menu-space-1)0 0;color:var(--menu-text-secondary-aa);font-size:var(--menu-fs-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.menu-row-meta{gap:var(--menu-space-2);margin-top:var(--menu-space-2);flex-wrap:wrap;display:flex}.menu-row[data-soldout=true] .menu-row-text,.menu-row[data-soldout=true] .menu-thumb{opacity:.5}.menu-tag{min-height:22px;padding:0 var(--menu-space-2);font-size:var(--menu-fs-xs);background:var(--menu-surface);color:var(--menu-text-secondary-aa);border-radius:99px;align-items:center;font-weight:600;line-height:1;display:inline-flex}.menu-tag-soldout{background:var(--menu-text);color:var(--menu-bg)}.menu-tag-draft{background:var(--menu-recipe-bg);color:var(--menu-accent-text);border:1px solid var(--menu-recipe-border)}.menu-thumb{width:var(--menu-thumb);aspect-ratio:1;border-radius:var(--menu-radius-md);background:var(--menu-surface);box-shadow:inset 0 0 0 1px var(--menu-recipe-border);place-items:center;display:grid;position:relative;overflow:hidden}.menu-thumb img{object-fit:cover;width:100%;height:100%}.menu-thumb-glyph{font-family:var(--menu-font-display);font-weight:500;font-size:calc(var(--menu-thumb)*.4);color:var(--menu-accent);line-height:1}.menu-thumb-lg{aspect-ratio:auto;border-radius:var(--menu-radius-lg);width:100%;height:200px}.menu-thumb-lg .menu-thumb-glyph{font-size:var(--menu-fs-3xl)}.menu-cartbar{z-index:10;padding:var(--menu-space-3)var(--menu-space-4)calc(var(--menu-space-3) + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,var(--menu-bg)70%,transparent);animation:menu-rise var(--menu-dur)var(--menu-ease-out);position:fixed;bottom:0;left:0;right:0}.menu-cartbar-inner{max-width:calc(var(--menu-width) - var(--menu-space-4)*2);margin:0 auto}.menu-cartbar .menu-btn{padding:0 var(--menu-space-5);justify-content:space-between}.menu-count{min-width:24px;height:24px;padding:0 var(--menu-space-2);background:var(--menu-bg);color:var(--menu-text);font-size:var(--menu-fs-xs);border-radius:99px;place-items:center;display:inline-grid}.menu-sheet{width:100%;max-width:var(--menu-width);border-radius:var(--menu-radius-lg)var(--menu-radius-lg)0 0;background:var(--menu-bg);max-height:85dvh;color:var(--menu-text);font-family:var(--menu-font-body);border:0;margin:auto auto 0;padding:0}.menu-sheet[open]{animation:menu-rise var(--menu-dur)var(--menu-ease-out);flex-direction:column;display:flex}.menu-sheet::backdrop{background:var(--menu-scrim);animation:menu-fade var(--menu-dur)var(--menu-ease-out)}.menu-sheet-head{padding:var(--menu-space-3)var(--menu-space-3)var(--menu-space-2)var(--menu-space-5);border-bottom:1px solid var(--menu-divider);justify-content:space-between;align-items:center;display:flex}.menu-sheet-title{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-xl);margin:0}.menu-sheet-body{padding:0 var(--menu-space-5);overflow-y:auto}.menu-sheet-foot{padding:var(--menu-space-4)var(--menu-space-5)calc(var(--menu-space-4) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--menu-divider)}@keyframes menu-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes menu-fade{0%{opacity:0}to{opacity:1}}.menu-lines{margin:0;padding:0;list-style:none}.menu-line{gap:var(--menu-space-3);padding:var(--menu-space-4)0;border-bottom:1px solid var(--menu-divider);justify-content:space-between;align-items:flex-start;display:flex}.menu-lines>li:last-child{border-bottom:0}.menu-line-name{margin:0;font-weight:600}.menu-line-sub{color:var(--menu-text-secondary-aa);font-size:var(--menu-fs-sm);margin:2px 0 0}.menu-line-warn{margin:var(--menu-space-1)0 0;color:var(--menu-error);font-size:var(--menu-fs-sm);font-weight:600}.menu-qty-badge{font-variant-numeric:tabular-nums;color:var(--menu-text-secondary-aa);flex:none}.menu-stepper{border:1px solid var(--menu-field-border);border-radius:var(--menu-radius-md);align-items:center;display:inline-flex}.menu-stepper button{width:var(--menu-tap);height:var(--menu-tap);color:var(--menu-text);cursor:pointer;border-radius:var(--menu-radius-md);background:0 0;border:0;place-items:center;display:grid}.menu-stepper button:hover:not(:disabled){background:var(--menu-surface)}.menu-stepper button:disabled{opacity:.35;cursor:not-allowed}.menu-stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:28px;font-weight:600}.menu-back{margin:var(--menu-space-3)0 0 calc(var(--menu-space-3)*-1);color:var(--menu-text)}.menu-dish-head{padding:var(--menu-space-4)0 var(--menu-space-2)}.menu-dish-name{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-2xl);margin:0;line-height:1.15}.menu-dish-alt{margin:var(--menu-space-1)0 0;font-family:var(--menu-font-display);color:var(--menu-accent-text);font-style:italic;font-size:var(--menu-fs-lg)}.menu-dish-desc{margin:var(--menu-space-3)0 0;color:var(--menu-text-secondary-aa)}.menu-form{gap:var(--menu-space-5);padding-top:var(--menu-space-5);display:grid}.menu-fieldset{gap:var(--menu-space-2);border:0;margin:0;padding:0;display:grid}.menu-legend,.menu-label{align-items:baseline;gap:var(--menu-space-2);margin-bottom:var(--menu-space-1);font-weight:600;font-size:var(--menu-fs-sm);padding:0;display:flex}.menu-req{font-weight:600;font-size:var(--menu-fs-xs);color:var(--menu-accent-text)}.menu-hint{font-size:var(--menu-fs-xs);color:var(--menu-text-secondary-aa);margin:0}.menu-choice{align-items:center;gap:var(--menu-space-3);min-height:52px;padding:0 var(--menu-space-4);border:1px solid var(--menu-divider);border-radius:var(--menu-radius-md);cursor:pointer;transition:background-color var(--menu-dur-fast)var(--menu-ease-out),border-color var(--menu-dur-fast)var(--menu-ease-out);display:flex}.menu-choice:hover{background:var(--menu-hover)}.menu-choice:has(input:checked){border-color:var(--menu-accent);background:var(--menu-recipe-bg)}.menu-choice:has(input:focus-visible){box-shadow:var(--menu-ring)}.menu-choice:has(input:disabled){opacity:.4;cursor:not-allowed}.menu-choice input{width:18px;height:18px;accent-color:var(--menu-text);margin:0}.menu-input{width:100%;min-height:48px;padding:var(--menu-space-3)var(--menu-space-3);border:1px solid var(--menu-field-border);border-radius:var(--menu-radius-md);background:var(--menu-bg);color:var(--menu-text);font:inherit;font-size:16px}textarea.menu-input{resize:vertical;min-height:88px}.menu-input:hover{border-color:var(--menu-text)}.menu-input:focus-visible{border-color:var(--menu-text)}.menu-input[aria-invalid=true]{border-color:var(--menu-error)}.menu-field-error{margin:var(--menu-space-1)0 0;color:var(--menu-error);font-size:var(--menu-fs-sm);font-weight:600}.menu-banner{gap:var(--menu-space-3);padding:var(--menu-space-3)var(--menu-space-4);border-radius:var(--menu-radius-md);font-size:var(--menu-fs-sm);display:flex}.menu-banner-error{background:var(--menu-error-bg);color:var(--menu-error);border:1px solid var(--menu-error)}.menu-banner-info{background:var(--menu-surface);color:var(--menu-text)}.menu-actions{padding:var(--menu-space-3)0 calc(var(--menu-space-3) + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,var(--menu-bg)75%,transparent);position:-webkit-sticky;position:sticky;bottom:0}.menu-empty{justify-items:center;gap:var(--menu-space-3);padding:var(--menu-space-7)var(--menu-space-4);text-align:center;display:grid}.menu-empty-title{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-xl);margin:0}.menu-empty-text{color:var(--menu-text-secondary-aa);font-size:var(--menu-fs-sm);max-width:32ch;margin:0}.menu-skeleton{border-radius:var(--menu-radius-md);background:var(--menu-surface);height:64px;animation:1.2s ease-in-out infinite alternate menu-pulse}@keyframes menu-pulse{0%{opacity:.5}to{opacity:1}}.menu-status-no{font-family:var(--menu-font-display);font-weight:500;font-size:var(--menu-fs-3xl);letter-spacing:-.02em;margin:0;line-height:1}.menu-status-head{margin:var(--menu-space-3)0 0;font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-xl)}.menu-steps{margin:var(--menu-space-5)0;gap:var(--menu-space-1);grid-template-columns:repeat(4,1fr);padding:0;list-style:none;display:grid}.menu-step{gap:var(--menu-space-2);font-size:var(--menu-fs-xs);color:var(--menu-text-secondary-aa);display:grid}.menu-step:before{content:"";background:var(--menu-divider);border-radius:99px;height:3px}.menu-step[data-state=done]:before,.menu-step[data-state=current]:before{background:var(--menu-accent)}.menu-step[data-state=current]{color:var(--menu-text);font-weight:600}.menu-card{padding:var(--menu-space-4);border:1px solid var(--menu-recipe-border);border-radius:var(--menu-radius-md);background:var(--menu-recipe-bg)}.menu-dl{gap:var(--menu-space-1)var(--menu-space-4);font-size:var(--menu-fs-sm);grid-template-columns:auto 1fr;margin:0;display:grid}.menu-dl dt{color:var(--menu-text-secondary-aa)}.menu-dl dd{margin:0}.menu-tabs{gap:var(--menu-space-1);border-bottom:1px solid var(--menu-divider);margin:0 0 var(--menu-space-4);display:flex}.menu-orders{gap:var(--menu-space-3);margin:0;padding:0;list-style:none;display:grid}.menu-order-top{justify-content:space-between;align-items:baseline;gap:var(--menu-space-3);display:flex}.menu-order-no{font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-xl)}.menu-order-actions{gap:var(--menu-space-2);margin-top:var(--menu-space-3);flex-wrap:wrap;display:flex}.menu-status-pill{font-size:var(--menu-fs-xs);padding:var(--menu-space-1)var(--menu-space-2);background:var(--menu-surface);color:var(--menu-text-secondary-aa);border-radius:99px;font-weight:600}.menu-status-pill[data-status=pending]{background:var(--menu-text);color:var(--menu-bg)}.menu-status-pill[data-status=rejected]{background:var(--menu-error-bg);color:var(--menu-error)}.menu-toggle-row{justify-content:space-between;align-items:center;gap:var(--menu-space-3);border-bottom:1px solid var(--menu-divider);min-height:56px;display:flex}.menu-switch{min-width:104px}.menu-switch[aria-pressed=true]{background:var(--menu-text);color:var(--menu-bg);border-color:var(--menu-text)}.menu-recipe{border:1px solid var(--menu-recipe-border);border-radius:var(--menu-radius-md);background:var(--menu-recipe-bg);margin-bottom:var(--menu-space-2)}.menu-recipe summary{justify-content:space-between;align-items:center;gap:var(--menu-space-3);min-height:52px;padding:0 var(--menu-space-4);cursor:pointer;font-family:var(--menu-font-display);font-weight:600;font-size:var(--menu-fs-lg);border-radius:var(--menu-radius-md);list-style:none;display:flex}.menu-recipe summary::-webkit-details-marker{display:none}.menu-recipe-body{padding:0 var(--menu-space-4)var(--menu-space-4);font-size:var(--menu-fs-sm)}.menu-recipe-body h3{margin:var(--menu-space-4)0 var(--menu-space-2);font-size:var(--menu-fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--menu-accent-text)}.menu-recipe-body ul,.menu-recipe-body ol{gap:var(--menu-space-1);margin:0;padding-left:1.3em;display:grid}@media (prefers-reduced-motion:reduce){.menu-root *,.menu-root :before,.menu-root :after,.menu-sheet{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.menu-sheet::backdrop{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.menu-spinner{opacity:.5;border-right-color:currentColor;animation:none}}
