@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--bg:#101010;--panel:#191919;--panel2:#202020;--line:#303030;--gold:#c7a45b;--text:#f3f0e9;--muted:#a7a39b;--green:#6fc49a;--red:#e17b78}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}.topbar{height:78px;padding:0 max(5vw,22px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#111;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:2px;font-size:15px}.brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:3px;margin-top:4px}.brand-mark{width:39px;height:39px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font-family:'Playfair Display';font-size:24px}.gold{color:var(--gold)}nav{display:flex;align-items:center;gap:26px;color:#d4d0c8;font-size:13px}nav a:hover,.link-btn:hover{color:var(--gold)}.inline{display:inline}.link-btn{border:0;background:none;color:inherit;font:inherit;cursor:pointer}.cart-count{color:var(--gold)}.container{width:min(1180px,90%);margin:auto;min-height:65vh}.hero{margin:38px 0 54px;min-height:370px;padding:70px 7%;position:relative;overflow:hidden;border:1px solid #39332a;background:radial-gradient(ellipse at 78% 45%,#45351e 0,#211b14 26%,#151515 66%)}.hero:after{content:'B';position:absolute;right:12%;top:-90px;font:400 440px 'Playfair Display';color:#ffffff08}.eyebrow{color:var(--gold);font-size:10px;letter-spacing:3px;font-weight:700}.hero h1,.page-title h1,.dashboard-head h1{font:600 clamp(38px,5vw,62px) 'Playfair Display',serif;line-height:1.08;margin:18px 0}.hero p{max-width:450px;color:#b8b2a8;line-height:1.8;margin-bottom:28px}.hero-stamp{position:absolute;right:8%;bottom:35px;border:1px solid #76613b;padding:15px 23px;text-align:center;letter-spacing:3px;color:var(--gold);font-size:10px;transform:rotate(-8deg)}.hero-stamp b{font-size:8px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:11px 17px;border:1px solid var(--line);background:#252525;color:var(--text);font-weight:600;font-size:12px;cursor:pointer;border-radius:2px}.btn:hover{filter:brightness(1.15)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#17130c}.btn-outline{background:transparent;border-color:#665638;color:var(--gold)}.btn:disabled{opacity:.4;cursor:not-allowed}.section-head,.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:35px 0 20px}.section-head h2,.panel h2{font:600 25px 'Playfair Display';margin:8px 0}.search{display:flex;gap:8px}.search input{width:260px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 24px}.chip{padding:8px 13px;border:1px solid var(--line);color:#bcb7ae;font-size:11px}.chip:hover{border-color:var(--gold);color:var(--gold)}input,select,textarea{width:100%;background:#111;border:1px solid #3b3b3b;color:var(--text);padding:12px;font:inherit;border-radius:2px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--gold)}label{display:block;color:#c8c2b8;font-size:12px}label input,label select,label textarea{margin-top:7px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.product-card{background:var(--panel);border:1px solid #2b2b2b;transition:.2s}.product-card:hover{border-color:#806b43;transform:translateY(-2px)}.product-image{height:220px;display:grid;place-items:center;background:linear-gradient(145deg,#222,#111);overflow:hidden}.product-image img,.detail-image img{width:100%;height:100%;object-fit:contain}.bottle-placeholder{font:100px 'Playfair Display';color:#c7a45b55}.product-info{padding:16px;display:flex;flex-direction:column;gap:9px}.product-info small{color:var(--gold);font-size:9px;letter-spacing:2px}.product-name{font:600 16px 'Playfair Display';min-height:40px}.product-info strong{font-size:15px}.stock{font-size:11px;color:var(--green)}.product-info .btn{margin-top:6px;width:100%}.age-note{border-top:1px solid var(--line);margin:50px 0 30px;padding:18px;color:var(--muted);font-size:11px;line-height:1.7}.flash{padding:13px 18px;margin:15px auto;width:min(1180px,90%);border:1px solid var(--line)}.flash.success{color:var(--green);border-color:#315b46}.flash.error{color:var(--red);border-color:#653b39}.empty{text-align:center;padding:70px 20px;background:var(--panel);color:var(--muted);margin:35px 0}.detail{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:35px 0 70px}.detail-image{height:450px;background:#1b1b1b;display:grid;place-items:center}.detail h1{font:600 42px 'Playfair Display'}.detail p{color:var(--muted);line-height:1.8}.detail .gold{font-size:24px}.large{font-size:190px}.add-form{display:flex;gap:10px;margin-top:25px}.add-form input{width:90px}.back-link{display:inline-block;color:var(--gold);margin:22px 0}.page-title h1{font-size:42px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:600px}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--line);font-size:12px}th{color:var(--gold);font-size:10px;letter-spacing:1px}td{color:#ddd}.cart-total{display:flex;justify-content:flex-end;gap:30px;padding:25px;font-size:18px}.cart-total strong{color:var(--gold)}.muted{color:var(--muted);font-size:12px}.login-wrap{min-height:65vh;display:grid;place-items:center}.login-card{width:min(440px,100%);padding:35px;background:var(--panel);border:1px solid var(--line);margin:30px auto}.centered{justify-content:center;margin-bottom:25px}.login-card h1{text-align:center;font:600 30px 'Playfair Display'}.login-card>p{text-align:center;margin-bottom:25px}.login-card form{display:grid;gap:12px}.full{width:100%;margin:12px 0}.login-card .back-link{display:block;text-align:center}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0}.stat{background:var(--panel);border:1px solid var(--line);padding:20px}.stat small{display:block;color:var(--gold);font-size:9px;letter-spacing:1.5px}.stat b{display:block;font:600 25px 'Playfair Display';margin:14px 0 5px}.stat span{color:var(--muted);font-size:10px}.role-pill,.status{border:1px solid #665638;color:var(--gold);padding:7px 10px;font-size:10px}.admin-layout{display:grid;grid-template-columns:190px 1fr;gap:20px;margin:30px 0 60px}.sidebar,.panel{background:var(--panel);border:1px solid var(--line);padding:18px}.sidebar{display:flex;flex-direction:column;gap:5px;height:max-content}.sidebar a{padding:12px;color:#bbb;font-size:12px}.sidebar a.active,.sidebar a:hover{background:#29251e;color:var(--gold)}.panel{margin:18px 0}.panel h2{font-size:21px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-grid .wide{grid-column:1/-1}.form-grid .check{display:flex;align-items:center;gap:8px}.form-grid .check input{width:auto}.qty-input{width:70px}.install{display:grid;place-items:center;min-height:100vh}.install .login-card{width:min(560px,100%)}.install h3{color:var(--gold);font:600 17px 'Playfair Display';margin-top:25px}footer{border-top:1px solid var(--line);padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}footer .brand{color:var(--text)}@media(max-width:900px){.product-grid{grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topbar{height:auto;padding:15px 5%;align-items:flex-start;gap:15px;flex-direction:column}nav{gap:15px;flex-wrap:wrap}.hero{padding:45px 7%;min-height:330px}.hero-stamp{display:none}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-image{height:160px}.product-info{padding:11px}.product-name{font-size:14px}.section-head,.dashboard-head{align-items:flex-start;flex-direction:column}.search{width:100%}.search input{width:100%}.detail{grid-template-columns:1fr;gap:20px}.detail-image{height:300px}.detail h1{font-size:32px}.admin-layout{grid-template-columns:1fr}.sidebar{flex-direction:row;overflow:auto}.stat-grid{gap:8px}.stat{padding:13px}.stat b{font-size:19px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}footer{flex-direction:column;align-items:flex-start}}
