:root{--brand-red:#BB461C;--brand-green:#4B5319;--brand-cream:#FEF7E8;--bg:var(--brand-cream);--panel:#fffaf0;--panel2:#f6ead3;--line:#cbbd9d;--text:#303516;--muted:#6f704f;--green:var(--brand-green);--blue:var(--brand-red);--danger:#9f2f1b;--amber:#966316;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--brand-cream);color:var(--text);font:16px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}button,input{font:inherit}header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--line);background:#10151c}h1,h2,p{margin:0}h1{font-size:25px}h1 span{font-size:15px;color:var(--muted);font-weight:500}.eyebrow{color:var(--green);font-size:11px;letter-spacing:.13em;font-weight:800;margin-bottom:5px}.today{text-align:right}.today span,.today small{display:block;color:var(--muted)}.today strong{font-size:26px;color:var(--green)}main{display:grid;grid-template-columns:210px minmax(400px,1fr) 390px;gap:14px;padding:14px;height:calc(100vh - 92px)}.category-panel,.catalog,.cart-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.category-panel{padding:14px;overflow-y:auto}.nav-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:800;margin:4px 6px 9px}.main-categories{display:flex;flex-direction:column;gap:6px}.subcategories{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px}.category-button,.subcategory-button{width:100%;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text);padding:11px 12px;text-align:left;cursor:pointer;font-weight:700}.category-button{font-size:16px}.subcategory-button{font-size:13px;color:#c6d0dc;padding:9px 12px}.category-button:hover,.subcategory-button:hover{background:var(--panel2)}.category-button.selected{background:#173253;border-color:var(--blue);color:#fff}.subcategory-button.selected{background:#173924;border-color:#2d7a4a;color:#d6ffe2}.nav-divider{height:1px;background:var(--line);margin:16px 0}.catalog{padding:16px}.section-head,.cart-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.section-head h2,.cart-title h2{font-size:19px}.section-head small{color:var(--muted)}.catalog .section-head{display:block}.catalog-heading{width:100%;min-width:0}.catalog-title-row{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.catalog-title-row h2{flex:0 0 auto}.catalog-title-row .subcategories{min-width:0;flex-wrap:nowrap;overflow-x:auto;gap:4px}.catalog-title-row .subcategory-button{width:auto;flex:0 0 auto;padding:6px 8px;font-size:11px}.catalog-meta-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px}#search{width:min(280px,46%);background:#0d1218;border:1px solid var(--line);border-radius:12px;color:var(--text);padding:10px 14px}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:11px;overflow:auto;max-height:calc(100vh - 176px);padding-right:3px}.product{position:relative;text-align:left;border:1px solid var(--line);border-radius:15px;background:var(--panel2);color:var(--text);overflow:hidden;transition:.15s}.product:hover,.product:focus-within{border-color:var(--blue);transform:translateY(-1px)}.product.selected-product{border-color:var(--green);box-shadow:0 0 0 1px #4ade8055}.product-main{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.product-main:disabled{cursor:not-allowed;opacity:.55}.product img{width:100%;height:132px;object-fit:cover;display:block;background:#101822}.product-info{display:block;padding:12px 12px 0;border-top:3px solid var(--green);background:linear-gradient(180deg,rgba(74,222,128,.10),transparent 72%)}.product-info strong,.product-info span,.product-info small{display:block}.product-info strong{font-size:24px;line-height:1.08;font-weight:900;letter-spacing:.005em;min-height:56px;color:var(--brand-red);text-shadow:0 1px 0 #fff}.product .price{font-size:15px;color:var(--brand-green);font-weight:700;margin:7px 0 3px}.product small{color:var(--muted)}.card-quantity{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:8px;padding:8px 4px 12px;border-top:1px solid var(--line)}.card-quantity button{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#101822;color:var(--text);font-size:22px;font-weight:800;cursor:pointer}.card-quantity button:disabled{opacity:.3;cursor:not-allowed}.card-quantity strong{min-width:28px;text-align:center;font-size:20px}.photo-note{font-size:9px;color:var(--amber)!important;margin-top:4px;line-height:1.25}.demo-badge{position:absolute;top:8px;left:8px;background:#10151ddd;border:1px solid var(--amber);color:var(--amber);border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;letter-spacing:.08em}.cart-panel{padding:18px;display:flex;flex-direction:column;overflow-y:auto}.text-button{border:0;background:none;color:var(--blue);cursor:pointer}.cart-lines{overflow:auto;max-height:32vh;flex-shrink:0}.cart-line{display:grid;grid-template-columns:1fr auto;gap:8px;padding:11px 0;border-bottom:1px solid var(--line)}.cart-line small{color:var(--muted);display:block}.quantity{display:flex;align-items:center;gap:9px}.quantity button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--text);font-size:19px}.empty{text-align:center;color:var(--muted);padding:38px 10px}.demo-warning{background:#3b2b0e;border:1px solid #80631b;color:#ffe28a;border-radius:10px;padding:9px 11px;font-size:11px;font-weight:800;margin:8px 0}.total-row{display:flex;align-items:end;justify-content:space-between;border-top:2px solid var(--line);padding:16px 0;margin-top:auto}.total-row strong{font-size:34px;color:var(--green)}fieldset{border:0;padding:0;margin:0}legend{color:var(--muted);font-size:13px;margin-bottom:9px}.payments{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.payments button{padding:9px 3px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--text);font-size:13px}.payments button.selected{background:#173253;border-color:var(--blue)}.payments small{font-size:10px;color:var(--muted)}.complete{width:100%;border:0;border-radius:13px;background:var(--green);color:#06220f;font-weight:900;font-size:17px;padding:15px;margin-top:14px;cursor:pointer}.complete:disabled{opacity:.35;cursor:not-allowed}.note{text-align:center;color:var(--muted);font-size:11px;margin-top:8px}dialog{border:0;border-radius:20px;background:transparent;color:var(--text);padding:0}dialog::backdrop{background:rgba(3,7,12,.78)}.receipt-card{width:min(430px,90vw);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:24px}.success-mark{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#06220f;font-size:30px;font-weight:900;margin-bottom:12px}.receipt-card>p{color:var(--muted);margin:6px 0 16px}.receipt-item,.receipt-total{display:flex;justify-content:space-between;padding:8px 0}.receipt-total{border-top:2px solid var(--line);font-size:22px;margin-top:8px}#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#3b1720;color:#ffd9df;border:1px solid var(--danger);border-radius:12px;padding:12px 18px;display:none;max-width:80vw}.cart-title{margin-bottom:8px}.total-row{padding:8px 0}.complete{padding:12px;margin-top:8px}.note{margin-top:5px}.cart-actions{display:flex;gap:8px}.text-button:disabled{opacity:.35;cursor:not-allowed}.danger-text{color:var(--danger)}.cash-tender{margin-top:8px;background:#101822;border:1px solid var(--line);border-radius:12px;padding:8px}.cash-tender label{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}.cash-tender input{width:100%;background:var(--panel2);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:7px 10px;font-size:18px}.change-row{display:flex;justify-content:space-between;align-items:center;margin-top:5px}.change-row strong{color:var(--danger)}.change-row strong.change-ready{color:var(--green)}.danger-button{background:var(--danger);color:#26050b}.clear-card p{margin:8px 0 14px;color:var(--muted)}.owner-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.clear-card label{display:block;color:var(--muted);margin:10px 0 6px}.clear-card select{width:100%;background:var(--panel2);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:11px}.owner-page{min-height:100vh}.owner-header{height:auto;min-height:92px}.owner-refresh,.owner-reverse{border:1px solid var(--blue);background:#173253;color:#fff;border-radius:11px;padding:10px 14px;font-weight:800;cursor:pointer}.owner-main{display:block;height:auto;max-width:1280px;margin:0 auto;padding:18px}.owner-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.owner-summary article,.owner-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.owner-summary small,.owner-sale small,.owner-gates small{display:block;color:var(--muted)}.owner-summary strong{display:block;font-size:25px;margin-top:5px}.owner-panel{margin-bottom:16px}.owner-panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.owner-panel-head p{color:var(--muted);margin-top:4px}.owner-sales{display:grid;gap:9px}.owner-sale{display:grid;grid-template-columns:minmax(220px,1fr) 120px 100px 150px;gap:12px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:13px;padding:13px}.owner-sale-reversed{opacity:.7}.owner-status{font-weight:800;color:var(--green)}.owner-sale-reversed .owner-status{color:var(--danger)}.owner-reverse{border-color:var(--danger);background:#3b1720}.owner-gate-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.owner-gate-grid article{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:13px}#owner-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#172b20;color:#dcffe6;border:1px solid var(--green);border-radius:12px;padding:12px 18px;display:none;max-width:80vw}body.showcase-mode .eyebrow{color:var(--amber)}body.showcase-mode .complete:disabled{opacity:.72;background:#5d6672;color:#fff}@media(max-width:1120px){main{grid-template-columns:180px minmax(330px,1fr) 340px}.product-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}}@media(max-width:850px){header{height:auto;padding:12px 16px}main{height:auto;grid-template-columns:140px 1fr;padding:10px}.cart-panel{grid-column:1/-1;min-height:520px}.product-grid{max-height:none}.payments{grid-template-columns:repeat(2,1fr)}.category-button{font-size:14px;padding:9px}.subcategory-button{font-size:12px;padding:8px}}@media(max-width:560px){main{display:block}.category-panel,.catalog,.cart-panel{margin-bottom:10px}.main-categories,.subcategories{flex-direction:row;overflow-x:auto}.category-button,.subcategory-button{min-width:max-content}.nav-divider{margin:10px 0}.product-grid{grid-template-columns:repeat(2,1fr)}#search{width:48%}}.packaging-controls{display:grid;grid-template-columns:1fr;gap:6px;background:#101822;border:1px solid var(--line);border-radius:12px;padding:9px;margin:5px 0}.packaging-controls label{display:grid;grid-template-columns:minmax(0,1fr) minmax(144px,152px);gap:3px 10px;align-items:center;font-size:12px;min-width:0}.packaging-controls small{color:var(--muted);grid-column:1}.packaging-controls input{grid-column:2;grid-row:1/3;width:58px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:6px;text-align:center}.receipt-packaging{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0;margin:8px 0}.receipt-packaging div{display:flex;justify-content:space-between;padding:3px 0;color:var(--muted)}.packaging-stepper{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:44px minmax(48px,1fr) 44px;gap:4px;align-items:center;width:100%;min-width:144px}.packaging-stepper input{grid-column:auto!important;grid-row:auto!important;width:52px!important}.packaging-stepper button{height:34px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--text);font-size:20px;font-weight:900;cursor:pointer}.packaging-stepper button:disabled{opacity:.3;cursor:not-allowed}.offers-simulator{display:grid;gap:12px;overflow:auto;max-height:calc(100vh - 180px)}.offers-simulator select{background:#101822;border:1px solid var(--line);border-radius:11px;color:var(--text);padding:11px}.offer-card{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:14px}.offer-card.selected{border-color:var(--green);box-shadow:0 0 0 1px #4ade8055}.offer-card h3{margin:0;font-size:18px}.offer-card p{grid-column:1/-1;color:var(--muted);font-size:12px}.offer-actions{display:flex;gap:7px;flex-wrap:wrap}.offer-actions button{border:1px solid var(--line);border-radius:9px;background:#101822;color:var(--text);padding:8px 11px;font-weight:800}.offer-actions button.primary{border-color:var(--green);color:var(--green)}.offer-actions button:disabled{opacity:.35}.offer-status{font-size:11px;font-weight:900;color:var(--amber)}
.quantity-input{width:64px;min-width:0;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--text);padding:6px 4px;text-align:center;font-weight:800}.card-quantity .quantity-input{height:38px}.quantity .quantity-input{height:34px}.quantity-input:focus{outline:2px solid var(--brand-green);outline-offset:1px}.packaging-controls>legend{padding:0 4px;max-width:100%}#offers-tab{background:var(--brand-green);border-color:var(--brand-green);color:var(--brand-cream);font-weight:900;box-shadow:0 4px 12px #4b53192b}#offers-tab:hover,#offers-tab.selected{background:var(--brand-red);border-color:var(--brand-red);color:var(--brand-cream)}.admin-mode{display:flex;align-items:center;gap:12px;border:2px solid var(--brand-green);border-radius:13px;background:#eef0dc;color:var(--brand-green);padding:12px 14px}.admin-mode strong{color:var(--brand-red);font-size:15px;white-space:nowrap}.admin-mode span{font-size:12px;font-weight:700}

