:root{--brand:#0f766e;--brand-deep:#0b5550;--pop:#f59e0b;--pop2:#ec4899;--on-brand:#fff;--bg:color-mix(in srgb, var(--brand) 5%, #fffaf3);--card:#fff;--ink:#1f1a17;--muted:#6b625b;--line:color-mix(in srgb, var(--brand) 12%, #ebe5de);--soft:color-mix(in srgb, var(--brand) 10%, #fff);--shadow:0 10px 30px color-mix(in srgb, var(--brand-deep) 16%, transparent);--radius:22px;--top:60px;color:var(--ink);background:var(--bg);font-family:"Baloo Bhaijaan 2",Segoe UI,Tahoma,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:color-mix(in srgb, var(--brand) 8%, #12100e);--card:color-mix(in srgb, var(--brand) 6%, #1d1916);--ink:#f6f1ea;--muted:#b8aea4;--line:color-mix(in srgb, var(--brand) 18%, #2f2925);--soft:color-mix(in srgb, var(--brand) 20%, #1d1916);--shadow:0 10px 30px #0008}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0;overflow-x:hidden}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}button:disabled{opacity:.55;cursor:default}input,textarea{border:2px solid var(--line);background:var(--card);border-radius:14px;outline:none;width:100%;padding:11px 13px;font-size:16px;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb, var(--brand) 18%, transparent)}img{display:block}.btn-main{background:linear-gradient(135deg, var(--brand), var(--brand-deep));width:100%;min-height:54px;color:var(--on-brand);box-shadow:0 8px 20px color-mix(in srgb, var(--brand) 35%, transparent);border-radius:18px;font-size:18px;font-weight:800;transition:transform .15s;display:block}.btn-main:active:not(:disabled){transform:scale(.97)}.btn-soft{border:2px solid var(--brand);min-height:40px;color:var(--brand);background:var(--card);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:800;text-decoration:none;display:inline-flex}.icon-btn{background:var(--soft);border-radius:14px;place-items:center;width:42px;height:42px;font-size:19px;transition:transform .2s,background .2s;display:inline-grid;position:relative}.icon-btn:hover{transform:translateY(-2px)rotate(-6deg)}.icon-btn.is-on{background:var(--brand);color:var(--on-brand)}.dot-count{top:-4px;background:var(--pop2);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;font-size:11px;font-style:normal;display:grid;position:absolute;inset-inline-end:-4px}.dot-live{top:6px;background:#22c55e;border-radius:50%;width:10px;height:10px;animation:1.6s infinite ping;position:absolute;inset-inline-end:6px;box-shadow:0 0 #22c55e}@keyframes ping{0%{box-shadow:0 0 #22c55e99}to{box-shadow:0 0 0 10px #22c55e00}}.splash{z-index:200;background:radial-gradient(circle at 50% 42%, var(--brand) 0%, var(--brand-deep) 75%);color:var(--on-brand);clip-path:circle(150% at 50% 42%);place-items:center;transition:clip-path .72s cubic-bezier(.7,0,.3,1);display:grid;position:fixed;inset:0;overflow:hidden}.splash.is-waiting{background:var(--bg);color:var(--ink)}.splash.is-leaving{clip-path:circle(0% at 50% 42%)}.splash-center{text-align:center;justify-items:center;gap:12px;padding:16px;display:grid;position:relative}.splash-logo{z-index:2;background:#fff;border-radius:36px;place-items:center;width:132px;height:132px;animation:1.1s cubic-bezier(.3,1.4,.5,1) both drop;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 50px #0005}.splash-logo img{object-fit:contain;width:100%;height:100%}.splash-logo span{color:var(--brand);font-size:64px;font-weight:800}@keyframes drop{0%{transform:translateY(-70vh)scale(.6)rotate(-25deg)}55%{transform:translateY(0)scale(1.12)rotate(8deg)}70%{transform:scale(.92,1.08)rotate(-3deg)}85%{transform:scale(1.04,.96)}to{transform:none}}.splash-rings{width:132px;height:132px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.splash-rings i{border:3px solid var(--on-brand);opacity:0;border-radius:40px;animation:2.2s ease-out .7s infinite ring;position:absolute;inset:0}.splash-rings i:nth-child(2){border-color:var(--pop);animation-delay:1.1s}.splash-rings i:nth-child(3){border-color:var(--pop2);animation-delay:1.5s}@keyframes ring{0%{opacity:.8;transform:scale(.8)}to{opacity:0;transform:scale(2.6)}}.splash-name{flex-wrap:wrap;justify-content:center;gap:0 .3em;margin:8px 0 0;font-size:clamp(26px,7vw,42px);display:flex}.splash-name span{animation:.6s cubic-bezier(.2,1.4,.4,1) both word-up;display:inline-block}@keyframes word-up{0%{opacity:0;transform:translateY(24px)scale(.8)}to{opacity:1;transform:none}}.splash-hi{opacity:0;margin:0;font-size:18px;animation:.6s 1.2s both word-up}.splash-blob{filter:blur(60px);opacity:.45;border-radius:50%;width:60vmax;height:60vmax;position:absolute}.splash-blob-a{background:var(--pop);animation:7s ease-in-out infinite alternate float;top:-25vmax;right:-20vmax}.splash-blob-b{background:var(--pop2);animation:8s ease-in-out infinite alternate-reverse float;bottom:-30vmax;left:-20vmax}.splash-dots{gap:8px;display:flex}.splash-dots i{background:var(--brand);border-radius:50%;width:12px;height:12px;animation:1s ease-in-out infinite dots}.splash-dots i:nth-child(2){animation-delay:.15s}.splash-dots i:nth-child(3){animation-delay:.3s}@keyframes dots{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-10px)}}.splash-error{text-align:center;justify-items:center;gap:10px;padding:16px;display:grid}.splash-error button{background:var(--brand);color:var(--on-brand);border-radius:999px;padding:10px 18px;font-weight:800}@keyframes float{0%{transform:translate(0)scale(1)}to{transform:translate(4vmax,3vmax)scale(1.12)}}.app{min-height:100vh;padding-bottom:120px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.topbar{z-index:30;height:var(--top);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:0 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand img,.brand-letter{object-fit:contain;background:#fff;border-radius:12px;flex:none;width:40px;height:40px;box-shadow:0 3px 10px #0002}.brand-letter{color:var(--brand);place-items:center;font-weight:800;display:grid}.brand b{white-space:nowrap;text-overflow:ellipsis;font-size:18px;overflow:hidden}.status-pill{background:var(--soft);color:var(--ink);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:4px;padding:5px 11px;font-size:13px;font-weight:700;display:inline-flex}.status-pill.is-open{color:#14532d;background:#dcfce7}.app.is-ready .status-pill{animation:.5s cubic-bezier(.3,1.8,.5,1) both pop}.app:not(.is-ready) .mascot,.app:not(.is-ready) .cartbar{visibility:hidden}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}.page{gap:14px;max-width:1100px;margin:0 auto;padding:12px 12px 0;display:grid}.empty{text-align:center;color:var(--muted);padding:30px 0;font-size:18px}.hero{background:linear-gradient(135deg, var(--brand), var(--brand-deep));color:var(--on-brand);box-shadow:var(--shadow);border-radius:28px;padding:28px 20px 30px;position:relative;overflow:hidden}.hero-blob{filter:blur(34px);opacity:.55;border-radius:50%;position:absolute}.hero-blob-a{background:var(--pop);width:240px;height:240px;animation:6s ease-in-out infinite alternate float;top:-90px;left:-60px}.hero-blob-b{background:var(--pop2);width:200px;height:200px;animation:7s ease-in-out infinite alternate-reverse float;bottom:-110px;right:12%}.hero-content{gap:8px;display:grid;position:relative}.hero h1{margin:0;font-size:clamp(24px,5.4vw,40px);line-height:1.25}.app.is-ready .hero h1{animation:.7s .1s both word-up}.hero-sub{opacity:.92;margin:0;font-size:16px}.slider{box-shadow:var(--shadow);background:var(--card);touch-action:pan-y;border-radius:28px;position:relative;overflow:hidden}.slider-track{transition:transform .6s cubic-bezier(.6,0,.2,1);display:flex}.slide{flex:none;width:100%;height:clamp(190px,42vw,340px);position:relative;overflow:hidden}.slide img,.slide-art{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.slide-art{background:linear-gradient(135deg, var(--brand), var(--pop));place-items:center;font-size:70px;display:grid}.slide.is-on img{animation:6s ease-out both kenburns}@keyframes kenburns{0%{transform:scale(1.12)}to{transform:scale(1)}}.slide-text{inset-inline:0;color:#fff;background:linear-gradient(#0000,#000c);padding:40px 16px 30px;position:absolute;bottom:0}.slide-text h2{margin:0;font-size:20px}.slide-text p{opacity:.95;-webkit-line-clamp:2;white-space:pre-line;-webkit-box-orient:vertical;margin:4px 0 0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.slide.is-on .slide-text>*{animation:.6s .15s both word-up}.slider-dots{justify-content:center;gap:6px;display:flex;position:absolute;bottom:10px;left:0;right:0}.slider-dots button{background:#ffffff80;border-radius:999px;width:8px;height:8px;transition:width .3s,background .3s}.slider-dots button.is-on{background:#fff;width:22px}.browse-note{color:#78350f;background:#fef3c7;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.browse-note p{margin:0;font-weight:700}.strip{top:var(--top);z-index:20;padding:10px 4px 12px;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);scrollbar-width:none;scroll-snap-type:x proximity;gap:10px;margin:0 -12px;padding-inline:12px;display:flex;position:sticky;overflow-x:auto}.strip::-webkit-scrollbar{display:none}.strip-item{text-align:center;scroll-snap-align:center;flex:none;justify-items:center;gap:3px;width:92px;transition:transform .25s cubic-bezier(.3,1.6,.5,1);display:grid}.strip-item:active{transform:scale(.94)}.strip-photo{background:linear-gradient(135deg, var(--soft), color-mix(in srgb, var(--pop) 22%, var(--card)));border:3px solid #0000;border-radius:24px;place-items:center;width:78px;height:78px;transition:border-color .25s,transform .3s cubic-bezier(.3,1.6,.5,1);display:grid;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.strip-photo img{object-fit:cover;width:100%;height:100%}.strip-letter{color:var(--brand);font-size:32px;font-weight:800}.strip-item b{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:13px;line-height:1.25;display:-webkit-box;overflow:hidden}.strip-item small{color:var(--brand);white-space:nowrap;font-size:11px;font-weight:700}.strip-item.is-on .strip-photo{border-color:var(--brand);box-shadow:0 8px 18px color-mix(in srgb, var(--brand) 35%, transparent);transform:translateY(-3px)scale(1.06)}.strip-item.is-on b{color:var(--brand)}.strip-item.is-soon .strip-photo img{filter:grayscale(.7)}.strip-count{top:4px;background:var(--brand);min-width:22px;height:22px;color:var(--on-brand);border-radius:999px;place-items:center;padding:0 5px;font-size:12px;font-style:normal;font-weight:800;animation:.4s cubic-bezier(.3,1.8,.5,1) pop;display:grid;position:absolute;inset-inline-end:4px}.strip-soon{color:#fff;background:#1f1a17cc;border-radius:8px;padding:1px 0;font-size:10px;font-style:normal;font-weight:700;position:absolute;bottom:4px;left:4px;right:4px}.panel{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);scroll-margin-top:calc(var(--top) + 120px);border-radius:28px;gap:0;animation:.45s cubic-bezier(.2,1.2,.3,1) both panel-in;display:grid;overflow:hidden}@keyframes panel-in{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:none}}.panel-photo{background:linear-gradient(160deg, var(--soft), color-mix(in srgb, var(--pop) 25%, var(--card)));perspective:900px;cursor:zoom-in;place-items:center;height:clamp(200px,52vw,360px);display:grid;position:relative;overflow:hidden}.panel-glow{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--brand) 45%, transparent), transparent 70%);border-radius:50%;width:70%;animation:4s ease-in-out infinite alternate glow;position:absolute}@keyframes glow{0%{opacity:.6;transform:scale(.9)}to{opacity:1;transform:scale(1.15)}}.panel-photo img{object-fit:cover;width:100%;height:100%;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(1.02);transition:transform .2s ease-out;animation:.6s cubic-bezier(.2,1.3,.4,1) backwards hero-in;position:relative}@keyframes hero-in{0%{opacity:0;transform:scale(.75)rotate(-5deg)}to{opacity:1;transform:scale(1.02)}}.panel-letter{color:var(--brand);font-size:100px;font-weight:800;position:relative}.panel-zoom{bottom:12px;background:#fffd;border-radius:50%;place-items:center;width:38px;height:38px;font-size:17px;display:grid;position:absolute;inset-inline-start:12px;box-shadow:0 4px 10px #0003}.panel-body{gap:14px;padding:16px;display:grid}.carton-row.is-in{outline:2px solid color-mix(in srgb, var(--brand) 50%, transparent)}.btn-plus{background:linear-gradient(135deg, var(--brand), var(--brand-deep));width:50px;height:50px;color:var(--on-brand);box-shadow:0 6px 14px color-mix(in srgb, var(--brand) 35%, transparent);border-radius:16px;font-size:30px;font-weight:800;line-height:1;transition:transform .2s cubic-bezier(.3,1.8,.5,1)}.btn-plus:hover{transform:rotate(90deg)scale(1.06)}.btn-plus:active{transform:scale(.88)}.lightbox{z-index:90;background:#000e;place-items:center;animation:.25s both fade-in;display:grid;position:fixed;inset:0;overflow:auto}.lightbox img{object-fit:contain;touch-action:pinch-zoom;max-width:100vw;max-height:86vh;transition:transform .3s;animation:.4s cubic-bezier(.2,1.3,.4,1) both done-in}.lightbox img.is-zoomed{transform:scale(2)}.lightbox-name{bottom:max(18px, env(safe-area-inset-bottom));color:#fff;margin:0;font-size:18px;font-weight:800;position:absolute}.info-brand{align-items:center;gap:10px;min-width:0;display:flex}.info-brand img{object-fit:contain;background:#fff;border-radius:12px;width:44px;height:44px}.info-actions{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;display:grid}.info-actions button{background:var(--soft);border-radius:18px;justify-items:center;gap:2px;padding:12px 6px;font-weight:800;transition:transform .2s cubic-bezier(.3,1.6,.5,1);display:grid;position:relative}.info-actions button span{font-size:26px}.info-actions button:active:not(:disabled){transform:scale(.94)}.info-actions .dot-live{top:8px;inset-inline-end:12px}.open-state{color:#991b1b;background:#fee2e2;border-radius:14px;margin:0;padding:10px 12px;font-weight:800}.open-state.is-open{color:#14532d;background:#dcfce7}.info-about{color:var(--muted);white-space:pre-line;margin:0;line-height:1.6}.info-block{gap:8px;display:grid}.info-block h3{margin:0;font-size:16px}.info-block p{margin:0}.info-link{color:var(--brand);font-weight:700}.hours-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.hours-list li{border-radius:10px;justify-content:space-between;padding:6px 10px;display:flex}.hours-list li.is-today{background:var(--soft);font-weight:800}.contact-phones{flex-wrap:wrap;gap:6px;display:flex}.contact-phones a{background:var(--soft);color:var(--ink);border-radius:999px;padding:6px 12px;font-weight:700;text-decoration:none}.contact-socials{gap:8px;display:flex}.social{color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;transition:transform .25s cubic-bezier(.3,1.8,.5,1);display:grid}.social:hover{transform:translateY(-3px)rotate(-10deg)scale(1.08)}.social svg{fill:currentColor;width:21px;height:21px}.social.is-whatsapp{background:#25d366}.social.is-instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}.social.is-facebook{background:#1877f2}.social.is-tiktok{background:#111}.mascot-badge{top:-6px;z-index:2;background:var(--card);pointer-events:none;border-radius:50%;place-items:center;width:26px;height:26px;font-size:14px;animation:1.8s infinite badge;display:grid;position:absolute;inset-inline-start:-4px;box-shadow:0 3px 8px #0003}@keyframes badge{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.sheet-backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);background:#140c0673;justify-content:center;align-items:flex-end;animation:.25s both fade-in;display:flex;position:fixed;inset:0}.sheet-backdrop.is-top{z-index:60}.sheet-backdrop.is-center{align-items:center;padding:16px}.sheet-backdrop.is-side{justify-content:flex-end;align-items:stretch}.sheet,.map-sheet{background:var(--card);width:min(620px,100%);max-height:92vh;padding:16px 16px max(18px, env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:28px 28px 0 0;gap:12px;animation:.42s cubic-bezier(.2,1.15,.3,1) both sheet-up;display:grid;position:relative;overflow:auto}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.sheet-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sheet-head h2{margin:0;font-size:22px}.sheet-close{background:var(--soft);border-radius:50%;flex:none;width:40px;height:40px;font-size:24px;line-height:1;transition:transform .25s}.sheet-close:hover{transform:rotate(90deg)}.sheet-close.is-floating{top:14px;z-index:3;color:#111;background:#fffc;position:absolute;inset-inline-end:14px;box-shadow:0 4px 12px #0003}.sheet-note{color:var(--muted);text-align:center;margin:0;font-size:14px}.form-error{color:#dc2626;text-align:center;margin:0;font-weight:800;animation:.4s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.field{gap:5px;display:grid}.field>span,.field-label{font-weight:800}.product-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.product-title h2{margin:0;font-size:26px}.product-desc{color:var(--muted);margin:0;line-height:1.6}.size-chips{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.size-chip{border:2px solid var(--line);background:var(--card);border-radius:999px;flex:none;min-height:42px;padding:0 16px;font-weight:800;transition:all .25s cubic-bezier(.3,1.6,.5,1)}.size-chip.is-on{background:var(--brand);border-color:var(--brand);color:var(--on-brand);transform:scale(1.06)}.size-chip.is-soon{border-style:dashed}.carton-list{gap:10px;display:grid}.carton-row{background:var(--soft);border-radius:18px;justify-content:space-between;align-items:center;gap:10px;padding:12px;animation:.45s both word-up;display:flex}.carton-row:nth-child(2){animation-delay:60ms}.carton-row:nth-child(3){animation-delay:.12s}.carton-row.is-soon{background:repeating-linear-gradient(-45deg, var(--soft) 0 12px, color-mix(in srgb, var(--soft) 60%, var(--card)) 12px 24px)}.carton-info{gap:0;min-width:0;display:grid}.carton-info span{color:var(--muted);font-size:13px}.carton-info strong{color:var(--brand);font-size:18px}.carton-soon{justify-items:end;gap:6px;display:grid}.soon-tag{color:var(--muted);font-size:14px;font-weight:800}.btn-add{background:linear-gradient(135deg, var(--brand), var(--brand-deep));min-height:46px;color:var(--on-brand);box-shadow:0 6px 14px color-mix(in srgb, var(--brand) 35%, transparent);border-radius:16px;padding:0 20px;font-size:17px;font-weight:800;transition:transform .2s cubic-bezier(.3,1.8,.5,1)}.btn-add:active{transform:scale(.9)}.stepper{align-items:center;gap:6px;display:flex}.stepper button{background:var(--card);width:42px;height:42px;color:var(--brand);border-radius:14px;font-size:22px;font-weight:800;transition:transform .15s;box-shadow:0 2px 8px #0001}.stepper button:active{transform:scale(.85)}.stepper span{text-align:center;min-width:28px;font-size:18px;font-weight:800;animation:.35s cubic-bezier(.3,1.8,.5,1) pop}.stepper.is-small button{background:var(--soft);border-radius:11px;width:34px;height:34px;font-size:18px}.product-block h3{margin:0 0 6px;font-size:17px}.product-block p{color:var(--muted);margin:0;line-height:1.6}.allergen-chips{flex-wrap:wrap;gap:6px;display:flex}.allergen-chips span{background:var(--soft);border-radius:999px;padding:4px 11px;font-size:14px;font-weight:700}.cart-lines{gap:10px;margin:0;padding:0;list-style:none;display:grid}.cart-lines li,.reserve-item{align-items:center;gap:10px;display:flex}.cart-thumb{background:var(--soft);width:54px;height:54px;color:var(--brand);border-radius:14px;flex:none;place-items:center;font-weight:800;display:grid;overflow:hidden}.cart-thumb img{object-fit:cover;width:100%;height:100%}.cart-name{flex:1;min-width:0;display:grid}.cart-name small{color:var(--muted)}.cart-total{border-top:2px dashed var(--line);justify-content:space-between;padding-top:10px;font-size:20px;display:flex}.cart-total b{color:var(--brand)}.choice{background:var(--soft);border-radius:18px;grid-template-columns:1fr 1fr;gap:6px;padding:5px;display:grid}.choice button{border-radius:14px;min-height:48px;font-weight:800;transition:all .25s}.choice button.is-on{background:var(--card);color:var(--brand);transform:scale(1.02);box-shadow:0 4px 12px #0001}.location-field{gap:8px;display:grid}.location-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.location-btn{border:2px dashed color-mix(in srgb, var(--brand) 45%, var(--line));border-radius:18px;justify-items:center;gap:2px;padding:12px 8px;font-size:14px;font-weight:800;transition:transform .2s,background .2s;display:grid}.location-btn span{font-size:26px;transition:transform .3s cubic-bezier(.3,1.8,.5,1)}.location-btn:hover{background:var(--soft)}.location-btn:hover span{transform:scale(1.25)rotate(-10deg)}.location-chosen{color:#14532d;background:#dcfce7;border-radius:16px;align-items:center;gap:10px;padding:10px 12px;animation:.4s cubic-bezier(.3,1.6,.5,1) pop;display:flex}.location-chosen>div{flex:1;min-width:0;display:grid}.location-chosen small{text-overflow:ellipsis;white-space:nowrap;opacity:.8;overflow:hidden}.location-ok{color:#fff;background:#16a34a;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.location-chosen .btn-soft{color:#15803d;border-color:#16a34a;min-height:34px}.location-chosen .icon-btn{background:#fff8;width:34px;height:34px}.location-paste{gap:8px;display:flex}.map-sheet{width:min(760px,100%)}.map-box{background:var(--soft);border-radius:20px;height:min(58vh,520px);position:relative;overflow:hidden}.map-canvas{position:absolute;inset:0}.map-pin{z-index:500;pointer-events:none;width:40px;height:52px;transition:transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-100%)}.map-pin svg{width:100%;height:100%;fill:var(--brand);filter:drop-shadow(0 4px 6px #0005)}.map-pin i{background:#0005;border-radius:50%;width:14px;height:6px;margin-left:-7px;transition:transform .2s;position:absolute;bottom:-4px;left:50%}.map-pin.is-moving{transform:translate(-50%,calc(-100% - 12px))}.map-pin.is-moving i{transform:translateY(12px)scale(.6)}.map-locate{top:12px;z-index:500;background:var(--card);border-radius:999px;padding:8px 14px;font-weight:800;position:absolute;inset-inline-start:12px;box-shadow:0 4px 12px #0003}.map-locate.is-busy{align-items:center;gap:8px;display:inline-flex}.map-spinner{border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.map-help{border-radius:14px;gap:4px;margin:0;padding:10px 12px;font-size:14px;line-height:1.55;animation:.35s cubic-bezier(.3,1.6,.5,1) pop;display:grid}.map-help.is-ok{color:#14532d;background:#dcfce7}.map-help.is-warn{color:#78350f;background:#fef3c7}.map-loading{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.leaflet-container{font:inherit}.track-card{background:var(--soft);border-radius:18px;gap:8px;padding:12px;display:grid}.track-card header{justify-content:space-between;display:flex}.track-card ul{color:var(--muted);margin:0;padding-inline-start:18px;font-size:14px}.progress{text-align:center;grid-template-columns:repeat(3,1fr);margin:6px 0;padding:0;font-size:13px;font-weight:700;list-style:none;display:grid;position:relative}.progress:before,.progress:after{content:"";top:20px;border-radius:4px;height:4px;position:absolute;inset-inline-start:16.6%}.progress:before{background:var(--line);inset-inline-end:16.6%}.progress:after{width:calc(var(--at) * 33.3%);background:linear-gradient(90deg, var(--brand), var(--pop));transition:width .8s cubic-bezier(.3,1.3,.5,1)}.progress li{z-index:1;color:var(--muted);justify-items:center;gap:4px;display:grid;position:relative}.progress-dot{background:var(--card);border:3px solid var(--line);filter:grayscale();border-radius:50%;place-items:center;width:42px;height:42px;font-size:20px;transition:all .4s;display:grid}.progress li.is-done,.progress li.is-now{color:var(--ink)}.progress li.is-done .progress-dot,.progress li.is-now .progress-dot{filter:none;border-color:var(--brand)}.progress li.is-now .progress-dot{animation:1.6s infinite now}@keyframes now{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--brand) 50%, transparent)}50%{transform:scale(1.08);box-shadow:0 0 0 9px #0000}}.progress.is-cancelled{color:#991b1b;background:#fee2e2;border-radius:14px;padding:10px;display:block}.done-card{text-align:center;background:var(--card);width:min(460px,100%);box-shadow:var(--shadow);border-radius:30px;justify-items:center;gap:12px;padding:20px;animation:.6s cubic-bezier(.2,1.4,.4,1) both done-in;display:grid}@keyframes done-in{0%{opacity:0;transform:scale(.6)rotate(-4deg)}to{opacity:1;transform:none}}.done-card h2{margin:0;font-size:28px}.done-card p{margin:0}.done-card .progress{width:100%}.done-scene{background:linear-gradient(180deg, color-mix(in srgb, var(--brand) 14%, var(--card)), var(--soft));border-radius:22px;width:100%;height:110px;position:relative;overflow:hidden}.done-road{inset-inline:0;background:repeating-linear-gradient(90deg, var(--muted) 0 18px, transparent 18px 34px);opacity:.5;height:4px;animation:.5s linear infinite road;position:absolute;bottom:18px}@keyframes road{to{background-position:-34px 0}}.done-actor{font-size:56px;line-height:1;position:absolute;bottom:20px;left:50%}.done-scene.is-delivery .done-actor{animation:2.6s cubic-bezier(.5,0,.5,1) infinite drive}@keyframes drive{0%{transform:translate(260%)scaleX(-1)}45%,55%{transform:translate(-50%)translateY(-3px)scaleX(-1)}to{transform:translate(-360%)scaleX(-1)}}.done-scene.is-pickup .done-actor{animation:.9s cubic-bezier(.3,1.6,.5,1) infinite hop;transform:translate(-50%)}@keyframes hop{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-22px)rotate(-8deg)}}.done-scene.is-reserve .done-actor{transform-origin:50% 10%;margin-left:-28px;animation:1.2s infinite ring-bell}@keyframes ring-bell{0%,to{transform:rotate(0)}15%{transform:rotate(18deg)}30%{transform:rotate(-16deg)}45%{transform:rotate(10deg)}60%{transform:rotate(-6deg)}}.cartbar{z-index:40;inset-inline:14px;bottom:max(14px, env(safe-area-inset-bottom));background:linear-gradient(135deg, var(--brand), var(--brand-deep));max-width:560px;min-height:62px;color:var(--on-brand);box-shadow:0 14px 34px color-mix(in srgb, var(--brand-deep) 45%, transparent);border-radius:22px;align-items:center;gap:12px;margin:0 auto;padding:0 12px 0 18px;font-size:18px;font-weight:800;animation:.5s cubic-bezier(.2,1.3,.4,1) both sheet-up;display:flex;position:fixed}.cartbar b{background:#ffffff26;border-radius:14px;margin-inline-start:auto;padding:6px 12px}.cartbar-count{min-width:34px;height:34px;color:var(--brand);background:#fff;border-radius:12px;place-items:center;display:grid}.cartbar.is-hint{animation:.8s cubic-bezier(.3,1.6,.5,1) 3 cart-hint}@keyframes cart-hint{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-10px)scale(1.04)}}.cart-hint{text-align:center;background:var(--card);width:max-content;max-width:calc(100% - 16px);color:var(--ink);box-shadow:var(--shadow);border:2px solid var(--brand);border-radius:14px;margin:0 auto;padding:8px 14px;font-size:15px;animation:.45s cubic-bezier(.3,1.7,.5,1) both bubble;position:absolute;bottom:calc(100% + 10px);left:0;right:0}.cart-hint:after{content:"";border:8px solid #0000;border-top-color:var(--brand);margin-left:-8px;position:absolute;top:100%;left:50%}.cart-anchor{width:1px;height:1px;position:fixed;bottom:40px;left:50%}.is-bump{animation:.6s cubic-bezier(.3,1.8,.5,1) bump}@keyframes bump{0%{transform:scale(1)}30%{transform:scale(1.45)rotate(-10deg)}60%{transform:scale(.9)}to{transform:scale(1)}}.fly{z-index:100;background:var(--brand);width:64px;height:64px;color:var(--on-brand);pointer-events:none;border-radius:18px;place-items:center;font-size:30px;font-weight:800;display:grid;position:fixed;overflow:hidden;box-shadow:0 10px 24px #0005}.fly img{object-fit:cover;width:100%;height:100%}.confetti{z-index:120;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.mascot{z-index:36;bottom:86px;width:82px;position:fixed;inset-inline-end:10px}.mascot-body{width:82px;height:82px;padding:0;animation:.7s cubic-bezier(.3,1.5,.5,1) jump;display:block}.mascot-body svg{transform-origin:50% 100%;width:100%;height:100%;animation:2.6s ease-in-out infinite breathe;overflow:visible}.mascot.is-sleep .mascot-body svg{animation-duration:4.5s}.mascot.is-sad .mascot-body svg{animation:1s both droop}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03,.97)translateY(1px)}}@keyframes jump{0%{transform:translateY(0)scale(1)}20%{transform:translateY(4px)scale(1.1,.88)}50%{transform:translateY(-26px)scale(.95,1.06)rotate(-6deg)}80%{transform:translateY(0)scale(1.06,.94)}to{transform:none}}@keyframes droop{to{transform:scale(1.04,.9)rotate(4deg)}}.mascot-shadow{fill:#0002}.mascot-foot{fill:#a06a38}.mascot-flap{fill:#c98d52}.mascot-box{fill:#dba46b;stroke:#b07a44;stroke-width:2px}.mascot-tape{fill:var(--brand);opacity:.9}.mascot-cheek{fill:#ff8fa3;opacity:.55}.mascot-eye{fill:#fff;stroke:#3b2a1a;stroke-width:2px}.mascot-pupil{fill:#2b1d12;transition:cx .12s,cy .12s}.mascot-line{fill:none;stroke:#3b2a1a;stroke-width:3px;stroke-linecap:round}.mascot-mouth{fill:#7f1d1d;stroke:#3b2a1a;stroke-width:2px}.mascot-heart path{fill:#ff4d6d;transform-origin:50%;transform-box:fill-box;animation:.6s infinite alternate beat}@keyframes beat{to{transform:scale(1.2)}}.mascot-tear{fill:#60a5fa;animation:1s infinite tear}@keyframes tear{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}.mascot-bubble{bottom:calc(100% + 8px);background:var(--card);width:max-content;max-width:230px;color:var(--ink);box-shadow:var(--shadow);border:2px solid var(--brand);transform-origin:10% 100%;border-radius:18px 18px 18px 6px;padding:9px 13px;font-size:15px;font-weight:700;line-height:1.4;animation:.45s cubic-bezier(.3,1.7,.5,1) both bubble;position:absolute;inset-inline-end:0}@keyframes bubble{0%{opacity:0;transform:scale(0)rotate(-8deg)}to{opacity:1;transform:none}}.mascot-z{top:-8px;color:var(--brand);pointer-events:none;font-weight:800;position:absolute;inset-inline-start:-4px}.mascot-z span{opacity:0;animation:3s infinite zz;position:absolute}.mascot-z span:nth-child(2){font-size:18px;animation-delay:1s}.mascot-z span:nth-child(3){font-size:22px;animation-delay:2s}@keyframes zz{0%{opacity:0;transform:translate(0)}30%{opacity:1}to{opacity:0;transform:translate(18px,-40px)}}@media (width>=760px){.sheet-backdrop:not(.is-side){align-items:center;padding:20px}.sheet,.map-sheet{border-radius:30px;animation-name:done-in}}.page-main,.page-side{display:contents}@media (width>=768px){.page{grid-template-columns:minmax(0,1fr) minmax(330px,400px);align-items:start;gap:18px;max-width:1240px;padding:16px 16px 0}.page-main{gap:14px;min-width:0;display:grid}.page-side{top:calc(var(--top) + 14px);display:block;position:sticky}.page-side .panel{max-height:calc(100vh - var(--top) - 28px);overscroll-behavior:contain;scrollbar-width:thin;overflow-y:auto}.page-side .panel-photo{height:230px;min-height:0}.page-side .panel-body{padding-bottom:96px}.slide{height:210px}.hero{padding:22px 22px 24px}.hero h1{font-size:30px}.strip{-webkit-backdrop-filter:none;background:0 0;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0;padding:0;display:grid;position:static;overflow:visible}.strip-item{background:var(--card);border:2px solid var(--line);border-radius:22px;width:auto;padding:8px 8px 10px;transition:transform .25s cubic-bezier(.3,1.6,.5,1),border-color .25s,box-shadow .25s;box-shadow:0 4px 14px #0000000d}.strip-item:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.strip-photo{aspect-ratio:1;width:100%;height:auto;box-shadow:none;border:0;border-radius:16px}.strip-item.is-on{border-color:var(--brand);box-shadow:0 10px 24px color-mix(in srgb, var(--brand) 25%, transparent)}.strip-item.is-on .strip-photo{box-shadow:none;transform:none}.strip-item b{font-size:15px}.strip-item small{font-size:13px}.cartbar{width:min(400px,100vw - 32px);margin:0;left:max(16px,50vw - 604px);right:auto}.cart-anchor{left:max(216px,50vw - 404px)}.mascot{inset-inline:18px auto;bottom:22px}.mascot-bubble{border-radius:18px 18px 6px;inset-inline:0 auto}}@media (width>=768px) and (width<=1023px){.page{grid-template-columns:minmax(0,1fr) minmax(300px,340px)}.strip{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}@media (width<=759px){:root{--top:56px}.brand b{font-size:16px}.mascot,.mascot-body{width:66px}.mascot-body{height:66px}.mascot{bottom:84px}.location-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
