/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.contents{display:contents}.table{display:table}}:root{--ink:#18231f;--muted:#6f7772;--paper:#f5f2eb;--card:#fffdf9;--line:#dedfd9;--green:#12352b;--green-2:#235f4c;--mint:#d9eadf;--gold:#dda95b;--coral:#d76347;--shadow:0 18px 50px #14272014;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes growUp{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes growRight{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(4)}}@keyframes glow{0%,to{box-shadow:0 0 5px #dda95b4d}50%{box-shadow:0 0 20px #dda95b99,0 0 30px #dda95b66}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes checkmark{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes borderGlow{0%,to{border-color:#dda95b4d}50%{border-color:#dda95bcc}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes toastOut{0%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,16px)scale(.92)}}@keyframes tapPulse{0%{box-shadow:0 0 #12352b66}70%{box-shadow:0 0 0 12px #12352b00}to{box-shadow:0 0 #12352b00}}@keyframes successPop{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.2)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes cartBounce{0%,to{transform:translateY(0)}25%{transform:translateY(-8px)}50%{transform:translateY(-4px)}75%{transform:translateY(-6px)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@keyframes drawerSlideIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes backdropFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}@keyframes elasticScale{0%{transform:scale(1)}30%{transform:scale(1.15)}50%{transform:scale(.95)}70%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes numberChange{0%{opacity:1;transform:translateY(0)}50%{opacity:0;transform:translateY(-10px)}51%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes priceUpdate{0%{color:inherit}50%{color:var(--gold);transform:scale(1.1)}to{color:inherit;transform:scale(1)}}@keyframes cardTap{0%{transform:scale(1)}50%{transform:scale(.97)}to{transform:scale(1)}}@keyframes buttonPress{0%{transform:scale(1)translateY(0)}50%{transform:scale(.95)translateY(2px)}to{transform:scale(1)translateY(0)}}@keyframes addToCartSuccess{0%{transform:scale(1)}25%{transform:scale(.9)}50%{background:var(--green-2);transform:scale(1.15)}75%{transform:scale(.95)}to{transform:scale(1)}}@keyframes itemAdded{0%{opacity:1;transform:translate(0)scale(1)}30%{transform:translate(10px)scale(1.02)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes countBadgePop{0%{transform:scale(1)}30%{transform:scale(1.4)}50%{transform:scale(.8)}70%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes swipeHint{0%,to{opacity:.7;transform:translate(0)}50%{opacity:1;transform:translate(10px)}}@keyframes loadingDots{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@keyframes skeletonWave{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes menuCardEnter{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes staggerFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{box-shadow:0 0 5px #dda95b4d,0 0 10px #dda95b33}50%{box-shadow:0 0 15px #dda95b80,0 0 30px #dda95b4d,0 0 45px #dda95b1a}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-180deg)scale(0)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes flipIn{0%{opacity:0;transform:perspective(400px)rotateY(90deg)}to{opacity:1;transform:perspective(400px)rotateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--paper);color:var(--ink);font-family:var(--font-noto-sc), var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;-webkit-font-smoothing:antialiased;margin:0}button,input,select{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.brand,.admin-brand{align-items:center;gap:11px;display:flex}.brand-mark{background:var(--green);color:#f7f1e6;letter-spacing:-1px;border-radius:11px;justify-content:center;align-items:center;width:39px;height:39px;font-family:Georgia,serif;font-size:22px;font-style:italic;font-weight:700;display:flex;position:relative}.brand-mark:after{background:var(--gold);border:2px solid var(--paper);content:"";border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse;position:absolute;top:-2px;right:-2px}.brand-mark{transition:transform .3s var(--ease-spring), box-shadow .3s var(--ease-out)}.brand:hover .brand-mark,.admin-brand:hover .brand-mark{transform:scale(1.08)rotate(-3deg);box-shadow:0 8px 20px #12352b33}.brand b,.admin-brand b{letter-spacing:-.03em;font-size:17px;line-height:1.1;display:block}.brand-name{align-items:center;gap:6px;display:flex}.version-badge{color:var(--green);letter-spacing:.08em;background:#12352b14;border:1px solid #12352b21;border-radius:999px;padding:3px 5px;font-size:8px;font-weight:800;line-height:1}.brand small,.admin-brand small{color:#7d827e;letter-spacing:.14em;margin-top:4px;font-size:9px;display:block}.order-shell{background:radial-gradient(circle at 6% 1%, #dda95b1c, transparent 24%), radial-gradient(circle at 95% 90%, #12352b0d, transparent 20%), var(--paper);min-height:100vh;padding-bottom:40px;position:relative}.order-shell:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#dda95b08 0%,#0000 100%);height:200px;position:fixed;top:0;left:0;right:0}.order-header{justify-content:space-between;align-items:center;max-width:1440px;height:82px;margin:auto;padding:0 32px;display:flex}.header-actions{align-items:center;gap:9px;display:flex}.location-pill,.ghost-button,.admin-link{height:40px;transition:background .16s var(--ease-out), border-color .16s var(--ease-out), transform .15s var(--ease-out);border:1px solid #d9d9d4;border-radius:999px;align-items:center;gap:7px;padding:0 15px;font-size:13px;font-weight:600;display:flex}.location-pill{background:#ffffff85}.lang-switch{color:#6f7772;height:40px;transition:background .16s var(--ease-out), border-color .16s var(--ease-out), transform .15s var(--ease-out);background:#ffffff85;border:1px solid #d9d9d4;border-radius:999px;align-items:center;gap:5px;padding:0 13px;font-size:11px;font-weight:700;display:flex}.lang-switch:hover{background:#fff;border-color:#c7c9c2;transform:translateY(-1px)}.lang-switch:active{transform:translateY(0)scale(.96)}.lang-switch i{color:#c2c4bd;font-style:normal}.lang-switch span{color:#a5a9a4;transition:color .16s var(--ease-out)}.lang-switch span.active{color:var(--green)}.admin-topbar .lang-switch{background:#f5f6f3;height:36px}.ghost-button{background:0 0}.ghost-button:hover,.admin-link:hover{background:#fff;border-color:#c7c9c2;transform:translateY(-1px)}.ghost-button:active,.admin-link:active{transform:translateY(0)scale(.97)}.admin-link{background:var(--ink);border-color:var(--ink);color:#fff}.admin-link svg,.preview-order svg{transition:transform .18s var(--ease-out)}.admin-link:hover svg,.preview-order:hover svg{transform:translate(3px)}.restaurant-hero{animation:fadeUp .56s var(--ease-out) both;color:#fff;max-width:1376px;min-height:345px;transition:box-shadow .4s var(--ease-out), transform .4s var(--ease-out);background:linear-gradient(90deg,#0a211afa 0%,#0a211ae6 42%,#0a211a2e 100%),url(https://images.unsplash.com/photo-1504674900247-0877df9cc836?auto=format&fit=crop&w=1800&q=85) 50% 55%/cover;border-radius:25px;justify-content:space-between;align-items:end;margin:0 auto;padding:52px 55px 46px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 70px #0e2a2029}.restaurant-hero:hover{transform:translateY(-2px);box-shadow:0 30px 90px #0e2a2038}.hero-copy{animation:slideInLeft .6s var(--ease-out) .15s both}.hero-copy h1{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#fff 0%,#f0e6d3 50%,#fff 100%) 0 0/200% 200%;-webkit-background-clip:text;background-clip:text;animation:8s infinite gradientShift}.hero-panel{animation:slideInRight .6s var(--ease-out) .3s both}.restaurant-hero:after{content:"";pointer-events:none;border:1px solid #ffffff29;border-radius:18px;position:absolute;inset:10px}.hero-copy,.hero-panel{z-index:1;position:relative}.eyebrow,.admin-eyebrow{color:#e6be7e;letter-spacing:.18em;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.hero-copy h1{letter-spacing:-.045em;margin:19px 0 16px;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(38px,4vw,59px);font-weight:500;line-height:1.1}.hero-copy>p{color:#ffffffc2;margin:0;font-size:14px}.restaurant-meta{color:#ffffffc7;align-items:center;gap:9px;margin-top:28px;font-size:12px;display:flex}.restaurant-meta span{align-items:center;gap:5px;display:flex}.restaurant-meta span:first-child{color:#f0c676;font-weight:700}.hero-panel{color:var(--ink);background:#fffdf9f0;border:1px solid #ffffff94;border-radius:17px;width:330px;padding:10px;box-shadow:0 14px 40px #0003}.service-switch{grid-template-columns:1fr 1fr;gap:7px;display:grid}.service-switch button{text-align:left;min-height:69px;transition:background .18s var(--ease-out), color .18s var(--ease-out), transform .15s var(--ease-out);background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:12px;display:flex}.service-switch button.active{background:linear-gradient(135deg, var(--green) 0%, var(--green-2) 100%);color:#fff;box-shadow:0 4px 16px #12352b40}.service-switch button.active svg{animation:popIn .3s var(--ease-spring)}.service-switch button:not(.active):hover{background:#f0f0e9}.service-switch button:active{transform:scale(.98)}.service-switch b,.service-switch small{display:block}.service-switch b{font-size:13px}.service-switch small{color:#8b8f8b;margin-top:3px;font-size:10px}.service-switch .active small{color:#ffffff9e}.hero-note{color:#66706b;border-top:1px solid #e0e1dc;align-items:center;gap:8px;margin-top:9px;padding:13px 8px 3px;font-size:11px;display:flex}.hero-note span{flex:1}.mobile-service-bar{display:none}.order-workspace{grid-template-columns:minmax(0,1fr) 362px;align-items:start;gap:24px;max-width:1376px;margin:38px auto 0;display:grid}.menu-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:45px;display:flex}.category-tabs{gap:4px;display:flex}.category-tabs button{color:#6f7772;transition:background .18s var(--ease-out), color .18s var(--ease-out), transform .15s var(--ease-out);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;padding:9px 15px;font-size:12px}.category-tabs button:hover{color:var(--green)}.category-tabs button.active{background:linear-gradient(135deg, var(--green) 0%, var(--green-2) 100%);color:#fff;animation:popIn .2s var(--ease-spring);font-weight:600;box-shadow:0 4px 12px #12352b40}.category-tabs button:active{transform:scale(.93)}.category-tabs button:not(.active):hover{background:#12352b14}.menu-search,.admin-search{color:#7d827f;background:#ffffff9e;border:1px solid #d8d9d4;border-radius:999px;align-items:center;gap:8px;min-width:200px;padding:0 13px;display:flex}.menu-search{height:39px}.menu-search input,.admin-search input{background:0 0;border:0;outline:none;width:100%;font-size:12px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:20px;display:flex}.section-kicker,.panel-kicker{color:#8b8f89;font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;font-size:9px;font-weight:700;display:block}.section-heading h2,.cart-head h2,.dish-modal h2,.booking-modal h2{letter-spacing:-.035em;margin:6px 0 0;font-family:Georgia,Noto Serif SC,serif;font-size:28px;font-weight:500}.section-heading>span{color:#858a86;font-size:11px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.menu-card{animation:menuCardEnter .5s var(--ease-out) both;background:var(--card);min-height:196px;transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out), border-color .25s var(--ease-out);will-change:transform;border:1px solid #d4d5cde6;border-radius:17px;grid-template-columns:42% 58%;display:grid;overflow:hidden}.menu-card:nth-child(2){animation-delay:40ms}.menu-card:nth-child(3){animation-delay:80ms}.menu-card:nth-child(4){animation-delay:.12s}.menu-card:nth-child(5){animation-delay:.16s}.menu-card:nth-child(6){animation-delay:.2s}.menu-card:nth-child(n+7){animation-delay:.24s}.menu-card:hover{border-color:#c8cec7;transform:translateY(-5px)scale(1.01);box-shadow:0 20px 60px #1427201f,0 0 0 1px #dda95b1a}.menu-card:active{transition-duration:.1s;transform:translateY(-2px)scale(.995)}.dish-image{background:#e7e5df;padding:0;position:relative;overflow:hidden}.dish-image img{object-fit:cover;will-change:transform;width:100%;height:100%;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.menu-card:hover .dish-image img{transform:scale(1.08)}.dish-image:after{content:"";opacity:0;background:linear-gradient(135deg,#ffffff1a 0%,#0000 50%);transition:opacity .3s;position:absolute;inset:0}.menu-card:hover .dish-image:after{opacity:1}.dish-badge{color:#62451a;animation:slideInLeft .4s var(--ease-out) .3s both;transition:transform .2s var(--ease-spring), box-shadow .2s ease;background:linear-gradient(135deg,#f1d197 0%,#e8c27e 100%);border-radius:999px;padding:5px 8px;font-size:9px;font-weight:700;position:absolute;top:10px;left:10px;box-shadow:0 2px 8px #dda95b4d}.menu-card:hover .dish-badge{transform:scale(1.05);box-shadow:0 4px 12px #dda95b66}.image-arrow{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#ffffffd6;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;transition:all .18s;display:flex;position:absolute;bottom:10px;right:10px;transform:translate(-4px)}.menu-card:hover .image-arrow{opacity:1;transform:translate(0)}.image-arrow svg{transition:transform .2s var(--ease-out)}.menu-card:hover .image-arrow svg{animation:slideInLeft .4s var(--ease-out) infinite}.dish-body{flex-direction:column;padding:18px 18px 14px;display:flex}.dish-title-row{justify-content:space-between;gap:8px;display:flex}.dish-title-row h3{letter-spacing:-.02em;margin:0;font-size:15px}.dish-title-row small{color:#8d918d;font-family:var(--font-geist-sans), sans-serif;margin-top:3px;font-size:9px;display:block}.diet-icons{color:var(--coral);gap:5px;display:flex}.diet-icons svg:last-child{color:#4f9067}.dish-body>p{color:#707773;margin:13px 0;font-size:11px;line-height:1.55}.dish-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.dish-footer strong{font-family:Georgia,serif;font-size:20px}.dish-footer strong small,.summary-total strong small{font-family:var(--font-noto-sc), sans-serif;margin-right:2px;font-size:11px}.add-button{background:var(--green);color:#fff;height:31px;transition:transform .2s var(--ease-spring), background .15s ease, box-shadow .2s ease;border-radius:50%;justify-content:center;align-items:center;width:31px;display:flex;position:relative;overflow:hidden}.add-button:before{content:"";opacity:0;background:radial-gradient(circle,#ffffff4d 0%,#0000 70%);transition:opacity .2s;position:absolute;inset:0}.add-button:hover{background:var(--green-2);transform:rotate(90deg)scale(1.1);box-shadow:0 6px 20px #12352b59}.add-button:hover:before{opacity:1}.add-button:active{transform:rotate(90deg)scale(.9);box-shadow:0 2px 10px #12352b40}.stepper,.mini-stepper{align-items:center;gap:8px;display:flex}.stepper button,.mini-stepper button{height:29px;transition:background .15s var(--ease-out), transform .12s var(--ease-out);background:#edf0eb;border-radius:50%;justify-content:center;align-items:center;width:29px;display:flex}.stepper button:hover,.mini-stepper button:hover{transform:translateY(-1px)}.stepper button:active,.mini-stepper button:active{transform:scale(.86)}.stepper button:last-child,.mini-stepper button:last-child{background:var(--green);color:#fff}.stepper span,.mini-stepper span{text-align:center;min-width:10px;transition:transform .18s var(--ease-spring);font-size:12px;font-weight:700;display:inline-block}.stepper button:last-child:hover,.mini-stepper button:last-child:hover{background:var(--green-2);box-shadow:0 4px 12px #12352b40}.stepper button:first-child:hover,.mini-stepper button:first-child:hover{background:#e0e4dd}.cart-panel{animation:slideUp .5s var(--ease-out) .4s both;background:var(--card);transition:box-shadow .3s var(--ease-out), border-color .3s var(--ease-out);border:1px solid #d4d5cde6;border-radius:19px;position:sticky;top:18px;overflow:hidden;box-shadow:0 15px 45px #1a272212}.cart-panel:hover{border-color:#b4b9afe6;box-shadow:0 20px 60px #1a27221f}.cart-head{align-items:center;padding:22px 22px 16px;display:flex}.cart-head>div{flex:1}.cart-head h2{font-size:22px}.cart-count,.count-badge{background:var(--green);color:#fff;width:27px;height:27px;transition:transform .2s var(--ease-spring), background .2s ease;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.cart-count:hover,.count-badge:hover{background:var(--green-2);transform:scale(1.1)}.cart-count.updated,.count-badge.updated{animation:popIn .4s var(--ease-spring)}.mobile-close{background:0 0;display:none}.order-context{background:#eef2ec;border:1px solid #dfe5df;border-radius:11px;align-items:center;gap:10px;margin:0 16px 8px;padding:11px 12px;display:flex}.order-context>div{flex:1}.order-context b,.order-context span{display:block}.order-context b{font-size:11px}.order-context span{color:#858a86;margin-top:3px;font-size:9px}.cart-list{min-height:206px;padding:5px 16px 8px}.cart-item{animation:slideInRight .32s var(--ease-out) both;transition:background .2s ease, transform .2s var(--ease-out);border-bottom:1px dashed #dbdcd6;grid-template-columns:51px 1fr auto;align-items:center;gap:10px;padding:13px 0;display:grid}.cart-item:hover{background:#12352b08;transform:translate(4px)}.cart-item:first-child{animation-delay:0s}.cart-item:nth-child(2){animation-delay:60ms}.cart-item:nth-child(3){animation-delay:.12s}.cart-item:nth-child(4){animation-delay:.18s}.cart-item:nth-child(5){animation-delay:.24s}.cart-item:nth-child(n+6){animation-delay:.3s}.cart-item img{transition:transform .3s var(--ease-out)}.cart-item:hover img{transform:scale(1.08)}.cart-item img{object-fit:cover;border-radius:9px;width:51px;height:51px}.cart-item-info b,.cart-item-info span,.cart-item-info strong{display:block}.cart-item-info b{font-size:11px}.cart-item-info span{color:#929591;margin:3px 0 5px;font-size:8px}.cart-item-info strong{font-size:11px}.mini-stepper{gap:5px}.mini-stepper button{width:22px;height:22px}.mini-stepper span{font-size:10px}.cart-empty,.empty-state{color:#a2a7a2;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:190px;display:flex}.cart-empty p,.empty-state h3{color:#545d58;margin:11px 0 3px;font-size:13px;font-weight:600}.cart-empty span,.empty-state p{margin:0;font-size:10px}.empty-state{background:#ffffff73;border:1px dashed #d4d6d0;border-radius:17px;min-height:280px}.cart-summary{background:#f1f1eb;border-top:1px solid #e0e1da;padding:13px 17px 15px}.cart-summary>div{justify-content:space-between;align-items:center;padding:5px 2px;font-size:10px;display:flex}.text-button{color:#747b77;background:0 0;align-items:center;gap:4px;font-size:9px;display:flex}.cart-summary .summary-total{border-top:1px solid #dadcd4;margin-top:8px;padding:14px 2px 10px}.summary-total span{font-size:13px;font-weight:700}.summary-total strong{font-family:Georgia,serif;font-size:24px}.checkout-button,.primary-admin-button{background:linear-gradient(135deg, var(--green) 0%, var(--green-2) 100%);color:#fff;min-height:45px;transition:background-position .3s ease, transform .2s var(--ease-out), box-shadow .2s var(--ease-out);background-size:200% 200%;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:0 18px;font-size:12px;font-weight:700;display:flex;position:relative;overflow:hidden}.checkout-button:before,.primary-admin-button:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.checkout-button:hover:before,.primary-admin-button:hover:before{left:100%}.checkout-button:hover,.primary-admin-button:hover{background-position:100%;transform:translateY(-2px);box-shadow:0 12px 30px #12352b47}.checkout-button:active,.primary-admin-button:active{transform:translateY(0)scale(.98);box-shadow:0 4px 12px #12352b33}.checkout-button:disabled{box-shadow:none;cursor:not-allowed;background:linear-gradient(135deg,#b6bbb7 0%,#a5aaa6 100%);transform:none}.checkout-button:disabled:before{display:none}.checkout-button svg,.primary-admin-button svg{transition:transform .2s var(--ease-out)}.checkout-button:hover svg,.primary-admin-button:hover svg{transform:translate(3px)}.checkout-note{color:#9b9e9b;text-align:center;margin:8px 0 0;font-size:8px}.mobile-cart-button,.drawer-backdrop{display:none}.modal-layer{z-index:80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-backdrop{animation:fadeIn .25s var(--ease-out);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#081511a6;transition:-webkit-backdrop-filter .3s,backdrop-filter .3s;position:absolute;inset:0}.dish-modal,.booking-modal{animation:modalIn .32s var(--ease-out);z-index:1;background:#fffdf9;border-radius:22px;max-height:calc(100vh - 40px);position:relative;overflow:auto;box-shadow:0 30px 90px #05100c4d}@keyframes modalIn{0%{opacity:0;transform:translateY(30px)scale(.92)}60%{transform:translateY(-5px)scale(1.01)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content{animation:slideInRight .4s var(--ease-out) .15s both}.dish-modal>img{animation:fadeIn .4s var(--ease-out) .1s both;transition:transform .5s var(--ease-out)}.dish-modal:hover>img{transform:scale(1.02)}.booking-icon{animation:popIn .5s var(--ease-spring) .2s both}.dish-modal{grid-template-columns:48% 52%;width:100%;max-width:760px;display:grid;overflow:hidden}.dish-modal>img{object-fit:cover;width:100%;height:100%;min-height:470px}.modal-close{height:36px;transition:background .15s var(--ease-out), transform .15s var(--ease-out);z-index:2;background:#ffffffed;border-radius:50%;justify-content:center;align-items:center;width:36px;display:flex;position:absolute;top:15px;right:15px}.modal-close:hover{background:#fff;transform:rotate(90deg)scale(1.1);box-shadow:0 4px 12px #0000001a}.modal-close:active{transform:rotate(90deg)scale(.95)}.modal-content{flex-direction:column;justify-content:center;padding:45px 38px 34px;display:flex}.modal-content>p:not(.modal-english){color:#6d746f;font-size:12px;line-height:1.8}.modal-english{color:#929792;font-family:var(--font-geist-sans), sans-serif;margin:3px 0 15px;font-size:10px}.option-group{border-top:1px solid #e0e1db;margin:16px 0 24px;padding-top:18px}.option-group>div:first-child{justify-content:space-between;align-items:center;display:flex}.option-group b{font-size:12px}.option-group span{color:#9b9f9b;font-size:9px}.option-pills{gap:7px;margin-top:12px;display:flex}.option-pills button,.time-slots button{transition:background .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out), transform .15s var(--ease-out);background:#eff0eb;border:1px solid #e0e1db;border-radius:8px;padding:8px 10px;font-size:10px}.option-pills button:hover,.time-slots button:hover{border-color:#c7cec9}.option-pills button:active,.time-slots button:active{transform:scale(.95)}.option-pills button.active,.time-slots button.active{background:var(--mint);color:var(--green);animation:popIn .2s var(--ease-spring);border-color:#7ba58b;font-weight:700;box-shadow:0 2px 8px #7ba58b40}.booking-modal{width:100%;max-width:510px;padding:39px}.booking-icon{background:var(--mint);color:var(--green);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:22px;display:flex}.booking-modal>p{color:#747b77;font-size:12px}.booking-fields{grid-template-columns:1.4fr 1fr 1fr;gap:9px;margin:24px 0 15px;display:grid}.booking-fields label{color:#777e7a;font-size:9px}.booking-fields input,.booking-fields select{background:#f3f3ee;border:1px solid #e1e1db;border-radius:8px;width:100%;height:40px;margin-top:5px;padding:0 9px;font-size:10px;display:block}.time-slots{gap:7px;margin-bottom:23px;display:flex}.toast{animation:toastIn .38s var(--ease-spring);color:#fff;z-index:120;background:linear-gradient(135deg,#173b30 0%,#1e4a3d 100%);border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #04100c47,0 0 0 1px #4fac771a}.toast.exiting{animation:toastOut .3s var(--ease-out) forwards}.toast svg{animation:popIn .4s var(--ease-spring) .12s both;color:#6fd99a}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,16px)scale(.92)}to{opacity:1;transform:translate(-50%)scale(1)}}.admin-shell{--admin-bg:#f3f5f2;background:var(--admin-bg);min-height:100vh;display:flex}.admin-sidebar{color:#fff;z-index:50;background:#102f27;flex-direction:column;flex-shrink:0;width:248px;height:100vh;padding:25px 18px 18px;display:flex;position:sticky;top:0}.admin-brand{padding:0 8px}.admin-brand .brand-mark{color:var(--green);background:#f7f0e3}.admin-brand .brand-mark:after{border-color:#102f27}.admin-brand b{color:#fff}.admin-brand .version-badge{color:#ffffffb8;background:#ffffff1a;border-color:#ffffff26}.admin-brand small{color:#ffffff6e}.sidebar-close{color:#fff;background:0 0;margin-left:auto;display:none}.store-switcher{background:#ffffff13;border:1px solid #ffffff17;border-radius:11px;align-items:center;gap:10px;margin:26px 0 20px;padding:10px;display:flex}.store-switcher>span{color:#ecc98a;background:#dab67529;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.store-switcher>div{flex:1}.store-switcher small,.store-switcher b{display:block}.store-switcher small{color:#ffffff6b;font-size:8px}.store-switcher b{margin-top:3px;font-size:10px}.admin-nav{flex-direction:column;gap:3px;display:flex}.nav-label{color:#ffffff52;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;padding:4px 11px 7px;font-size:8px}.nav-label-bottom{margin-top:12px}.admin-nav button{color:#ffffffa1;text-align:left;min-height:39px;transition:background .16s var(--ease-out), color .16s var(--ease-out), transform .15s var(--ease-out);background:0 0;border-radius:8px;align-items:center;gap:12px;padding:0 11px;font-size:11px;display:flex}.admin-nav button:hover{color:#fff;background:#ffffff0f}.admin-nav button:active{transform:scale(.98)}.admin-nav button.active{color:#13372d;background:#f5eee2;font-weight:700;box-shadow:0 4px 12px #00000026}.admin-nav button.active:before{content:"";background:var(--gold);width:3px;height:60%;animation:growUp .3s var(--ease-out);border-radius:0 2px 2px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.admin-nav button{position:relative}.admin-nav button span{flex:1}.admin-nav button i{color:#fff;min-width:18px;height:18px;animation:popIn .4s var(--ease-spring);background:#d46a4f;border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:8px;font-style:normal;display:flex;box-shadow:0 2px 8px #d46a4f66}.admin-nav button:hover i{animation:wiggle .4s var(--ease-out)}.shift-card{background:#ffffff0e;border:1px solid #ffffff14;border-radius:11px;margin-top:auto;padding:12px}.shift-card>div{align-items:center;gap:7px;font-size:10px;display:flex}.online-dot{background:#56c287;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 3px #56c2871f}.shift-card p{color:#ffffff73;font-family:var(--font-geist-mono), monospace;margin:7px 0 12px 13px;font-size:9px}.shift-card button{color:#fff;background:#ffffff1a;border-radius:7px;justify-content:space-between;align-items:center;width:100%;min-height:29px;padding:0 9px;font-size:9px;display:flex}.admin-user{align-items:center;gap:9px;margin-top:15px;padding:0 5px;display:flex}.avatar{color:#3d2a10;background:#dcb66f;border-radius:50%;justify-content:center;align-items:center;width:33px;height:33px;font-size:11px;font-weight:700;display:flex}.admin-user>div{flex:1}.admin-user b,.admin-user small{display:block}.admin-user b{font-size:10px}.admin-user small{color:#ffffff6b;margin-top:2px;font-size:8px}.admin-main{flex:1;min-width:0}.admin-topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:30;background:#ffffffd1;border-bottom:1px solid #e1e4df;justify-content:space-between;align-items:center;height:75px;padding:0 30px;display:flex;position:sticky;top:0}.topbar-title{align-items:center;gap:13px;display:flex}.topbar-title h1{letter-spacing:-.03em;margin:0;font-size:18px}.topbar-title p{color:#8b918d;margin:3px 0 0;font-size:9px}.sidebar-trigger{background:0 0;align-items:center;display:none}.topbar-actions{align-items:center;gap:9px;display:flex}.admin-search{width:220px;height:36px}.icon-button{height:36px;transition:background .15s var(--ease-out), transform .15s var(--ease-out);background:#f5f6f3;border:1px solid #dee1dc;border-radius:9px;justify-content:center;align-items:center;width:36px;display:flex;position:relative}.icon-button:hover{background:#ecefe9}.icon-button:active{transform:scale(.92)}.icon-button i{background:#d85d43;border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:6px}.preview-order{background:var(--green);color:#fff;height:36px;transition:background .15s var(--ease-out), transform .15s var(--ease-out);border-radius:9px;align-items:center;gap:7px;padding:0 13px;font-size:10px;font-weight:600;display:flex}.preview-order:hover{background:var(--green-2);transform:translateY(-1px)}.admin-content{max-width:1480px;margin:auto;padding:27px 30px 50px}.overview-hero{animation:fadeUp .42s var(--ease-out) both;color:#fff;min-height:190px;transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out);background:radial-gradient(circle at 82% 20%,#dcb06740,#0000 25%) 0 0/100% 100%,linear-gradient(135deg,#153a30,#0d2b23) 0 0/200% 200%;border-radius:16px;justify-content:space-between;align-items:center;padding:30px 34px;display:flex;position:relative;overflow:hidden}.overview-hero:hover{transform:translateY(-2px);box-shadow:0 20px 50px #0d2b234d}.overview-hero h2 em{animation:3s ease-in-out infinite glow;display:inline-block}.overview-hero:after{content:"";border:1px solid #ffffff17;border-radius:50%;width:300px;height:300px;position:absolute;top:-205px;right:12%}.overview-hero h2{letter-spacing:-.035em;margin:12px 0 8px;font-family:Georgia,Noto Serif SC,serif;font-size:27px;font-weight:500;line-height:1.35}.overview-hero h2 em{color:#e4bc77;font-style:normal}.overview-hero p{color:#ffffff85;margin:0;font-size:10px}.overview-hero-side{z-index:1;align-items:center;gap:30px;display:flex;position:relative}.overview-hero-side>div{border-right:1px solid #ffffff21;min-width:155px;padding-right:30px}.overview-hero-side span,.overview-hero-side strong,.overview-hero-side small{display:block}.overview-hero-side span{color:#ffffff8c;font-size:9px}.overview-hero-side strong{margin:5px 0 3px;font-family:Georgia,serif;font-size:30px}.overview-hero-side small{color:#70c699;align-items:center;gap:4px;font-size:9px;display:flex}.overview-hero-side button{color:var(--green);transition:background .15s var(--ease-out), transform .15s var(--ease-out);background:#f3eadc;border-radius:9px;align-items:center;gap:9px;padding:12px 15px;font-size:10px;font-weight:700;display:flex}.overview-hero-side button:hover{background:#fff;transform:translateY(-1px)}.metric-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-top:15px;display:grid}.metric-grid article{animation:fadeUp .42s var(--ease-out) both;min-height:116px;transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out), border-color .2s var(--ease-out);background:#fff;border:1px solid #e0e3de;border-radius:13px;align-items:flex-start;gap:13px;padding:18px;display:flex}.metric-grid article:hover{border-color:#d4d8d1;transform:translateY(-4px);box-shadow:0 14px 40px #1427201f}.metric-grid article:active{transform:translateY(-1px);box-shadow:0 6px 20px #14272014}.metric-grid article:nth-child(2){animation-delay:50ms}.metric-grid article:nth-child(3){animation-delay:.1s}.metric-grid article:nth-child(4){animation-delay:.15s}.metric-icon{height:38px;transition:transform .2s var(--ease-spring);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;display:flex}.metric-grid article:hover .metric-icon{transform:scale(1.1)rotate(-5deg)}.metric-grid article:hover .metric-icon svg{animation:2s ease-in-out infinite float}.metric-icon svg{width:18px;height:18px}.metric-icon.green{color:#2b7454;background:#dff0e5}.metric-icon.amber{color:#a56e22;background:#f7ead5}.metric-icon.blue{color:#377482;background:#dcecef}.metric-icon.violet{color:#685789;background:#e8e4f2}.metric-grid article>div{flex:1}.metric-grid p{color:#78807b;margin:0;font-size:9px}.metric-grid h3{font-family:var(--font-geist-sans), sans-serif;letter-spacing:-.04em;margin:4px 0 5px;font-size:22px}.metric-grid h3 small{font-size:10px}.metric-grid article small{align-items:center;gap:2px;font-size:8px;font-weight:700;display:flex}.metric-grid article small svg{width:12px;height:12px}.metric-grid article small i{color:#a0a5a1;margin-left:4px;font-style:normal;font-weight:400}.positive{color:#4d9b6c}.negative{color:#cd725b}.overview-grid{grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);gap:13px;margin-top:13px;display:grid}.panel{animation:fadeUp .46s var(--ease-out) both;transition:box-shadow .22s var(--ease-out), border-color .22s var(--ease-out);background:#fff;border:1px solid #dfe2dd;border-radius:13px;overflow:hidden}.panel:hover{border-color:#d4d8d1;box-shadow:0 12px 34px #14272012}.overview-grid .panel:nth-child(2),.bottom-grid .panel:nth-child(2){animation-delay:70ms}.panel-head{justify-content:space-between;align-items:center;padding:18px 20px 12px;display:flex}.panel-head h3{letter-spacing:-.02em;margin:4px 0 0;font-size:14px}.period-tabs,.filter-tabs{background:#f1f3ef;border-radius:7px;padding:3px;display:flex}.period-tabs button,.filter-tabs button{color:#7c837f;background:0 0;border-radius:6px;padding:5px 9px;font-size:8px}.period-tabs button.active,.filter-tabs button.active{color:var(--green);background:#fff;font-weight:700;box-shadow:0 2px 7px #14241e14}.chart-summary{align-items:baseline;gap:8px;padding:2px 20px 0;display:flex}.chart-summary strong{font-size:20px}.chart-summary span{color:#397b56;background:#e3f2e8;border-radius:999px;align-items:center;gap:1px;padding:3px 6px;font-size:8px;font-weight:700;display:flex}.chart-summary small{color:#9a9e9a;font-size:8px}.bar-chart{background-image:linear-gradient(#edf0ec 1px,#0000 1px);background-size:100% 33.33%;align-items:end;gap:8px;height:140px;margin:17px 20px 16px;display:flex}.bar-chart>div{flex-direction:column;flex:1;justify-content:end;align-items:center;height:100%;display:flex}.bar-chart i{animation:growUp .64s var(--ease-out) both;transform-origin:bottom;background:#b9d2c4;border-radius:4px 4px 1px 1px;width:100%;min-height:5px;transition:height .3s,background .2s;display:block}.bar-chart .highlight i{background:var(--green);animation:growUp .64s var(--ease-out) both, glow 2s ease-in-out infinite .7s;box-shadow:0 5px 15px #12352b40}.bar-chart>div:hover i{background:var(--green-2);transform:scaleY(1.05)}.bar-chart>div:first-child i{animation-delay:0s}.bar-chart>div:nth-child(2) i{animation-delay:25ms}.bar-chart>div:nth-child(3) i{animation-delay:50ms}.bar-chart>div:nth-child(4) i{animation-delay:75ms}.bar-chart>div:nth-child(5) i{animation-delay:.1s}.bar-chart>div:nth-child(6) i{animation-delay:.125s}.bar-chart>div:nth-child(7) i{animation-delay:.15s}.bar-chart>div:nth-child(8) i{animation-delay:.175s}.bar-chart>div:nth-child(9) i{animation-delay:.2s}.bar-chart>div:nth-child(10) i{animation-delay:.225s}.bar-chart>div:nth-child(11) i{animation-delay:.25s}.bar-chart>div:nth-child(12) i{animation-delay:.275s}.bar-chart span{color:#9b9f9b;font-family:var(--font-geist-mono), monospace;white-space:nowrap;height:14px;padding-top:5px;font-size:7px}.more-button{color:#89908b;transition:background .15s var(--ease-out), transform .15s var(--ease-out);background:0 0;justify-content:center;align-items:center;display:flex}.more-button:hover{background:#0000000d}.more-button:active{transform:scale(.9)}.donut-wrap{justify-content:center;align-items:center;gap:24px;min-height:200px;padding:6px 22px 20px;display:flex}.donut{background:conic-gradient(#163c30 0 52%, #7ca88f 52% 80%, #dfb769 80% 100%);width:112px;height:112px;animation:scaleIn .6s var(--ease-out) .2s both;transition:transform .3s var(--ease-spring), box-shadow .3s ease;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.donut:hover{transform:scale(1.05)rotate(5deg);box-shadow:0 12px 30px #163c3033}.donut:after{content:"";background:#fff;border-radius:50%;width:72px;height:72px;position:absolute}.donut span{text-align:center;z-index:1;position:relative}.donut b,.donut small{display:block}.donut b{font-size:18px}.donut small{color:#969b97;font-size:7px}.channel-list{min-width:110px}.channel-list>div{grid-template-columns:7px 1fr auto;align-items:center;gap:7px;padding:7px 0;font-size:9px;display:grid}.channel-list b{font-size:9px}.dot{border-radius:2px;width:7px;height:7px}.dot.dark{background:#163c30}.dot.green{background:#7ca88f}.dot.gold{background:#dfb769}.bottom-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr)}.link-button{color:#547265;transition:gap .18s var(--ease-out), color .18s var(--ease-out);background:0 0;align-items:center;gap:6px;font-size:9px;display:flex}.link-button:hover{color:var(--green);gap:9px}.link-button svg{width:13px;height:13px}.order-table-wrap{overflow-x:auto}.order-table{border-collapse:collapse;width:100%}.order-table th{color:#909590;text-align:left;white-space:nowrap;background:#f7f8f5;border-bottom:1px solid #e7e9e5;padding:8px 13px;font-size:8px;font-weight:500}.order-table td{color:#68706c;white-space:nowrap;border-bottom:1px solid #eceeea;padding:10px 13px;font-size:9px}.order-table tbody tr:last-child td{border-bottom:0}.order-table tbody tr{transition:background .15s var(--ease-out)}.order-table tbody tr:hover{background:#f7f8f5}.order-table td b,.order-table td small{display:block}.order-table td b{color:#2b3732;font-size:9px}.order-table td small{color:#a0a5a1;margin-top:2px;font-size:7px}.status-pill{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:600;display:inline-flex}.status-amber{color:#a86b12;background:#fff0d8}.status-coral{color:#ba5c43;background:#fde7df}.status-blue{color:#3e7480;background:#dfecef}.status-green{color:#3c7753;background:#e2f0e6}.attention-list{padding:0 12px 11px}.attention-list button{text-align:left;transition:background .15s var(--ease-out), padding-left .15s var(--ease-out);background:0 0;border-bottom:1px solid #eaede8;align-items:center;gap:9px;width:100%;padding:12px 7px;display:flex}.attention-list button:hover{background:#f7f8f5;padding-left:10px}.attention-list button:last-child{border-bottom:0}.attention-list button>div{flex:1}.attention-list>button>svg{transition:transform .15s var(--ease-out)}.attention-list button:hover>svg{transform:translate(2px)}.attention-list b,.attention-list small{display:block}.attention-list b{font-size:9px}.attention-list small{color:#999e9a;margin-top:3px;font-size:7px}.attention-list>button>svg{color:#a3a7a3;width:14px;height:14px}.attention-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:31px;height:31px;display:flex}.attention-icon svg{width:15px;height:15px}.attention-icon.warning{color:#c5664e;background:#fde9dc}.attention-icon.calendar{color:#557b9c;background:#e2eaf2}.attention-icon.sync{color:#4d835f;background:#e2f0e6}.attention-icon{transition:transform .2s var(--ease-spring)}.attention-list button:hover .attention-icon{transform:scale(1.1)}.attention-icon.warning svg{animation:.5s ease-in-out 1s shake}.view-section{animation:viewIn .32s var(--ease-out) both}@keyframes viewIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.view-title{justify-content:space-between;align-items:end;margin-bottom:23px;display:flex}.view-title h2{letter-spacing:-.045em;margin:5px 0 4px;font-size:26px}.view-title p{color:#858c87;margin:0;font-size:10px}.primary-admin-button{width:auto;min-height:37px}.filter-bar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.filter-tabs button{padding:7px 12px;font-size:9px}.filter-tabs button i{background:#e2e7e1;border-radius:999px;margin-left:4px;padding:2px 5px;font-size:7px;font-style:normal}.filter-tabs button.active i{background:var(--green);color:#fff}.date-button,.live-label{background:#fff;border:1px solid #dde1dc;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:9px;display:flex}.full-order-panel{min-height:430px}.order-table.large th,.order-table.large td{padding:15px 18px}.order-table.large td,.order-table.large td b{font-size:10px}.row-action{color:#8c928e;transition:color .15s var(--ease-out), transform .15s var(--ease-out);background:0 0;justify-content:center;align-items:center;display:flex}.row-action:hover{color:var(--green);transform:translate(2px)}.row-action svg{width:15px;height:15px}.kitchen-status{background:#fff;border:1px solid #dce0da;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:9px;display:flex}.kitchen-columns{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.kitchen-column{background:#e8ebe7;border:1px solid #dfe2dd;border-radius:13px;min-height:610px;padding:11px}.kitchen-column.active-column{background:#e4ebe6}.kitchen-column-head{justify-content:space-between;align-items:center;padding:3px 4px 12px;font-size:11px;font-weight:700;display:flex}.kitchen-column-head b{background:#fff;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:8px;display:flex}.kitchen-ticket{animation:fadeUp .42s var(--ease-out) both;transition:opacity .2s ease, transform .2s var(--ease-out), box-shadow .2s var(--ease-out);background:#fff;border:1px solid #daddd8;border-left:3px solid #d6a350;border-radius:9px;margin-bottom:9px;overflow:hidden;box-shadow:0 0 #14272000}.kitchen-ticket:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 14px 36px #1427201f}.kitchen-ticket:active{transform:translateY(-1px)scale(.99)}.kitchen-ticket.cooking{border-left-color:#4d8d69}.kitchen-ticket.ready{border-left-color:#4f8391}.kitchen-ticket.done{opacity:.35;transform:scale(.98)}.ticket-head{border-bottom:1px solid #e7e9e5;justify-content:space-between;align-items:center;padding:12px;display:flex}.ticket-head>div{align-items:center;gap:7px;display:flex}.ticket-head b{font-size:13px}.ticket-head span{color:#65706a;background:#eff1ed;border-radius:5px;padding:3px 6px;font-size:8px}.ticket-head time{color:#79817c;font-family:var(--font-geist-mono), monospace;align-items:center;gap:4px;font-size:8px;display:flex}.ticket-head time.urgent{color:#c65338;font-weight:700}.ticket-items{min-height:118px;padding:10px 12px}.ticket-items p{color:#65706a;margin:5px 0;font-size:9px;line-height:1.5}.ticket-items p:first-child{color:#26332d;font-size:11px;font-weight:700}.kitchen-ticket>button{color:#34453d;min-height:36px;transition:background .15s var(--ease-out), transform .12s var(--ease-out);background:#eff1ed;justify-content:center;align-items:center;gap:6px;width:100%;font-size:9px;font-weight:700;display:flex}.kitchen-ticket>button:active{transform:scale(.97)}.kitchen-ticket>button svg{width:14px;height:14px}.kitchen-ticket.cooking>button{background:var(--green);color:#fff}.menu-admin-grid,.integration-grid{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.menu-admin-card{animation:fadeUp .42s var(--ease-out) both;transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out), border-color .2s var(--ease-out);background:#fff;border:1px solid #dfe2dd;border-radius:13px;position:relative;overflow:hidden}.menu-admin-card:hover{border-color:#d4d8d1;transform:translateY(-3px);box-shadow:0 14px 34px #1427201a}.menu-admin-card .admin-dish-image{transition:transform .5s var(--ease-out)}.menu-admin-card:hover .admin-dish-image{transform:scale(1.045)}.admin-dish-image{background-position:50%;background-size:cover;height:145px;display:block}.dish-1{background-image:url(https://images.unsplash.com/photo-1600891964092-4316c288032e?auto=format&fit=crop&w=600&q=80)}.dish-2{background-image:url(https://images.unsplash.com/photo-1473093295043-cdd812d0e601?auto=format&fit=crop&w=600&q=80)}.dish-3{background-image:url(https://images.unsplash.com/photo-1603133872878-684f208fb84b?auto=format&fit=crop&w=600&q=80)}.dish-4{background-image:url(https://images.unsplash.com/photo-1540189549336-e6e99c3679fe?auto=format&fit=crop&w=600&q=80)}.admin-dish-info{padding:15px}.admin-dish-info>span{color:#8d938e;font-size:8px}.admin-dish-info h3{margin:4px 0;font-size:13px}.admin-dish-info>b{font-size:12px}.menu-admin-card>.more-button{background:#ffffffe6;border-radius:50%;width:28px;height:28px;position:absolute;top:9px;right:9px}.stock-row{border-top:1px solid #e8eae6;justify-content:space-between;align-items:center;margin-top:13px;padding-top:11px;font-size:8px;display:flex}.stock-row>span{color:#969b97}.stock-row b{color:#4b8b63}.stock-row b.low{color:#c66349}.stock-bar{background:#e9ece7;border-radius:999px;height:4px;margin-top:7px;overflow:hidden}.stock-bar i{animation:growRight .7s var(--ease-out) .15s both;border-radius:inherit;transform-origin:0;background:#5d9571;height:100%;display:block}.menu-admin-card:last-child .stock-bar i{background:#d67255}.booking-admin-layout{grid-template-columns:1.05fr 1fr;gap:13px;display:grid}.reservation-list{padding-bottom:6px}.reservation-row{transition:background .15s var(--ease-out);border-top:1px solid #eaede8;grid-template-columns:43px 30px 1fr auto 22px;align-items:center;gap:11px;margin:0 15px;padding:13px 4px;display:grid}.reservation-row:hover{background:#f7f8f5}.reservation-row time{font-family:var(--font-geist-mono), monospace;font-size:10px;font-weight:700}.avatar.small{width:28px;height:28px}.reservation-row b,.reservation-row small{display:block}.reservation-row b{font-size:9px}.reservation-row small{color:#989d99;margin-top:3px;font-size:7px}.live-label{border-radius:999px;padding:6px 9px}.live-label i{background:#4fac77;border-radius:50%;width:6px;height:6px;animation:1.8s infinite pulse}@keyframes pulse{50%{opacity:.5}}.floor-map{background:linear-gradient(90deg,#0000 49.7%,#e7eae5 50%,#0000 50.3%) 0 0/100% 100%,linear-gradient(#eef0ec 1px,#0000 1px) 0 0/100% 33.33%;grid-template-columns:repeat(4,1fr);gap:18px 25px;margin:2px 20px 14px;padding:30px 10px 20px;display:grid;position:relative}.floor-label{color:#a1a6a2;letter-spacing:.18em;font-size:7px;position:absolute;top:3px;left:5px}.table-node{animation:scaleIn .38s var(--ease-out) both;aspect-ratio:1.12;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out), border-color .18s var(--ease-out);background:#fff;border:2px solid #dce1dc;border-radius:10px;box-shadow:0 4px 12px #1828220f}.table-node:hover{border-color:#b7c0b8;transform:translateY(-4px)scale(1.03);box-shadow:0 10px 28px #18282226}.table-node:active{transform:translateY(-1px)scale(.98)}.table-node.reserved{animation:2s ease-in-out infinite borderGlow}.table-node.busy:hover{border-color:#173a30}.table-node b,.table-node small{display:block}.table-node b{font-size:10px}.table-node small{color:#8e948f;margin-top:2px;font-size:7px}.table-node.busy{color:#fff;background:#173a30;border-color:#173a30}.table-node.busy small{color:#ffffff8c}.table-node.reserved{color:#8d611b;background:#fff5e4;border-color:#d9aa5f}.floor-legend{border-top:1px solid #e7eae5;justify-content:center;gap:18px;padding:12px;display:flex}.floor-legend span{color:#7f8681;align-items:center;gap:5px;font-size:8px;display:flex}.floor-legend i{border:1px solid #cfd4cf;border-radius:2px;width:8px;height:8px}.floor-legend i.busy{background:#173a30;border-color:#173a30}.floor-legend i.reserved{background:#fff0d2;border-color:#d9aa5f}.integration-summary{color:#fff;background:linear-gradient(135deg,#153b30,#224a3e);border-radius:14px;justify-content:space-between;align-items:center;margin-bottom:13px;padding:25px 28px;display:flex}.integration-summary>div{align-items:center;gap:15px;display:flex}.integration-icon{background:#ffffff1c;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.integration-summary>div>div>span{color:#72c798;margin-right:5px;font-size:8px}.integration-summary h3{margin:5px 0 3px;font-size:16px}.integration-summary p{color:#ffffff80;margin:0;font-size:8px}.integration-summary>strong{text-align:right;font-size:22px}.integration-summary>strong small{color:#ffffff7a;margin-top:3px;font-size:7px;font-weight:400;display:block}.integration-card{animation:fadeUp .42s var(--ease-out) both;min-height:193px;transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out), border-color .2s var(--ease-out);background:#fff;border:1px solid #dfe2dd;border-radius:13px;padding:17px;position:relative}.integration-card:hover{border-color:#d4d8d1;transform:translateY(-5px);box-shadow:0 18px 45px #14272024}.integration-card:hover .integration-logo{background:#d9ebe0;animation:2s ease-in-out infinite float}.integration-card:hover .integration-logo svg{transition:transform .3s var(--ease-spring);transform:scale(1.1)}.integration-logo{color:#386d52;background:#e5eee8;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.integration-logo svg{width:19px;height:19px}.integration-card-head{justify-content:space-between;align-items:center;display:flex;position:absolute;top:12px;right:11px}.integration-card-head span{color:#44815d;font-size:8px}.integration-card h3{margin:16px 0 5px;font-size:12px}.integration-card p{color:#8e9490;min-height:28px;font-size:8px}.integration-card>div:last-child{border-top:1px solid #eaede8;justify-content:space-between;align-items:center;margin-top:12px;padding-top:11px;display:flex}.integration-card>div:last-child small{color:#999e9a;font-size:7px}.integration-card>div:last-child b{font-size:8px}.sync-log{margin-top:13px}.sync-row{transition:background .15s var(--ease-out);border-top:1px solid #eaede8;align-items:center;gap:10px;margin:0 17px;padding:12px 3px;display:flex}.sync-row:hover{background:#f7f8f5}.sync-row>svg{color:#4e9468;width:17px;height:17px}.sync-row>div{flex:1}.sync-row b,.sync-row small{display:block}.sync-row b{font-size:9px}.sync-row small{color:#979c98;margin-top:2px;font-size:7px}.spinning{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.shimmer{background:linear-gradient(90deg,#f0f0ea 0%,#e5e5df 50%,#f0f0ea 100%) 0 0/200% 100%;animation:1.8s ease-in-out infinite skeletonWave}.loading-skeleton{background:#e8e9e4;border-radius:8px;position:relative;overflow:hidden}.loading-skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff80,#0000);animation:1.8s ease-in-out infinite skeletonWave;position:absolute;inset:0}.menu-card.loading{pointer-events:none}.menu-card.loading .dish-image{background:linear-gradient(90deg,#e8e9e4 0%,#f0f0ea 50%,#e8e9e4 100%) 0 0/200% 100%;animation:1.8s ease-in-out infinite skeletonWave}.menu-card.loading .dish-body{opacity:.6}.stepper span.bounce,.mini-stepper span.bounce{animation:elasticScale .4s var(--ease-spring)}.add-button.success{animation:addToCartSuccess .5s var(--ease-spring)}.price-flash{animation:priceUpdate .4s var(--ease-out)}@supports (animation-timeline:scroll()){.restaurant-hero{animation:linear both fadeUp;animation-timeline:view();animation-range:entry cover 30%}}.stagger-item{animation:staggerFadeIn .4s var(--ease-out) both}.stagger-item:first-child{animation-delay:0s}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(n+7){animation-delay:.3s}.dish-badge{animation:slideInLeft .4s var(--ease-out) .3s both, glowPulse 3s ease-in-out 1s infinite}.hover-lift{transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out)}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 12px 30px #1427201a}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:6px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#00000008;border-radius:4px}::-webkit-scrollbar-thumb{background:#12352b26;border-radius:4px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#12352b40}.sidebar-backdrop{display:none}@media (width<=1180px){.order-header,.restaurant-hero,.order-workspace{margin-left:22px;margin-right:22px}.menu-card{grid-template-columns:39% 61%}.menu-toolbar{flex-direction:column-reverse;align-items:stretch;margin-bottom:32px}.menu-search{width:100%}.category-tabs{overflow-x:auto}.metric-grid,.menu-admin-grid,.integration-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=960px){.restaurant-hero{min-height:315px}.hero-panel{display:none}.mobile-service-bar{background:#fff;border:1px solid #dcddd8;border-radius:11px;grid-template-columns:1fr 1fr;gap:4px;margin:12px 22px 0;padding:4px;display:grid}.mobile-service-bar button{color:#717873;background:0 0;border-radius:8px;padding:9px;font-size:11px}.mobile-service-bar button.active{background:var(--green);color:#fff;font-weight:700}.order-workspace{margin-top:27px;display:block}.cart-panel{z-index:71;border-radius:24px 24px 0 0;max-height:90vh;transition:transform .4s cubic-bezier(.32,.72,0,1);position:fixed;inset:auto 0 0;overflow:hidden;transform:translateY(105%);box-shadow:0 -10px 40px #0a1e1826}.cart-panel:before{content:"";z-index:10;background:#00000026;border-radius:2px;width:36px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.cart-panel.open{transform:translateY(0)}.cart-panel .cart-list{-webkit-overflow-scrolling:touch;max-height:calc(90vh - 280px);overflow-y:auto}.mobile-close{justify-content:center;align-items:center;margin-right:9px;display:flex}.mobile-close svg{width:20px;height:20px}.cart-list{min-height:150px}.mobile-cart-button{animation:slideInUp .5s var(--ease-spring);background:linear-gradient(135deg, var(--green) 0%, var(--green-2) 100%);color:#fff;z-index:60;min-height:56px;transition:transform .15s var(--ease-spring), box-shadow .15s var(--ease-out);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;align-items:center;gap:10px;padding:0 18px;font-size:11px;display:flex;position:fixed;bottom:13px;left:18px;right:18px;box-shadow:0 16px 45px #0a231b66,inset 0 0 0 1px #ffffff1a}.mobile-cart-button:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff26 0%,#0000 50%);position:absolute;inset:0}.mobile-cart-button:active{transform:scale(.96);box-shadow:0 6px 20px #0a231b4d}.mobile-cart-button>span:nth-child(2){text-align:left;flex:1}.mobile-cart-button strong{font-size:16px}.bag-icon{position:relative}.bag-icon i{animation:popIn .4s var(--ease-spring);color:#2a1c08;background:linear-gradient(135deg,#e0af62 0%,#d49c4a 100%);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:7px;font-style:normal;font-weight:700;display:flex;position:absolute;top:-7px;right:-8px;box-shadow:0 2px 6px #dda95b66}.drawer-backdrop{animation:fadeIn .22s var(--ease-out);z-index:70;background:#050f0b73;display:block;position:fixed;inset:0}.admin-sidebar{transition:transform .22s;position:fixed;left:0;transform:translate(-102%)}.admin-sidebar.open{transform:translate(0)}.sidebar-close,.sidebar-trigger{display:flex}.sidebar-close svg,.sidebar-trigger svg{width:20px;height:20px}.sidebar-backdrop{animation:fadeIn .22s var(--ease-out);z-index:40;background:#07130f75;display:block;position:fixed;inset:0}.overview-grid,.bottom-grid,.booking-admin-layout{grid-template-columns:1fr}.kitchen-columns{padding-bottom:10px;overflow-x:auto}.kitchen-column{min-width:300px}}@media (width<=700px){.order-shell{padding-bottom:90px}.order-header{height:67px;margin:0;padding:0 17px}.brand small,.header-actions .location-pill,.header-actions .ghost-button{display:none}.admin-link{height:36px;padding:0 11px;font-size:0}.admin-link:before{content:"后台";font-size:10px}.restaurant-hero{background-position:61%;border-radius:17px;align-items:center;min-height:292px;margin:0 12px;padding:30px 23px}.restaurant-hero:after{border-radius:11px;inset:7px}.hero-copy h1{margin-top:15px;font-size:37px}.hero-copy>p{max-width:260px;font-size:11px;line-height:1.6}.restaurant-meta{gap:5px;margin-top:20px;font-size:9px}.restaurant-meta span:nth-child(4),.restaurant-meta span:nth-child(5){display:none}.mobile-service-bar,.order-workspace{margin-left:12px;margin-right:12px}.menu-toolbar{margin-bottom:31px}.category-tabs{margin-right:-12px;padding-right:12px}.category-tabs::-webkit-scrollbar{display:none}.menu-grid{grid-template-columns:1fr}.menu-card{min-height:175px}.dish-body{padding:15px 14px 12px}.section-heading h2{font-size:24px}.dish-modal{display:block}.dish-modal>img{height:230px;min-height:0}.modal-content{padding:28px 23px 23px}.booking-modal{padding:30px 22px 22px}.booking-fields{grid-template-columns:1fr 1fr}.booking-fields label:first-child{grid-column:1/-1}.toast{text-align:center;white-space:nowrap;max-width:calc(100% - 30px);bottom:76px}.admin-topbar{height:65px;padding:0 15px}.topbar-title h1{font-size:15px}.topbar-title p,.admin-search{display:none}.preview-order{padding:0 10px;font-size:0}.preview-order:before{content:"顾客端";font-size:9px}.admin-content{padding:17px 13px 40px}.overview-hero{flex-direction:column;align-items:flex-start;padding:24px}.overview-hero h2{font-size:23px}.overview-hero-side{justify-content:space-between;width:100%;margin-top:25px}.overview-hero-side>div{min-width:0;padding-right:20px}.overview-hero-side strong{font-size:24px}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid article{min-height:135px;padding:14px;display:block}.metric-icon{width:31px;height:31px;margin-bottom:11px}.metric-grid h3{font-size:18px}.donut-wrap{justify-content:flex-start}.view-title{align-items:flex-start;gap:15px}.view-title h2{font-size:22px}.view-title p{line-height:1.5}.primary-admin-button{flex-shrink:0;padding:0 11px;font-size:9px}.filter-bar{flex-direction:column;align-items:stretch;gap:8px}.filter-tabs{overflow-x:auto}.filter-tabs button{white-space:nowrap}.date-button{justify-content:center}.menu-admin-grid,.integration-grid{grid-template-columns:1fr 1fr}.admin-dish-image{height:115px}.admin-dish-info{padding:12px}.admin-dish-info h3{font-size:11px}.reservation-row{grid-template-columns:40px 27px 1fr auto;gap:7px;margin:0 8px}.reservation-row .row-action{display:none}.floor-map{grid-template-columns:repeat(4,1fr);gap:12px;margin-left:10px;margin-right:10px}.integration-summary{align-items:flex-start;padding:20px}.integration-summary>strong{display:none}}@media (width<=430px){.menu-card{grid-template-columns:41% 59%}.dish-title-row h3{font-size:13px}.dish-body>p{margin:10px 0;font-size:10px}.dish-title-row small,.diet-icons{display:none}.metric-grid{gap:8px}.metric-grid article{border-radius:11px}.overview-grid{gap:8px;margin-top:8px}.menu-admin-grid,.integration-grid{grid-template-columns:1fr}.admin-dish-image{height:170px}.integration-card{min-height:175px}}@supports (padding:env(safe-area-inset-bottom)){.order-shell{padding-bottom:calc(40px + env(safe-area-inset-bottom))}.mobile-cart-button{bottom:calc(13px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}.cart-panel{padding-bottom:env(safe-area-inset-bottom)}.admin-sidebar{padding-bottom:calc(18px + env(safe-area-inset-bottom));padding-left:calc(18px + env(safe-area-inset-left))}.toast{bottom:calc(24px + env(safe-area-inset-bottom))}@media (width<=700px){.toast{bottom:calc(76px + env(safe-area-inset-bottom))}.order-shell{padding-bottom:calc(90px + env(safe-area-inset-bottom))}}}@media (width>=1024px) and (width<=1366px){.order-workspace{grid-template-columns:minmax(0,1fr) 340px}.menu-grid{gap:14px}.cart-panel{border-radius:17px}.admin-sidebar{width:230px}.metric-grid,.kitchen-columns{gap:11px}}@media (width>=768px) and (width<=1024px){.order-header{padding:0 24px}.restaurant-hero{min-height:320px;margin:0 24px;padding:40px 45px}.hero-copy h1{font-size:42px}.hero-panel{width:290px;padding:8px}.service-switch button{min-height:62px;padding:10px}.order-workspace{margin:30px 24px 0}.menu-grid{gap:14px}.menu-card{min-height:180px}.dish-body{padding:16px}.category-tabs button{padding:10px 16px;font-size:13px}.admin-content{padding:24px}.metric-grid article{min-height:110px;padding:16px}.metric-grid h3{font-size:20px}.panel-head{padding:16px 18px 10px}.kitchen-column{min-width:280px;padding:10px}.kitchen-ticket{border-radius:10px}.floor-map{gap:14px 20px;padding:25px 8px 18px}.table-node{border-radius:9px}}@media (width>=768px) and (width<=960px) and (orientation:portrait){.order-workspace{display:block}.menu-grid{grid-template-columns:repeat(2,1fr)}.mobile-cart-button{border-radius:16px;min-height:58px;font-size:13px;left:24px;right:24px}.mobile-cart-button strong{font-size:18px}.cart-panel{max-height:75vh}.cart-panel.open{border-radius:28px 28px 0 0}.metric-grid,.menu-admin-grid,.integration-grid{grid-template-columns:repeat(2,1fr)}.booking-admin-layout{grid-template-columns:1fr;gap:16px}}@media (width<=430px) and (width>=414px){.restaurant-hero{min-height:280px;padding:28px 22px}.hero-copy h1{font-size:34px}.menu-card{grid-template-columns:38% 62%;min-height:168px}.dish-body{padding:14px 13px 12px}.dish-title-row h3{font-size:14px}.dish-footer strong{font-size:18px}.mobile-cart-button{border-radius:15px;min-height:56px}.section-heading h2{font-size:22px}.overview-hero h2{font-size:21px}.metric-grid article{min-height:125px;padding:13px}.metric-grid h3{font-size:17px}}@media (width<=414px) and (width>=375px){.order-header{height:62px;padding:0 14px}.brand-mark{border-radius:9px;width:35px;height:35px;font-size:19px}.brand b{font-size:15px}.restaurant-hero{border-radius:15px;min-height:265px;margin:0 10px;padding:26px 20px}.hero-copy h1{font-size:30px;line-height:1.15}.hero-copy>p{max-width:220px;font-size:10px}.eyebrow{font-size:9px}.mobile-service-bar{border-radius:10px;margin:10px 10px 0}.mobile-service-bar button{padding:10px;font-size:12px}.order-workspace{margin:20px 10px 0}.menu-toolbar{gap:12px;margin-bottom:24px}.category-tabs{gap:3px;margin-right:-10px;padding-right:10px}.category-tabs button{padding:8px 12px;font-size:11px}.menu-search{border-radius:12px;height:42px}.section-heading{margin-bottom:16px}.section-heading h2{font-size:21px}.menu-grid{gap:12px}.menu-card{border-radius:14px;grid-template-columns:36% 64%;min-height:155px}.dish-body{padding:12px 11px 10px}.dish-title-row h3{font-size:13px;line-height:1.3}.dish-body>p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0;font-size:10px;line-height:1.5;display:-webkit-box;overflow:hidden}.dish-footer strong{font-size:17px}.add-button{width:30px;height:30px}.stepper button{width:27px;height:27px}.mobile-cart-button{border-radius:14px;gap:8px;min-height:52px;padding:0 14px;bottom:10px;left:10px;right:10px}.mobile-cart-button strong{font-size:15px}.modal-layer{padding:12px}.dish-modal{border-radius:18px}.dish-modal>img{height:200px}.modal-content{padding:22px 18px 18px}.modal-content h2{font-size:22px}.option-pills{flex-wrap:wrap;gap:6px}.option-pills button{padding:9px 11px;font-size:11px}.booking-modal{border-radius:18px;padding:26px 18px 18px}.booking-modal h2{font-size:22px}.booking-fields{gap:8px}.booking-fields input,.booking-fields select{height:44px;font-size:14px}.time-slots{flex-wrap:wrap;gap:6px}.time-slots button{flex:1;min-width:70px;padding:10px}.checkout-button{border-radius:12px;min-height:48px;font-size:13px}.toast{gap:6px;padding:10px 16px;font-size:11px}.cart-panel{border-radius:20px 20px 0 0}.cart-head{padding:18px 16px 12px}.cart-head h2{font-size:19px}.order-context{border-radius:10px;margin:0 12px 6px;padding:10px}.cart-item{grid-template-columns:46px 1fr auto;gap:9px;padding:11px 0}.cart-item img{border-radius:8px;width:46px;height:46px}.cart-summary{padding:12px 14px 14px}.summary-total strong{font-size:22px}.admin-topbar{height:58px;padding:0 12px}.topbar-title h1{font-size:14px}.icon-button{border-radius:8px;width:34px;height:34px}.admin-content{padding:14px 10px 35px}.overview-hero{border-radius:14px;min-height:170px;padding:20px}.overview-hero h2{font-size:19px;line-height:1.4}.overview-hero-side strong{font-size:22px}.metric-grid{gap:8px}.metric-grid article{border-radius:11px;min-height:115px;padding:12px}.metric-icon{border-radius:8px;width:28px;height:28px;margin-bottom:9px}.metric-grid p{font-size:8px}.metric-grid h3{margin:3px 0 4px;font-size:16px}.panel{border-radius:12px}.panel-head h3{font-size:13px}.view-title h2{font-size:20px}.primary-admin-button{border-radius:9px;min-height:36px;padding:0 12px;font-size:10px}.kitchen-column{border-radius:11px;min-width:270px;padding:9px}.kitchen-ticket{border-radius:8px}.ticket-head{padding:10px}.ticket-head b{font-size:12px}.floor-map{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 8px 10px;padding:22px 6px 14px}.table-node{border-radius:8px}.table-node b{font-size:9px}.table-node small{font-size:6px}.integration-card{border-radius:11px;min-height:165px;padding:14px}.integration-logo{border-radius:9px;width:36px;height:36px}.integration-card h3{margin:12px 0 4px;font-size:11px}}@media (width<=375px){.order-header{height:58px;padding:0 12px}.brand-mark{border-radius:8px;width:32px;height:32px;font-size:17px}.brand b{font-size:14px}.admin-link{height:32px;padding:0 9px}.lang-switch{height:32px;padding:0 10px;font-size:10px}.restaurant-hero{border-radius:13px;min-height:240px;margin:0 8px;padding:22px 16px}.hero-copy h1{font-size:26px}.hero-copy>p{font-size:9px}.mobile-service-bar{margin:8px 8px 0}.mobile-service-bar button{padding:8px;font-size:11px}.order-workspace{margin:16px 8px 0}.category-tabs button{padding:7px 10px;font-size:10px}.section-heading h2{font-size:19px}.menu-grid{gap:10px}.menu-card{border-radius:12px;grid-template-columns:34% 66%;min-height:140px}.dish-body{padding:10px 9px 8px}.dish-title-row h3{font-size:12px}.dish-body>p{-webkit-line-clamp:2;margin:6px 0;font-size:9px}.dish-footer strong{font-size:15px}.add-button{width:28px;height:28px}.stepper{gap:5px}.stepper button{width:25px;height:25px}.stepper span{font-size:11px}.mobile-cart-button{border-radius:12px;min-height:48px;font-size:10px;bottom:8px;left:8px;right:8px}.mobile-cart-button strong{font-size:14px}.bag-icon i{width:14px;height:14px;font-size:6px}.modal-layer{padding:8px}.dish-modal>img{height:180px}.modal-content{padding:18px 14px 14px}.modal-content h2{font-size:20px}.booking-modal{padding:22px 14px 14px}.checkout-button{min-height:44px;font-size:12px}.cart-panel{border-radius:18px 18px 0 0}.cart-head h2{font-size:17px}.cart-count{width:24px;height:24px;font-size:10px}.cart-item{grid-template-columns:42px 1fr auto}.cart-item img{width:42px;height:42px}.mini-stepper button{width:20px;height:20px}.summary-total strong{font-size:20px}.admin-topbar{height:54px}.topbar-title h1{font-size:13px}.admin-content{padding:12px 8px 30px}.overview-hero{min-height:155px;padding:16px}.overview-hero h2{font-size:17px}.metric-grid article{min-height:105px;padding:10px}.metric-icon{width:26px;height:26px}.metric-grid h3{font-size:15px}.view-title h2{font-size:18px}.floor-map{grid-template-columns:repeat(2,1fr);gap:8px}}@media (hover:none) and (pointer:coarse){.category-tabs button,.option-pills button,.time-slots button,.filter-tabs button{min-height:44px}.add-button{min-width:44px;min-height:44px}.stepper button,.mini-stepper button{min-width:40px;min-height:40px}.ghost-button,.admin-link,.location-pill{min-height:44px}.icon-button,.row-action{min-width:44px;min-height:44px}.modal-close{width:44px;height:44px}.menu-card:hover{transform:none;box-shadow:0 18px 50px #14272014}.menu-card:active{transform:scale(.98);box-shadow:0 8px 25px #1427201f}.add-button:hover{transform:none}.add-button:active{background:var(--green-2);transform:scale(.9)rotate(90deg)}.checkout-button:hover,.primary-admin-button:hover{transform:none;box-shadow:0 10px 24px #12352b38}.checkout-button:active,.primary-admin-button:active{transform:scale(.97)}.category-tabs,.filter-tabs,.cart-list,.kitchen-columns{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scroll-snap-type:x proximity}.category-tabs button,.filter-tabs button{scroll-snap-align:start}.category-tabs::-webkit-scrollbar{display:none}.filter-tabs::-webkit-scrollbar{display:none}.menu-card{transition:transform .15s var(--ease-out), box-shadow .15s var(--ease-out)}.menu-card:active{animation:cardTap .2s var(--ease-out);box-shadow:0 4px 15px #1427201a}.add-button{transition:transform .1s var(--ease-out), background .1s ease}.add-button:active{animation:addToCartSuccess .4s var(--ease-spring)}.add-button.adding{animation:.6s ease-out tapPulse}.stepper button:active,.mini-stepper button:active{animation:buttonPress .15s var(--ease-out)}.stepper span,.mini-stepper span{transition:transform .2s var(--ease-spring)}.stepper span.changing,.mini-stepper span.changing{animation:numberChange .3s var(--ease-out)}.cart-count.updated,.count-badge.updated,.bag-icon i.updated{animation:countBadgePop .4s var(--ease-spring)}.category-tabs button{transition:transform .1s,background .15s,color .15s}.category-tabs button:active{transform:scale(.92)}.category-tabs button.active{animation:popIn .25s var(--ease-spring)}.checkout-button,.primary-admin-button{transition:transform .1s,box-shadow .15s}.checkout-button:active,.primary-admin-button:active{transform:scale(.96);box-shadow:0 2px 8px #12352b33}.mobile-cart-button{transition:transform .15s var(--ease-spring), box-shadow .15s ease}.mobile-cart-button:active{transform:scale(.97)}.mobile-cart-button.item-added{animation:cartBounce .5s var(--ease-spring)}.cart-panel{transition:transform .35s cubic-bezier(.32,.72,0,1)}.cart-panel.open{animation:.4s cubic-bezier(.32,.72,0,1) drawerSlideIn}.drawer-backdrop{animation:.3s ease-out backdropFadeIn}.cart-item{transition:transform .2s var(--ease-out), opacity .2s ease}.cart-item.removing{animation:slideOutDown .3s var(--ease-out) forwards}.cart-item.added{animation:itemAdded .4s var(--ease-spring)}.modal-backdrop{animation:.25s ease-out backdropFadeIn}.dish-modal,.booking-modal{animation:.4s cubic-bezier(.32,.72,0,1) slideInUp}.modal-close:active{transform:rotate(90deg)scale(.9)}.option-pills button:active,.time-slots button:active{transform:scale(.93)}.option-pills button.active,.time-slots button.active{animation:popIn .2s var(--ease-spring)}.service-switch button:active,.mobile-service-bar button:active{transform:scale(.95)}.service-switch button.active,.mobile-service-bar button.active{animation:popIn .25s var(--ease-spring)}.toast{animation:slideInUp .4s var(--ease-spring)}.toast svg{animation:successPop .5s var(--ease-spring) .1s both}.dish-footer strong.updating,.summary-total strong.updating,.mobile-cart-button strong.updating{animation:priceUpdate .4s var(--ease-out)}.cart-empty,.empty-state{animation:fadeUp .5s var(--ease-out)}.cart-empty svg,.empty-state svg{animation:3s ease-in-out infinite float}.menu-search:focus-within,.admin-search:focus-within{border-color:var(--green);transition:box-shadow .2s,border-color .2s;box-shadow:0 0 0 3px #12352b26}.booking-fields input:focus,.booking-fields select:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 3px #12352b1a}.admin-nav button:active{background:#ffffff1a;transform:scale(.97)}.metric-grid article:active,.kitchen-ticket:active{transform:scale(.98)}.table-node:active{transform:scale(.95)}.integration-card:active{transform:scale(.98)}.attention-list button:active{background:#eef0ec;transform:scale(.99)}.category-tabs:after,.filter-tabs:after{content:"";background:linear-gradient(90deg, transparent, var(--paper));pointer-events:none;opacity:0;width:30px;height:100%;transition:opacity .3s;position:absolute;top:50%;right:0;transform:translateY(-50%)}.category-tabs.scrollable:after,.filter-tabs.scrollable:after{opacity:1}.menu-card,.kitchen-ticket,.integration-card{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}@media (height<=500px) and (orientation:landscape){.restaurant-hero{min-height:200px;padding:20px 25px}.hero-copy h1{font-size:28px}.mobile-cart-button{min-height:46px;bottom:8px}.cart-panel{max-height:95vh}.modal-layer{padding:8px}.dish-modal{grid-template-columns:45% 55%;max-height:calc(100vh - 16px);display:grid}.dish-modal>img{height:100%;min-height:0}.booking-modal{max-height:calc(100vh - 16px);overflow-y:auto}.admin-content{padding:12px 16px}.overview-hero{min-height:140px;padding:18px 22px}}@media (prefers-color-scheme:dark){.dish-image img,.admin-dish-image{filter:brightness(.95)}}@media print{.mobile-cart-button,.cart-panel,.toast,.admin-sidebar,.modal-layer{display:none!important}.menu-card{break-inside:avoid}}
