:root{
  --bg:#0A0A0A;
  --panel:#121212;
  --panel-2:#161616;
  --panel-3:#1B1B1B;
  --border:#262626;
  --gold:#D4AF37;
  --gold-soft:#E6C766;
  --text:#F2F0EA;
  --muted:#8A8A8A;
  --danger:#C0392B;
  --ok:#2E8B57;
  --radius:14px;
  font-size:16px;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',sans-serif;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  font-family:'Playfair Display',serif;
  font-weight:600;
  margin:0 0 .4em;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;}
.hidden{display:none !important;}
.muted{color:var(--muted);}

/* ---------- Announcement bar ---------- */
.announce-bar{
  background:var(--gold);color:#111;text-align:center;
  font-size:.75rem;font-weight:600;padding:8px 12px;letter-spacing:.02em;
}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:40;
  background:rgba(10,10,10,.9);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border);
}
.header-inner{
  max-width:1200px;margin:0 auto;padding:16px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.logo{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;color:var(--text);white-space:nowrap;}
.logo span{color:var(--gold);}
.main-nav{display:flex;gap:28px;flex:1;justify-content:center;}
.main-nav a{font-size:.9rem;color:#CFCFCF;transition:color .2s;}
.main-nav a:hover{color:var(--gold);}
.icon-btn{
  background:none;border:none;color:var(--text);font-size:1.15rem;
  position:relative;padding:6px;
}
.menu-btn{display:none;}
.cart-count{
  position:absolute;top:-2px;right:-6px;background:var(--gold);color:#000;
  font-size:.65rem;font-weight:700;border-radius:50%;
  width:18px;height:18px;display:flex;align-items:center;justify-content:center;
}

/* ---------- Hero slider ---------- */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border);}
.hero-track{display:flex;transition:transform .6s cubic-bezier(.65,0,.35,1);}
.hero-slide{
  flex:0 0 100%;background-size:cover;background-position:center;
  min-height:56vh;display:flex;align-items:center;padding:0 20px;
}
.hero-inner{max-width:620px;margin:0 auto;text-align:center;}
.eyebrow{color:var(--gold);font-size:.8rem;letter-spacing:.15em;}
.hero h1{font-size:2.3rem;margin:16px 0 14px;color:#fff;}
.hero p{color:#D6D3CA;margin-bottom:28px;}
.hero-dots{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;gap:8px;}
.hero-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);border:none;padding:0;}
.hero-dot.active{background:var(--gold);}

.btn{
  display:inline-block;padding:13px 30px;border-radius:999px;
  font-size:.85rem;font-weight:600;border:1px solid transparent;transition:filter .15s, background .15s, border-color .15s;
}
.btn-gold{background:var(--gold);color:#111;}
.btn-gold:hover{filter:brightness(1.08);}
.btn-outline{background:transparent;border-color:var(--border);color:var(--text);}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);}
.btn-block{width:100%;text-align:center;}
.btn-sm{padding:8px 16px;font-size:.75rem;}

/* ---------- Trust badges ---------- */
.trust-row{
  max-width:1200px;margin:0 auto;padding:28px 20px;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;
}
.trust-item{
  display:flex;align-items:center;gap:10px;font-size:.82rem;color:#CFCFCF;
  background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px 14px;
}
.trust-item span{font-size:1.1rem;}

