:root{color-scheme:light;--bg: #fbfaf8;--bg2: #f4f2ee;--ink: #211c17;--ink-soft: #5f584f;--card: #ffffff;--card-solid: #ffffff;--line: rgba(33, 28, 23, .1);--espresso: #6b4326;--espresso-2: #4f3019;--crema: #8a5a34;--gold: #8a5a34;--green: #2c8a53;--green-2: #237245;--red: #c94a30;--radius: 24px;--radius-sm: 16px;--shadow: 0 1px 2px rgba(28, 21, 15, .04), 0 12px 32px rgba(28, 21, 15, .1);--shadow-lg: 0 2px 6px rgba(28, 21, 15, .05), 0 24px 60px rgba(28, 21, 15, .16);--ease: cubic-bezier(.22, 1, .36, 1);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--serif: "Georgia", "Times New Roman", serif}@media (prefers-color-scheme: dark) and (min-width: 999999px){:root{--bg: #16110c;--bg2: #201811;--ink: #f6efe4;--ink-soft: #b7a690;--card: #241c14;--card-solid: #241c14;--line: rgba(255, 240, 220, .1);--espresso: #d09256;--espresso-2: #b0703a;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 16px 40px rgba(0, 0, 0, .5);--shadow-lg: 0 2px 6px rgba(0, 0, 0, .5), 0 30px 70px rgba(0, 0, 0, .6)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.scene{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.scene-mesh{position:absolute;top:-25%;right:-25%;bottom:-25%;left:-25%;background:radial-gradient(38% 38% at 18% 22%,rgba(200,150,92,.16),transparent 62%),radial-gradient(42% 42% at 82% 14%,rgba(150,180,190,.12),transparent 62%),radial-gradient(46% 46% at 74% 82%,rgba(176,130,90,.12),transparent 62%),radial-gradient(44% 44% at 22% 84%,rgba(210,200,185,.18),transparent 64%);filter:blur(52px);animation:meshDrift 26s ease-in-out infinite alternate;will-change:transform}@keyframes meshDrift{50%{transform:translate3d(3%,-3%,0) scale(1.12) rotate(3deg)}to{transform:translate3d(-3%,2%,0) scale(1.05) rotate(-2deg)}}.scene-follow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(260px 260px at var(--mx, 50%) var(--my, 26%),rgba(200,150,92,.14),transparent 70%);transition:background .12s linear}.scene-grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.045;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@media (prefers-color-scheme: dark) and (min-width: 999999px){.scene-mesh{opacity:.6}.scene-follow{background:radial-gradient(280px 280px at var(--mx, 50%) var(--my, 26%),rgba(208,146,86,.28),transparent 70%)}.scene-grain{mix-blend-mode:screen;opacity:.06}}@media (prefers-reduced-motion: reduce){.scene-mesh{animation:none}.scene-follow{display:none}}.shell{position:relative;z-index:1;max-width:480px;margin:0 auto;min-height:100vh;padding:0 18px calc(104px + env(safe-area-inset-bottom))}.shell.center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding-bottom:40px}.muted{color:var(--ink-soft)}.small{font-size:12px}.center-text{text-align:center;margin-top:60px}.error{color:var(--red);font-size:14px}.loader{width:34px;height:34px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--espresso);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.live-pill{position:sticky;top:calc(8px + env(safe-area-inset-top));z-index:30;display:flex;align-items:center;gap:11px;width:max-content;max-width:100%;margin:10px auto 4px;padding:9px 16px;border:none;border-radius:999px;background:#1c140d;color:#fff;cursor:pointer;box-shadow:0 10px 30px #00000047;animation:pillIn .5s cubic-bezier(.2,1.2,.4,1) both}@keyframes pillIn{0%{transform:translateY(-14px) scale(.9);opacity:0}}.live-pill.completed{background:linear-gradient(135deg,var(--green),var(--green-2))}.live-dot{width:9px;height:9px;border-radius:50%;background:var(--gold);flex-shrink:0;animation:livePulse 1.5s ease-in-out infinite}.live-pill.preparing .live-dot{background:#6cb2ff}.live-pill.completed .live-dot{background:#fff}@keyframes livePulse{50%{opacity:.4;box-shadow:0 0 0 5px #dda15a2e}}.live-body{display:flex;flex-direction:column;line-height:1.15;text-align:left}.live-no{font-size:11px;font-weight:700;letter-spacing:.04em;opacity:.65}.live-status{font-size:14px;font-weight:700}.live-steps{display:flex;gap:4px;margin-left:2px}.live-steps i{width:16px;height:4px;border-radius:999px;background:#ffffff40;transition:background .3s}.live-steps i.on{background:var(--gold)}.live-pill.completed .live-steps i.on{background:#fff}.brand,.brand-big{font-family:var(--serif);letter-spacing:.01em;font-weight:700}.brand-big{font-size:36px;color:var(--ink)}.hero{padding:34px 0 10px;text-align:center}.hero-logo-img{display:block;width:88px;height:auto;margin:0 auto 8px;filter:drop-shadow(0 6px 12px rgba(111,78,55,.2))}.logo-big-img{display:block;width:112px;height:auto;margin:0 auto 6px}@media (prefers-color-scheme: dark) and (min-width: 999999px){.hero-logo-img,.logo-big-img{filter:drop-shadow(0 0 14px rgba(230,200,160,.35))}}.shop-info{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;font-size:13px;font-weight:600}.shop-hours{display:inline-flex;align-items:center;gap:7px;color:var(--ink)}.open-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-soft);flex-shrink:0}.open-dot.on{background:var(--green);box-shadow:0 0 0 3px #3a9a5f33}.shop-hours-sep{color:var(--line)}.dir-btn{display:inline-flex;align-items:center;gap:4px;text-decoration:none;color:var(--espresso);background:var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-weight:700;transition:transform .14s}.dir-btn:active{transform:scale(.95)}@media (prefers-color-scheme: dark) and (min-width: 999999px){.dir-btn{color:var(--crema)}}.hero .brand{font-size:42px;margin:0;line-height:1.05;color:var(--ink)}.hero-sub{margin:8px 0 0;color:var(--ink-soft);font-size:13px;letter-spacing:.04em}.hero-rule{display:block;width:60px;height:3px;margin:16px auto 0;border-radius:999px;background:linear-gradient(90deg,transparent,var(--crema),transparent);animation:ruleGlow 3s ease-in-out infinite}@keyframes ruleGlow{50%{width:96px;opacity:.7}}.closed-banner{margin:16px 0 0;background:linear-gradient(135deg,#f6e4c4e6,#efd6a8e6);border:1px solid #e2c893;color:#6d5215;border-radius:16px;padding:12px 16px;font-size:13px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.cats{display:flex;gap:8px;overflow-x:auto;position:sticky;top:0;z-index:5;margin:0 -16px;padding:22px 16px 14px;background:linear-gradient(to bottom,#fbfaf800,#fbfaf88c 34%,#fbfaf8eb 78%,#fbfaf8fa);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scroll-behavior:smooth}.cats::-webkit-scrollbar{display:none}.cat{border:1px solid var(--line);background:var(--card);color:var(--ink-soft);border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;white-space:nowrap;box-shadow:var(--shadow);transition:transform .25s var(--ease),background .25s,color .25s}.cat:active{transform:scale(.94)}.cat.on{background:var(--ink);border-color:var(--ink);color:var(--bg);box-shadow:var(--shadow)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tile{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px 12px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-align:left;cursor:pointer;overflow:hidden;box-shadow:var(--shadow);transition:transform .35s var(--ease),box-shadow .35s var(--ease);animation:tileRise .55s var(--ease) both}.tile:active{transform:scale(.97)}.tile.sold-out{cursor:not-allowed;box-shadow:none;border-style:dashed}.tile.sold-out:active{transform:none}.tile.sold-out .tile-photo{position:relative}.tile.sold-out .tile-photo img,.tile.sold-out .tile-art{filter:grayscale(.85);opacity:.45}.tile.sold-out .tile-name,.tile.sold-out .tile-price{opacity:.5}.sold-out-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--ink);color:var(--bg);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px;white-space:nowrap}@media (hover: hover){.tile:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}}@keyframes tileRise{0%{opacity:0;transform:translateY(18px)}}.tile-photo{width:100%;aspect-ratio:1 / 1;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 25%,#ffffffe6,#efe0cdb3);box-shadow:inset 0 0 0 1px var(--line)}.tile-photo img{width:100%;height:100%;object-fit:cover;display:block}@media (prefers-color-scheme: dark) and (min-width: 999999px){.tile-photo{background:radial-gradient(circle at 30% 25%,#4a3a2c,#2f2419)}}.tile-art{font-size:40px;display:flex;align-items:center;justify-content:center}.tile-name{font-weight:700;font-size:15px;line-height:1.25;color:var(--ink)}.tile-price{font-size:12.5px;font-weight:700;color:var(--espresso);background:#6f4e371a;padding:3px 11px;border-radius:999px}@media (prefers-color-scheme: dark) and (min-width: 999999px){.tile-price{color:var(--crema);background:#c8925a29}}.cart-fab{position:fixed;left:50%;transform:translate(-50%);bottom:calc(16px + env(safe-area-inset-bottom));width:min(444px,calc(100% - 36px));background:var(--ink);color:var(--bg);border:none;border-radius:18px;padding:16px 22px;display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:700;box-shadow:var(--shadow-lg);cursor:pointer;z-index:15;animation:fabPop .4s var(--ease) both}.cart-fab:active{transform:translate(-50%) scale(.97)}@keyframes fabPop{0%{transform:translate(-50%) translateY(20px);opacity:0}}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#170f0980;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:20;animation:fade .25s ease both}@keyframes fade{0%{opacity:0}}.sheet{position:relative;background:var(--card-solid);width:min(480px,100%);border-radius:28px 28px 0 0;padding:26px 20px calc(22px + env(safe-area-inset-bottom));max-height:88vh;overflow-y:auto;box-shadow:0 -12px 44px #00000047;animation:sheetUp .34s cubic-bezier(.2,.8,.2,1) both}@keyframes sheetUp{0%{transform:translateY(100%)}}.sheet:before{content:"";position:absolute;top:11px;left:50%;transform:translate(-50%);width:44px;height:5px;border-radius:999px;background:var(--line)}.sheet-head{display:flex;gap:14px;align-items:center;margin:8px 0}.sheet-photo{width:76px;height:76px;border-radius:20px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 25%,#fff,#efe0cd);box-shadow:inset 0 0 0 1px var(--line);flex-shrink:0}.sheet-photo img{width:100%;height:100%;object-fit:cover;display:block}.sheet-art{font-size:38px}@media (prefers-color-scheme: dark) and (min-width: 999999px){.sheet-photo{background:radial-gradient(circle at 30% 25%,#4a3a2c,#2f2419)}}.sheet h2{margin:0;font-family:var(--serif);font-weight:700;font-size:23px}.opt-group{margin-top:18px}.opt-label{margin:0 0 9px;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--ink-soft)}.opt-hint{text-transform:none;letter-spacing:0;font-weight:600;color:var(--espresso)}@media (prefers-color-scheme: dark) and (min-width: 999999px){.opt-hint{color:var(--crema)}}.opts{display:flex;flex-wrap:wrap;gap:8px}.opt{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:10px 16px;font-size:14px;font-weight:500;transition:transform .14s,background .2s}.opt:active{transform:scale(.94)}.opt.on{background:linear-gradient(135deg,var(--espresso),var(--espresso-2));border-color:transparent;color:#fff;box-shadow:0 5px 14px #6f4e374d}.opt.sold-out{opacity:.4;text-decoration:line-through;border-style:dashed;cursor:not-allowed}.opt.sold-out:active{transform:none}.note-input,.checkout-form input{width:100%;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:14px 15px;font-size:16px;color:var(--ink);font-family:inherit;transition:border .2s,box-shadow .2s}.note-input:focus,.checkout-form input:focus{outline:none;border-color:var(--espresso);box-shadow:0 0 0 3px #6f4e3726}.pickup-why{margin:0 0 14px}.field{position:relative;margin-bottom:12px}.field input{width:100%;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:20px 15px 8px;font-size:16px;color:var(--ink);font-family:inherit;transition:border .2s,box-shadow .2s}.field input:focus{outline:none;border-color:var(--espresso);box-shadow:0 0 0 3px #6f4e3726}.field label{position:absolute;left:16px;top:15px;color:var(--ink-soft);font-size:16px;pointer-events:none;transition:transform .15s ease,font-size .15s ease,color .15s ease;transform-origin:left top}.field input:focus+label,.field input:not(:placeholder-shown)+label{transform:translateY(-9px) scale(.72);color:var(--espresso)}@media (prefers-color-scheme: dark) and (min-width: 999999px){.field input:focus+label,.field input:not(:placeholder-shown)+label{color:var(--crema)}}button:focus-visible,a:focus-visible,.cat:focus-visible,.opt:focus-visible,.tile:focus-visible{outline:3px solid var(--espresso);outline-offset:2px}@media (prefers-color-scheme: dark) and (min-width: 999999px){button:focus-visible,a:focus-visible,.cat:focus-visible,.opt:focus-visible,.tile:focus-visible{outline-color:var(--crema)}}.sheet-close{position:absolute;top:16px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:15px;line-height:1;cursor:pointer;z-index:2}.btn{position:relative;width:100%;margin-top:20px;background:var(--ink);color:var(--bg);border:none;border-radius:18px;padding:18px;font-size:16px;font-weight:700;letter-spacing:.01em;cursor:pointer;overflow:hidden;box-shadow:var(--shadow);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.btn:active{transform:scale(.97)}.btn:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skew(-20deg);animation:sheen 3.8s ease-in-out infinite}@keyframes sheen{0%,62%{left:-60%}to{left:130%}}.btn:disabled{opacity:.45;box-shadow:none}.btn:disabled:after{display:none}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn.ghost:after{display:none}.bar{display:flex;align-items:center;justify-content:space-between;padding:18px 0 6px;position:sticky;top:0;z-index:5}.back{background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);width:42px;height:42px;border-radius:50%;font-size:24px;line-height:1;color:var(--ink);cursor:pointer}.bar-title{font-family:var(--serif);font-size:21px;font-weight:700}.cart-list{margin-top:10px}.cart-row{display:flex;align-items:center;gap:10px;padding:15px;margin-bottom:10px;background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 16px #4a322212}.cart-row-info{flex:1;min-width:0}.cart-row-name{margin:0;font-weight:700;font-size:15px}.cart-row-mods,.cart-row-note{margin:3px 0 0;font-size:12px;color:var(--ink-soft)}.qty{display:flex;align-items:center;gap:8px}.qty button{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--card-solid);color:var(--ink);font-size:18px;line-height:1;cursor:pointer;transition:transform .12s}.qty button:active{transform:scale(.9)}.cart-row-price{min-width:76px;text-align:right;font-weight:700;font-size:14px}.checkout-form{margin-top:22px}.checkout-form h3{font-family:var(--serif);font-size:20px;margin:0 0 12px}.checkout-form input{margin-bottom:10px}.row2{display:flex;gap:10px}.confirm-card{background:var(--card-solid);border:1px solid var(--line);border-radius:26px;padding:34px;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:var(--shadow);animation:tileRise .5s cubic-bezier(.2,.7,.2,1) both}.confirm-check{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff;font-size:30px;display:flex;align-items:center;justify-content:center;margin:0 0 6px;box-shadow:0 10px 22px #2f7d4f66;animation:pop .4s cubic-bezier(.2,1.4,.4,1) both}@keyframes pop{0%{transform:scale(0)}}.confirm-card h2{margin:0;font-family:var(--serif);font-weight:700}.order-no{font-size:30px;font-weight:800;letter-spacing:.04em;margin:2px 0;color:var(--espresso)}.confirm-total{margin:0;color:var(--ink-soft)}.receipt-label{margin:4px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.receipt{width:100%;margin:16px 0 4px;border-top:1px dashed var(--line);padding-top:12px;text-align:left}.receipt-row{display:flex;align-items:flex-start;gap:10px;padding:6px 0}.receipt-qty{min-width:26px;font-weight:700;color:var(--espresso)}@media (prefers-color-scheme: dark) and (min-width: 999999px){.receipt-qty{color:var(--crema)}}.receipt-info{flex:1;display:flex;flex-direction:column}.receipt-name{font-weight:600;font-size:14px}.receipt-mods{font-size:12px;color:var(--ink-soft);margin-top:2px}.receipt-price{font-weight:600;font-size:14px;white-space:nowrap}.receipt-discount .receipt-price{color:var(--green)}.receipt-total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-weight:800}.receipt-total .receipt-info{font-weight:700}.receipt-total .receipt-price{font-size:16px}.past-row{width:100%;margin:0 0 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.past-count{color:var(--ink-soft);font-weight:500}.past-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.past-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);text-align:left;cursor:pointer}.past-item:disabled{opacity:.6}.past-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.past-item-total{font-weight:700;white-space:nowrap}.order-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.order-actions .btn{margin-top:0}.receipt-chip{width:100%;margin:4px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:linear-gradient(135deg,var(--espresso),var(--espresso-2));color:#fff;border:none;border-radius:16px;padding:13px 16px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #6f4e3747}.receipt-chip-main{font-size:14px}.receipt-chip-status{font-size:13px;opacity:.9;white-space:nowrap}.upsell{margin:18px 0 4px}.upsell-title{margin:0 0 10px;font-weight:700;font-size:15px}.upsell-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.upsell-row::-webkit-scrollbar{display:none}.upsell-card{flex:0 0 auto;width:116px;background:var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:16px;padding:12px 10px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:transform .14s}.upsell-card:active{transform:scale(.96)}.upsell-art{width:52px;height:52px;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:26px;background:radial-gradient(circle at 30% 25%,#ffffffe6,#efe0cdb3)}.upsell-art img{width:100%;height:100%;object-fit:cover}.upsell-name{font-size:12.5px;font-weight:600;text-align:center;line-height:1.2}.upsell-add{font-size:12px;font-weight:700;color:var(--espresso);background:#6f4e371a;padding:2px 10px;border-radius:999px}@media (prefers-color-scheme: dark) and (min-width: 999999px){.upsell-add{color:var(--crema);background:#c8925a29}}.status-pill{display:inline-flex;align-items:center;gap:9px;margin-top:14px;background:var(--card);border:1.5px solid var(--line);border-radius:999px;padding:10px 20px;font-size:14px;font-weight:700;transition:background .4s var(--ease),color .4s var(--ease)}.status-dot{width:9px;height:9px;border-radius:50%;background:currentColor;flex-shrink:0}.status-pill.pending{background:#d9a56624;border-color:var(--gold);color:#8a5a34}.status-pill.pending .status-dot{animation:dotPulse 1.8s ease-in-out infinite}.status-pill.preparing{background:#3b82f624;border-color:#3b82f6;color:#1d63c9;animation:makingGlow 1.6s ease-in-out infinite}.status-pill.preparing .status-dot{animation:dotPulse .9s ease-in-out infinite}.status-pill.completed{background:linear-gradient(135deg,var(--green),var(--green-2));border-color:transparent;color:#fff;animation:readyPulse 1.4s ease-in-out infinite}.status-pill.cancelled{background:#c94a301f;border-color:var(--red);color:var(--red)}@keyframes dotPulse{50%{opacity:.25;transform:scale(.7)}}@keyframes makingGlow{50%{box-shadow:0 0 0 7px #3b82f61f}}@keyframes readyPulse{50%{box-shadow:0 0 0 9px #2f7d4f29}}.confirm-reward{margin:0;color:var(--green);font-weight:700;font-size:14px}.stamps-card{position:relative;background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin:6px 0 16px;box-shadow:0 6px 16px #4a322214}.stamps-row{display:flex;gap:5px;justify-content:space-between}.stamp{font-size:20px;filter:grayscale(1);opacity:.22;transition:transform .2s}.stamp.on{filter:none;opacity:1}.stamps-text{margin:10px 0 0;font-size:13px;font-weight:600;color:var(--ink-soft);text-align:center}.redeem-toggle{width:100%;margin-top:16px;display:flex;justify-content:space-between;align-items:center;background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1.5px dashed var(--line);border-radius:16px;padding:15px 16px;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer;transition:transform .14s}.redeem-toggle:active{transform:scale(.98)}.redeem-toggle.on{border-style:solid;border-color:var(--green);background:linear-gradient(135deg,rgba(47,125,79,.14),var(--card));color:var(--green)}@media (prefers-reduced-motion: reduce){.aurora-blob,.btn:after,.hero-rule,.status-pill.ready,.loader,.tile,.cart-fab,.sheet,.confirm-card,.confirm-check{animation:none!important}}.sub-group{margin:12px 0 0 14px;padding-left:12px;border-left:2px solid var(--line)}.sub-label{color:var(--espresso);text-transform:none;letter-spacing:0;font-size:12.5px}.receipt-btn{width:100%;margin-top:14px;padding:15px;border:none;border-radius:16px;background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff;font-size:15px;font-weight:700;cursor:pointer;box-shadow:var(--shadow);transition:transform .2s var(--ease)}.receipt-btn:active{transform:scale(.97)}.receipt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#140f0a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto;animation:fade .2s ease both}.receipt-sheet{background:#fff;color:#1a1410;width:min(360px,100%);border-radius:18px;padding:22px 20px;max-height:92vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.rcpt{text-align:center}.rcpt-logo{width:52px}.rcpt-brand{font-family:var(--serif);font-size:22px;margin:6px 0 2px}.rcpt-ar{color:#6b6259;font-size:12px;margin:0 0 4px}.rcpt-cr{color:#6b6259;font-size:12px;letter-spacing:.03em;margin:0 0 12px}.rcpt-no{font-size:24px;font-weight:800;letter-spacing:.04em;margin:8px 0 2px}.rcpt-meta{color:#6b6259;font-size:12px;margin:2px 0}.rcpt-rule{border-top:1px dashed #cfc7bd;margin:14px 0}.rcpt-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.rcpt-table td{padding:5px 0;vertical-align:top}.rcpt-q{width:32px;color:#6b6259}.rcpt-amt{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.rcpt-sub{color:#6b6259;font-size:12px}.rcpt-row{display:flex;justify-content:space-between;padding:3px 0;font-size:14px}.rcpt-dim{color:#6b6259;font-size:13px}.rcpt-total{font-weight:800;font-size:18px;border-top:2px solid #1a1410;margin-top:8px;padding-top:8px}.rcpt-paid{margin-top:14px;border:1.5px solid #2c8a53;color:#2c8a53;border-radius:8px;padding:7px;font-weight:800;letter-spacing:.06em;font-size:12px}.rcpt-foot{color:#6b6259;font-size:12px;margin-top:16px}.rcpt-actions{display:flex;gap:10px;margin-top:8px}.rcpt-actions .btn{margin-top:10px}@media print{body *{visibility:hidden!important}#print-receipt,#print-receipt *{visibility:visible!important}#print-receipt{position:absolute;left:0;top:0;width:100%;padding:10px}.receipt-overlay{position:static;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.receipt-sheet{box-shadow:none;max-height:none;width:100%}.rcpt-actions,.scene{display:none!important}}.promo-box{margin-top:16px}.promo-input-row{display:flex;gap:8px}.promo-input-row input{flex:1;min-width:0;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:14px 15px;font-size:16px;font-weight:600;letter-spacing:.06em;color:var(--ink);font-family:inherit;text-transform:uppercase}.promo-input-row input:focus{outline:none;border-color:var(--espresso);box-shadow:0 0 0 3px #6b432626}.promo-input-row button{flex-shrink:0;padding:0 20px;border:none;border-radius:14px;background:var(--ink);color:var(--bg);font-size:15px;font-weight:700;cursor:pointer}.promo-input-row button:disabled{opacity:.4}.promo-error{margin:8px 0 0;color:var(--red);font-size:13px;font-weight:600}.promo-applied{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,rgba(44,138,83,.12),var(--card));border:1.5px solid var(--green);color:var(--green);font-size:14px;font-weight:600}.promo-applied-right{display:flex;align-items:center;gap:8px;font-weight:800;white-space:nowrap}.promo-remove{border:none;background:transparent;color:var(--green);font-size:16px;cursor:pointer;padding:0 2px}.cart-summary{margin-top:16px;padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line)}.cart-sum-row{display:flex;justify-content:space-between;padding:4px 0;font-size:14px}.cart-sum-row.off{color:var(--green);font-weight:600}.cart-sum-total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:17px;font-weight:800}.receipt-btn.locked{background:var(--card);color:var(--ink-soft);border:1.5px dashed var(--line);box-shadow:none;cursor:not-allowed}.receipt-btn.locked:active{transform:none}.qty-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.qty-stepper{display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:999px;padding:4px;background:var(--card)}.qty-stepper button{width:40px;height:40px;border:none;border-radius:999px;background:transparent;color:var(--ink);font-size:22px;line-height:1;font-family:inherit;cursor:pointer}.qty-stepper button:disabled{opacity:.3;cursor:default}.qty-stepper button:not(:disabled):active{background:var(--line)}.qty-value{min-width:30px;text-align:center;font-size:17px;font-weight:600}.field-select{width:100%;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:14px 15px;font-size:16px;color:var(--ink);font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-soft) 50%),linear-gradient(135deg,var(--ink-soft) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field-select:focus{outline:none;border-color:var(--espresso);box-shadow:0 0 0 3px #6f4e3726}.install-bar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;background:#1c150ff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);animation:install-bar-in .35s var(--ease) both}@keyframes install-bar-in{0%{opacity:0;transform:translateY(12px)}}.install-bar-text{flex:1;font-size:13.5px;line-height:1.45;color:#fff}.install-bar-text strong{color:#fff}.install-bar-btn{flex-shrink:0;border:none;border-radius:999px;background:#fff;color:#211c17;font-family:inherit;font-size:14px;font-weight:600;padding:9px 16px;cursor:pointer}.install-bar-close{flex-shrink:0;border:none;background:transparent;color:#ffffffa6;font-size:15px;line-height:1;padding:4px;cursor:pointer;font-family:inherit}.row2>.field{flex:1;min-width:0}.install-bar.above-cart{bottom:calc(88px + env(safe-area-inset-bottom,0px))}.cat-section{scroll-margin-top:72px}.cat-heading{margin:22px 2px 12px;font-family:var(--serif);font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.01em}.cat-section:first-of-type .cat-heading{margin-top:10px}.cat-section:last-of-type{min-height:calc(100vh - 150px)}.scene-mesh{transition:background 1.2s ease,opacity 1.2s ease}.scene[data-sky=morning] .scene-mesh{background:radial-gradient(40% 40% at 20% 18%,rgba(255,214,148,.2),transparent 62%),radial-gradient(44% 44% at 80% 12%,rgba(168,206,224,.18),transparent 62%),radial-gradient(46% 46% at 74% 82%,rgba(214,226,232,.16),transparent 62%),radial-gradient(44% 44% at 22% 84%,rgba(240,234,222,.2),transparent 64%)}.scene[data-sky=afternoon] .scene-mesh{background:radial-gradient(38% 38% at 18% 22%,rgba(232,178,104,.2),transparent 62%),radial-gradient(42% 42% at 82% 14%,rgba(150,180,190,.14),transparent 62%),radial-gradient(46% 46% at 74% 82%,rgba(196,146,100,.14),transparent 62%),radial-gradient(44% 44% at 22% 84%,rgba(226,214,196,.2),transparent 64%)}.scene[data-sky=sunset] .scene-mesh{background:radial-gradient(44% 44% at 16% 20%,rgba(255,150,84,.26),transparent 64%),radial-gradient(46% 46% at 84% 16%,rgba(236,122,138,.2),transparent 64%),radial-gradient(48% 48% at 70% 84%,rgba(140,106,156,.18),transparent 64%),radial-gradient(44% 44% at 24% 86%,rgba(255,196,138,.22),transparent 64%)}.scene[data-sky=night] .scene-mesh{background:radial-gradient(46% 46% at 18% 18%,rgba(58,74,138,.26),transparent 64%),radial-gradient(48% 48% at 82% 14%,rgba(38,48,96,.24),transparent 64%),radial-gradient(50% 50% at 72% 84%,rgba(96,82,146,.18),transparent 66%),radial-gradient(46% 46% at 22% 86%,rgba(150,130,120,.16),transparent 66%)}.sky-stars{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(1.4px 1.4px at 12% 14%,rgba(255,255,255,.9),transparent 60%),radial-gradient(1.2px 1.2px at 28% 8%,rgba(255,255,255,.7),transparent 60%),radial-gradient(1.6px 1.6px at 44% 18%,rgba(255,255,255,.85),transparent 60%),radial-gradient(1.1px 1.1px at 61% 6%,rgba(255,255,255,.6),transparent 60%),radial-gradient(1.5px 1.5px at 76% 16%,rgba(255,255,255,.8),transparent 60%),radial-gradient(1.2px 1.2px at 89% 10%,rgba(255,255,255,.7),transparent 60%),radial-gradient(1.3px 1.3px at 20% 26%,rgba(255,255,255,.55),transparent 60%),radial-gradient(1.1px 1.1px at 53% 30%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1.4px 1.4px at 84% 28%,rgba(255,255,255,.6),transparent 60%),radial-gradient(1.2px 1.2px at 35% 38%,rgba(255,255,255,.4),transparent 60%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 22%,transparent 46%);mask-image:linear-gradient(to bottom,#000 0%,#000 22%,transparent 46%);animation:starBreathe 7s ease-in-out infinite alternate}@keyframes starBreathe{0%{opacity:.55}to{opacity:1}}@media (prefers-reduced-motion: reduce){.scene-mesh,.sky-stars{animation:none}}.sky{position:absolute;top:0;left:0;right:0;height:52vh;z-index:0;pointer-events:none;transition:background 1.2s ease}.sky[data-sky=morning]{background:linear-gradient(to bottom,#a9d3ef 0%,#c5e2f2 34%,rgba(224,234,233,.72) 62%,rgba(244,240,232,.3) 84%,transparent 100%)}.sky[data-sky=afternoon]{background:linear-gradient(to bottom,#7ec0e8 0%,#a5d5ef 30%,#d3e7f2 56%,rgba(240,238,230,.6) 80%,transparent 100%)}.sky[data-sky=sunset]{background:linear-gradient(to bottom,#5b6bA8 0%,#c97f8f 30%,#ef9a6a 56%,rgba(248,208,168,.62) 80%,transparent 100%)}.sky[data-sky=night]{background:linear-gradient(to bottom,#0d1330 0%,#1b2450 38%,rgba(46,58,108,.62) 66%,rgba(120,124,150,.18) 86%,transparent 100%)}.sky-stars{position:absolute;top:0;right:0;bottom:0;left:0}:root[data-sky=night] .hero .brand,:root[data-sky=night] .hero .hero-sub,:root[data-sky=night] .shop-hours{color:#f6f3ee}:root[data-sky=night] .shop-hours{text-shadow:0 1px 10px rgba(0,0,0,.4)}:root[data-sky=night] .hero-logo-img{filter:brightness(0) invert(1) opacity(.92)}:root[data-sky=night] .closed-banner{background:#ffffff1f;color:#f6f3ee;border-color:#fff3}.sky-sun{position:absolute;width:120px;height:120px;border-radius:50%;transition:top 1.2s ease,left 1.2s ease,background 1.2s ease;animation:sunGlow 6s ease-in-out infinite alternate}@keyframes sunGlow{0%{filter:blur(2px) brightness(1)}to{filter:blur(4px) brightness(1.08)}}.sky[data-sky=morning] .sky-sun{top:16%;left:12%;background:radial-gradient(circle,rgba(255,252,236,.98) 0%,rgba(255,236,176,.85) 32%,rgba(255,226,150,.35) 56%,transparent 72%);box-shadow:0 0 90px 46px #ffecb273}.sky[data-sky=afternoon] .sky-sun{top:9%;right:14%;left:auto;background:radial-gradient(circle,rgba(255,255,246,1) 0%,rgba(255,244,198,.9) 30%,rgba(255,232,160,.4) 55%,transparent 72%);box-shadow:0 0 110px 56px #fff0ba80}.sky[data-sky=sunset] .sky-sun{top:46%;right:18%;left:auto;width:104px;height:104px;background:radial-gradient(circle,rgba(255,238,206,1) 0%,rgba(255,190,118,.92) 34%,rgba(248,148,96,.42) 58%,transparent 74%);box-shadow:0 0 100px 50px #faaa6e73}@media (prefers-reduced-motion: reduce){.sky-sun{animation:none}}.deals-grid .deal-tile{text-align:left}.deal-badge{position:absolute;top:8px;left:8px;background:var(--green, #2c8a53);color:#fff;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:999px;letter-spacing:.01em}.deal-contents{display:block;font-size:12.5px;line-height:1.4;color:var(--ink-soft);margin:2px 0 6px}.deal-fixed{margin:0;font-size:15px;font-weight:600;color:var(--ink)}.deal-mod-group{margin-top:10px}.deal-mod-label{margin:0 0 6px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.deal-extras{margin:4px 0 0;font-size:13px;color:var(--ink-soft);text-align:center}.cancel-window{margin:14px 0 4px}.cancel-bar{height:4px;border-radius:999px;background:#b4282829;overflow:hidden;margin-bottom:10px}.cancel-bar-fill{display:block;height:100%;background:#c0392b;border-radius:999px;transition:width .25s linear}.cancel-order-btn{width:100%;padding:14px;border-radius:16px;border:1px solid #c0392b;background:#c0392b;color:#fff;font-size:15px;font-weight:700;cursor:pointer}.cancel-order-btn:active{transform:scale(.98)}.cancel-order-btn:disabled{opacity:.65}.cancel-hint{margin:8px 0 0;font-size:12px;color:var(--ink-soft);text-align:center}.past-item.unpaid{opacity:1;cursor:default;background:transparent;border-style:dashed}
