:root{font-family:system-ui,-apple-system,'Noto Sans Thai',Tahoma,sans-serif;color:#152746;background:#edf5ff}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.wrap{max-width:1060px;margin:auto;padding:0 16px}.hero{background:linear-gradient(125deg,#07345c,#136ca7);color:white;padding:26px 0 32px}.topline{display:flex;align-items:center;gap:16px}.brand-icon{height:72px;width:72px;display:grid;place-items:center;border:3px solid #efce57;border-radius:20px;background:#16234a;color:#ffeb82;font-size:26px;font-weight:900}.brand-small{font-size:clamp(18px,4vw,27px);font-weight:800}h1{margin:0;font-size:clamp(28px,6vw,44px)}.hero p{margin:2px 0;color:#cbe8ff}.cart-icon{margin-left:auto;border:0;background:#ffffff25;color:white;border-radius:16px;font-size:28px;padding:10px;white-space:nowrap}.cart-icon small{background:#ff3737;border-radius:12px;font-size:12px;padding:3px 6px}.card{background:white;border-radius:20px;box-shadow:0 4px 18px #1d497019;padding:18px;margin-top:14px}.address{margin-top:-12px;position:relative}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:800}.section-heading h2{margin:0;font-size:20px}.pill{font-weight:700;font-size:12px;border-radius:99px;padding:5px 10px;background:#eaf0f8;color:#466582}.pill.good{background:#e6f8ec;color:#087f32}.pill.bad{background:#ffe9e9;color:#aa2424}.hint,.muted{font-size:13px;color:#65748b}.hint{margin:9px 0}.address-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.primary-outline,.blue-button{border:0;border-radius:12px;background:#1568bf;color:white;font-weight:700;padding:10px 16px}.ghost{background:#eaf2fc;border:0;border-radius:12px;color:#185c96;padding:10px 14px}.formlabel{display:block;margin:10px 0 6px;font-size:13px;font-weight:750}input,textarea{width:100%;min-width:0;border:1px solid #cbd9e7;border-radius:11px;padding:12px;background:#fff;color:#142541}input:focus,textarea:focus{outline:2px solid #9dc5f9;border-color:#1d67c5}.coordinates{background:#f3f8ff;border-radius:12px;padding:12px;margin-bottom:12px}.coordinates label{display:block;font-size:13px;margin:8px 0}.searchrow{display:flex;gap:8px}.categories{display:flex;gap:8px;overflow-x:auto;padding-top:14px}.cat{border:1px solid #d5e2f1;background:#f4f8fe;border-radius:12px;white-space:nowrap;padding:11px 14px;font-weight:700;color:#234b71}.cat.active{background:#0867d5;border-color:#0867d5;color:white}.catalog{margin-top:20px}.product-grid{margin-top:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.product{background:white;border-radius:17px;overflow:hidden;box-shadow:0 4px 14px #22528a13;padding:13px;display:flex;flex-direction:column;gap:7px;min-width:0}.product-art{height:110px;display:grid;place-items:center;font-size:52px;background:linear-gradient(150deg,#f1f7ff,#e3edfa);border-radius:12px}.product-title{font-size:14px;font-weight:800;min-height:44px;overflow-wrap:anywhere}.price{color:#c71e2f;font-size:20px;font-weight:900}.stock{font-size:12px;color:#60738d}.product-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:auto}.add,.minus{border:0;border-radius:12px;background:#079af0;color:white;font-size:23px;width:39px;height:39px;flex-shrink:0}.minus{background:#e4effa;color:#205e95}.qty{font-weight:800}.soldout{color:#a82a2a;font-weight:800;font-size:12px}.pager{display:flex;justify-content:center;align-items:center;gap:15px;margin:17px 0}.pager button{border:0;background:#d7e7fa;color:#205788;border-radius:10px;padding:10px 14px;font-weight:700}.status{padding:15px;background:#e5f3ff;border-radius:12px;margin-top:12px}.status.error{background:#ffeded;color:#a32323}.orders{margin-bottom:24px}.text-button{border:0;background:transparent;color:#0867d5;font-weight:800}.bottom-space{height:175px}.checkout{position:fixed;bottom:0;left:0;right:0;background:white;z-index:10;box-shadow:0 -5px 24px #163f6b25;border-radius:18px 18px 0 0;padding:12px max(16px,calc((100vw - 1028px)/2)) max(15px,env(safe-area-inset-bottom));}.checkout-head{display:flex;justify-content:space-between;gap:10px;align-items:center;font-weight:700;padding-bottom:9px}.checkout-head b{font-size:13px;font-weight:500;color:#61718a}.checkout-head strong{font-size:24px;color:#d01a2a}.submit{display:block;width:100%;background:#078a32;color:white;border:0;border-radius:12px;padding:13px;font-size:17px;font-weight:850}.checkout small{font-size:11px;color:#687a90;display:block;text-align:center;margin-top:5px}.overlay{position:fixed;z-index:100;inset:0;background:#071a35aa;display:flex;justify-content:center;align-items:flex-end}.overlay[hidden], [hidden]{display:none!important}.modal{width:min(100%,560px);max-height:92dvh;overflow:auto;background:white;padding:20px;border-radius:22px 22px 0 0}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0}.modal-header button{border:0;background:#edf4fc;padding:9px 13px;border-radius:10px}.cart-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e0eaf6;gap:10px}.modal-sum{font-size:22px;font-weight:900;text-align:right;margin-top:12px}.toast{position:fixed;z-index:150;left:50%;bottom:160px;transform:translateX(-50%);background:#163553;color:white;padding:12px 18px;border-radius:12px;box-shadow:0 10px 25px #0003;display:none;max-width:90vw}.demo-notice{background:#fff3d5;color:#7b4d00;padding:10px 12px;border-radius:9px;margin-top:10px;font-weight:750;font-size:13px}@media(max-width:700px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-art{height:100px}.wrap{padding:0 12px}.brand-icon{width:52px;height:52px;font-size:20px}.hero{padding-top:15px}.brand-small{font-size:17px}.hero p{font-size:12px}.cart-icon{font-size:21px}.checkout-head{font-size:13px}.checkout-head strong{font-size:22px}.card{padding:14px}.product{padding:10px}.product-title{font-size:13px;min-height:42px}}

/* V1.3: location preview and editable basket */
.delivery-map{height:260px;width:100%;border-radius:14px;overflow:hidden;background:#e6f2ff;margin:12px 0 6px;border:1px solid #cee0f1;z-index:0}
.map-fallback{height:100%;display:grid;place-items:center;text-align:center;padding:16px;color:#455e7b}
.editable-cart{flex-wrap:wrap;align-items:center}.cart-info{flex:1 1 180px;min-width:0}.cart-info b{display:block;font-size:13px;overflow-wrap:anywhere}.cart-info small{display:block;margin-top:5px;color:#687a90}.cart-controls{display:flex;align-items:center;gap:8px}.cart-controls strong{min-width:18px;text-align:center}.cart-controls .remove{border:0;background:#fff0f0;color:#9c2525;border-radius:9px;padding:9px}.delivery-preview{margin-top:14px;padding:12px;background:#f2f8ff;border-radius:12px}.delivery-preview h3{font-size:14px;margin:0}.modal .cart-line> b{white-space:nowrap}.modal{padding-bottom:max(25px,env(safe-area-inset-bottom))}
@media(max-width:700px){.delivery-map{height:230px}.checkout{padding-bottom:max(12px,env(safe-area-inset-bottom))}.bottom-space{height:200px}.modal{max-height:90dvh}.cart-line.editable-cart{gap:9px}.cart-controls .add,.cart-controls .minus{width:34px;height:34px}}