/* ---------- Section headers ---------- */
.section-head{text-align:center;margin-bottom:10px;}
.eyebrow-sm{color:var(--gold);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;}
.section-head h2{font-size:1.7rem;color:#fff;margin-top:4px;}

.main-nav a.active-link{color:var(--gold);}

/* ---------- Standalone page title (products.html) ---------- */
.page-title{max-width:1200px;margin:0 auto;padding:56px 20px 8px;text-align:center;}
.page-title h1{font-size:2rem;color:#fff;margin:8px 0 10px;}
.page-title p{color:var(--muted);font-size:.9rem;max-width:520px;margin:0 auto;}

/* ---------- Categories ---------- */
.categories, .trending, .shop{max-width:1200px;margin:0 auto;padding:56px 20px;}
.trending-cta{text-align:center;margin-top:30px;}
.category-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:18px;margin-top:32px;
}
.category-card{
  position:relative;border-radius:var(--radius);overflow:hidden;cursor:pointer;
  aspect-ratio:1/1;border:1px solid var(--border);
}
.category-card img{width:100%;height:100%;object-fit:cover;}
.category-card .overlay-label{
  position:absolute;inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.75), transparent 60%);
  display:flex;align-items:flex-end;padding:14px;
  font-weight:600;font-size:.95rem;color:#fff;
}

/* ---------- Product grid / cards (shared: trending + shop) ---------- */
.filter-row{
  display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:22px 0 8px;
}
.filter-chip{
  padding:8px 18px;border-radius:999px;border:1px solid var(--border);
  background:var(--panel);color:var(--muted);font-size:.8rem;
}
.filter-chip.active{background:var(--gold);color:#111;border-color:var(--gold);}

.product-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:22px;margin-top:30px;
}
.product-card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  overflow:hidden;transition:border-color .2s;
}
.product-card:hover{border-color:#3a3a3a;}
.product-thumb{display:block;aspect-ratio:1/1;overflow:hidden;cursor:pointer;}
.product-thumb img{width:100%;height:100%;object-fit:cover;}
.product-body{padding:14px;}
.product-cat{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);}
.product-name{display:block;font-size:.95rem;margin:6px 0;cursor:pointer;color:var(--text);}
.product-name:hover{color:var(--gold);}
.price-row{display:flex;align-items:baseline;gap:8px;margin-bottom:10px;}
.price-now{color:#fff;font-weight:600;}
.price-was{color:var(--muted);text-decoration:line-through;font-size:.8rem;}
.stock-low{color:#E08A8A;font-size:.72rem;margin-bottom:8px;}
.empty-msg{color:var(--muted);font-size:.85rem;text-align:center;padding:30px 0;grid-column:1/-1;}

/* ---------- Promo banners ---------- */
.promo-row{
  max-width:1200px;margin:0 auto;padding:0 20px 56px;
  display:grid;grid-template-columns:1fr 1fr;gap:20px;
}
.promo-card{
  border-radius:var(--radius);min-height:220px;background-size:cover;background-position:center;
  display:flex;flex-direction:column;justify-content:flex-end;padding:26px;border:1px solid var(--border);
}
.promo-card h3{color:#fff;font-size:1.3rem;}
.promo-card p{color:#D6D3CA;font-size:.85rem;margin-bottom:16px;}
.promo-card .btn-outline{border-color:rgba(255,255,255,.5);align-self:flex-start;}

/* ---------- About ---------- */
.about{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--panel);}
.about-inner{
  max-width:1200px;margin:0 auto;padding:64px 20px;
  display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center;
}
.about-text h2{font-size:1.8rem;color:#fff;}
.about-text p{color:var(--muted);font-size:.92rem;margin-bottom:12px;}
.about-stats{display:flex;flex-direction:column;gap:20px;}
.about-stats div{border-left:2px solid var(--gold);padding-left:16px;}
.about-stats strong{display:block;font-size:1.6rem;font-family:'Playfair Display',serif;color:var(--gold);}
.about-stats span{color:var(--muted);font-size:.8rem;}

/* ---------- Testimonials ---------- */
.testimonials{max-width:1200px;margin:0 auto;padding:64px 20px;}
.testimonial-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:32px;
}
.testimonial-card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:24px;
}
.testimonial-card .stars{color:var(--gold);letter-spacing:2px;margin-bottom:12px;}
.testimonial-card p{font-size:.88rem;color:#D6D3CA;font-style:italic;margin-bottom:14px;}
.t-name{font-size:.75rem;color:var(--muted);}

/* ---------- Newsletter ---------- */
.newsletter{
  text-align:center;padding:64px 20px;background:radial-gradient(circle at 50% 0%, #1a1610 0%, #0A0A0A 65%);
  border-top:1px solid var(--border);
}
.newsletter h2{color:#fff;font-size:1.6rem;}
.newsletter p{color:var(--muted);margin-bottom:24px;}
.newsletter-form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;max-width:420px;margin:0 auto;}
.newsletter-form input{flex:1;min-width:200px;margin:0;}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--border);margin-top:0;padding:50px 20px 20px;}
.footer-inner{
  max-width:1200px;margin:0 auto;display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;padding-bottom:28px;
}
.footer-col h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-soft);margin-bottom:12px;}
.footer-col a{display:block;color:var(--muted);font-size:.85rem;margin-bottom:8px;}
.footer-col a:hover{color:var(--gold);}
.footer-brand p{color:var(--muted);font-size:.85rem;margin:10px 0 0;}
.footer-col p{color:var(--muted);font-size:.85rem;margin:0 0 8px;}
.footer-bottom{
  max-width:1200px;margin:0 auto;border-top:1px solid var(--border);
  padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
  font-size:.75rem;color:var(--muted);
}
.foot-admin-link{color:var(--muted);text-decoration:underline;}
.foot-admin-link:hover{color:var(--gold);}

