*{margin:0}html{scroll-behavior:smooth}body,#root{min-height:100vh}:root{--ink:#1a1410;--ink-soft:#3d3229;--paper:#fffaf3;--sand:#f3e6d4;--chili:#c43c1a;--mustard:#e8a317;--chutney:#1f6b4a;--line:#1a14101f;--shadow:0 18px 50px #1a141024;--radius:14px;--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Figtree", system-ui, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.45}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{-webkit-tap-highlight-color:transparent;min-width:320px;overflow-x:hidden}button,input,textarea{font:inherit;touch-action:manipulation}img{max-width:100%;height:auto}button{cursor:pointer}.app{max-width:100vw;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0);position:relative;overflow-x:hidden}.customer-app,.admin-app{width:100%;max-width:100vw;overflow-x:hidden}.bg-wash{z-index:-1;background:radial-gradient(ellipse 80% 50% at 10% -10%, #e8a31759, transparent 55%), radial-gradient(ellipse 60% 40% at 100% 0%, #c43c1a2e, transparent 50%), linear-gradient(180deg, #fff4e4 0%, var(--paper) 38%, #f7efe3 100%);position:fixed;inset:0}.bg-wash:after{content:"";opacity:.35;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%231a1410' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.ad-carousel{border:1px solid var(--line);box-shadow:var(--shadow);isolation:isolate;border-radius:20px;margin:.85rem 1.25rem 0;animation:.5s both rise;position:relative;overflow:hidden}.ad-track{will-change:transform;width:100%;transition:transform .55s cubic-bezier(.22,1,.36,1);display:flex}.ad-slide{color:#fff8ef;flex:0 0 100%;align-content:center;min-height:clamp(10.5rem,22vw,14.5rem);padding:1.25rem 1.35rem 3.1rem;display:grid;position:relative;overflow:hidden}.ad-art{z-index:0;pointer-events:none;position:absolute;inset:0}.ad-orb{filter:blur(2px);border-radius:50%;animation:7s ease-in-out infinite alternate drift;position:absolute}.ad-orb-a{background:#ffffff2e;width:14rem;height:14rem;top:-4rem;right:-3rem}.ad-orb-b{background:#0000001f;width:9rem;height:9rem;animation-delay:-2s;bottom:-3rem;right:18%}.ad-streak{background:linear-gradient(115deg,#0000 35%,#ffffff24 50%,#0000 65%);width:55%;height:180%;animation:5.5s ease-in-out infinite sheen;position:absolute;top:-40%;right:-5%;transform:rotate(18deg)}.ad-copy{z-index:1;max-width:36rem;position:relative}.ad-badge{letter-spacing:.14em;text-transform:uppercase;opacity:.92;margin:0 0 .35rem;font-size:.72rem;font-weight:800;display:inline-block}.ad-title{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(1.45rem,3.4vw,2.15rem);font-weight:800;line-height:1.05;animation:.55s both title-in}.ad-line{opacity:.92;max-width:34rem;margin:.45rem 0 0;font-size:clamp(.9rem,1.6vw,1.02rem);line-height:1.4}.ad-cta-row{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:.9rem;display:flex}.ad-cta{color:var(--ink);background:#fff8ef;border:0;border-radius:999px;padding:.55rem 1.05rem;font-weight:800;transition:transform .15s,box-shadow .15s}.ad-cta:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0000002e}.ad-price{letter-spacing:.02em;font-size:.95rem;font-weight:800}.ad-controls{z-index:2;justify-content:center;align-items:center;gap:.55rem;padding-inline:.75rem;display:flex;position:absolute;bottom:.55rem;left:0;right:0}.ad-nav{color:#fff8ef;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a141059;border:0;border-radius:999px;width:2rem;height:2rem;font-size:1.25rem;line-height:1;transition:background .15s}.ad-nav:hover{background:#1a14108c}.ad-dots{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a141047;border-radius:999px;gap:.35rem;padding:.35rem .5rem;display:flex}.ad-dot{background:#fff8ef66;border:0;border-radius:999px;width:.5rem;height:.5rem;padding:0;transition:width .25s,background .25s}.ad-dot.active{background:#fff8ef;width:1.35rem}.ad-live{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.tone-chili{background:linear-gradient(120deg,#9e2a12 0%,#c43c1a 42%,#e85d04 100%)}.tone-mustard{color:#1a1410;background:linear-gradient(125deg,#8a5a08 0%,#c9890d 45%,#e8a317 100%)}.tone-mustard .ad-cta{color:#fff8ef;background:#1a1410}.tone-chutney{background:linear-gradient(125deg,#124833 0%,#1f6b4a 48%,#2d8a62 100%)}.tone-ink{background:linear-gradient(125deg,#1a1410 0%,#2c221c 50%,#4a3428 100%)}.tone-night{background:linear-gradient(125deg,#1d1520 0%,#3b1d2e 40%,#c43c1a 100%)}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(-12px,10px)scale(1.08)}}@keyframes sheen{0%,35%{opacity:0;transform:translate(-8%)rotate(18deg)}50%{opacity:1}65%,to{opacity:0;transform:translate(18%)rotate(18deg)}}@keyframes title-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.topbar-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem .85rem;min-width:0;max-width:100%;display:flex}.auth-quick{align-items:center;gap:.4rem;display:flex}.user-chip{border:1px solid var(--line);background:#ffffffc7;border-radius:999px;align-items:center;gap:.65rem;padding:.4rem .45rem .4rem .75rem;display:flex}.user-chip strong{font-size:.88rem;line-height:1.1;display:block}.user-chip span{color:var(--ink-soft);font-size:.75rem;display:block}.ghost.compact,.place-btn.compact{width:auto;margin:0;padding:.45rem .85rem;font-size:.85rem}.token-banner{background:var(--ink);color:#fff8ef;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;margin:.35rem 1.25rem 0;padding:.85rem 1rem;animation:.35s both pop;display:flex}.token-banner .eyebrow{color:var(--mustard)}.token-banner strong{font-family:var(--font-display);letter-spacing:.04em;font-size:clamp(1.6rem,4vw,2.2rem)}.token-banner .ghost{color:#fff8ef;background:0 0;border-color:#fff8ef4d}.account-box{background:var(--sand);border-radius:12px;gap:.15rem;margin-bottom:.2rem;padding:.75rem .85rem;display:grid}.account-box .place-btn{margin-top:.45rem}.prepay-set{border:0;gap:.4rem;margin:.35rem 0 0;padding:0;display:grid}.prepay-set legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.3rem;font-size:.78rem;font-weight:800}.prepay-set .opt{cursor:pointer}.prepay-set .opt span{gap:.1rem;display:grid}.prepay-set .opt strong{font-size:.92rem}.prepay-set .opt em{color:var(--ink-soft);font-size:.78rem;font-style:normal}.pay-tag{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:#1f6b4a1f;border-radius:999px;padding:.25rem .45rem;font-weight:800;color:var(--chutney)!important;font-size:.7rem!important}.token-hint{color:var(--ink-soft);margin:.15rem 0 0;font-size:.8rem}.pill-stack{justify-items:end;gap:.3rem;display:grid}.status-pill.paid{color:var(--chutney);background:#1f6b4a26}.status-pill.due{color:var(--chili);background:#c43c1a1f}.auth-modal .auth-badge{color:var(--chili)}.auth-tabs{gap:.4rem;margin:.85rem 0 .5rem;display:flex}.google-auth-block{gap:.4rem;display:grid}.google-btn-host{justify-content:center;min-height:44px;display:flex}.google-btn{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.7rem 1rem;font-weight:700;transition:background .15s,transform .15s;display:inline-flex}.google-btn:hover{background:#f7f7f7}.google-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.google-auth-block{position:relative}.google-auth-block.is-locked .google-btn-host{opacity:.45;pointer-events:none}.google-lock-overlay{z-index:2;color:var(--ink);cursor:pointer;background:#fff8e6eb;border:1px dashed #8a5a0866;border-radius:12px;padding:.5rem .75rem;font-size:.82rem;font-weight:700;position:absolute;inset:0}.policy-accept{margin:.15rem 0 .35rem}.policy-check{cursor:pointer;align-items:flex-start;gap:.55rem;line-height:1.45;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;font-size:.88rem!important;font-weight:500!important;display:flex!important}.policy-check input{width:1rem;height:1rem;accent-color:var(--chili);flex:none;margin-top:.2rem}.policy-inline-link{color:var(--chili);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.policy-modal{flex-direction:column;max-width:min(540px,94vw);max-height:min(88vh,720px);display:flex}.policy-body{text-align:left;gap:.9rem;margin:.35rem 0 .75rem;padding-right:.25rem;display:grid;overflow:auto}.policy-body section h4{color:var(--ink);margin:0 0 .25rem;font-size:.95rem}.policy-body section p{color:var(--ink-soft);margin:0;font-size:.88rem;font-weight:500;line-height:1.5}.footer-policies{flex-wrap:wrap;justify-content:center;gap:.35rem .85rem;margin-bottom:.35rem;display:flex}.policy-footer-link{color:var(--ink-soft);text-underline-offset:3px;opacity:.75;cursor:pointer;background:0 0;border:0;padding:.2rem;font-size:.76rem;font-weight:600;text-decoration:underline}.policy-footer-link:hover{opacity:1;color:var(--ink)}.ticket-share-modal{max-width:min(440px,94vw);max-height:min(92vh,780px);overflow:auto}.ticket-preview-frame{border:1px solid var(--line);background:#fff;border-radius:12px;height:min(42vh,360px);margin:.5rem 0 .75rem;overflow:hidden}.ticket-preview-iframe{background:#fff;border:0;width:100%;height:100%}.ticket-share-modal label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);gap:.25rem;font-size:.78rem;font-weight:700;display:grid}.ticket-share-modal input{border:1px solid var(--line);color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border-radius:10px;padding:.6rem .75rem;font-size:1rem;font-weight:500}.wa-hint{margin:.35rem 0 0;font-size:.78rem}.ticket-share-actions{flex-wrap:wrap}.notify-steps{gap:.4rem;margin:.5rem 0 .25rem;display:flex}.google-hint{text-align:center;margin:0;font-size:.75rem}.google-hint code{background:var(--sand);border-radius:4px;padding:.1rem .3rem;font-size:.72rem}.auth-divider{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;grid-template-columns:1fr auto 1fr;align-items:center;gap:.55rem;margin:.15rem 0;font-size:.78rem;font-weight:600;display:grid}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);height:1px}.google-demo-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.google-demo-item,.google-user-chip{text-align:left;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;align-items:center;gap:.7rem;padding:.7rem .8rem;display:flex}.google-demo-item:hover{border-color:var(--chili)}.google-demo-item strong,.google-user-chip strong{font-size:.95rem;display:block}.google-demo-item em,.google-user-chip em{color:var(--ink-soft);font-size:.8rem;font-style:normal;display:block}.google-avatar{background:var(--sand);width:2.25rem;height:2.25rem;color:var(--ink);border-radius:999px;flex:none;place-items:center;font-weight:800;display:grid}.google-user-chip{cursor:default}.auth-fields{gap:.55rem;margin-top:.5rem;display:grid}.auth-fields label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);gap:.25rem;font-size:.78rem;font-weight:700;display:grid}.auth-fields input{border:1px solid var(--line);color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border-radius:10px;padding:.6rem .75rem;font-size:1rem;font-weight:500}.form-error{color:var(--chili);margin:0;font-size:.88rem;font-weight:600}.otp-sent{margin:0;font-size:.92rem}.demo-otp{color:var(--ink);background:#fff4d6;border:1px dashed #8a5a0859;border-radius:12px;gap:.15rem;padding:.7rem .85rem;font-size:.95rem;display:grid}.demo-otp span{color:var(--ink-soft);font-size:.78rem}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 1.5rem;padding:1.25rem 1.25rem .75rem;animation:.55s both rise;display:flex}.brand-block{max-width:36rem}.brand-lockup{align-items:center;gap:.85rem;display:flex}.brand-logo{border-radius:12px;flex:none;width:3.5rem;height:3.5rem;display:block;box-shadow:0 8px 20px #1a14102e}.brand-text{min-width:0}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--chili);margin:0 0 .15rem;font-size:.75rem;font-weight:700}.brand{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(2rem,5vw,3.15rem);font-weight:800;line-height:.95}.shop-meta{color:var(--ink-soft);margin:.45rem 0 0;font-size:.92rem}.shop-maps{color:var(--chili);border-bottom:1px solid #c43c1a59;margin-top:.35rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:color .15s,border-color .15s;display:inline-block}.shop-maps:hover{color:var(--ink);border-color:var(--ink)}.view-tabs{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#ffffffb8;border-radius:999px;gap:.35rem;min-width:0;max-width:100%;padding:.3rem;display:flex;overflow-x:auto}.view-tabs::-webkit-scrollbar{display:none}.tab{color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-radius:999px;flex:none;align-items:center;gap:.4rem;min-height:2.5rem;padding:.55rem .9rem;font-weight:600;transition:background .2s,color .2s,transform .2s;display:inline-flex}.tab.active{background:var(--ink);color:#fff8ef}.tab:hover:not(.active){color:var(--ink)}.badge{background:var(--mustard);min-width:1.25rem;height:1.25rem;color:var(--ink);border-radius:999px;place-items:center;padding:0 .3rem;font-size:.72rem;font-weight:800;display:inline-grid}.toast{top:calc(.75rem + env(safe-area-inset-top,0px));z-index:40;background:var(--ink);color:#fff8ef;box-shadow:var(--shadow);text-align:center;border-radius:999px;max-width:calc(100vw - 2rem);padding:.65rem 1rem;font-weight:600;animation:.35s both pop;position:fixed;left:50%;transform:translate(-50%)}.take-layout{grid-template-columns:15rem minmax(0,1fr) 21rem;gap:.85rem;min-height:calc(100vh - 7.5rem);padding:.75rem 1.25rem 1.5rem;animation:.65s 80ms both rise;display:grid}.cats{flex-direction:column;align-self:start;gap:.35rem;max-height:calc(100vh - 8rem);padding-right:.25rem;display:flex;position:sticky;top:.75rem;overflow:auto}.cat{text-align:left;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:12px;padding:.7rem .85rem;font-size:.92rem;font-weight:600;transition:background .2s,border-color .2s,color .2s}.cat:hover{color:var(--ink);background:#ffffff8c}.cat.active{border-color:var(--line);color:var(--ink);background:#fff;box-shadow:0 8px 24px #1a14100f}.menu-pane,.cart-pane,.board{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7}.menu-pane{min-width:0;padding:1rem 1.1rem 1.25rem}.menu-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem 1rem;margin-bottom:.85rem;padding-bottom:.85rem;display:flex}.menu-heading{flex-direction:column;flex:12rem;justify-content:center;align-items:flex-start;gap:.2rem;min-width:0;display:flex}.menu-toolbar h2,.cart-head h2,.board-head h2,.order-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0}.menu-toolbar h2{font-size:1.45rem;line-height:1.15}.subtitle{color:var(--ink-soft);margin:.2rem 0 0;font-size:.9rem}.menu-heading .subtitle{margin:0;line-height:1.3}.filters{flex-direction:column;flex:0 18rem;align-items:stretch;gap:.45rem;min-width:min(100%,18rem);display:flex}.search{border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;padding:.55rem .75rem}.search:focus{border-color:var(--mustard);box-shadow:0 0 0 3px #e8a31740}.chip-row{gap:.35rem;display:flex}.chip{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:999px;padding:.35rem .7rem;font-size:.82rem;font-weight:600}.chip.active{background:var(--chutney);border-color:var(--chutney);color:#f4fff8}.item-list,.cart-list,.order-card ul{margin:0;padding:0;list-style:none}.item-row{border-bottom:1px solid var(--line);justify-content:flex-start;align-items:flex-start;gap:.85rem;padding:.95rem 0;animation:.4s both rise;display:flex}.item-row:last-child{border-bottom:0}.item-title-row{align-items:center;gap:.45rem;display:flex}.item-title-row h3{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:700}.item-copy{flex:auto;min-width:0}.item-copy p{color:var(--ink-soft);max-width:42rem;margin:.35rem 0 0;font-size:.9rem}.price-line{font-weight:700;color:var(--ink)!important}.dot{border:1.5px solid;border-radius:2px;flex:none;width:.7rem;height:.7rem;position:relative}.dot:after{content:"";background:currentColor;border-radius:1px;position:absolute;inset:2px}.dot.veg{color:var(--chutney)}.dot.nonveg{color:var(--chili)}.add-btn,.place-btn,.order-actions button{background:var(--chili);color:#fff8ef;border:0;border-radius:999px;padding:.55rem 1rem;font-weight:700;transition:transform .15s,filter .15s,background .15s}.add-btn:hover,.place-btn:hover:not(:disabled),.order-actions button:hover{filter:brightness(1.05);transform:translateY(-1px)}.place-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.cart-pane{flex-direction:column;align-self:start;max-height:calc(100vh - 2rem);padding:1rem;display:flex;position:sticky;top:.75rem;overflow:auto}.cart-head{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.empty-cart,.empty{color:var(--ink-soft);padding:1rem 0}.cart-line{border-bottom:1px dashed var(--line);justify-content:space-between;gap:.75rem;padding:.7rem 0;display:flex}.cart-line strong{font-size:.95rem;display:block}.extra-line,.muted{color:var(--ink-soft);font-size:.82rem}.qty{background:var(--sand);border-radius:999px;align-items:center;gap:.35rem;height:fit-content;padding:.15rem;display:inline-flex}.qty button{width:1.7rem;height:1.7rem;color:var(--ink);background:#fff;border:0;border-radius:999px;font-weight:700}.qty span{text-align:center;min-width:1.1rem;font-size:.9rem;font-weight:700}.checkout{gap:.55rem;margin-top:auto;padding-top:.85rem;display:grid}.checkout label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);gap:.25rem;font-size:.78rem;font-weight:700;display:grid}.checkout input{border:1px solid var(--line);color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border-radius:10px;padding:.55rem .7rem;font-size:.95rem;font-weight:500}.total-row{justify-content:space-between;align-items:baseline;margin-top:.25rem;font-size:1.15rem;display:flex}.place-btn{background:var(--ink);width:auto;margin-top:.15rem;padding:.85rem 1rem}.checkout .place-btn,.account-box .place-btn{width:100%}.fab{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:20;background:var(--ink);color:#fff8ef;box-shadow:var(--shadow);border:0;border-radius:999px;min-height:3rem;padding:.9rem 1.2rem;font-weight:700;position:fixed}.cart-scrim,.mobile-only{display:none}.board{margin:.75rem 1.25rem 1.5rem;padding:1.1rem;animation:.5s both rise}.board-head{flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-bottom:1rem;display:flex}.ghost{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;padding:.5rem .9rem;font-weight:600}.order-grid{grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:.85rem;display:grid}.order-card{border:1px solid var(--line);border-radius:var(--radius);border-top:4px solid var(--mustard);background:#fff;flex-direction:column;gap:.7rem;padding:.9rem;animation:.45s both rise;display:flex}.order-card.status-preparing{border-top-color:#d97706}.order-card.status-ready{border-top-color:var(--chutney)}.order-card.status-done{opacity:.62;border-top-color:#8a8178}.order-card header,.order-card footer{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.order-card li{justify-content:space-between;gap:.5rem;padding:.25rem 0;font-size:.9rem;display:flex}.status-pill{text-transform:uppercase;letter-spacing:.06em;background:var(--sand);border-radius:999px;padding:.3rem .5rem;font-size:.68rem;font-weight:800}.notes{color:var(--chili);margin:0;font-size:.85rem;font-weight:600}.order-actions{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.order-actions button{padding:.4rem .75rem;font-size:.82rem}.order-actions .ghost{color:var(--ink);background:#fff}.modal-backdrop{z-index:50;background:#1a141073;place-items:end center;padding:1rem;animation:.2s both fade;display:grid;position:fixed;inset:0}.modal{width:min(28rem,100%);box-shadow:var(--shadow);background:#fffaf3;border-radius:18px 18px 14px 14px;padding:1.15rem;animation:.28s both slide-up}.modal h3{font-family:var(--font-display);margin:0;font-size:1.35rem}.option-set{border:0;gap:.45rem;margin:1rem 0 0;padding:0;display:grid}.option-set legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.35rem;font-size:.78rem;font-weight:800}.opt{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .8rem;display:flex}.opt.active{border-color:var(--chili);box-shadow:inset 0 0 0 1px var(--chili)}.opt input{opacity:0;pointer-events:none;position:absolute}.opt.extra{cursor:default}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:translate(-50%,-8px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.take-layout{grid-template-columns:12.5rem minmax(0,1fr);padding-bottom:5.5rem}.cart-pane{z-index:30;max-height:min(82dvh,640px);box-shadow:var(--shadow);padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0;transition:transform .28s;position:fixed;inset:auto 0 0;transform:translateY(110%)}.cart-pane.open{transform:translateY(0)}.cart-scrim{z-index:25;background:#1a141073;border:0;margin:0;padding:0;animation:.2s both fade;display:block;position:fixed;inset:0}.mobile-only{display:inline-flex}}@media (width<=760px){.take-layout{padding:.55rem .75rem calc(5.75rem + env(safe-area-inset-bottom,0px));grid-template-columns:1fr;gap:.65rem;min-height:auto}.topbar{box-sizing:border-box;align-items:stretch;gap:.75rem;max-width:100%;padding:.85rem .75rem .55rem}.topbar-right{flex-direction:column;align-items:stretch;gap:.55rem;width:100%;min-width:0}.auth-quick,.user-chip{box-sizing:border-box;justify-content:space-between;width:100%;max-width:100%}.auth-quick{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.auth-quick .ghost,.auth-quick .place-btn{text-align:center;justify-content:center;width:100%;margin:0}.brand-block{min-width:0;max-width:100%}.shop-meta,.shop-maps{overflow-wrap:anywhere}.menu-pane,.board,.take-layout{box-sizing:border-box;min-width:0;max-width:100%}.item-copy{overflow-wrap:anywhere;min-width:0}.cats{min-width:0;max-width:100%}.chip-row{-webkit-overflow-scrolling:touch;scrollbar-width:none;min-width:0;max-width:100%;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{flex:none}.user-chip{border-radius:14px;padding:.55rem .55rem .55rem .75rem}.view-tabs{border-radius:14px;justify-content:flex-start;width:100%}.tab{flex:1 0 auto;justify-content:center;padding:.5rem .75rem;font-size:.88rem}.brand{font-size:clamp(1.65rem,8vw,2.25rem)}.brand-logo{border-radius:10px;width:2.75rem;height:2.75rem}.shop-meta,.shop-maps{font-size:.82rem}.brand-block{max-width:none}.cats{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;gap:.4rem;max-height:none;padding:.1rem 0 .35rem;position:static;overflow-x:auto}.cats::-webkit-scrollbar{display:none}.cat{white-space:nowrap;border-color:var(--line);background:#ffffffc7;min-height:2.4rem;padding:.55rem .8rem;font-size:.85rem}.menu-pane{border-radius:14px;padding:.85rem .8rem 1rem}.menu-toolbar{flex-direction:column;align-items:stretch;gap:.65rem;margin-bottom:.55rem;padding-bottom:.65rem}.menu-heading{flex:none;width:100%}.menu-toolbar h2{font-size:1.2rem}.filters{flex:none;width:100%;min-width:0}.search{width:100%;min-height:2.6rem;font-size:1rem}.chip-row{width:100%}.chip{text-align:center;flex:1;min-height:2.25rem}.item-row{grid-template-columns:3.75rem minmax(0,1fr);grid-template-areas:"media copy""media actions";align-items:start;gap:.55rem .7rem;padding:.8rem 0;display:grid}.item-media{grid-area:media}.item-copy{grid-area:copy;min-width:0}.item-row>.add-btn{grid-area:actions;justify-self:start;min-height:2.35rem;padding:.45rem .9rem}.item-image{border-radius:10px;width:3.75rem;height:3.75rem}.item-title-row h3{font-size:.98rem;line-height:1.25}.item-copy p{font-size:.84rem}.item-details{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ad-carousel{border-radius:14px;margin:.65rem .75rem 0}.ad-slide{min-height:10.5rem;padding:1rem .9rem 2.75rem}.ad-title{font-size:clamp(1.2rem,5.5vw,1.55rem)}.ad-line{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.86rem;display:-webkit-box;overflow:hidden}.ad-cta-row{gap:.55rem}.token-banner{flex-wrap:wrap;margin:.35rem .75rem 0;padding:.75rem .85rem}.board{border-radius:14px;margin:.55rem .75rem 1.25rem;padding:.85rem}.board-head{flex-direction:column;align-items:stretch}.order-grid{grid-template-columns:1fr}.order-card header,.order-card footer{flex-direction:column;align-items:stretch}.pill-stack{flex-flow:wrap;justify-items:start;display:flex}.order-actions{justify-content:flex-start}.order-actions button{min-height:2.35rem}.prepay-set .opt{flex-wrap:wrap;align-items:flex-start}.pay-tag{margin-left:auto}.modal-backdrop{place-items:end stretch;padding:0}.modal,.auth-modal,.admin-edit-modal{width:100%;max-width:none;max-height:min(92dvh,100%);padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0;overflow:auto}.modal-actions{background:linear-gradient(#0000,#fffaf3 30%);padding-top:.75rem;position:sticky;bottom:0}.fab{left:max(.75rem, env(safe-area-inset-left));right:max(.75rem, env(safe-area-inset-right));bottom:max(.75rem, env(safe-area-inset-bottom));justify-content:center;width:auto}.cart-pane{max-height:min(88dvh,100%)}.admin-head-actions{width:100%}.admin-head-actions .ghost{flex:1}}@media (width<=420px){.brand{font-size:1.55rem}.item-row{grid-template-columns:3.25rem minmax(0,1fr)}.item-image{width:3.25rem;height:3.25rem}.tab{padding:.45rem .6rem;font-size:.8rem}.fab{padding:.8rem 1rem;font-size:.9rem}}@media (width>=1101px){.modal-backdrop{place-items:center}.modal{border-radius:18px}.cart-scrim{display:none!important}}@media (hover:none){.add-btn:hover,.place-btn:hover:not(:disabled),.order-actions button:hover,.tab:hover:not(.active),.ad-cta:hover{filter:none;transform:none}.add-btn:active,.place-btn:active:not(:disabled),.fab:active{transform:scale(.98)}}.item-row{align-items:flex-start}.item-media{flex:none}.item-row>.add-btn{flex:none;align-self:center;margin-left:auto}.item-image{object-fit:cover;background:var(--sand);border-radius:12px;place-items:center;width:4.5rem;height:4.5rem;display:grid;overflow:hidden}.item-image.placeholder{background:linear-gradient(145deg,#2a211c 0%,#1a1410 55%,#3d2318 100%)}.item-logo-fallback{opacity:.95;border-radius:8px;width:2.35rem;height:2.35rem;display:block}.item-details{color:var(--ink-soft);opacity:.9;font-size:.82rem!important}.picker-image{object-fit:cover;border-radius:12px;width:100%;max-height:10rem;margin:.65rem 0 .25rem}.auth-fields textarea,.feedback-form textarea,.admin-edit-modal textarea{border:1px solid var(--line);color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:10px;width:100%;padding:.6rem .75rem}.admin-login{box-sizing:border-box;place-items:stretch stretch;width:100%;max-width:100%;min-height:18rem;display:grid}.admin-login-card{border:1px solid var(--line);box-sizing:border-box;background:#fff;border-radius:16px;gap:.55rem;width:100%;max-width:min(24rem,100%);margin-inline:auto;padding:1.25rem;display:grid}.admin-login-card label,.admin-settings label,.feedback-form label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);gap:.3rem;font-size:.78rem;font-weight:700;display:grid}.admin-login-card input,.admin-settings input,.new-cat input{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;letter-spacing:0;background:#fff;border-radius:10px;padding:.55rem .7rem;font-weight:500}.admin-head-actions{flex-wrap:wrap;gap:.4rem;display:flex}.admin-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.admin-menu-layout{grid-template-columns:14rem minmax(0,1fr);gap:.85rem;display:grid}.admin-cats{flex-direction:column;gap:.3rem;display:flex}.admin-cats .cat{border:1px solid var(--line);background:#fff;justify-content:space-between;gap:.5rem;display:flex}.new-cat{gap:.35rem;margin-top:.5rem;display:grid}.admin-items-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.admin-items-head h3{font-family:var(--font-display);margin:0}.admin-item-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.admin-row{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:4.25rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.7rem;display:grid}.admin-row.off{opacity:.55}.admin-thumb{background:var(--sand);width:4.25rem;height:4.25rem;color:var(--ink-soft);border-radius:10px;place-items:center;font-size:.7rem;display:grid;overflow:hidden}.admin-thumb img{object-fit:cover;width:100%;height:100%}.admin-row-copy strong{display:block}.admin-desc{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.25rem 0 0;font-size:.85rem;display:-webkit-box;overflow:hidden}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:.3rem;display:flex}.ghost.danger{color:var(--chili);border-color:#c43c1a59}.settings-card{border:1px solid var(--line);background:#fff;border-radius:14px;gap:.55rem;margin-bottom:.85rem;padding:1rem;display:grid}.feedback-toggle-card{grid-template-columns:1fr auto;align-items:center}.switch{text-transform:none;letter-spacing:0;color:var(--ink);align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;display:inline-flex}.switch input{width:1.15rem;height:1.15rem}.feedback-admin-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.feedback-admin-list li{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;gap:.75rem;padding:.85rem;display:flex}.admin-settings{gap:.85rem;max-width:28rem;display:grid}.admin-edit-modal{max-height:min(90vh,720px);overflow:auto}.admin-edit-grid{gap:.55rem;display:grid}.check-row{align-items:center;gap:.5rem;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;font-size:.92rem!important;display:flex!important}.image-preview{gap:.45rem;display:grid}.image-preview img{object-fit:cover;border-radius:12px;width:100%;max-height:10rem}.star-row{gap:.25rem;display:flex}.star{color:#cbb8a0;background:0 0;border:0;padding:0;font-size:1.6rem;line-height:1}.star.on{color:var(--mustard)}.feedback-panel .feedback-form{margin-bottom:1.25rem}.feedback-form-title{margin:0 0 .35rem;font-size:1.05rem}.feedback-form label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);gap:.25rem;margin-top:.55rem;font-size:.78rem;font-weight:700;display:grid}.feedback-form input{border:1px solid var(--line);color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border-radius:10px;padding:.6rem .75rem;font-size:1rem;font-weight:500}.reviews-public h3{margin:0 0 .65rem;font-size:1.1rem}.reviews-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.review-card{border:1px solid var(--line);background:#ffffffb8;border-radius:14px;padding:.85rem 1rem}.review-card header{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.35rem;display:flex}.review-stars{color:#c43c1a;letter-spacing:.04em;font-size:.9rem}.review-card p{color:var(--ink);margin:0 0 .45rem;line-height:1.45}.review-card time{color:var(--ink-soft);font-size:.75rem}.admin-shell-bar{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;max-width:100%;padding:1rem 1.25rem .35rem;display:flex}.admin-shell-title{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;max-width:100%;margin:0;font-size:clamp(1.25rem,5vw,1.85rem)}.admin-app .admin-board,.admin-app .admin-login{box-sizing:border-box;max-width:100%;margin-top:.5rem;overflow-x:hidden}.admin-login{box-sizing:border-box;place-items:stretch stretch;width:100%;max-width:100%;min-height:18rem;display:grid;overflow-x:hidden}.admin-login-card{border:1px solid var(--line);box-sizing:border-box;background:#fff;border-radius:16px;gap:.55rem;width:100%;max-width:min(24rem,100%);padding:1.25rem;display:grid}.admin-login-card input{box-sizing:border-box;width:100%;max-width:100%}.admin-login-card .modal-actions{grid-template-columns:auto 1fr;gap:.5rem;width:100%;display:grid}.admin-login-card .modal-actions .place-btn{width:100%;min-width:0;margin-top:0}.admin-login-card .modal-actions .ghost{width:auto}.admin-wash{background:radial-gradient(ellipse 70% 45% at 90% -10%, #1f6b4a38, transparent 55%), radial-gradient(ellipse 55% 40% at 0% 0%, #1a14102e, transparent 50%), linear-gradient(180deg, #efe8df 0%, var(--paper) 40%, #f3ebe1 100%)}.closed-banner{color:#fff8ef;background:#3d3229;border-radius:14px;margin:.35rem 1.25rem 0;padding:.9rem 1rem;animation:.4s both rise}.closed-banner .eyebrow{color:#f0c36a}.closed-banner strong{font-family:var(--font-display);margin:.15rem 0;font-size:clamp(1.15rem,3vw,1.45rem);display:block}.closed-banner .subtitle{color:#fff8efd1;margin:.2rem 0 0}.signoff-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.signoff-card.open{background:#1f6b4a14;border-color:#1f6b4a59}.signoff-card.closed{background:#c43c1a14;border-color:#c43c1a59}.danger-btn{background:var(--chili)!important}.add-btn:disabled{opacity:.45;cursor:not-allowed;filter:none;transform:none}@media (width<=760px){.closed-banner{margin-inline:.75rem}}.staff-link{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;text-underline-offset:3px;opacity:.7;background:0 0;border:0;padding:.35rem;font-size:.78rem;font-weight:600;text-decoration:underline}.staff-link:hover{opacity:1;color:var(--ink)}.counter-pos-grid{grid-template-columns:1.4fr .9fr;align-items:start;gap:1rem;display:grid}.horizontal-cats{flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem;display:flex}.counter-item-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;display:grid}.counter-item-btn{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;gap:.25rem;min-height:4.5rem;padding:.7rem .75rem;display:grid}.counter-item-btn strong{font-size:.88rem;line-height:1.25}.counter-item-btn span{color:var(--ink-soft);font-size:.78rem;font-weight:600}.counter-cart{border:1px solid var(--line);background:#ffffffb8;border-radius:16px;gap:.55rem;padding:.9rem;display:grid;position:sticky;top:.75rem}.counter-cart-lines{gap:.45rem;max-height:40vh;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.counter-cart-lines li{border-bottom:1px solid var(--line);gap:.25rem;padding-bottom:.4rem;display:grid}.counter-cart-lines strong{font-size:.88rem;display:block}.counter-cart-lines em{color:var(--ink-soft);font-size:.8rem;font-style:normal}.qty-row{align-items:center;gap:.4rem;display:inline-flex}.qty-row button{border:1px solid var(--line);background:#fff;border-radius:999px;width:1.6rem;height:1.6rem}.counter-pay-methods{flex-wrap:wrap;gap:.35rem;margin:.15rem 0 .35rem;display:flex}.counter-upi-box{text-align:center;background:#fffaf0;border:1px dashed #8a5a0859;border-radius:12px;justify-items:center;gap:.35rem;padding:.65rem;display:grid}.counter-upi-qr{background:#fff;border-radius:8px;width:180px;height:180px}.counter-total{justify-content:space-between;align-items:center;font-size:1.05rem;display:flex}.option-list{gap:.4rem;margin:.75rem 0;display:grid}.option-row{text-transform:none;letter-spacing:0;align-items:center;gap:.5rem;font-weight:500;display:flex}@media (width<=900px){.counter-pos-grid{grid-template-columns:1fr}.counter-cart{position:static}}@media (width<=760px){.admin-shell-bar{flex-direction:column;align-items:stretch;padding-inline:.75rem}.admin-shell-bar .ghost{text-align:center;width:100%}.admin-app .board{box-sizing:border-box;width:calc(100vw - 1.5rem);max-width:calc(100vw - 1.5rem);margin-inline:.75rem;overflow-x:hidden}.admin-app .admin-login-card{max-width:100%;padding:1rem}.admin-app .admin-login-card .subtitle{overflow-wrap:anywhere}.auth-quick{grid-template-columns:1fr 1fr;gap:.5rem;display:grid!important}.auth-quick .ghost,.auth-quick .place-btn{text-align:center;box-sizing:border-box;justify-content:center;min-width:0;width:100%!important}.view-tabs .tab{padding:.45rem .65rem;font-size:.82rem}}@media (width<=900px){.admin-menu-layout{grid-template-columns:1fr}.admin-cats{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;padding-bottom:.25rem;overflow-x:auto}.admin-cats::-webkit-scrollbar{display:none}.admin-cats .cat{white-space:nowrap}.admin-row{grid-template-columns:3.5rem minmax(0,1fr)}.admin-row-actions{grid-column:1/-1}.admin-row-actions .ghost{flex:1;justify-content:center}.feedback-toggle-card{grid-template-columns:1fr}.feedback-admin-list li{flex-direction:column}}
