:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#202020;background:#f7f7f5;font-synthesis:none;--orange:#ff6500;--orange2:#ff8a00;--pale:#fff3e7;--line:#e9e7e3;--muted:#858585}*{box-sizing:border-box}body{margin:0;min-width:1024px;min-height:100vh;overflow:hidden}button,input{font:inherit}.app-shell{height:100vh;background:#fafaf8}.primary{border:0;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--orange2),var(--orange));box-shadow:0 12px 24px #ff6a0030;cursor:pointer}.primary:disabled{opacity:.35;cursor:not-allowed}.loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:#fff8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-content:center;gap:16px;text-align:center}.loading span{width:54px;height:54px;border:6px solid #ffd6b8;border-top-color:var(--orange);border-radius:50%;animation:spin 1s linear infinite}.error-toast{position:fixed;top:18px;left:50%;z-index:110;transform:translate(-50%);background:#2e2520;color:#fff;padding:14px 22px;border-radius:14px}@keyframes spin{to{transform:rotate(360deg)}}.welcome-screen{height:100%;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#fff0dc,transparent 30%),radial-gradient(circle at 85% 70%,#ffd9b5,transparent 28%),linear-gradient(135deg,#fff,#fff5e8);position:relative}.welcome-brand{position:absolute;left:52px;top:42px;display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center}.brand-mark{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ff7b00,#ff5400);color:#fff;font-size:35px}.welcome-brand h1,.brand h1{margin:0;font-size:34px}.welcome-brand p,.brand p{margin:3px 0;color:#888}.welcome-card{width:560px;padding:58px;border-radius:42px;background:#fff;border:1px solid #f1e5dc;box-shadow:0 28px 90px #cc7a3030;text-align:center}.welcome-card>span{font-size:70px}.welcome-card h2{font-size:48px;margin:18px 0 8px}.welcome-card p{font-size:22px;color:#777}.start{margin-top:24px;border-radius:20px;padding:22px 70px;font-size:26px}.welcome-orbs i{position:absolute;border-radius:50%;background:#ff8a0030}.welcome-orbs i:nth-child(1){width:180px;height:180px;left:3%;bottom:8%}.welcome-orbs i:nth-child(2){width:90px;height:90px;right:11%;top:15%}.welcome-orbs i:nth-child(3){width:34px;height:34px;right:32%;bottom:11%}.kiosk-screen{height:100%;display:grid;grid-template-rows:106px 1fr}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px 34px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px}.brand .brand-mark{width:62px;height:62px}.order-tabs{display:flex;border:1px solid #ddd;border-radius:19px;overflow:hidden}.order-tabs button{border:0;background:#fff;padding:20px 55px;font-size:23px;font-weight:700}.order-tabs .active{background:linear-gradient(135deg,var(--orange2),var(--orange));color:#fff}.topbar nav{justify-self:end;display:flex;gap:12px}.icon-button{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #e4e4e4;border-radius:16px;padding:14px 18px;font-size:17px}.icon-button span{font-size:24px}.menu-layout{display:grid;grid-template-columns:280px minmax(580px,1fr) 356px;gap:16px;padding:18px;height:calc(100vh - 106px)}.categories,.cart-panel,.catalog{min-height:0}.categories{border:1px solid var(--line);border-radius:20px;background:#fff;padding:4px;display:flex;flex-direction:column;overflow:hidden}.categories>button{height:83px;border:0;border-bottom:1px solid #eee;background:#fff;display:grid;grid-template-columns:44px 1fr 20px;align-items:center;text-align:left;padding:0 24px;font-size:20px}.categories>button span{font-size:26px}.categories>button i{font-size:26px;color:#aaa}.categories>button.active{color:var(--orange);background:linear-gradient(90deg,#fff2e8,#fff);border-left:7px solid var(--orange)}.member-card{margin:auto 16px 16px;padding:20px;border-radius:20px;background:linear-gradient(135deg,#fff2dc,#ffe7c4);display:flex;align-items:center;gap:14px;color:#9e4b16}.member-card>span{font-size:36px}.member-card div{display:grid;gap:5px}.member-card i{margin-left:auto}.catalog{overflow:auto;padding-right:3px}.hero-banner{height:220px;border-radius:22px;background:linear-gradient(110deg,#fff0d9,#ffd8aa);overflow:hidden;display:flex;align-items:center;padding:30px 42px;position:relative}.hero-banner div{z-index:2}.hero-banner em{display:inline-block;background:#ff5d14;color:#fff;font-size:30px;font-weight:900;padding:7px 22px;transform:skew(-8deg)}.hero-banner h2{font-size:38px;margin:15px 0 4px}.hero-banner h2 strong{color:#f65000}.hero-banner p{color:#8d735f;font-size:19px}.hero-banner img{position:absolute;right:0;width:48%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent,#000 32%);mask-image:linear-gradient(90deg,transparent,#000 32%)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.product-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;cursor:pointer;min-width:0}.photo{height:168px;position:relative;background:#eee}.photo img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;left:12px;top:12px;background:#ff4f20;color:#fff;border-radius:14px;padding:6px 10px;font-size:13px}.product-body{padding:12px 14px;display:flex;align-items:end;justify-content:space-between;gap:8px}.product-body h3{margin:0;font-size:19px}.product-body p{margin:4px 0;color:#888;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.product-body strong{font-size:21px;color:#f05b13}.add-button{border:1.5px solid var(--orange);background:#fff;color:var(--orange);border-radius:18px;padding:8px 14px;white-space:nowrap}.cart-panel{border:1px solid var(--line);background:#fff;border-radius:20px;display:grid;grid-template-rows:78px 1fr auto;overflow:hidden}.cart-panel header{display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #eee}.cart-panel header h2{font-size:20px}.cart-panel header button{border:0;background:transparent;color:#999}.cart-lines{overflow:auto}.empty{height:100%;display:grid;place-content:center;text-align:center;color:#aaa;gap:8px}.empty:first-letter{font-size:42px}.cart-line{padding:16px 18px;border-bottom:1px solid #eee;display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center}.cart-line img{width:72px;height:72px;border-radius:12px;object-fit:cover}.cart-info{display:grid;gap:4px}.cart-info small{color:#888;font-size:11px}.cart-info strong{color:var(--orange)}.stepper{display:flex;align-items:center;gap:8px}.stepper button{width:29px;height:29px;border:1px solid #ddd;border-radius:50%;background:#fff}.cart-panel footer{border-top:1px dashed #ddd;padding:20px}.cart-panel footer>div{display:flex;justify-content:space-between;font-size:19px}.cart-panel footer>div strong{color:var(--orange);font-size:23px}.cart-panel footer small{color:#888}.checkout{width:100%;padding:20px;border-radius:18px;font-size:22px;margin-top:18px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0007;z-index:80;display:grid;place-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.product-modal{width:min(980px,86vw);height:min(720px,88vh);background:#fff;border-radius:30px;display:grid;grid-template-columns:40% 1fr;grid-template-rows:1fr 100px;overflow:hidden;position:relative}.close{position:absolute;right:20px;top:16px;width:42px;height:42px;border:0;border-radius:50%;font-size:28px;z-index:2}.modal-media{background:#fff4e9;padding:28px}.modal-media img{width:100%;height:310px;object-fit:cover;border-radius:22px}.modal-media h2{font-size:30px;margin:20px 0 6px}.modal-media p{color:#777}.modal-options{padding:54px 34px 20px;overflow:auto}.option-group{margin-bottom:24px}.option-group h3{display:flex;gap:10px;align-items:center}.option-group h3 em{font-style:normal;background:#fff0e8;color:var(--orange);font-size:12px;border-radius:8px;padding:4px 7px}.option-group h3 small{margin-left:auto;color:#999;font-weight:400}.option-group button{width:100%;border:1px solid #e4e4e4;background:#fff;border-radius:13px;margin:6px 0;padding:14px 16px;display:flex;justify-content:space-between}.option-group button.selected{border-color:var(--orange);background:#fff6ee;color:#e85900}.note{display:grid;gap:8px}.note input{border:1px solid #ddd;border-radius:14px;padding:15px}.product-modal footer{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:28px;padding:18px 32px;border-top:1px solid #eee}.large button{width:42px;height:42px}.modal-add{border-radius:15px;padding:18px 40px;font-size:20px}.flow-screen{height:100%;display:grid;grid-template-rows:100px 1fr}.flow-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 42px;background:#fff;border-bottom:1px solid #eee}.flow-header button{justify-self:start;border:0;background:#fff;font-size:18px}.flow-header span{justify-self:end;color:#999}.checkout-layout,.payment-layout{display:grid;grid-template-columns:minmax(600px,1fr) 430px;gap:24px;padding:30px 5vw;overflow:auto}.review-card,.summary-card,.pay-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}.review-line{display:grid;grid-template-columns:110px 1fr auto;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid #eee}.review-line img{width:110px;height:90px;border-radius:16px;object-fit:cover}.review-line h3{margin:0}.review-line p{color:#888}.review-line strong{color:var(--orange)}.summary-card{height:max-content}.summary-card>div{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #eee}.summary-card .grand{font-size:23px}.summary-card .grand strong{color:var(--orange);font-size:31px}.pay-card>button{width:100%;display:grid;grid-template-columns:60px 1fr 40px;align-items:center;text-align:left;border:1px solid #ddd;background:#fff;border-radius:18px;padding:22px;margin:14px 0}.pay-card>button.selected{border:2px solid var(--orange);background:#fff7f0}.pay-card button>span{font-size:34px}.pay-card button div{display:grid;gap:5px}.pay-card button small{color:#888}.pay-card button i{opacity:0}.pay-card button.selected i{opacity:1;color:var(--orange);font-size:24px}.pay-total{justify-content:center!important;color:var(--orange);font-size:48px;font-weight:900}.summary-card>p{text-align:center;color:#999}.success-screen{height:100%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#fff7ed,#fff 60%)}.success-check{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#ff9100,#ff5900);color:#fff;display:grid;place-items:center;margin:auto;font-size:58px;box-shadow:0 20px 50px #ff730044}.success-screen h1{font-size:44px;margin:24px 0 5px}.success-screen>p{color:#888;font-size:20px}.token-number{font-size:110px;line-height:1;color:var(--orange);font-weight:1000;letter-spacing:8px}.order-meta{display:grid;grid-template-columns:auto auto;gap:10px 50px;text-align:left;background:#fff;border:1px solid #eee;border-radius:18px;padding:20px 34px;margin:24px auto;width:420px}.order-meta span{color:#888}.progress{display:flex;gap:7px;justify-content:center}.progress i{width:70px;height:8px;border-radius:9px;background:#e7e7e7}.progress i.done{background:var(--orange)}@media(max-width:1350px){.menu-layout{grid-template-columns:220px minmax(530px,1fr) 320px}.categories>button{padding:0 16px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:12px 20px}.order-tabs button{padding:18px 38px}.icon-button{padding:12px}.hero-banner{height:190px}.photo{height:150px}}.categories{overflow-y:auto;display:block;padding:6px;scrollbar-width:thin;scrollbar-color:#ffc39d transparent}.categories>button{width:100%;height:64px;grid-template-columns:24px minmax(0,1fr) auto 14px;padding:0 14px;font-size:15px;gap:8px}.categories>button span{font-size:13px;color:#ff6a00}.categories>button b{line-height:1.15;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.categories>button small{font-size:12px;color:#aaa}.categories>button.active small{color:#ff7b2c}.catalog{display:flex;flex-direction:column}.catalog-heading{height:86px;flex:0 0 auto;border-radius:20px;background:linear-gradient(120deg,#fff6ec,#fff);border:1px solid #f2e5da;padding:15px 22px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.catalog-heading span{font-size:12px;color:#ff6a00;font-weight:800}.catalog-heading h2{margin:4px 0 0;font-size:25px}.catalog-heading>b{background:#fff0e4;color:#ff6500;border-radius:20px;padding:8px 14px}.catalog-empty{height:100%;display:grid;place-content:center;text-align:center;color:#999}.catalog-empty span{font-size:50px}.catalog-empty h3{color:#555;margin-bottom:3px}.product-grid{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start}.product-card{height:276px;display:grid;grid-template-rows:170px 1fr;transition:transform .16s ease,box-shadow .16s ease}.product-card:active{transform:scale(.985)}.photo{height:170px}.photo img{background:#f3f0ec}.product-body{min-height:0;align-items:center;padding:12px 13px}.product-copy{min-width:0;align-self:stretch;display:flex;flex-direction:column}.product-body h3{font-size:17px;line-height:1.25;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:42px}.product-body p{display:none}.product-body strong{margin-top:auto}.add-button{width:44px;height:44px;min-width:44px;max-width:44px;min-height:44px;max-height:44px;flex:0 0 44px;flex-shrink:0;padding:0;margin:0;border:1.5px solid var(--orange);border-radius:50%;background:#fff;color:var(--orange);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;overflow:hidden}.add-button span{display:block;width:22px;height:22px;flex:0 0 22px;font-size:27px;font-weight:400;line-height:20px;text-align:center;transform:translateY(-1px)}.add-button:hover,.add-button:active{background:var(--orange);color:#fff}.add-button:focus-visible{outline:3px solid #ff650033;outline-offset:3px}.modal-validation{color:#d9480f;background:#fff1e8;padding:12px;border-radius:12px;font-weight:700}.option-group button b{white-space:nowrap;color:#ff6500}.cart-panel footer>div strong{white-space:nowrap}@media(min-width:1650px){.menu-layout{grid-template-columns:250px minmax(760px,1fr) 370px}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.product-card{height:266px}.photo{height:160px}}@media(max-width:1350px){.categories>button{height:58px;font-size:13px}.catalog-heading{height:72px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-card{height:238px;grid-template-rows:138px 1fr}.photo{height:138px}.product-body h3{font-size:15px;min-height:37px}}.language-control{position:relative}.language-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:60;width:230px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 55px #4a2a152b}.language-menu button{width:100%;display:grid;grid-template-columns:42px 1fr 22px;align-items:center;gap:8px;padding:13px 14px;border:0;border-radius:12px;background:#fff;text-align:left;cursor:pointer}.language-menu button:hover,.language-menu button.active{background:#fff2e8;color:var(--orange)}.language-menu button span{font-size:27px;line-height:1}.language-menu button b{font-size:16px}.language-menu button i{font-style:normal;font-weight:900}.welcome-language{position:absolute;right:42px;top:36px;display:flex;gap:8px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px #8d5b2a1a}.welcome-language button{display:flex;align-items:center;gap:7px;border:0;background:transparent;border-radius:12px;padding:10px 13px;cursor:pointer}.welcome-language button.active{background:#fff0e3;color:var(--orange)}.welcome-language span{font-size:24px;line-height:1}.add-button svg{display:block;width:22px;height:22px;flex:0 0 22px;overflow:visible}.add-button svg path{vector-effect:non-scaling-stroke}.note-section{margin-top:8px;padding-top:20px;border-top:1px solid #eee}.note-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.note-heading h3{margin:0;font-size:18px}.note-heading small{color:#999;font-size:12px}.note-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.note-presets button{min-height:48px;border:1px solid #e4e4e4;border-radius:13px;background:#fff;color:#333;padding:10px 13px;display:flex;align-items:center;gap:9px;text-align:left;font-weight:700;cursor:pointer}.note-presets button.selected{border-color:var(--orange);background:#fff6ee;color:#e85900;box-shadow:inset 0 0 0 1px #ff65001f}.note-check{width:22px;height:22px;flex:0 0 22px;border:1.5px solid #d8d8d8;border-radius:7px;display:grid;place-items:center;color:transparent;font-size:14px;line-height:1}.note-presets button.selected .note-check{border-color:var(--orange);background:var(--orange);color:#fff}.note input{width:100%;height:48px}.cart-note{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#d85a12!important;line-height:1.3}.review-line .line-note{color:#d85a12;font-size:13px}@media(max-width:1100px){.note-presets{grid-template-columns:1fr}}.brand-logo-mark{background:#fff;border:1px solid #f0dfd1;overflow:hidden;padding:5px;box-shadow:0 8px 20px #b24d1422}.brand-logo-mark img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}.welcome-brand h1,.brand h1{max-width:470px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand{min-width:0}.brand h1{font-size:24px;line-height:1.1;max-width:330px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand p{font-size:14px;line-height:1.2;margin-top:5px}.brand .brand-mark{width:54px;height:54px;flex:0 0 54px}.topbar{grid-template-columns:minmax(300px,.9fr) auto minmax(300px,1fr);column-gap:20px}.order-tabs button{min-width:150px;padding:16px 30px;font-size:20px;line-height:1.2}.topbar nav{min-width:0}.icon-button{padding:12px 15px;font-size:16px}@media(max-width:1450px){.topbar{grid-template-columns:minmax(260px,.85fr) auto minmax(280px,1fr);padding:12px 20px;column-gap:14px}.brand h1{font-size:22px;max-width:285px}.brand p{font-size:13px}.brand .brand-mark{width:50px;height:50px;flex-basis:50px}.order-tabs button{min-width:132px;padding:15px 22px;font-size:18px}.topbar nav{gap:8px}.icon-button{padding:11px 12px;font-size:15px;gap:7px}}@media(max-width:1180px){.brand h1{font-size:20px;max-width:230px}.brand p{font-size:12px}.order-tabs button{min-width:116px;padding:14px 16px;font-size:17px}.icon-button{padding:10px}}.brand{min-width:0;gap:10px}.brand>div:last-child{min-width:0}.brand h1{margin:0;font-size:18px;line-height:1.15;font-weight:800;letter-spacing:-.01em;max-width:none;white-space:nowrap;overflow:visible;text-overflow:clip}.brand p{margin:4px 0 0;font-size:12px;line-height:1.2}.brand .brand-mark{width:48px;height:48px;flex:0 0 48px}.topbar{grid-template-columns:minmax(410px,1fr) auto minmax(330px,1fr);column-gap:16px;padding:12px 20px}.order-tabs button{min-width:130px;padding:14px 20px;font-size:18px;line-height:1.2}.topbar nav{min-width:0;gap:8px}.icon-button{padding:10px 12px;font-size:15px;gap:7px}.icon-button span{font-size:20px}@media(max-width:1450px){.topbar{grid-template-columns:minmax(390px,1fr) auto minmax(300px,1fr);column-gap:12px;padding:10px 16px}.brand{gap:9px}.brand h1{font-size:17px;max-width:none;overflow:visible;text-overflow:clip}.brand p{font-size:11px}.brand .brand-mark{width:46px;height:46px;flex-basis:46px}.order-tabs button{min-width:118px;padding:13px 16px;font-size:17px}.topbar nav{gap:6px}.icon-button{padding:9px 10px;font-size:14px;gap:6px}.icon-button span{font-size:18px}}@media(max-width:1180px){.topbar{grid-template-columns:minmax(350px,1fr) auto minmax(270px,1fr);column-gap:8px;padding:9px 12px}.brand h1{font-size:15px;max-width:none;overflow:visible;text-overflow:clip}.brand p{font-size:10px}.brand .brand-mark{width:42px;height:42px;flex-basis:42px}.order-tabs button{min-width:104px;padding:12px;font-size:15px}.icon-button{padding:8px;font-size:13px}}.language-button img,.language-menu img{width:28px;height:20px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px #0002;flex:0 0 auto}.language-menu button{align-items:center}html,body,#app{width:100%;min-height:100%}body{min-width:0;overscroll-behavior:none}.app-shell{min-height:100dvh;height:auto}.kiosk-screen{min-height:100dvh;display:flex;flex-direction:column}.cart-desktop{min-width:0;min-height:0}.cart-desktop>.cart-panel{height:100%}.mobile-cart-button,.mobile-cart-backdrop{display:none}@media(hover:none)and (pointer:coarse){html,body,#app{width:100%;max-width:100%;overflow-x:hidden}body{min-width:0}.app-shell{padding-bottom:82px;max-width:100%;overflow-x:hidden}.topbar{position:sticky;top:0;z-index:35;display:grid;grid-template-columns:minmax(0,1fr) auto;padding:9px 12px;background:#fff;border-bottom:1px solid var(--line)}.brand{grid-column:1;grid-row:1;min-width:0}.brand h1{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100vw - 110px)}.brand .brand-mark{width:38px;height:38px;flex-basis:38px}.topbar nav{grid-column:2;grid-row:1}.topbar nav>.icon-button{display:none}.language-button{display:flex!important;min-width:48px;justify-content:center;padding:8px}.language-button b{display:none}.language-menu{position:fixed;right:12px;top:62px;width:min(230px,calc(100vw - 24px))}.order-tabs{grid-column:1/-1;grid-row:2;width:100%;display:grid;grid-template-columns:1fr 1fr;margin-top:8px}.order-tabs button{width:100%;min-width:0;padding:11px 8px;font-size:15px}.menu-layout{display:flex;flex-direction:column;gap:10px;padding:10px;overflow:visible;min-width:0;width:100%}.categories{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:2px 0 7px;gap:8px;scroll-snap-type:x proximity;position:sticky;top:105px;z-index:25;background:#fafaf8;border:0;border-radius:0;max-width:100%}.categories>button{flex:0 0 auto;width:auto;min-width:132px;height:48px;display:flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid var(--line);border-radius:14px;scroll-snap-align:start;line-height:1.2}.categories>button small,.categories>button i{display:none}.categories>button b{-webkit-line-clamp:1;white-space:nowrap}.catalog{overflow:visible;min-width:0;width:100%}.catalog-heading{height:auto;min-height:62px;border-radius:16px;padding:10px 14px}.catalog-heading h2{font-size:20px}.catalog-heading>b{padding:6px 10px;font-size:13px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow:visible;padding-bottom:12px;width:100%}.product-card{height:238px;grid-template-rows:142px 1fr;border-radius:16px;min-width:0}.photo{height:142px}.cart-desktop{display:none}.mobile-cart-button{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:45;display:grid;grid-template-columns:auto auto auto 1fr;align-items:center;gap:8px;min-height:58px;padding:10px 14px;border:0;border-radius:18px;background:#25211f;color:#fff;box-shadow:0 12px 35px #0004}.mobile-cart-button.filled{background:linear-gradient(135deg,var(--orange2),var(--orange))}.mobile-cart-button span{font-size:22px}.mobile-cart-button b{font-size:15px}.mobile-cart-button i{font-style:normal;display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#fff;color:#222;font-weight:900}.mobile-cart-button strong{text-align:right;font-size:18px}.mobile-cart-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:flex-end;background:#0008;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-cart-sheet{position:relative;width:100%;max-height:88dvh;background:#fff;border-radius:24px 24px 0 0;padding-top:44px;overflow:hidden;box-shadow:0 -18px 60px #0004}.mobile-cart-sheet .cart-panel{height:min(78dvh,760px);border:0;border-radius:0;box-shadow:none}.mobile-cart-close{position:absolute;right:14px;top:8px;z-index:3;width:36px;height:36px;border:0;border-radius:50%;background:#f2f2f2;font-size:26px;line-height:1}.flow-screen{min-height:100dvh;height:auto;overflow:auto}.checkout-layout,.payment-layout{grid-template-columns:1fr;gap:16px;padding:18px}.summary-card{position:static}.product-modal{width:min(94vw,820px);max-height:92dvh;grid-template-columns:42% 58%}}@media(hover:none)and (pointer:coarse)and (orientation:portrait){.app-shell{padding-bottom:76px}.topbar{padding:8px}.brand{gap:7px}.brand h1{font-size:13px;max-width:calc(100vw - 102px)}.brand .brand-mark{width:34px;height:34px;flex-basis:34px;padding:3px}.order-tabs{margin-top:7px}.order-tabs button{padding:10px 5px;font-size:14px}.categories{top:93px;margin-inline:-2px}.categories>button{min-width:116px;height:44px;padding:0 11px;font-size:12px}.catalog-heading{min-height:58px;padding:9px 11px}.catalog-heading span{font-size:10px}.catalog-heading h2{font-size:17px}.catalog-heading>b{font-size:11px;padding:5px 8px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-card{height:220px;grid-template-rows:128px 1fr}.photo{height:128px}.product-body{padding:9px 8px;gap:5px}.product-body h3{font-size:13px;min-height:33px}.product-body strong{font-size:14px}.add-button{width:40px;height:40px;min-width:40px;min-height:40px;flex-basis:40px}.mobile-cart-button{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));min-height:54px;border-radius:16px;padding:9px 12px}.mobile-cart-button strong{font-size:16px}.modal-backdrop{align-items:flex-end;padding:0}.product-modal{width:100%;height:min(94dvh,900px);max-height:94dvh;border-radius:24px 24px 0 0;display:flex;flex-direction:column;overflow:hidden}.modal-media{min-height:0;padding:12px 16px;display:grid;grid-template-columns:92px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center}.modal-media img{grid-row:1/3;width:92px;height:92px;border-radius:14px}.modal-media h2{font-size:19px;margin:0}.modal-media p{font-size:12px;margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.modal-options{padding:12px 14px;overflow-y:auto;flex:1}.product-modal footer{padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px}}@media(hover:none)and (pointer:coarse)and (orientation:landscape)and (min-width:900px){html,body,#app{width:100%;height:100%;max-width:none;overflow:hidden}.app-shell{height:100dvh;padding-bottom:0;overflow:hidden}.kiosk-screen{height:100dvh;display:grid;grid-template-rows:82px minmax(0,1fr);overflow:hidden}.topbar{position:relative;top:auto;display:grid;grid-template-columns:minmax(220px,1fr) auto auto;grid-template-rows:1fr;gap:10px;padding:10px 14px}.brand{grid-column:1;grid-row:1;gap:9px;min-width:0}.brand .brand-mark{width:46px;height:46px;flex-basis:46px}.brand h1{font-size:17px;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-tabs{grid-column:2;grid-row:1;width:auto;margin:0;display:flex;align-self:center}.order-tabs button{width:auto;min-width:116px;padding:13px 18px;font-size:15px}.topbar nav{grid-column:3;grid-row:1;display:flex;gap:7px;align-items:center}.topbar nav>.icon-button{display:flex;padding:10px 11px;font-size:13px}.language-button{display:flex!important;min-width:auto;padding:9px 11px}.language-button b{display:inline}.language-menu{position:absolute;right:14px;top:68px;width:220px}.menu-layout{height:auto;min-height:0;width:100%;display:grid;grid-template-columns:200px minmax(0,1fr) 280px;gap:10px;padding:10px;overflow:hidden}.categories{position:static;display:block;overflow-y:auto;overflow-x:hidden;padding:5px;border:1px solid var(--line);border-radius:17px;background:#fff}.categories>button{width:100%;min-width:0;min-height:58px;height:auto;display:grid;grid-template-columns:20px minmax(0,1fr) auto 10px;align-items:center;padding:8px 10px;border:0;border-bottom:1px solid #eee;border-radius:0;font-size:13px;text-align:left;line-height:1.25}.categories>button span{display:block;font-size:12px;align-self:center}.categories>button b{white-space:normal;-webkit-line-clamp:2;align-self:center;padding-block:2px}.categories>button small,.categories>button i{display:block;font-size:10px;align-self:center}.categories>button.active{border-left:5px solid var(--orange);background:linear-gradient(90deg,#fff2e8,#fff)}.catalog{width:auto;min-width:0;overflow-y:auto;overflow-x:hidden;padding-right:2px}.catalog-heading{height:68px;min-height:68px;padding:11px 15px;border-radius:16px;margin-bottom:10px}.catalog-heading h2{font-size:20px}.product-grid{width:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding-bottom:10px;overflow:visible}.product-card{height:220px;grid-template-rows:128px 1fr;border-radius:14px}.photo{height:128px}.product-body{padding:9px;gap:5px}.product-body h3{font-size:13px;min-height:32px}.product-body strong{font-size:15px}.add-button{width:38px;height:38px;min-width:38px;min-height:38px;flex-basis:38px}.cart-desktop{display:grid;min-width:0}.cart-panel{grid-template-rows:58px minmax(0,1fr) auto;border-radius:17px}.cart-panel header{padding:0 13px}.cart-panel header h2{font-size:16px}.cart-line{grid-template-columns:52px minmax(0,1fr) auto;gap:7px;padding:10px 9px}.cart-line img{width:52px;height:52px}.cart-info b{font-size:12px}.stepper{gap:4px}.stepper button{width:25px;height:25px}.cart-panel footer{padding:13px}.cart-panel footer>div{font-size:15px}.cart-panel footer>div strong{font-size:18px}.checkout{padding:14px;margin-top:11px;font-size:16px}.mobile-cart-button,.mobile-cart-backdrop{display:none!important}.product-modal{width:min(900px,92vw);height:min(650px,88dvh);max-height:88dvh;display:grid;grid-template-columns:39% 61%;grid-template-rows:minmax(0,1fr) 82px;border-radius:24px}.modal-media{display:block;padding:20px}.modal-media img{width:100%;height:250px;border-radius:18px}.modal-media h2{font-size:24px;margin:15px 0 5px}.modal-media p{font-size:13px;display:block}.modal-options{padding:38px 24px 14px}.product-modal footer{grid-column:1/-1;padding:12px 22px;display:flex}}@media(hover:none)and (pointer:coarse){.flow-header{position:sticky;top:0;z-index:40;min-height:72px;height:auto;grid-template-columns:minmax(92px,1fr) auto minmax(72px,1fr);gap:8px;padding:10px 14px}.flow-header h1{margin:0;font-size:22px;text-align:center;white-space:nowrap}.flow-header button{min-height:44px;padding:8px 6px;font-size:15px;text-align:left}.flow-header span{font-size:13px;white-space:nowrap}.review-card,.summary-card,.pay-card{min-width:0}.review-line>div:nth-child(2){min-width:0}.review-line h3,.review-line p{overflow-wrap:anywhere}.summary-card .checkout{min-height:54px}.success-screen{width:100%;min-height:100dvh;height:auto;overflow:auto;padding:28px 18px calc(28px + env(safe-area-inset-bottom));align-content:center}.success-screen .start{min-height:54px;margin:20px auto 0}}@media(hover:none)and (pointer:coarse)and (orientation:portrait){.flow-header{grid-template-columns:80px minmax(0,1fr) 62px;padding:8px 10px;min-height:62px}.flow-header h1{font-size:17px;white-space:normal;line-height:1.15}.flow-header button{font-size:13px;padding:6px 0}.flow-header span{font-size:11px;text-align:right}.checkout-layout,.payment-layout{padding:10px 10px calc(18px + env(safe-area-inset-bottom));gap:10px}.review-card,.summary-card,.pay-card{padding:14px;border-radius:16px}.review-line{grid-template-columns:62px minmax(0,1fr);gap:10px;padding:12px 0}.review-line img{width:62px;height:62px;border-radius:12px}.review-line>.stepper{grid-column:2;justify-self:end;margin-top:5px}.summary-card{position:sticky;bottom:0;z-index:20;box-shadow:0 -8px 24px #0000000d}.pay-card>button{grid-template-columns:46px minmax(0,1fr) 28px;padding:14px 12px;margin:9px 0;border-radius:15px}.pay-total{font-size:38px!important;padding:18px 0!important}.success-check{width:76px;height:76px;font-size:44px}.success-screen h1{font-size:27px;margin:18px 0 4px}.token-number{font-size:76px;letter-spacing:4px}.order-meta{width:min(100%,360px);grid-template-columns:1fr auto;gap:8px 20px;padding:16px 18px;margin:18px auto;font-size:14px}.success-screen .start{width:min(100%,360px);padding:16px 24px;font-size:18px;border-radius:16px}}@media(hover:none)and (pointer:coarse)and (orientation:landscape)and (min-width:900px){.flow-screen{height:100dvh;min-height:0;display:grid;grid-template-rows:72px minmax(0,1fr);overflow:hidden}.flow-header{position:relative;top:auto;height:72px;min-height:72px;padding:0 22px;grid-template-columns:1fr auto 1fr}.checkout-layout,.payment-layout{height:100%;min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:14px}.review-card,.pay-card{height:100%;min-height:0;overflow-y:auto;padding:18px;border-radius:18px}.summary-card{height:max-content;max-height:100%;overflow-y:auto;padding:18px;border-radius:18px}.review-line{grid-template-columns:78px minmax(0,1fr) auto;gap:12px;padding:12px 0}.review-line img{width:78px;height:68px;border-radius:12px}.success-screen{height:100dvh;min-height:0;overflow:hidden;padding:20px;align-content:center}.token-number{font-size:78px;letter-spacing:5px}.order-meta{width:390px;padding:14px 22px;margin:14px auto;gap:7px 36px;font-size:14px}}.device-blocked{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f3f5f7;font-family:Inter,system-ui,sans-serif}.device-blocked-card{width:min(560px,100%);background:#fff;border:1px solid #e7eaee;border-radius:24px;padding:42px;text-align:center;box-shadow:0 20px 60px #1018281f}.device-blocked-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#fef3f2;color:#b42318;font-size:42px;font-weight:900}.device-blocked-card h1{margin:0 0 12px;font-size:30px}.device-blocked-card p{color:#667085;font-size:17px;line-height:1.55}.device-blocked-card button{margin-top:12px;border:0;border-radius:12px;padding:13px 22px;background:#c84f18;color:#fff;font-weight:800;font-size:16px;cursor:pointer}.privacy-hint{display:block;color:#667085;font-size:11px;line-height:1.45;margin-top:2px}.option-group h3 .multiple-badge{background:#eaf8ef;color:#177a3f}.modifier-option-label{display:flex;align-items:center;gap:10px;min-width:0}.modifier-check{width:22px;height:22px;flex:0 0 22px;border:2px solid #d8d8d8;border-radius:6px;display:grid;place-items:center;color:transparent;font-style:normal;font-weight:900;background:#fff}.option-group button.selected .modifier-check{border-color:var(--orange);background:var(--orange);color:#fff}.modifier-option-label>span{min-width:0;text-align:left}
