:root {
  --sand: #f6f0e8;
  --espresso: #2f2219;
  --leaf: #5f7147;
  --copper: #bb6b3b;
  --cream: #fffdf9;
  --mist: #ece3d8;
  --muted: #67564a;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  background: linear-gradient(180deg, #fbf6ef 0%, #f2e9dd 100%);
  color: var(--espresso);
}

a { color: inherit; }
.header {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 7px 20px;
  background: rgba(246, 240, 232, 0.92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(47, 34, 25, 0.08);
}
.brand-link {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  flex-shrink: 0;
  color: inherit;
  text-decoration: none;
}
.brand-logo {
  display: block;
  width: 437px;
  min-width: 437px;
  height: 122px;
  object-fit: contain;
  object-position: left center;
  flex: 0 0 auto;
  margin-right: 0;
}
.brand-label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.05;
  color: var(--espresso);
  white-space: nowrap;
  flex: 0 0 auto;
}
.header-tools {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-left: auto;
  flex-wrap: wrap;
}
.nav {
  display: flex;
  gap: 18px;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  flex-wrap: wrap;
}
.lang-select {
  border: 1px solid rgba(47, 34, 25, 0.16);
  background: rgba(255, 253, 249, 0.96);
  color: var(--espresso);
  border-radius: 999px;
  padding: 8px 12px;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.nav-auth {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 999px;
  background: rgba(255, 253, 249, 0.96);
  border: 1px solid rgba(47, 34, 25, 0.12);
  color: var(--espresso);
  text-decoration: none;
}
.nav-auth.is-active {
  background: var(--espresso);
  color: var(--cream);
}
.nav-auth-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.nav-auth-icon svg {
  display: block;
}
.nav-auth.is-active .nav-auth-icon svg {
  fill: currentColor;
}
.hero {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 28px;
  padding: 56px 28px 32px;
}
.hero-card,
.panel,
.stat,
.table-card,
.empty-state {
  background: rgba(255, 253, 249, 0.88);
  border: 1px solid rgba(47, 34, 25, 0.08);
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(47, 34, 25, 0.08);
}
.hero-card {
  padding: 36px;
}
.hero h1 {
  margin: 0 0 14px;
  font-size: clamp(38px, 6vw, 68px);
  line-height: 0.95;
}
.hero p {
  margin: 0 0 20px;
  max-width: 46rem;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.6;
}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.button,
button {
  appearance: none;
  border: none;
  border-radius: 10px;
  padding: 13px 18px;
  background: var(--leaf);
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.button.secondary,
button.secondary {
  background: transparent;
  color: var(--espresso);
  border: 1px solid rgba(47, 34, 25, 0.18);
}
.dashboard {
  padding: 0 28px 48px;
  display: grid;
  gap: 22px;
}
.dashboard-top-gap {
  padding-top: 28px;
}
.stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 18px;
}
.stat {
  padding: 20px;
}
.stat label {
  display: block;
  margin-bottom: 10px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 12px;
}
.stat strong {
  font-size: 30px;
}
.grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 20px;
}
.panel {
  padding: 22px;
}
.panel h2 {
  margin: 0 0 12px;
  font-size: 24px;
}
.panel p,
.panel li,
.panel ol,
.note,
.muted {
  color: var(--muted);
}
.col-12 { grid-column: span 12; }
.col-8 { grid-column: span 8; }
.col-7 { grid-column: span 7; }
.col-6 { grid-column: span 6; }
.col-5 { grid-column: span 5; }
.col-4 { grid-column: span 4; }
.field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 14px;
}
.field {
  display: grid;
  gap: 8px;
}
.field input,
.field select,
.field textarea {
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  background: #fff;
  font: inherit;
}
.code-box,
.log-box {
  padding: 14px;
  border-radius: 16px;
  background: #221811;
  color: #f7f2ea;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  white-space: pre-wrap;
  word-break: break-word;
}
.key-list,
.location-list {
  display: grid;
  gap: 12px;
}
.key-card,
.location-card {
  padding: 16px;
  border-radius: 16px;
  background: rgba(95, 113, 71, 0.08);
  border: 1px solid rgba(95, 113, 71, 0.16);
}
.key-card header,
.location-card header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.table-card {
  overflow: hidden;
}
.table-card table {
  width: 100%;
  border-collapse: collapse;
}
.table-card th,
.table-card td {
  text-align: left;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(47, 34, 25, 0.08);
  vertical-align: top;
}
.table-card th {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
}
.status {
  min-height: 24px;
  color: var(--muted);
}
.status.error { color: #b24a34; }
.status.ok { color: #356e4f; }
.hidden { display: none !important; }
.badge {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(187, 107, 59, 0.12);
  color: var(--copper);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.footer {
  padding: 18px 28px 40px;
  color: var(--muted);
  font-size: 14px;
}
.overview-page .badge {
  font-size: 10px;
  margin-bottom: 20px;
}
.overview-page .hero-card {
  padding: 28px;
}
.overview-page .hero h1 {
  font-size: clamp(26px, 4.2vw, 44px);
  line-height: 1;
}
.overview-page .hero p {
  font-size: 15px;
  line-height: 1.5;
}
.overview-page .panel h2 {
  font-size: 19px;
}
.overview-page .stat strong {
  font-size: 22px;
}
.sop-list {
  margin: 0;
  padding-left: 22px;
  display: grid;
  gap: 10px;
  color: var(--muted);
}
.subtabs {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 18px;
}
.subtab {
  appearance: none;
  border: 1px solid rgba(47, 34, 25, 0.14);
  background: rgba(255, 253, 249, 0.94);
  color: var(--espresso);
  border-radius: 999px;
  padding: 10px 14px;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.subtab.is-active {
  background: rgba(95, 113, 71, 0.14);
  border-color: rgba(95, 113, 71, 0.4);
}
.warehouse-tab-panel {
  display: none;
  grid-column: 1 / -1;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 20px;
}
.warehouse-tab-panel.is-active {
  display: grid;
}
.subtab[disabled] {
  opacity: 0.55;
  cursor: not-allowed;
}
.checkbox-list {
  display: grid;
  gap: 10px;
}
.checkbox-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(95, 113, 71, 0.06);
  border: 1px solid rgba(95, 113, 71, 0.12);
  color: var(--espresso);
}
.checkbox-row input {
  width: 16px;
  height: 16px;
}
.target-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
  gap: 12px;
}
.small-field label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
}
.toolbar {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.warehouse-ignore-dropdown {
  border: 1px solid rgba(47, 34, 25, 0.12);
  border-radius: 14px;
  background: rgba(255, 253, 249, 0.9);
  overflow: hidden;
}
.warehouse-ignore-dropdown summary {
  list-style: none;
  cursor: pointer;
  padding: 12px 14px;
  font-weight: 700;
}
.warehouse-ignore-dropdown summary::-webkit-details-marker {
  display: none;
}
.warehouse-ignore-options {
  display: grid;
  gap: 8px;
  padding: 0 14px 14px;
  max-height: 220px;
  overflow: auto;
}
.warehouse-ignore-option {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 14px;
  padding: 8px 0;
  font-size: 13px;
  line-height: 1.35;
  cursor: pointer;
}
.warehouse-ignore-option input {
  margin: 0;
  justify-self: end;
}
.warehouse-adjustments-list {
  display: grid;
  gap: 10px;
  margin-top: 2px;
}
.warehouse-adjustment-card {
  text-align: left;
  display: grid;
  gap: 4px;
  width: 100%;
  padding: 14px;
  border-radius: 14px;
  border: 1px solid rgba(47, 34, 25, 0.12);
  background: rgba(255, 253, 249, 0.9);
  color: var(--espresso);
}
.warehouse-adjustment-card.is-active {
  border-color: rgba(95, 113, 71, 0.4);
  background: rgba(95, 113, 71, 0.12);
}
.warehouse-adjustment-card span {
  color: var(--muted);
  font-size: 12px;
}
.warehouse-page .panel {
  padding: 26px;
}
.warehouse-page > .grid > .panel.col-12.print-hide {
  padding: 14px 18px;
}
.warehouse-page > .grid > .panel.col-12.print-hide .subtabs {
  margin-top: 0;
}
.b2b-page > .grid > .panel.col-12.b2b-top-panel {
  padding: 14px 18px;
}
.b2b-page > .grid > .panel.col-12.b2b-top-panel .subtabs {
  margin-top: 0;
}
#warehouse-controls {
  align-self: start;
  position: static;
}
.warehouse-page .note {
  line-height: 1.55;
}
.warehouse-page .field + .field,
.warehouse-page .field-grid + .field,
.warehouse-page .toolbar + .status {
  margin-top: 18px;
}
.warehouse-summary-header,
.warehouse-panel-header,
.print-sheet-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}
.warehouse-adjustment-actions {
  margin-bottom: 10px;
}
.warehouse-adjustment-table-card {
  margin-top: 18px;
}
.warehouse-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.warehouse-summary-header + .warehouse-stat-grid {
  margin-top: 18px;
}
.warehouse-stat {
  padding: 18px;
  border-radius: 18px;
  background: rgba(95, 113, 71, 0.08);
  border: 1px solid rgba(95, 113, 71, 0.14);
}
.warehouse-stat label {
  display: block;
  margin-bottom: 8px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 11px;
}
.warehouse-stat strong {
  font-size: 28px;
}
.warehouse-table-wrap {
  overflow-x: auto;
}
.warehouse-table-wrap table th {
  white-space: nowrap;
  font-size: 11px;
  letter-spacing: 0.06em;
}
.warehouse-table-wrap table td {
  font-size: 13px;
  padding: 10px 12px;
  vertical-align: middle;
}
.warehouse-bag-cell strong {
  display: block;
  font-size: 15px;
  line-height: 1.15;
}
.warehouse-bag-cell span {
  display: block;
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.25;
  color: var(--muted);
}
.warehouse-bag-detail-stack > span {
  display: block;
}
.inventory-item-cell span {
  font-size: 13px;
  line-height: 1.2;
  color: var(--espresso);
}
.warehouse-meta-stack {
  display: grid;
  gap: 3px;
  font-size: 12px;
  line-height: 1.2;
  color: var(--muted);
}
.warehouse-meta-stack strong {
  color: var(--espresso);
  font-size: 11px;
  letter-spacing: 0.04em;
}
.warehouse-meta-inline {
  margin-top: 6px;
}
.warehouse-qty-cell {
  width: 1%;
  white-space: nowrap;
}
.warehouse-qty-control {
  display: inline-flex;
  align-items: stretch;
  width: 104px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.warehouse-qty-input {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  padding: 10px 12px;
  text-align: center;
  font: inherit;
  font-size: 13px;
}
.warehouse-qty-minus,
.warehouse-qty-plus {
  flex: 0 0 34px;
  border-radius: 0;
  background: rgba(95, 113, 71, 0.12);
  color: var(--leaf);
  padding: 0;
  font-size: 18px;
  line-height: 1;
}
.warehouse-qty-minus {
  border-right: 1px solid rgba(47, 34, 25, 0.12);
}
.warehouse-qty-plus {
  border-left: 1px solid rgba(47, 34, 25, 0.12);
}
.warehouse-qty-minus:hover,
.warehouse-qty-plus:hover {
  background: rgba(95, 113, 71, 0.18);
}
.pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.pill {
  display: inline-flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(187, 107, 59, 0.08);
  border: 1px solid rgba(187, 107, 59, 0.16);
  min-width: 120px;
}
.pill strong {
  font-size: 12px;
}
.pill span {
  font-size: 12px;
  color: var(--muted);
}
.table-input {
  width: 92px;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  font: inherit;
  font-size: 13px;
}
.b2b-bag-cell strong {
  display: block;
  font-size: 15px;
  line-height: 1.15;
}
.b2b-bag-cell span {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.25;
  color: var(--muted);
}
.b2b-qty-cell {
  width: 1%;
  white-space: nowrap;
}
.b2b-qty-control {
  display: inline-flex;
  align-items: stretch;
  width: 146px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.b2b-qty-input {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  padding: 10px 12px;
  text-align: center;
}
.b2b-qty-minus,
.b2b-qty-plus {
  flex: 0 0 38px;
  border-radius: 0;
  background: rgba(95, 113, 71, 0.12);
  color: var(--leaf);
  padding: 0;
  font-size: 20px;
  line-height: 1;
}
.b2b-qty-minus {
  border-right: 1px solid rgba(47, 34, 25, 0.12);
}
.b2b-qty-plus {
  border-left: 1px solid rgba(47, 34, 25, 0.12);
}
.b2b-qty-minus:hover,
.b2b-qty-plus:hover {
  background: rgba(95, 113, 71, 0.18);
}
.inventory-qty-control {
  display: inline-flex;
  align-items: stretch;
  width: 117px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.inventory-qty-input {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  padding: 10px 8px;
  text-align: center;
}
.inventory-qty-minus,
.inventory-qty-plus {
  flex: 0 0 38px;
  border-radius: 0;
  background: rgba(95, 113, 71, 0.12);
  color: var(--leaf);
  padding: 0;
  font-size: 20px;
  line-height: 1;
}
.inventory-qty-minus {
  border-right: 1px solid rgba(47, 34, 25, 0.12);
}
.inventory-qty-plus {
  border-left: 1px solid rgba(47, 34, 25, 0.12);
}
.inventory-qty-minus:hover,
.inventory-qty-plus:hover {
  background: rgba(95, 113, 71, 0.18);
}
.row-check-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  padding: 10px 12px;
  font-size: 18px;
  line-height: 1;
}
.row-check-button span {
  display: block;
}
.material-card header {
  align-items: flex-start;
}
.material-card .material-qty {
  font-weight: 700;
}
.material-card .muted {
  margin-top: 4px;
}
.compact-materials-table {
  border-radius: 14px;
}
.compact-materials-table table th,
.compact-materials-table table td {
  padding: 10px 12px;
  font-size: 13px;
}
.compact-materials-table table td:last-child,
.compact-materials-table table th:last-child {
  white-space: nowrap;
  width: 1%;
}
.manual-plan-add {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(95, 113, 71, 0.06);
  border: 1px solid rgba(95, 113, 71, 0.12);
}
.manual-plan-add-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}
.manual-plan-add-head strong {
  color: var(--leaf);
  font-size: 18px;
  line-height: 1;
}
.manual-plan-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.manual-plan-grid select,
.manual-plan-grid input {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  background: #fff;
  font: inherit;
}
.manual-plan-grid button {
  white-space: nowrap;
}
.warehouse-bulk-list {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}
.bulk-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.bulk-expand-button {
  min-width: 42px;
  padding-left: 0;
  padding-right: 0;
}
.warehouse-bulk-min-list {
  display: grid;
  gap: 8px;
}
.warehouse-bulk-min-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  gap: 8px;
  align-items: center;
}
.warehouse-bulk-min-row {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255, 253, 249, 0.92);
  border: 1px solid rgba(47, 34, 25, 0.12);
}
.warehouse-bulk-min-bag {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.warehouse-bulk-min-bag strong {
  display: block;
  min-width: 0;
  font-size: 14px;
  line-height: 1.2;
  color: var(--espresso);
  overflow-wrap: anywhere;
}
.warehouse-bulk-min-bag span {
  display: block;
  min-width: 0;
  font-size: 13px;
  color: var(--muted);
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.warehouse-bulk-min-row input[type="number"] {
  width: 100%;
  padding: 6px 4px;
  border-radius: 10px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  background: #fff;
  font: inherit;
  color: var(--espresso);
  font-size: 12px;
}
.help-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-left: 6px;
  border-radius: 999px;
  background: rgba(47, 34, 25, 0.1);
  color: var(--espresso);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  cursor: help;
  vertical-align: middle;
  position: relative;
}
.help-dot:hover::after,
.help-dot:focus-visible::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  transform: translateX(-50%);
  min-width: 180px;
  max-width: 260px;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(47, 34, 25, 0.96);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
  white-space: normal;
  z-index: 20;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
  pointer-events: none;
}
.help-dot:hover::before,
.help-dot:focus-visible::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: calc(100% + 2px);
  transform: translateX(-50%);
  border-width: 6px 6px 0 6px;
  border-style: solid;
  border-color: rgba(47, 34, 25, 0.96) transparent transparent transparent;
  z-index: 20;
  pointer-events: none;
}
.warehouse-bulk-card {
  padding: 18px;
  border-radius: 18px;
  background: rgba(255, 253, 249, 0.92);
  border: 1px solid rgba(47, 34, 25, 0.12);
}
.warehouse-bulk-card.is-ordering {
  border-color: rgba(95, 113, 71, 0.35);
  box-shadow: inset 0 0 0 1px rgba(95, 113, 71, 0.14);
}
.warehouse-bulk-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.warehouse-bulk-card-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.warehouse-bulk-edit-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.warehouse-bulk-edit-icon {
  display: inline-flex;
  width: 16px;
  justify-content: center;
  font-size: 13px;
  line-height: 1;
}
.warehouse-bulk-head strong {
  display: block;
  font-size: 18px;
  line-height: 1.1;
}
.warehouse-bulk-head span {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.warehouse-bulk-order-pill {
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(95, 113, 71, 0.12);
  color: var(--leaf);
  font-weight: 700;
  white-space: nowrap;
}
.warehouse-bulk-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}
.warehouse-bulk-metrics span {
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(187, 107, 59, 0.08);
  border: 1px solid rgba(187, 107, 59, 0.12);
  font-size: 12px;
  color: var(--muted);
}
.warehouse-bulk-metrics strong {
  color: var(--espresso);
}
.warehouse-bulk-config-block {
  margin-top: 16px;
}
.warehouse-bulk-config-block h3 {
  margin: 0 0 8px;
  font-size: 13px;
}
.warehouse-bulk-config-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.warehouse-bulk-config-summary span {
  padding: 7px 10px;
  border-radius: 10px;
  background: rgba(47, 34, 25, 0.05);
  border: 1px solid rgba(47, 34, 25, 0.08);
  color: var(--muted);
  font-size: 12px;
}
.warehouse-bulk-config-summary strong {
  color: var(--espresso);
}
.warehouse-bulk-settings-shell {
  display: none;
}
.warehouse-bulk-settings-shell.is-open {
  display: block;
}
.warehouse-bulk-settings-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}
.warehouse-bulk-settings-grid label {
  display: grid;
  gap: 6px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
}
.warehouse-bulk-settings-grid input[type="number"] {
  width: 100%;
  padding: 9px 10px;
  border-radius: 10px;
  border: 1px solid rgba(47, 34, 25, 0.14);
  background: #fff;
  font: inherit;
  font-size: 13px;
  color: var(--espresso);
}
.warehouse-bulk-enabled {
  align-content: end;
}
.warehouse-bulk-enabled input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
}
.warehouse-bulk-reasons {
  margin-top: 16px;
}
.warehouse-bulk-reasons h3 {
  margin: 0 0 8px;
  font-size: 14px;
}
.warehouse-bulk-reasons ul {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}
.print-sheet {
  display: grid;
  gap: 16px;
}
.print-meta {
  display: grid;
  gap: 8px;
  color: var(--muted);
}
.print-table-wrap table th,
.print-table-wrap table td {
  padding: 9px 10px;
}
.print-only {
  display: none !important;
}
@media (max-width: 960px) {
  .hero { grid-template-columns: 1fr; }
  .col-12, .col-8, .col-7, .col-6, .col-5, .col-4 { grid-column: span 12; }
  .manual-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .warehouse-bulk-min-row {
    grid-template-columns: minmax(0, 1fr) 58px;
    gap: 6px;
  }
  .warehouse-bulk-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .overview-page .hero-card {
    padding: 22px;
  }
  .overview-page .hero h1 {
    font-size: 28px;
  }
  .overview-page .hero p {
    font-size: 14px;
  }
  .overview-page .panel h2 {
    font-size: 17px;
  }
  .overview-page .stat strong {
    font-size: 20px;
  }
}
@media (max-width: 1180px) {
  .header {
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
  }
  .header-tools {
    width: auto;
    min-width: 0;
    flex: 1 1 0;
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    gap: 4px;
    justify-content: end;
    justify-items: end;
    margin-left: auto;
  }
  .nav {
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    font-size: 13px;
    letter-spacing: 0.05em;
    grid-column: 3;
    grid-row: 1;
    min-width: 0;
    justify-self: end;
    text-align: right;
  }
  .lang-select {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
  }
  .nav-auth {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    margin-top: 0;
  }
}
@media (max-width: 720px), (hover: none) and (pointer: coarse) {
  .header {
    align-items: center;
    gap: 10px;
    padding: 6px 12px;
    flex-wrap: nowrap;
  }
  .brand-link {
    flex-direction: row;
    align-items: flex-start;
    max-width: 102px;
    flex: 0 1 102px;
    min-width: 0;
  }
  .brand-logo {
    width: 100%;
    min-width: 0;
    height: auto;
    margin-right: 0;
  }
  .brand-label {
    display: none;
  }
  .header-tools {
    width: auto;
    min-width: 0;
    flex: 1 1 0;
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    gap: 2px;
    justify-content: end;
    justify-items: end;
    margin-left: auto;
  }
  .nav {
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    font-size: 13px;
    letter-spacing: 0.05em;
    grid-column: 3;
    grid-row: 1;
    order: 2;
    min-width: 0;
    justify-self: end;
    text-align: right;
  }
  .lang-select {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    padding: 6px 7px;
    font-size: 12px;
    order: 1;
  }
  .nav-auth {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    margin-top: 0;
  }
  #b2b-bags-table th,
  #b2b-bags-table td {
    padding: 10px 10px;
  }
  .b2b-bag-cell strong {
    font-size: 14px;
  }
  .b2b-bag-cell span {
    font-size: 11px;
  }
  .b2b-qty-control {
    width: 104px;
  }
  .b2b-qty-plus {
    flex-basis: 34px;
    font-size: 18px;
  }
  .inventory-qty-control {
    width: 134px;
  }
  .inventory-qty-minus,
  .inventory-qty-plus {
    flex-basis: 34px;
    font-size: 18px;
  }
  .warehouse-page .panel {
    padding: 18px;
  }
  .warehouse-table-wrap table th,
  .warehouse-table-wrap table td {
    padding: 9px 10px;
  }
  .warehouse-bag-cell strong {
    font-size: 15px;
  }
  .warehouse-bag-detail-stack {
    font-size: 13px;
    line-height: 1.3;
  }
  .warehouse-meta-stack {
    font-size: 11px;
  }
  .warehouse-qty-control {
    width: 104px;
  }
  .warehouse-qty-plus {
    flex-basis: 34px;
    font-size: 18px;
  }
  .warehouse-bulk-settings-grid {
    grid-template-columns: 1fr;
  }
}
@media print {
  @page {
    size: auto;
    margin: 0.35in;
  }
  body {
    background: #fff;
    color: #000;
    font-size: 11px;
  }
  body.printing-handoff > *:not(.warehouse-page),
  body.printing-transfer > *:not(.warehouse-page),
  .print-hide,
  .header,
  [data-warehouse-panel="adjustments"],
  #warehouse-controls,
  #warehouse-empty,
  #warehouse-plan-panel,
  #warehouse-materials,
  #warehouse-status,
  .subtabs,
  button,
  .toolbar,
  .note:not(.print-only) {
    display: none !important;
  }
  body.printing-handoff .warehouse-page,
  body.printing-transfer .warehouse-page {
    display: block !important;
    padding: 0;
  }
  body.printing-handoff .warehouse-page > .grid,
  body.printing-transfer .warehouse-page > .grid {
    display: block;
  }
  body.printing-handoff .warehouse-page .panel,
  body.printing-handoff .warehouse-tab-panel,
  body.printing-transfer .warehouse-page .panel,
  body.printing-transfer .warehouse-tab-panel {
    display: none !important;
  }
  body.printing-handoff .warehouse-page [data-warehouse-panel="stock"] {
    display: block !important;
  }
  body.printing-transfer .warehouse-page [data-warehouse-panel="transfers"] {
    display: block !important;
  }
  body.printing-handoff #warehouse-print-panel,
  body.printing-transfer #warehouse-transfer-print-panel {
    display: block !important;
    box-shadow: none;
    border: none;
    background: #fff;
    padding: 0;
    margin: 0;
  }
  body.printing-handoff .warehouse-page h2,
  body.printing-transfer .warehouse-page h2 {
    margin: 0 0 4px;
  }
  body.printing-handoff #warehouse-print-panel > h2,
  body.printing-transfer #warehouse-transfer-print-panel > h2 {
    display: none !important;
  }
  body.printing-handoff .print-sheet,
  body.printing-handoff .print-sheet *,
  body.printing-transfer .print-sheet,
  body.printing-transfer .print-sheet * {
    color: #000 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  body.printing-handoff .print-sheet,
  body.printing-transfer .print-sheet {
    gap: 8px;
  }
  body.printing-handoff .print-sheet-head,
  body.printing-transfer .print-sheet-head {
    align-items: baseline;
    border-bottom: 1px solid #ccc;
    padding-bottom: 4px;
    margin-bottom: 4px;
  }
  body.printing-handoff .print-sheet h3,
  body.printing-transfer .print-sheet h3 {
    margin: 0;
    font-size: 15px;
    line-height: 1.1;
  }
  body.printing-handoff .print-sheet .muted,
  body.printing-transfer .print-sheet .muted {
    font-size: 10px;
    line-height: 1.1;
  }
  body.printing-handoff .print-table-wrap,
  body.printing-handoff .table-card,
  body.printing-transfer .print-table-wrap,
  body.printing-transfer .table-card {
    border: none !important;
    border-radius: 0 !important;
    overflow: visible;
    margin: 0;
  }
  body.printing-handoff .print-table-wrap table,
  body.printing-transfer .print-table-wrap table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
  }
  body.printing-handoff .print-table-wrap th,
  body.printing-handoff .print-table-wrap td,
  body.printing-transfer .print-table-wrap th,
  body.printing-transfer .print-table-wrap td {
    padding: 4px 3px;
    border-bottom: 1px solid #d0d0d0;
    font-size: 10px;
    line-height: 1.15;
  }
  body.printing-handoff .print-table-wrap th,
  body.printing-transfer .print-table-wrap th {
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 9px;
    padding-top: 4px;
    padding-bottom: 4px;
  }
  .print-only {
    display: block !important;
  }
  .panel,
  .table-card,
  .warehouse-stat,
  .hero-card,
  .stat,
  .empty-state {
    box-shadow: none;
    background: #fff;
  }
  a {
    text-decoration: none;
  }
}