/* ---------- Overlays / Modals ---------- */
.overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.6);
  display:none;align-items:center;justify-content:center;z-index:100;padding:16px;
}
.overlay.open{display:flex;}
.modal{
  background:var(--panel);border:1px solid var(--border);border-radius:18px;
  max-width:520px;width:100%;max-height:88vh;overflow-y:auto;padding:28px;position:relative;
}
.modal-close{
  position:absolute;top:14px;right:14px;background:var(--panel-2);border:1px solid var(--border);
  color:var(--text);width:30px;height:30px;border-radius:50%;font-size:.85rem;
}
.product-modal{max-width:640px;}
.pm-grid{display:grid;grid-template-columns:1fr;gap:18px;}
@media(min-width:560px){.pm-grid{grid-template-columns:1fr 1fr;}}
.pm-grid img{border-radius:12px;aspect-ratio:1/1;object-fit:cover;}
.pm-info h3{margin-bottom:6px;}
.pm-info .price-row{margin:10px 0;}
.pm-info p.desc{color:var(--muted);font-size:.85rem;margin-bottom:14px;}
.pm-info .meta{font-size:.78rem;color:var(--muted);margin-bottom:4px;}
.size-row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;}
.size-pill{
  padding:6px 12px;border:1px solid var(--border);border-radius:8px;font-size:.75rem;
  background:var(--panel-2);color:var(--muted);
}
.size-pill.active{border-color:var(--gold);color:var(--gold);}

