:root{--ink:#2b1b16;--forest:#3b1b13;--forest-soft:#6f3524;--brand-brown:#3b1b13;--cream:#fff8ed;--surface:#fffdf8;--surface-2:#f8ede0;--accent:#ffb11b;--border:#eadbca;--muted:#74645d;--warm:#ed681f;--warm-dark:#b83b12}
body{color:var(--ink);background:radial-gradient(circle at 84% 0,#ffd99b80 0,transparent 27rem),linear-gradient(180deg,#fff3df 0,#fffaf1 25rem,#fff8ed 100%)}
.topbar{background:rgba(59,27,19,.94);box-shadow:0 8px 30px rgba(59,27,19,.2)}
.banner{background:#fff0b8;border-color:#e9c45f;color:#624300}
.hero{background:radial-gradient(circle at 80% 10%,#9b4b2f 0,transparent 24rem),linear-gradient(135deg,#32150f,#612918);box-shadow:0 28px 70px rgba(76,31,18,.23)}.hero:after{background:#ffb11b24}.hero .eyebrow{color:#ffd265}.hero-logo{box-shadow:0 24px 55px #210b075c}
.tools{background:linear-gradient(180deg,var(--cream) 75%,transparent)}.search input,input,textarea,select{border-color:var(--border);background:rgba(255,253,248,.96)}.search input:focus,input:focus,textarea:focus,select:focus{border-color:#cc754b;box-shadow:0 0 0 4px rgba(237,104,31,.13)}
.chip{border-color:var(--border);background:#fffaf3}.chip:hover{border-color:#d9a27f;background:#fff}.chip.active{border-color:#5a2618;background:#4b2117;box-shadow:0 7px 18px rgba(75,33,23,.2)}
.section-head .eyebrow,.store-hero .eyebrow{color:var(--warm-dark)}.section-head h2,.store-hero h1{color:#3b1b13}.menu-meta{background:#f6e5d3;color:#6a2c1b}
.menu-card{border-color:#efe0d1;background:rgba(255,253,248,.92);box-shadow:0 10px 30px rgba(88,47,27,.06)}.menu-card:hover{border-color:#e2b895;box-shadow:0 20px 44px rgba(88,47,27,.13)}.product-visual{background:linear-gradient(145deg,#fff3dd,#f1dfc8)}.drink-icon{background:linear-gradient(145deg,#ffd966,#ffad21);color:#54210f}.menu-card .mode{background:#f8eadb;color:#754029}
.menu-card button,.primary{background:linear-gradient(135deg,#f47b24,#db4c16);color:#fff;box-shadow:0 9px 20px rgba(200,68,19,.24)}.menu-card button:hover,.primary:hover{filter:saturate(1.08) brightness(1.04);box-shadow:0 12px 27px rgba(200,68,19,.3)}.menu-card button:disabled{background:#e7dfd4;color:#887b72}
.cart-button{background:linear-gradient(135deg,#4a2016,#712f1d);border-color:#ffffff1c;box-shadow:0 16px 38px rgba(67,27,17,.34)}.toast{background:#3b1b13}.drawer{border-color:var(--border);background:rgba(255,253,248,.98)}.drawer-head{background:rgba(255,253,248,.95)}.icon-btn{background:#f6eadd;color:#612918}.cart-row,.total{border-color:var(--border)}
dialog{border-color:#eddcca;background:#fffdf8}dialog::backdrop{background:#28130dc2}.choice-grid label{border-color:#e7d7c7;background:#fff8ef}.choice-grid label:has(input:checked){border-color:#dc6727;background:#ffead7;color:#713019}.success-mark{background:#e4f6e9;color:#19754e}
.store-card{border-color:#ecddce;background:rgba(255,253,248,.93);box-shadow:0 12px 34px rgba(88,47,27,.07)}.store-card:hover{border-color:#dfb28d;box-shadow:0 24px 52px rgba(88,47,27,.14)}.store-image{background:linear-gradient(145deg,#fff8ea,#f1dfc9)}.store-card strong{color:#c04417}.store-state{background:#e5f3e9;color:#19734f}
.admin-main .panel,.admin-row,.order-card{border-color:var(--border);background:rgba(255,253,248,.94);box-shadow:0 8px 26px rgba(88,47,27,.06)}.admin-head h1{color:#3b1b13}.secondary{border-color:var(--border);background:#fffaf3;color:#6a2c1b}.secondary:hover{background:#f8eadc;border-color:#dcb796}.tabs{background:#f1e3d5}.image-preview{border-color:#e5cfba!important}
.admin-store-picker{margin:0 0 16px!important;padding:14px 18px!important}.admin-store-picker label{display:grid;grid-template-columns:auto minmax(220px,360px);align-items:center;justify-content:space-between;gap:18px;font-weight:850}.admin-store-picker select{width:100%;margin:0}@media(max-width:520px){.admin-store-picker label{grid-template-columns:1fr;gap:7px}}
.admin-store-picker #adminStoreDescription{margin:10px 0;color:var(--muted);white-space:pre-line}.store-actions{display:flex;flex-wrap:wrap;gap:8px}.store-actions button{margin-top:4px}#storeForm{display:grid;gap:12px}#storeForm h2{margin:0 0 4px}#storeForm label{display:block;font-weight:700}#storeForm textarea{resize:vertical}@media(max-width:520px){.store-actions{display:grid;grid-template-columns:1fr}.store-actions button{width:100%}}
.admin-head>div{min-width:0}.admin-head h1{overflow-wrap:anywhere}
.store-card p,.hero-copy>p:last-child{white-space:pre-line}
.custom-options{display:grid;gap:14px}.custom-group>strong{display:block;margin-bottom:7px}.custom-group .choice-grid{grid-template-columns:repeat(auto-fit,minmax(86px,1fr))}
.product-visual{width:100%;height:auto!important;aspect-ratio:4/3;overflow:hidden}.product-visual img{display:block;width:100%!important;height:100%!important;max-width:100%;max-height:100%;padding:0!important;object-fit:contain!important;object-position:center!important;background:#fff!important;transform:none!important}.menu-card:hover .product-visual img{transform:none!important}.store-image img,.image-preview{display:block;width:100%;height:100%;padding:0!important;object-fit:contain!important;object-position:center!important;background:#fff!important}.hero-logo img{object-fit:contain!important;object-position:center!important}
.admin-main{min-width:0;overflow-x:hidden}.admin-main .tabs{width:100%;max-width:100%;box-sizing:border-box}.admin-main .tabs .chip{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:3px}@media(max-width:600px){.admin-main .tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:5px;overflow:visible}.admin-main .tabs .chip{width:100%;padding:10px 7px;font-size:.9rem;white-space:nowrap}.admin-main .order-badge{min-width:20px;height:20px;margin-left:3px;padding-inline:5px}.admin-main{padding-inline:12px}}
#optionDialog{max-height:calc(100dvh - 24px);overflow-y:auto}
#optionDialog .custom-group .choice-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
#optionDialog .custom-group .choice-grid label{display:flex;align-items:center;justify-content:flex-start;min-height:50px;padding:10px 14px;gap:12px;border:1px solid #e2e9e4;border-radius:12px;background:#fff;color:#28352e;text-align:left;font-weight:500;cursor:pointer}
#optionDialog .custom-group .choice-grid label:has(input:checked){border-color:#91c9a5;background:#f3faf5;color:#17643b;font-weight:700}
#optionDialog .custom-group .choice-grid label:focus-within{outline:2px solid #29935a;outline-offset:2px}
#optionDialog .custom-group .choice-grid input[type="radio"]{appearance:none;-webkit-appearance:none;display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;margin:0;padding:0;border:2px solid #a8b6ac;border-radius:50%;background:#fff;box-shadow:none;cursor:pointer}
#optionDialog .custom-group .choice-grid input[type="radio"]::after{content:'';width:7px;height:7px;border-radius:50%;background:#fff;opacity:0}
#optionDialog .custom-group .choice-grid input[type="radio"]:checked{border-color:#249653;background:#249653}
#optionDialog .custom-group .choice-grid input[type="radio"]:checked::after{opacity:1}
#optionDialog .choice-name{min-width:0;flex:1}#optionDialog .choice-extra{margin-left:auto;white-space:nowrap;color:#17643b;font-size:.9rem}
.cart-row .cart-invalid{margin:7px 0;color:#b42318;font-weight:750}
.location-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.location-actions .secondary{min-height:44px}.location-preview{display:inline-flex;min-height:40px;align-items:center;color:#17643b;font-weight:750;text-decoration:underline;text-underline-offset:3px}.checkout #locationStatus{margin:7px 0 4px;line-height:1.45}
.top-actions{display:flex;align-items:center;gap:6px}.top-action{min-height:42px;padding:0 13px;border:0;border-radius:12px;background:transparent;color:#fff;font:inherit;text-decoration:none;cursor:pointer}.top-action:hover{background:#ffffff14}.required{color:#d92d20;font-weight:900}.checkout .field-help{margin:5px 0 10px}.payment-dialog{max-width:480px}.payment-total{display:flex;justify-content:space-between;align-items:center;margin:13px 0;padding:14px;border-radius:15px;background:#fff1de}.payment-total strong{margin:0;font-size:1.35rem;color:#a83c16}.payment-dialog h3{margin:15px 0 9px}.payment-method-card{margin:9px 0;padding:13px;border:1px solid var(--border);border-radius:17px;background:#fff}.payment-method-card h4{margin:0 0 7px}.payment-qr{display:block;width:min(260px,100%);aspect-ratio:1;margin:10px auto;object-fit:contain;border-radius:12px;background:#fff}.payment-instructions{margin:7px 0;color:var(--muted);white-space:pre-wrap}.payment-note{font-size:.82rem;color:#8a5140}.slip-form{display:grid;gap:10px;margin:15px 0;padding:15px;border:1px solid #dce7df;border-radius:16px;background:#f6faf7;text-align:left}.slip-form h3{margin:0!important}.slip-form label{font-size:.84rem;font-weight:700}.slip-form input::file-selector-button{border:0;border-radius:9px;padding:8px 10px;margin-right:8px;background:#e0ece4;color:#164a3a;font:inherit;font-weight:700}.slip-form .primary{margin:0}.slip-form p{margin:0;font-size:.82rem;color:#52665a}.payment-close{width:100%}#trackForm{display:grid;gap:12px}#trackResult{display:grid;gap:10px;margin-top:5px}.tracking-card{padding:14px;border-radius:16px;background:#fff5e9}.tracking-card h3{margin:0 0 5px}.tracking-card p{margin:4px 0}.status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#ffe0bd;color:#8c3416;font-weight:850;font-size:.8rem}@media(max-width:520px){.top-action{padding-inline:9px;font-size:.88rem}.admin-link{padding-inline:8px!important}.payment-dialog{width:calc(100% - 18px)}}
@media(max-width:420px){.topbar{padding-inline:8px}.brand{padding-inline:5px;font-size:1rem}.top-actions{gap:2px}.top-action{padding-inline:5px;font-size:.75rem}.admin-link{padding-inline:5px!important;font-size:.75rem}}
.payment-dialog{max-height:calc(100dvh - 24px);overflow-y:auto}.slip-form input[type=file]{display:block;width:100%;max-width:100%;margin-top:7px;font-size:.8rem}
.payment-method-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.payment-method-title h4{margin:0}.payment-method-title span{padding:5px 8px;border-radius:999px;background:#e0f2e7;color:#176043;font-size:.7rem;font-weight:850}.promptpay-details{margin:8px 0 12px;padding:12px;border-radius:13px;background:#eff8f2;text-align:left}.promptpay-details>span{display:block;color:#52665a;font-size:.75rem;font-weight:700}.promptpay-details>strong{display:block;margin:2px 0 7px;color:#176043;font-size:1.35rem}.promptpay-details p{margin:3px 0;color:#405c4d;font-size:.82rem}
.optional-label{color:var(--muted);font-size:.78rem;font-weight:500}
.slip-review{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px 11px;margin:15px 0;padding:15px;border:1px solid #b8dcc3;border-radius:16px;background:#edf8f0;text-align:left}.slip-review-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#1b8055;color:#fff;font-weight:900}.slip-review h3{margin:0!important;color:#176043}.slip-review p{margin:3px 0 0;color:#496454;font-size:.83rem}.slip-replace{grid-column:1/-1;justify-self:start;border:0;background:transparent;color:#176043;font:inherit;font-size:.82rem;font-weight:750;text-decoration:underline;cursor:pointer}.payment-close.primary{margin-top:4px;background:#176043;color:#fff}