/* Urban Farmer & Co. brand layer — fixed palette from supplied master artwork. */
header{height:108px;padding:10px 24px;background:var(--brand-cream);border-bottom:3px solid var(--brand-red);box-shadow:0 3px 12px #4b53191f}
.brand-lockup{display:flex;align-items:center;gap:14px;min-width:0}.brand-logo{width:92px;height:92px;object-fit:contain;flex:0 0 auto}.brand-copy{min-width:0}.brand-copy h1{color:var(--brand-red);font-size:25px;line-height:1.05}.brand-copy h1 span{display:block;color:var(--brand-green);font-size:13px;letter-spacing:.04em;margin-top:5px}.eyebrow{color:var(--brand-green)}.today span,.today small{color:var(--muted)}.today strong{color:var(--brand-green)}
main{height:calc(100vh - 108px);background:var(--brand-cream)}.category-panel,.catalog,.cart-panel{background:#fffaf0;border-color:var(--line);box-shadow:0 5px 18px #4b531914}.nav-label,h2,.catalog h2,.cart-title h2,.offer-card h3,legend{color:var(--brand-red)}.category-button,.subcategory-button{color:var(--brand-green)}.category-button:hover,.subcategory-button:hover{background:#f1e3c8}.category-button.selected,.subcategory-button.selected{background:var(--brand-red);border-color:var(--brand-red);color:var(--brand-cream)}
.product{background:#fffdf7;border-color:#d9c9a8;box-shadow:0 3px 12px #4b531912}.product:hover{border-color:var(--brand-red);box-shadow:0 7px 20px #bb461c24}.product small,.note,.empty{color:var(--muted)}.product-image-note{background:#f6ead3;color:var(--brand-green)}.card-quantity{border-color:#dfd0b2}.card-quantity button,.packaging-stepper button,.offer-actions button{background:var(--brand-cream);border-color:#b9aa87;color:var(--brand-red)}
input,select,#search,.offers-simulator select,.packaging-controls input{background:#fffdf7;color:var(--text);border-color:#b9aa87}.packaging-controls,.cash-tender,fieldset{border-color:#d6c6a5;background:#fffaf0}.offer-card{background:#fffdf7;border-color:#d6c6a5}.offer-card.selected{border-color:var(--brand-green);box-shadow:0 0 0 2px #4b53192b}.offer-actions button.primary{border-color:var(--brand-green);color:var(--brand-green)}
.total-row,.receipt-total{color:var(--brand-red)}.total-row strong,.receipt-total strong,.change-row strong{color:var(--brand-green)}.payments button{background:#fffdf7;color:var(--brand-green);border-color:#b9aa87}.payments button.selected{background:var(--brand-green);border-color:var(--brand-green);color:var(--brand-cream)}.complete{background:var(--brand-green);color:var(--brand-cream);border-color:var(--brand-green)}.complete:hover{filter:brightness(1.08)}.text-button{color:var(--brand-green)}.danger-text{color:var(--brand-red)}.demo-warning{background:#f5dfcc;border-color:#d68b64;color:#7d2d13}.receipt-card{background:var(--brand-cream);color:var(--text);border:2px solid var(--brand-red)}
@media(max-width:850px){header{height:auto;min-height:96px}.brand-logo{width:76px;height:76px}.brand-copy h1{font-size:21px}main{height:auto}}@media(max-width:520px){.brand-copy h1 span{display:none}.brand-logo{width:64px;height:64px}.today strong{font-size:21px}}

.category-button,.subcategory-button,.card-quantity button,.quantity button,.quantity-input,.packaging-stepper button,.packaging-stepper input,.payments button,.text-button,.complete,#search,#cash-received,.offer-master{min-height:44px}
.category-button,.subcategory-button,.card-quantity button,.quantity button,.packaging-stepper button{min-width:44px}
.card-quantity button,.quantity button,.packaging-stepper button{flex:0 0 44px}
.card-quantity .quantity-input{width:44px;min-width:44px;flex:0 0 44px}
.promptpay-panel{margin:12px 0;padding:14px;border:1px solid #d6c6a5;border-radius:14px;background:#fffdf7;text-align:center}.promptpay-panel[hidden]{display:none}.promptpay-panel h3{margin:0 0 10px;color:var(--brand-red)}.promptpay-panel img{display:block;width:min(100%,320px);max-height:435px;object-fit:contain;margin:0 auto 10px;border-radius:10px}.promptpay-panel p{margin:8px 0;color:var(--muted);font-size:13px}.promptpay-amount{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:18px}.promptpay-amount strong{color:var(--brand-green);font-size:24px}.payment-confirmation{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px;border:2px solid var(--brand-green);border-radius:10px;text-align:left}.payment-confirmation input{width:24px;height:24px;flex:0 0 24px}.payment-confirmation span{display:flex;flex-direction:column}.payment-confirmation small{color:var(--muted)}
.checkout-offers{display:block;padding:11px 12px}.checkout-offers[hidden]{display:none}.offer-master{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:9px;cursor:pointer}.offer-master input{width:21px;height:21px;accent-color:var(--brand-green);margin:0}.offer-master span,.offer-master strong,.offer-master small{display:block;min-width:0}.offer-master strong{color:var(--brand-red);font-size:17px}.offer-master small{color:var(--muted);font-size:11px;margin-top:1px}#offer-status{margin-top:8px}.checkout-offer-row{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fffdf7;cursor:pointer;margin-top:6px}.checkout-offer-row[hidden]{display:none}.checkout-offer-row.ineligible{opacity:.58;cursor:not-allowed;background:#f4eee2}.checkout-offer-row.ineligible input{cursor:not-allowed}.checkout-offer-row.selected{border-color:var(--brand-green);background:#eef0dc;box-shadow:0 0 0 2px #4b53191f}.checkout-offer-row input{width:20px;height:20px;accent-color:var(--brand-green);margin:0}.checkout-offer-row span,.checkout-offer-row strong,.checkout-offer-row small{display:block;min-width:0}.checkout-offer-row strong{color:var(--brand-red);font-size:13px}.checkout-offer-row small{color:var(--muted);font-size:11px;margin-top:2px}
.product{display:flex;flex-direction:column}.product-main{flex:1 1 auto;min-height:0}.card-quantity{flex:0 0 auto;width:100%;flex-wrap:nowrap}.card-quantity button,.card-quantity .quantity-input{height:44px;min-height:44px;max-height:44px}
