.wh-scope{
  --wh-paper:#F7F4EC;
  --wh-paper-dim:#EFEAE0;
  --wh-ink:#20283D;
  --wh-ink-soft:#5A5F6E;
  --wh-leather:#8A5A34;
  --wh-leather-dark:#6E4527;
  --wh-brick:#A6432F;
  --wh-moss:#43684A;
  --wh-line:#DAD3C2;
  --wh-card:#FFFDF8;

  background:var(--wh-paper);
  color:var(--wh-ink);
  font-family:'IBM Plex Sans',sans-serif;
  font-size:14px;
  line-height:1.5;
  display:block;
  position:relative;
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
}
.wh-scope .wh-global-lang{position:absolute;top:14px;right:18px;z-index:30;display:flex;gap:4px;background:var(--wh-card);border:1px solid var(--wh-line);border-radius:4px;padding:3px;}
.wh-scope .wh-lang-btn{padding:5px 9px;font-size:11px;line-height:1;background:transparent;color:var(--wh-ink-soft);border:0;border-radius:2px;}
.wh-scope .wh-lang-btn.active{background:var(--wh-ink);color:#fff;}

.wh-scope *{box-sizing:border-box;}
.wh-scope h1,.wh-scope h2,.wh-scope h3{
  font-family:'Fraunces',serif;
  font-weight:600;
  margin:0 0 4px 0;
  letter-spacing:-0.01em;
  color:var(--wh-ink);
}
.wh-scope p{margin:0;}

/* ---- login ---- */
.wh-scope #wh-login-screen{
  min-height:70vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.wh-scope .wh-login-card{
  background:var(--wh-card);
  border:1px solid var(--wh-line);
  border-radius:4px;
  padding:40px 36px;
  width:100%;
  max-width:380px;
}
.wh-scope .wh-login-card h1{font-size:26px;color:var(--wh-leather-dark);}
.wh-scope .wh-login-card > p{color:var(--wh-ink-soft);margin:0 0 24px 0;font-size:13px;}
.wh-scope .wh-login-error{color:var(--wh-brick);font-size:12.5px;margin-bottom:12px;}
.wh-scope .wh-login-divider{border-top:1px solid var(--wh-line);padding-top:16px;margin-top:4px;}
.wh-scope .wh-request-label{display:block;font-size:12px;color:var(--wh-ink-soft);margin-bottom:10px;}

.wh-scope .wh-field{margin-bottom:14px;}
.wh-scope .wh-field label{display:block;font-size:12px;color:var(--wh-ink-soft);margin-bottom:5px;}
.wh-scope select,.wh-scope input,.wh-scope textarea{
  width:100%;
  padding:9px 10px;
  border:1px solid var(--wh-line);
  border-radius:3px;
  background:#fff;
  font-family:inherit;
  font-size:14px;
  color:var(--wh-ink);
}
.wh-scope select:focus,.wh-scope input:focus,.wh-scope textarea:focus{outline:2px solid var(--wh-leather);outline-offset:1px;}
.wh-scope button{
  font-family:inherit;
  font-size:13.5px;
  border:none;
  border-radius:3px;
  padding:9px 16px;
  cursor:pointer;
  font-weight:500;
}
.wh-scope .wh-btn-primary{background:var(--wh-leather);color:#fff;}
.wh-scope .wh-btn-primary:hover{background:var(--wh-leather-dark);}
.wh-scope .wh-btn-ghost{background:transparent;color:var(--wh-ink-soft);border:1px solid var(--wh-line);}
.wh-scope .wh-btn-ghost:hover{background:var(--wh-paper-dim);}
.wh-scope .wh-btn-danger{background:transparent;color:var(--wh-brick);border:1px solid var(--wh-brick);}
.wh-scope .wh-btn-danger:hover{background:var(--wh-brick);color:#fff;}
.wh-scope .wh-row-inline{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;}
.wh-scope .wh-row-inline .wh-field{flex:1;min-width:140px;margin-bottom:0;}

/* ---- app shell ---- */
.wh-scope #wh-app{display:none;min-height:70vh;width:100%;max-width:none;border:1px solid var(--wh-line);border-radius:6px;overflow:hidden;}
.wh-scope #wh-app.active{display:flex;}
.wh-scope .wh-aside{
  width:200px;
  flex-shrink:0;
  background:var(--wh-ink);
  color:#D9D6C9;
  padding:24px 0;
  display:flex;
  flex-direction:column;
}
.wh-scope .wh-brand{
  padding:0 20px 20px 20px;
  border-bottom:1px solid #3A4258;
  margin-bottom:12px;
}
.wh-scope .wh-brand h1{color:#fff;font-size:17px;line-height:1.3;}
.wh-scope .wh-brand span{font-size:11px;color:#8A93AD;}
.wh-scope #wh-nav button{
  display:block;
  width:100%;
  text-align:left;
  background:none;
  color:#B7BBCB;
  padding:10px 20px;
  border-radius:0;
  font-size:13.5px;
  border-left:3px solid transparent;
}
.wh-scope #wh-nav button:hover{background:#2A314A;color:#fff;}
.wh-scope #wh-nav button.active{background:#2A314A;color:#fff;border-left:3px solid var(--wh-leather);}
.wh-scope .wh-who{
  margin-top:auto;
  padding:14px 20px;
  border-top:1px solid #3A4258;
  font-size:12px;
  color:#8A93AD;
}
.wh-scope .wh-who b{color:#D9D6C9;display:block;margin-bottom:6px;font-size:13px;}
.wh-scope .wh-logout-link{cursor:pointer;text-decoration:underline;}
.wh-scope .wh-main{flex:1;padding:32px 40px;overflow-x:auto;}
.wh-scope .wh-page{display:none;}
.wh-scope .wh-page.active{display:block;}
.wh-scope .wh-page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px;flex-wrap:wrap;gap:10px;}
.wh-scope .wh-page-head p{color:var(--wh-ink-soft);margin:2px 0 0 0;font-size:13px;}

.wh-scope .wh-card{
  background:var(--wh-card);
  border:1px solid var(--wh-line);
  border-radius:4px;
  padding:22px;
  margin-bottom:20px;
}
.wh-scope .wh-card-title{margin-bottom:14px;}
.wh-scope .wh-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:22px;}
.wh-scope .wh-stat{background:var(--wh-card);border:1px solid var(--wh-line);border-radius:4px;padding:16px 18px;}
.wh-scope .wh-stat .wh-num{font-family:'Fraunces',serif;font-size:28px;color:var(--wh-leather-dark);line-height:1;}
.wh-scope .wh-stat .wh-lbl{font-size:12px;color:var(--wh-ink-soft);margin-top:6px;}
.wh-scope .wh-stat.warn .wh-num{color:var(--wh-brick);}

.wh-scope table{width:100%;border-collapse:collapse;font-size:13px;}
.wh-scope th{
  text-align:left;
  font-weight:500;
  color:var(--wh-ink-soft);
  font-size:11.5px;
  padding:8px 10px;
  border-bottom:1px solid var(--wh-line);
}
.wh-scope td{padding:9px 10px;border-bottom:1px solid var(--wh-paper-dim);}
.wh-scope tr:hover td{background:var(--wh-paper-dim);}
.wh-scope .wh-tag{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;}
.wh-scope .wh-tag.in{background:#E3ECE4;color:var(--wh-moss);}
.wh-scope .wh-tag.out{background:#F1E1DC;color:var(--wh-brick);}
.wh-scope .wh-tag.low{background:#F1E1DC;color:var(--wh-brick);}
.wh-scope .wh-tag.ok{background:#E3ECE4;color:var(--wh-moss);}

.wh-scope .wh-filters{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;align-items:flex-end;}
.wh-scope .wh-filters .wh-field{margin-bottom:0;min-width:140px;}

.wh-scope .wh-empty{color:var(--wh-ink-soft);font-size:13px;padding:20px 0;text-align:center;}
.wh-scope .wh-toast{
  position:fixed;bottom:20px;right:20px;
  background:var(--wh-ink);color:#fff;
  padding:11px 18px;border-radius:4px;font-size:13px;
  opacity:0;transform:translateY(8px);
  transition:all .25s ease;pointer-events:none;
  z-index:9999;
}
.wh-scope .wh-toast.show{opacity:1;transform:translateY(0);}
.wh-scope .wh-actions-col{white-space:nowrap;}
.wh-scope .wh-actions-col button{padding:4px 10px;font-size:12px;margin-right:6px;}
.wh-scope .wh-type-toggle{display:flex;gap:8px;margin-bottom:16px;}
.wh-scope .wh-type-toggle button{flex:1;background:var(--wh-paper-dim);color:var(--wh-ink-soft);border:1px solid var(--wh-line);}
.wh-scope .wh-type-toggle button.active{background:var(--wh-ink);color:#fff;border-color:var(--wh-ink);}
.wh-scope .wh-hint{font-size:11.5px;color:var(--wh-ink-soft);margin-top:6px;}
.wh-scope .wh-project-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:14px 0;}
.wh-scope .wh-project-summary div{background:var(--wh-paper-dim);padding:12px;border-radius:3px;}
.wh-scope .wh-project-summary b{display:block;font-family:'Fraunces',serif;font-size:21px;color:var(--wh-leather-dark);}

@media(max-width:760px){
  .wh-scope .wh-aside{width:155px}
  .wh-scope .wh-main{padding:22px 16px}
  .wh-scope .wh-row-inline{flex-direction:column;align-items:stretch}
  .wh-scope .wh-login-card{padding:28px 22px}
}

/* The warehouse page is a standalone app; hide the theme footer on pages where this stylesheet is loaded. */
footer.wp-block-template-part { display:none !important; }
body .is-layout-constrained > .wh-scope {
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
}
	

/* Inventory filters */
.wh-item-filters { margin-bottom: 14px; }
.wh-item-filter-grid { display: grid; grid-template-columns: minmax(220px, 2fr) repeat(5, minmax(135px, 1fr)) auto; gap: 10px; align-items: end; }
.wh-item-filter-grid .wh-field { margin: 0; }
.wh-item-filter-grid .wh-btn { min-height: 42px; white-space: nowrap; }
.wh-filter-result { margin-top: 10px; color: var(--wh-muted, #68716b); font-size: 13px; }
@media (max-width: 1200px) { .wh-item-filter-grid { grid-template-columns: repeat(3, minmax(160px, 1fr)); } }
@media (max-width: 700px) { .wh-item-filter-grid { grid-template-columns: 1fr; } }
	