/* ---------- Standalone product detail page ---------- */
.breadcrumb{max-width:1100px;margin:0 auto;padding:20px 20px 0;font-size:.78rem;color:var(--muted);}
.breadcrumb a{color:var(--muted);}
.breadcrumb a:hover{color:var(--gold);}
.breadcrumb span{color:#fff;}
.pd-section{max-width:1100px;margin:0 auto;padding:28px 20px 10px;}
.pd-grid{display:grid;grid-template-columns:1fr;gap:36px;}
@media(min-width:760px){.pd-grid{grid-template-columns:1fr 1fr;align-items:start;}}
.pd-image{border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);}
.pd-image img{width:100%;aspect-ratio:1/1;object-fit:cover;}
.pd-info h1{font-size:1.6rem;color:#fff;margin:6px 0 10px;}
.pd-info .price-row{margin:10px 0 6px;font-size:1.05rem;}
.pd-info .desc{color:var(--muted);font-size:.9rem;margin:16px 0 14px;line-height:1.7;}
.pd-info .meta{font-size:.8rem;color:var(--muted);margin-bottom:4px;}
.pd-info .size-row{margin:18px 0;}
.pd-info .btn{max-width:320px;}

/* ---------- Cart drawer ---------- */
.drawer{
  background:var(--panel);border-left:1px solid var(--border);
  width:100%;max-width:380px;height:100%;margin-left:auto;
  display:flex;flex-direction:column;padding:22px;
}
.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.cart-items{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:14px;}
.cart-item{display:flex;gap:12px;border-bottom:1px solid var(--border);padding-bottom:12px;}
.cart-item img{width:60px;height:60px;border-radius:8px;object-fit:cover;}
.cart-item-info{flex:1;}
.cart-item-info .name{font-size:.85rem;}
.cart-item-info .sub{font-size:.72rem;color:var(--muted);}
.qty-row{display:flex;align-items:center;gap:8px;margin-top:6px;}
.qty-row button{
  width:22px;height:22px;border-radius:6px;border:1px solid var(--border);
  background:var(--panel-2);color:var(--text);font-size:.8rem;
}
.remove-link{background:none;border:none;color:#C0392B;font-size:.7rem;text-decoration:underline;}
.cart-footer{border-top:1px solid var(--border);padding-top:16px;margin-top:10px;}
.cart-total-row{display:flex;justify-content:space-between;font-weight:600;margin-bottom:14px;}

/* ---------- Forms (shared storefront + warehouse) ---------- */
label{display:block;font-size:.78rem;color:var(--muted);margin-bottom:14px;}
input, textarea, select{
  width:100%;margin-top:6px;padding:11px 12px;border-radius:10px;
  background:var(--panel-2);border:1px solid var(--border);color:var(--text);
  font-family:inherit;font-size:.85rem;
}
input:focus, textarea:focus, select:focus{outline:none;border-color:var(--gold);}
.inline-form{display:flex;gap:8px;margin-bottom:16px;}
.inline-form input{margin-top:0;}
.form-error{color:#E08A8A;font-size:.78rem;min-height:1em;margin:-6px 0 8px;}

/* ---------- Toast ---------- */
.toast{
  position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);
  background:var(--gold);color:#111;padding:12px 22px;border-radius:999px;
  font-size:.85rem;font-weight:600;opacity:0;pointer-events:none;transition:all .25s;z-index:200;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* ---------- Responsive (storefront) ---------- */
@media(max-width:760px){
  .main-nav{
    position:fixed;top:64px;left:0;right:0;background:var(--bg);
    flex-direction:column;padding:20px;border-bottom:1px solid var(--border);
    display:none;gap:16px;
  }
  .main-nav.open{display:flex;}
  .menu-btn{display:block;}
  .hero h1{font-size:1.8rem;}
  .promo-row{grid-template-columns:1fr;}
  .about-inner{grid-template-columns:1fr;}
  .footer-inner{grid-template-columns:1fr 1fr;}
}

/* ============================================================
   WAREHOUSE APP
   ============================================================ */
.wh-body{background:var(--bg);}
.wh-app{display:flex;align-items:stretch;min-height:100vh;max-width:100%;}

/* ---------- Login gate ---------- */
.gate-wrap{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;padding:20px;}
.gate-card{
  background:var(--panel);border:1px solid var(--border);border-radius:20px;
  padding:36px;max-width:400px;width:100%;text-align:center;
}
.gate-brand{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:10px;}
.gate-brand span{color:var(--gold);}
.gate-tag{
  display:inline-block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;
  background:var(--panel-3);color:var(--gold-soft);padding:4px 12px;border-radius:999px;margin-bottom:14px;
}
.gate-card h2{font-size:1.3rem;color:#fff;}
.gate-card p{margin-bottom:20px;}
.gate-card label{text-align:left;}
.gate-error{color:#E08A8A;font-size:.8rem;margin:-8px 0 14px;}
.gate-card .back-to-store{display:block;text-align:center;margin-top:16px;font-size:.78rem;color:var(--muted);}
.gate-card .back-to-store:hover{color:var(--gold);}

/* ---------- Sidebar ---------- */
.sidebar{
  width:230px;flex:0 0 230px;background:var(--panel);border-right:1px solid var(--border);
  padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;
}
.sidebar-brand{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;color:#fff;margin-bottom:24px;}
.sidebar-brand span{color:var(--gold);}
.sidebar-brand small{display:block;font-family:'Inter',sans-serif;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px;}
.nav{display:flex;flex-direction:column;gap:4px;flex:1;overflow-y:auto;}
.nav button{
  text-align:left;background:none;border:none;color:#C9C9C9;padding:11px 12px;border-radius:9px;
  font-size:.85rem;display:flex;align-items:center;justify-content:space-between;
}
.nav button:hover{background:var(--panel-2);}
.nav button.active{background:var(--gold);color:#111;font-weight:600;}
.wh-badge{
  background:var(--danger);color:#fff;font-size:.68rem;font-weight:700;
  border-radius:999px;padding:1px 7px;
}
.nav button.active .wh-badge{background:#111;color:var(--gold);}
.back-to-store{display:block;font-size:.78rem;color:var(--muted);margin:16px 0 10px;}
.back-to-store:hover{color:var(--gold);}
.sidebar-foot{font-size:.72rem;color:var(--muted);border-top:1px solid var(--border);padding-top:14px;line-height:1.6;}
.sidebar-auth-row{display:flex;justify-content:space-between;margin-top:10px;}
.btn-link{background:none;border:none;color:var(--muted);font-size:.72rem;text-decoration:underline;padding:0;}
.btn-link:hover{color:var(--gold);}
.btn-link.danger{color:#E08A8A;text-decoration:none;font-size:.75rem;}
.btn-link.danger:hover{text-decoration:underline;}

.wh-main{flex:1;min-width:0;padding:32px 36px;}

/* ---------- Page head / cards ---------- */
.page-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:14px;margin-bottom:24px;}
.page-head h1{font-size:1.5rem;color:#fff;margin-bottom:4px;}
.page-head p{color:var(--muted);font-size:.85rem;margin:0;}
.wh-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px;margin-bottom:20px;}
.wh-card h3{font-size:1rem;color:#fff;margin-bottom:14px;}
.wh-subhead{font-size:1rem;color:#fff;margin:26px 0 14px;font-family:'Playfair Display',serif;}

.dash-hero{cursor:pointer;background:linear-gradient(135deg, var(--panel) 60%, #1c1710);}
.dash-hero .label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}
.dash-hero-value{font-family:'Playfair Display',serif;font-size:2.1rem;color:var(--gold);margin:6px 0;}
.dash-hero-link{font-size:.78rem;}

.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px;}
.stat{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;cursor:default;}
.stat[data-nav]{cursor:pointer;}
.stat .label{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;}
.stat .value{font-size:1.4rem;font-weight:600;color:#fff;}
.stat .value.gold{color:var(--gold);}

.wh-grid-2{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;}
@media(max-width:900px){.wh-grid-2{grid-template-columns:1fr;}}

/* ---------- Tables ---------- */
.wh-table{width:100%;border-collapse:collapse;font-size:.82rem;}
.wh-table th{text-align:left;color:var(--muted);font-weight:500;padding:9px 8px;border-bottom:1px solid var(--border);}
.wh-table td{padding:9px 8px;border-bottom:1px solid var(--border);vertical-align:middle;}
.wh-table td.num{text-align:right;}
.wh-table th:last-child, .wh-table td:last-child{text-align:right;}
.wh-table input[type="number"]{width:90px;margin:0;padding:6px 8px;}
.row-low td{color:#E08A8A;}
.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.7rem;font-weight:600;}
.pill.low{background:rgba(224,138,138,.15);color:#E08A8A;}
.pill.ok{background:rgba(46,139,87,.18);color:#59C48A;}

/* ---------- Lists (categories) ---------- */
.wh-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.wh-list li{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px 16px;font-size:.85rem;
}
.wh-list .del-cat{background:none;border:none;color:#E08A8A;font-size:.9rem;}
.cat-list li{align-items:center;}
.cat-list-left{display:flex;align-items:center;gap:2px;}
.cat-list-right{display:flex;align-items:center;gap:14px;}

/* ---------- Orders ---------- */
.order-card{padding:20px;}
.order-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;flex-wrap:wrap;}
.order-top h3{font-size:1rem;margin-bottom:4px;}
.order-total .value{font-size:1.15rem;font-weight:600;}
.btn-row{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;}

/* ---------- Inventory add-item ---------- */
.add-item-form{margin-bottom:24px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.form-row{grid-template-columns:1fr;}}
.add-item-form input[type="file"]{padding:8px;font-size:.78rem;}

.inventory-table td:first-child{white-space:nowrap;}
.inv-thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;border:1px solid var(--border);display:inline-block;vertical-align:middle;margin-right:8px;}
.inv-file-input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;}
.edit-featured-row{display:flex;align-items:center;font-size:.82rem;color:var(--text);}

/* ---------- Empty states ---------- */
.wh-empty{
  text-align:center;padding:60px 20px;color:var(--muted);font-size:2rem;
  background:var(--panel);border:1px dashed var(--border);border-radius:var(--radius);
}
.wh-empty h3{color:#fff;font-size:1rem;margin:10px 0 4px;}
.wh-empty p{font-size:.82rem;}

/* ---------- New Invoice ---------- */
.add-line-row{display:flex;gap:10px;align-items:flex-end;}
.add-line-row select{margin:0;}
.add-line-row input{margin:0;}
.invoice-total-row{display:flex;justify-content:space-between;font-size:1rem;padding:14px 4px;border-top:1px solid var(--border);margin-top:6px;}

/* ---------- Invoice sheet (view + print) ---------- */
.invoice-sheet{
  background:#fff;color:#111;border-radius:var(--radius);padding:36px;max-width:640px;
}
.invoice-sheet-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #111;padding-bottom:16px;margin-bottom:20px;}
.invoice-brand{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;}
.invoice-brand span{color:var(--gold);}
.invoice-meta{text-align:right;font-size:.85rem;}
.invoice-bill-to{margin-bottom:20px;font-size:.88rem;}
.invoice-bill-to .label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#777;margin-bottom:4px;}
.invoice-sheet .wh-table th, .invoice-sheet .wh-table td{border-color:#e2e2e2;color:#111;}
.invoice-sheet-foot{text-align:center;color:#999;font-size:.75rem;margin-top:24px;border-top:1px solid #e2e2e2;padding-top:14px;}

/* ---------- Monthly earnings bars ---------- */
.earn-row{
  display:grid;grid-template-columns:140px 1fr 110px 90px;gap:14px;align-items:center;padding:10px 0;
  border-bottom:1px solid var(--border);font-size:.82rem;
}
.earn-row:last-child{border-bottom:none;}
.earn-bar-wrap{background:var(--panel-2);border-radius:6px;height:10px;overflow:hidden;}
.earn-bar{background:var(--gold);height:100%;}
.earn-total{text-align:right;font-weight:600;color:#fff;}
@media(max-width:700px){.earn-row{grid-template-columns:1fr;gap:6px;}}

/* ---------- Responsive warehouse ---------- */
@media(max-width:820px){
  .wh-app{flex-direction:column;}
  .sidebar{width:100%;flex:none;height:auto;position:relative;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;}
  .sidebar-brand{margin:0 16px 0 0;}
  .nav{flex-direction:row;flex-wrap:wrap;overflow-x:auto;}
  .sidebar-foot, .back-to-store{display:none;}
  .sidebar-auth-row{margin-left:auto;}
  .wh-main{padding:22px 16px;}
}

/* ---------- Print ---------- */
@media print{
  .no-print{display:none !important;}
  .wh-app{display:block;}
  .wh-main{padding:0;}
  body{background:#fff;}
  .invoice-sheet{box-shadow:none;max-width:100%;}
}
