:root{--ink:#1f2a24;--shell:#f3ece2;--brass:#b98a4e;--wine:#6e2a32;--fog:#2b2e2c;--sage:#8a9a8c;--line:#1f2a241a}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{color:var(--ink);background:#dcd3c4;font-family:Inter,sans-serif;font-size:14px}h1,h2,h3{font-family:Fraunces,serif;font-weight:600}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea{font-family:inherit}.demo-bar{background:var(--fog);color:#f3ece2cc;z-index:500;justify-content:space-between;align-items:center;padding:8px 14px;font-size:11px;display:flex;position:fixed;top:0;left:0;right:0}.demo-bar .lbl{opacity:.6}.demo-switch{background:#ffffff14;border-radius:5px;gap:4px;padding:2px;display:flex}.demo-switch button{color:#f3ece299;border-radius:3px;padding:4px 10px;font-size:10.5px;font-weight:600}.demo-switch button.active{background:var(--brass);color:var(--ink)}.phone-wrap{background:var(--shell);flex-direction:column;width:100%;max-width:460px;height:100dvh;max-height:100dvh;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 60px #00000026}@media (width>=520px){.phone-wrap{border-radius:20px;height:100dvh;max-height:100dvh}}.screen{min-height:0;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));flex:1;animation:.35s screenIn;overflow:hidden auto}@keyframes screenIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.topbar{background:var(--shell);z-index:20;border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex;position:sticky;top:0}.topbar.transparent{background:0 0;border:none;width:100%;position:absolute}.back-btn{border:1px solid var(--line);background:#fff;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.topbar h2{flex:1;font-size:16px}.welcome-hero{background:var(--ink);color:var(--shell);padding:56px 24px 40px;position:relative;overflow:hidden}.welcome-hero .mark{width:40px;height:40px;color:var(--brass);margin-bottom:20px}.welcome-hero .loc-tag{letter-spacing:.04em;opacity:.6;text-transform:uppercase;font-size:11px}.welcome-hero h1{margin-top:8px;font-size:28px;line-height:1.2}.action-grid{flex-direction:column;gap:10px;padding:22px 18px;display:flex}.action-item{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;padding:16px 18px;transition:transform .15s,box-shadow .15s;display:flex}.action-item:active{transform:scale(.98)}.action-item .l{align-items:center;gap:13px;display:flex}.action-item .ic{background:var(--shell);width:38px;height:38px;color:var(--brass);border-radius:9px;flex:0 0 38px;justify-content:center;align-items:center;display:flex}.action-item .ic svg{width:18px;height:18px}.action-item .t{font-size:14.5px;font-weight:600}.action-item .s{color:#1f2a2480;margin-top:2px;font-size:11.5px}.action-item .arrow{color:var(--brass);font-size:16px}.action-item-featured{border:2px solid var(--brass);background:linear-gradient(135deg, #fff 0%, var(--shell) 100%);padding:18px 20px;box-shadow:0 8px 24px #b98a4e29}.action-item-featured .ic{background:var(--brass);color:#fff;border-radius:10px;flex:0 0 44px;width:44px;height:44px}.action-item-featured .ic svg{width:20px;height:20px}.action-item-featured .t{font-family:Fraunces,serif;font-size:17px;font-weight:600;line-height:1.25}.action-item-featured .s{color:#1f2a24ad;margin-top:4px;font-size:12px}.action-item-featured .arrow{font-size:18px;font-weight:700}.action-badge{color:var(--brass);letter-spacing:.06em;text-transform:uppercase;background:#b98a4e24;border-radius:999px;margin-bottom:5px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.gate{text-align:center;padding:60px 26px}.gate .mark{width:56px;height:56px;color:var(--brass);margin:0 auto 24px}.gate h1{font-size:24px}.gate p{color:#1f2a2499;max-width:280px;margin-top:10px;margin-left:auto;margin-right:auto;font-size:13.5px}.code-input{text-align:center;letter-spacing:.3em;border:1.5px solid var(--line);text-transform:uppercase;border-radius:10px;width:100%;margin-top:28px;padding:16px;font-family:monospace;font-size:26px}.code-input:focus{border-color:var(--brass);outline:none}.gate-error{color:var(--wine);margin-top:10px;font-size:12px}.gate-hint{color:#1f2a2466;margin-top:18px;font-size:11.5px}.cat-tabs{background:var(--shell);z-index:19;border-bottom:1px solid var(--line);gap:8px;padding:14px 18px;display:flex;position:sticky;top:65px;overflow-x:auto}.cat-tab{border:1px solid var(--line);white-space:nowrap;color:#1f2a2499;background:#fff;border-radius:20px;flex:none;padding:8px 16px;font-size:12.5px;font-weight:600}.cat-tab.active{background:var(--ink);color:var(--shell);border-color:var(--ink)}.search-row{padding:14px 18px 0}.search-box{border:1px solid var(--line);color:#1f2a2466;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}.search-box svg{flex:0 0 14px;width:14px;height:14px}.search-box input{width:100%;color:var(--ink);background:0 0;border:none;outline:none;font-size:13px}.menu-list{padding:16px 18px}.menu-item{border-bottom:1px solid var(--line);gap:13px;padding:14px 0;display:flex}.menu-item:last-child{border-bottom:none}.menu-thumb{background-position:50%;background-size:cover;border-radius:10px;flex:0 0 64px;width:64px;height:64px}.menu-info{flex:1;min-width:0}.menu-info .n{font-size:14px;font-weight:600}.menu-info .d{color:#1f2a2480;margin-top:3px;font-size:11.5px}.menu-info .p{color:var(--brass);margin-top:6px;font-size:13px;font-weight:600}.menu-add{background:var(--shell);border:1px solid var(--line);width:32px;height:32px;color:var(--ink);border-radius:50%;flex:0 0 32px;align-self:center;font-size:17px;transition:background .2s,transform .2s}.menu-add.added{background:var(--sage);color:#fff}.sheet-overlay{z-index:60;background:#1f2a2473;position:fixed;inset:0}.sheet{z-index:61;background:#fff;border-radius:20px 20px 0 0;max-height:88%;transition:transform .35s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%)}.sheet.open{transform:translateY(0)}.sheet-img{background-position:50%;background-size:cover;border-radius:20px 20px 0 0;height:150px}.sheet-body{padding:20px 22px 100px;position:relative}.sheet-handle{background:#00000026;border-radius:3px;width:36px;height:4px;margin:10px auto 0}.sheet-body h2{font-size:20px}.sheet-body .desc{color:#1f2a2499;margin-top:8px;font-size:13px}.addon-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 0;font-size:13.5px;display:flex}.addon-row input{width:18px;height:18px}.qty-row{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.qty-pill{border:1px solid var(--line);border-radius:24px;align-items:center;gap:16px;padding:8px 18px;display:flex}.qty-pill button{color:var(--brass);width:20px;font-size:16px;font-weight:700}.sheet-foot{border-top:1px solid var(--line);background:#fff;padding:16px 22px;position:sticky;bottom:0}.add-cart-btn{background:var(--wine);width:100%;color:var(--shell);border-radius:10px;justify-content:space-between;padding:15px 20px;font-size:14px;font-weight:700;display:flex}.cart-float{background:var(--wine);color:var(--shell);z-index:30;border-radius:12px;justify-content:space-between;align-items:center;padding:14px 18px;animation:.3s cartPop;display:flex;position:absolute;bottom:78px;left:14px;right:14px;box-shadow:0 12px 30px #00000040}@keyframes cartPop{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cart-float .l{font-size:12.5px;font-weight:600}.cart-float .l span{opacity:.7;font-weight:400}.cart-float .r{align-items:center;gap:6px;font-size:12.5px;font-weight:700;display:flex}.cart-item{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 18px;display:flex}.cart-item .menu-thumb{flex:0 0 52px;width:52px;height:52px}.cart-item-info{flex:1}.cart-item-info .n{font-size:13.5px;font-weight:600}.cart-item-info .p{color:var(--brass);margin-top:3px;font-size:12px}.qty-mini{border:1px solid var(--line);border-radius:20px;align-items:center;gap:10px;padding:5px 12px;display:flex}.qty-mini button{color:var(--brass);font-weight:700}.cart-empty{text-align:center;color:#1f2a2473;padding:80px 30px}.cart-empty .mark{opacity:.3;width:44px;height:44px;margin:0 auto 16px}.cart-summary{border-top:1px solid var(--line);margin-top:6px;padding:16px 18px}.sum-row{color:#1f2a2499;justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.sum-row.total{color:var(--ink);border-top:1px solid var(--line);margin-top:6px;padding-top:12px;font-size:15px;font-weight:700}.instructions{margin:0 18px 18px}.instructions textarea{border:1px solid var(--line);resize:none;border-radius:8px;width:100%;height:56px;padding:12px;font-size:13px}.instructions label{color:#1f2a2499;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.pay-option{border:1.5px solid var(--line);border-radius:10px;align-items:center;gap:12px;margin:0 18px 10px;padding:15px 16px;display:flex}.pay-option.selected{border-color:var(--brass);background:#b98a4e0f}.pay-option .radio{border:1.5px solid var(--line);border-radius:50%;flex:0 0 18px;width:18px;height:18px;position:relative}.pay-option.selected .radio:after{content:"";background:var(--brass);border-radius:50%;position:absolute;inset:3px}.pay-option .t{font-size:13.5px;font-weight:600}.pay-option .s{color:#1f2a2480;margin-top:2px;font-size:11px}.pay-option.disabled{opacity:.55}.bank-transfer-panel{padding:0 18px 8px}.bank-transfer-card{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.bank-row{justify-content:space-between;gap:12px;font-size:13px;display:flex}.bank-row span{color:#1f2a248c}.bank-account{letter-spacing:.04em}.bank-hint,.bank-note,.online-unavailable,.payment-wait-note{color:#1f2a249e;font-size:12px;line-height:1.45}.bank-note,.online-unavailable{margin-top:10px}.online-unavailable{background:#b98a4e14;border:1px solid #b98a4e2e;border-radius:10px;margin:0 18px 10px;padding:12px 14px}.payment-status-pill{color:var(--brass);background:#b98a4e1f;border-radius:999px;margin-top:8px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.payment-wait-note{text-align:center;margin-bottom:10px}.field-block{padding:0 18px 14px}.field-block label{color:#1f2a2499;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.field-block input{border:1px solid var(--line);border-radius:8px;width:100%;padding:12px 14px;font-size:13.5px}.bottom-cta{left:0;right:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);z-index:35;background:#fff;padding:14px 18px;position:absolute}.primary-btn{background:var(--wine);width:100%;color:var(--shell);border-radius:10px;padding:15px;font-size:14px;font-weight:700}.primary-btn:disabled{opacity:.4}.primary-btn.ink{background:var(--ink)}.track-hero{background:var(--ink);color:var(--shell);text-align:center;padding:50px 24px 34px}.track-hero .num{opacity:.5;letter-spacing:.05em;font-size:11px}.track-hero h1{margin-top:8px;font-size:24px}.track-hero .eta{color:var(--brass);margin-top:6px;font-size:12.5px}.track-steps{padding:26px 24px}.t-step{gap:14px;padding-bottom:26px;display:flex;position:relative}.t-step:last-child{padding-bottom:0}.t-step:before{content:"";background:var(--line);width:1.5px;position:absolute;top:22px;bottom:0;left:10px}.t-step:last-child:before{display:none}.t-dot{border:2px solid var(--line);z-index:1;background:#fff;border-radius:50%;flex:0 0 21px;justify-content:center;align-items:center;width:21px;height:21px;transition:all .3s;display:flex}.t-step.done .t-dot{background:var(--sage);border-color:var(--sage)}.t-step.done .t-dot:after{content:"✓";color:#fff;font-size:11px}.t-step.active .t-dot{background:var(--brass);border-color:var(--brass);animation:1.4s ease-in-out infinite pulseDot}@keyframes pulseDot{0%,to{box-shadow:0 0 #b98a4e59}50%{box-shadow:0 0 0 7px #b98a4e00}}.t-step .tt{padding-top:2px;font-size:13.5px;font-weight:600}.t-step.pending .tt{color:#1f2a2459}.t-step .td{color:#1f2a2480;margin-top:2px;font-size:11.5px}.track-items{border:1px solid var(--line);background:#fff;border-radius:10px;margin:0 18px 18px;padding:16px}.track-items .row{justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.track-items .row.total-row{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-weight:700}.req-confirm{text-align:center;padding:60px 26px}.req-confirm .icon{background:var(--shell);width:70px;height:70px;color:var(--sage);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 22px;display:flex}.req-confirm .icon svg{width:32px;height:32px}.req-confirm h2{font-size:20px}.req-confirm p{color:#1f2a2499;margin-top:10px;font-size:13px}.bottom-nav{border-top:1px solid var(--line);z-index:40;padding-bottom:env(safe-area-inset-bottom,0px);background:#fff;flex-shrink:0;display:flex;position:absolute;bottom:0;left:0;right:0}.nav-btn{color:#1f2a2466;flex-direction:column;flex:1;align-items:center;gap:3px;padding:11px 0 9px;display:flex;position:relative}.nav-btn.active{color:var(--ink)}.nav-btn svg{width:19px;height:19px}.nav-btn span{font-size:10px;font-weight:600}.nav-badge{background:var(--wine);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:15px;height:15px;font-size:9px;font-weight:700;display:flex;position:absolute;top:5px;right:calc(50% - 20px)}.toast{background:var(--ink);color:var(--shell);z-index:100;opacity:0;white-space:nowrap;pointer-events:none;border-radius:20px;padding:10px 18px;font-size:12.5px;font-weight:600;transition:opacity .25s,transform .25s;position:absolute;top:70px;left:50%;transform:translate(-50%)translateY(-10px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.menu-empty{text-align:center;color:#1f2a2466;padding:50px 20px;font-size:13px}.section-label{color:#1f2a2499;padding:4px 18px 8px;font-size:12px;font-weight:600}.cart-checkout-btn{padding:0 18px 26px}.order-history-list{flex-direction:column;gap:8px;padding:0 18px 16px;display:flex}.order-history-row{text-align:left;width:100%;color:var(--ink,#1f2a24);background:#fff;border:1px solid #1f2a2414;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 14px;font-size:13px;display:grid}.kiosq-logo{color:var(--brass,#b98a4e);align-items:center;gap:10px;display:flex}.kiosq-logo-mark{flex-shrink:0;width:28px;height:28px}.kiosq-logo-word{color:inherit;letter-spacing:-.01em;font-family:Fraunces,serif;font-size:1.25em;font-weight:500}.auth-brand-header{text-align:center;margin-bottom:4px}.auth-brand-mark{width:64px;height:64px;color:var(--brass,#b98a4e);margin:0 auto 14px;display:block}.auth-brand-wordmark{letter-spacing:-.01em;color:var(--ink,#1f2a24);font-family:Fraunces,serif;font-size:32px;font-weight:500;line-height:1.1}.auth-brand-product{color:#1f2a249e;margin-top:6px;font-size:14px;font-weight:500}.loading-mark{width:52px;height:52px;color:var(--brass,#b98a4e);margin:0 auto}
