:root{--red:#b20d2f;--red-dark:#860822;--cream:#f5f1e9;--ink:#24201f;--muted:#756e68;--line:#ddd5ca;--green:#167553;--amber:#ad5d0b;--white:#fff;--radius:22px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 90% 0,#ead9d1 0,transparent 32%),var(--cream)}button,input,select{font:inherit}.topbar{height:84px;padding:0 max(24px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(245,241,233,.88);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand small{display:block;color:var(--muted);margin-top:2px}.cross{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--red);color:#fff;font-weight:800;font-size:28px}button{cursor:pointer}.linkbtn{border:0;background:none;color:var(--red);font-weight:700;padding:14px}.view{display:none}.view.active{display:block}main{max-width:1240px;margin:auto;padding:42px 28px 130px}.intro{max-width:700px;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:800;color:var(--red);margin:0 0 8px}h1{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.95;margin:0 0 14px;letter-spacing:-.045em}h2{margin:0}.intro>p:last-child{font-size:1.1rem;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.product{min-height:180px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.72);padding:22px;display:grid;grid-template-columns:65px 1fr auto;align-items:center;gap:18px;box-shadow:0 6px 24px rgba(61,44,34,.05)}.product.low{border-color:#e6b895}.product-info h2{font-size:1.25rem}.product-info p{font-weight:800;margin:8px 0}.product-info small{font-weight:500;color:var(--muted)}.availability{font-size:.82rem;color:var(--muted)}.bottle{width:42px;height:106px;border-radius:10px 10px 14px 14px;background:#b7d9e8;position:relative;box-shadow:inset -8px 0 0 rgba(255,255,255,.25)}.bottle:before{content:"";position:absolute;width:22px;height:18px;top:-15px;left:10px;background:var(--red-dark);border-radius:5px 5px 2px 2px}.bottle span{position:absolute;left:0;right:0;top:40px;height:32px;background:#fff;opacity:.88}.b1{background:#d5b85d}.b2{background:#29211f}.b3{background:#9a6441}.b4{background:#9b6a42}.stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;touch-action:manipulation}.stepper button{width:48px;height:52px;border:0;background:#fff;font-size:1.5rem;color:var(--red);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.stepper button:active{background:#f4e1e5}.stepper .quantity-input{width:62px;height:52px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);border-radius:0;padding:0 6px;text-align:center;font-size:1.15rem;font-weight:800;appearance:textfield}.stepper .quantity-input::-webkit-inner-spin-button,.stepper .quantity-input::-webkit-outer-spin-button{appearance:none;margin:0}.stepper .quantity-input:focus{position:relative;z-index:1;outline:3px solid rgba(178,13,47,.16);border-color:var(--red)}.form-card{margin-top:20px;border-radius:var(--radius);padding:22px;background:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border:1px solid var(--line)}label{font-size:.82rem;font-weight:750;color:var(--muted);display:grid;gap:7px}input,select{width:100%;height:52px;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:#fff;color:var(--ink);font-size:1rem}input:focus,select:focus{outline:3px solid rgba(178,13,47,.16);border-color:var(--red)}.checkout{position:fixed;z-index:9;bottom:0;left:0;right:0;background:#241f1e;color:#fff;padding:18px max(28px,calc((100vw - 1184px)/2));display:flex;align-items:center;justify-content:space-between;box-shadow:0 -10px 35px rgba(0,0,0,.14)}.checkout span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#bcb3ac}.checkout strong{font-family:Georgia,serif;font-size:1.8rem}.primary,.secondary{border:0;border-radius:13px;padding:15px 22px;font-weight:800}.primary{background:var(--red);color:#fff}.primary:hover{background:var(--red-dark)}.primary:disabled{opacity:.45;cursor:not-allowed}.secondary{background:#eee8e0;color:var(--ink)}.admin-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:28px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.stats>div{padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line)}.stats span{display:block;color:var(--muted);font-size:.85rem}.stats strong{font-size:2rem}.stats .alert{background:#fff2e6;border-color:#efc69c}.admin-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.panel{background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.panel-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.panel-head span,.settings p{color:var(--muted);font-size:.85rem}.stock-row{display:grid;grid-template-columns:1.5fr 100px 130px auto;align-items:end;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.stock-row>div b{display:block}.pill{display:inline-block;margin-top:6px;border-radius:999px;padding:4px 8px;font-size:.7rem;font-weight:800}.pill.ok{background:#e0f3ea;color:var(--green)}.pill.critical{background:#ffead6;color:var(--amber)}.booking{padding:17px 0;border-top:1px solid var(--line)}.booking-top{display:flex;justify-content:space-between}.booking-top span{display:block;color:var(--muted);font-size:.8rem;margin-top:4px}.booking p{margin:10px 0;color:var(--muted)}.booking ul{list-style:none;padding:0;margin:10px 0}.booking li{display:flex;justify-content:space-between;padding:5px 0}.booking .secondary{width:100%;margin-top:8px}.empty{padding:38px 12px;text-align:center;color:var(--muted)}.settings{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:24px}.settings form{display:flex;gap:10px;min-width:min(480px,50%)}dialog{border:0;border-radius:22px;padding:0;box-shadow:0 30px 80px rgba(0,0,0,.3);max-width:420px;width:calc(100% - 36px)}dialog::backdrop{background:rgba(31,24,23,.65);backdrop-filter:blur(4px)}dialog form{padding:34px;display:grid;gap:14px;position:relative}.dialog-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:1.8rem;color:var(--muted)}.error{color:var(--red);min-height:1.2em;margin:0}.toast{position:fixed;z-index:30;top:100px;left:50%;transform:translate(-50%,-20px);background:#1e5c46;color:#fff;padding:14px 20px;border-radius:12px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.bad{background:var(--red-dark)}
.is-busy .product-grid,.is-busy .form-card{opacity:.7;transition:opacity .18s}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:50%;vertical-align:-4px;margin-right:8px;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.success-dialog{text-align:center;max-width:460px}.success-dialog form{padding:38px}.success-dialog .eyebrow{margin-top:4px}.success-dialog h2{font-family:Georgia,serif;font-size:2.2rem}.success-copy{color:var(--muted);margin:0 auto}.success-mark{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:#e0f3ea;color:var(--green);font-size:2rem;font-weight:900}.receipt{display:grid;gap:5px;background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:18px;margin:8px 0}.receipt span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.receipt strong{font-family:Georgia,serif;font-size:2.15rem}.receipt small{color:var(--muted)}.success-dialog .primary{width:100%;margin-top:4px}
.history-panel{margin-top:18px;overflow:hidden}.history-table{overflow-x:auto}.history-row{min-width:760px;display:grid;grid-template-columns:140px 1.25fr 1.3fr 105px 90px;gap:16px;align-items:center;padding:13px 4px;border-top:1px solid var(--line);font-size:.88rem}.history-row small{display:block;color:var(--muted);margin-top:3px}.history-row>strong{text-align:right}.history-head{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.history-row .pill{font-style:normal;margin:0}
@media(max-width:900px){main{padding:30px 18px 130px}.product-grid{grid-template-columns:1fr}.form-card{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.stock-row{grid-template-columns:1fr 1fr}.stock-row>div{grid-column:1/-1}.settings{align-items:stretch;flex-direction:column}.settings form{min-width:0}.stats strong{font-size:1.5rem}}
@media(max-width:560px){.topbar{height:70px}.product{grid-template-columns:50px 1fr;min-height:155px;padding:17px}.bottle{transform:scale(.82)}.stepper{grid-column:1/-1;justify-self:stretch}.stepper button{flex:1}.checkout{padding:12px 18px}.checkout .primary{padding:14px 16px}.stats{grid-template-columns:1fr}.admin-head h1{font-size:2.35rem}.admin-head{gap:10px}.stock-row{grid-template-columns:1fr}.stock-row>div{grid-column:auto}.settings form{flex-direction:column}}
[hidden]{display:none!important}
