﻿:root,
[data-theme="purples-dark"] {
  color-scheme: dark;
  --ink: #f3eef8;
  --muted: #c8bad4;
  --subtle: #9d8dad;
  --line: #3d304a;
  --line-strong: #5b496d;
  --paper: #15101c;
  --panel: #201729;
  --panel-soft: #2a2036;
  --accent: #7c3aed;
  --accent-strong: #a78bfa;
  --accent-soft: #35224d;
  --blue: #7dd3fc;
  --blue-soft: #183345;
  --gold: #f7c948;
  --gold-soft: #44350f;
  --good: #62d985;
  --danger: #ff7a90;
  --important: #ff4d6d;
  --warn: #f7c948;
  --warn-soft: #44350f;
  --input-bg: #171120;
  --metric-bg: color-mix(in srgb, var(--panel) 72%, #000 28%);
  --metric-ink: var(--good);
  --metric-border: color-mix(in srgb, var(--good) 45%, var(--line));
  --shadow: 0 18px 48px rgba(0, 0, 0, 0.32);
  --shadow-soft: 0 8px 22px rgba(0, 0, 0, 0.22);
}

[data-theme="purples-light"] {
  color-scheme: light;
  --ink: #21172c;
  --muted: #65556f;
  --subtle: #82728f;
  --line: #d9cfe4;
  --line-strong: #bba8cd;
  --paper: #f6f1f8;
  --panel: #fffaff;
  --panel-soft: #f0e8f6;
  --accent: #6d28d9;
  --accent-strong: #4c1d95;
  --accent-soft: #eadffd;
  --blue: #0369a1;
  --blue-soft: #e0f2fe;
  --gold: #9a6500;
  --gold-soft: #fff2bf;
  --good: #166534;
  --danger: #b4233f;
  --important: #d10f35;
  --input-bg: #ffffff;
  --shadow: 0 18px 48px rgba(43, 27, 55, 0.12);
  --shadow-soft: 0 8px 22px rgba(43, 27, 55, 0.08);
}

[data-theme="browns-dark"] {
  color-scheme: dark;
  --ink: #f7efe6;
  --muted: #d2c0ae;
  --subtle: #a99580;
  --line: #44372b;
  --line-strong: #67523d;
  --paper: #17120e;
  --panel: #231b14;
  --panel-soft: #2f241a;
  --accent: #b7791f;
  --accent-strong: #f6ad55;
  --accent-soft: #3c2b16;
  --blue: #7dd3fc;
  --blue-soft: #16313e;
  --gold: #ffd166;
  --gold-soft: #49370f;
  --good: #70e08b;
  --danger: #ff7a7a;
  --important: #ff5c35;
  --input-bg: #1a130e;
  --shadow: 0 18px 48px rgba(0, 0, 0, 0.34);
  --shadow-soft: 0 8px 22px rgba(0, 0, 0, 0.24);
}

[data-theme="browns-light"] {
  color-scheme: light;
  --ink: #2a1d14;
  --muted: #6f5948;
  --subtle: #8d7664;
  --line: #dfd0c2;
  --line-strong: #bea891;
  --paper: #f7f1ea;
  --panel: #fffaf4;
  --panel-soft: #f0e4d8;
  --accent: #9a5f12;
  --accent-strong: #6f4208;
  --accent-soft: #f4dfbf;
  --blue: #075985;
  --blue-soft: #dff3ff;
  --gold: #9a6500;
  --gold-soft: #fff1bf;
  --good: #166534;
  --danger: #b42318;
  --important: #c2410c;
  --input-bg: #ffffff;
  --shadow: 0 18px 48px rgba(42, 29, 20, 0.12);
  --shadow-soft: 0 8px 22px rgba(42, 29, 20, 0.08);
}

* {
  box-sizing: border-box;
}

html {
  min-width: 320px;
}

body {
  margin: 0;
  min-height: 100vh;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.025) 0 1px, transparent 1px 72px);
}

[data-theme$="-light"] body::before {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0)),
    repeating-linear-gradient(90deg, rgba(23, 32, 42, 0.035) 0 1px, transparent 1px 72px);
}

.palettePicker {
  align-items: start;
  min-width: 132px;
  color: var(--muted);
}

.palettePicker select {
  min-height: 40px;
  border-color: var(--line-strong);
  background: var(--panel-soft);
  color: var(--ink);
  font-weight: 800;
}
button,
input,
select {
  font: inherit;
}

button {
  border: 1px solid var(--accent);
  border-radius: 6px;
  background: var(--accent);
  color: var(--button-ink, white);
  cursor: pointer;
  min-height: 40px;
  padding: 0 14px;
  font-weight: 800;
  box-shadow: var(--shadow-soft);
  transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

button:hover {
  background: var(--accent-strong);
  border-color: var(--accent-strong);
  color: var(--button-hover-ink, var(--button-ink, white));
  box-shadow: 0 10px 24px rgba(17, 94, 89, 0.18);
  transform: translateY(-1px);
}

button:active {
  transform: translateY(0);
}

input,
select {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--input-bg);
  color: var(--ink);
  padding: 8px 10px;
  outline: none;
  transition: border-color 140ms ease, box-shadow 140ms ease, background 140ms ease;
}

input:focus,
select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.13);
}

input::placeholder {
  color: var(--subtle);
}

label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

h1,
h2,
h3,
h4,
p {
  margin: 0;
}

.topbar {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) 220px minmax(520px, 1.2fr);
  align-items: center;
  gap: 16px;
  padding: 18px clamp(14px, 3vw, 28px);
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel) 94%, transparent);
  box-shadow: 0 1px 0 rgba(23, 32, 42, 0.03);
}

.brandBlock,
.operatorControls {
  min-width: 0;
}

.brandBlock {
  justify-self: start;
  max-width: 360px;
}

.storeLogoSlot {
  grid-column: 2;
  justify-self: center;
  min-width: 0;
  width: 220px;
  max-width: 100%;
  height: 76px;
  min-height: 54px;
  overflow: hidden;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 78%, transparent);
  padding: 8px 14px;
}

[data-theme$="-light"] .storeLogoSlot {
  border-color: color-mix(in srgb, var(--accent) 42%, #111827);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0)),
    color-mix(in srgb, #111827 88%, var(--accent));
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08), 0 8px 18px rgba(17, 24, 39, 0.12);
}

.storeLogoSlot img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 58px;
  object-fit: contain;
  display: block;
}

[data-theme$="-light"] .storeLogoSlot img {
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.45));
}

.storeLogoSlot span {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

[data-theme$="-light"] .storeLogoSlot span {
  color: #fff;
}

.visuallyHidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
}

.logoActions {
  display: flex;
  align-items: end;
}

.logoActions button {
  width: 100%;
}

.topbar h1 {
  font-size: clamp(1.7rem, 3vw, 2.35rem);
  line-height: 1.05;
  font-weight: 850;
}

.topActions {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: end;
  gap: 8px;
  grid-column: 3;
  justify-self: end;
  max-width: 100%;
}

.headerSessionBox {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 8px 10px;
  border: 1px solid var(--line-strong);
  border-radius: 10px;
  background: color-mix(in srgb, var(--panel-soft) 82%, transparent);
}

.headerSessionIdentity {
  display: grid;
  gap: 2px;
  text-align: right;
}

.headerSessionIdentity strong {
  font-size: 0.84rem;
}

.headerSessionIdentity span,
.headerSessionIdentity small {
  color: var(--muted);
  line-height: 1.25;
}

.headerSessionIdentity small {
  font-size: 0.72rem;
}

.topbar button {
  min-width: 124px;
  background: var(--ink);
  border-color: var(--ink);
  color: var(--paper);
}

.topbar button:hover {
  background: var(--accent-strong);
  border-color: var(--accent-strong);
  color: #061211;
  box-shadow: 0 10px 24px rgba(20, 184, 166, 0.22);
}

.topbar .secondaryButton {
  min-width: 112px;
  background: var(--panel-soft);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

#guideVisibilityToggle {
  min-width: 152px;
  border-width: 2px;
  border-color: color-mix(in srgb, var(--warn) 68%, var(--line-strong));
  background: color-mix(in srgb, var(--warn-soft) 72%, var(--panel-soft));
  color: var(--ink);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--warn) 18%, transparent), var(--shadow-soft);
}

#guideVisibilityToggle[aria-pressed="true"] {
  border-color: color-mix(in srgb, var(--good) 78%, var(--line-strong));
  background: color-mix(in srgb, var(--good) 28%, var(--panel-soft));
  color: var(--ink);
}

[data-theme$="-light"] #guideVisibilityToggle {
  background: color-mix(in srgb, var(--warn-soft) 46%, var(--panel));
  color: var(--ink);
}

[data-theme$="-light"] #guideVisibilityToggle[aria-pressed="true"] {
  background: color-mix(in srgb, var(--good) 18%, var(--panel));
}

.eyebrow {
  margin-bottom: 6px;
  color: var(--accent-strong);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.layout {
  display: grid;
  grid-template-columns: minmax(320px, 430px) minmax(380px, 1fr) minmax(340px, 440px);
  gap: 18px;
  padding: 18px;
  align-items: start;
}

.panel {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 96%, transparent);
  box-shadow: var(--shadow);
  overflow: hidden;
}

.panel > h2,
.sectionHead {
  border-bottom: 1px solid var(--line);
  background: var(--panel-soft);
}

.panel > h2 {
  padding: 15px 16px;
  font-size: 0.98rem;
  font-weight: 850;
}

.panel > form,
.panel > .empty,
.panel > #detail,
.productList,
.catalogImportDrawer,
.catalogImport {
  margin: 0 16px;
}

form {
  display: grid;
  gap: 12px;
}

.intake form {
  padding: 16px 0;
}

.grid {
  display: grid;
  gap: 10px;
}

.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sectionHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 15px 16px;
}

.sectionHead h2 {
  font-size: 0.98rem;
  font-weight: 850;
}

.sectionHead input {
  max-width: 260px;
  background: var(--input-bg);
}

.catalogImport {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: end;
  padding-top: 12px;
}

.catalogImportDrawer {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  margin-bottom: 12px;
}

.catalogImportDrawer summary {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  color: var(--ink);
  font-weight: 900;
}

.catalogImportDrawer summary small {
  color: var(--muted);
  font-size: 0.72rem;
  text-align: right;
}

.catalogImportDrawer .catalogImport {
  margin: 0;
  padding: 0 14px 14px;
}

.setupPanel,
.automationPanel {
  display: grid;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  margin: 0 16px;
  padding: 14px 0;
}

.setupPanel summary,
.automationPanel summary {
  cursor: pointer;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.setupPanel h3 {
  margin-bottom: 4px;
  font-size: 0.94rem;
  font-weight: 850;
}

.setupPanel p {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.setupSteps {
  display: grid;
  gap: 8px;
}

.setupPanel .secondaryButton {
  justify-self: start;
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.setupStep {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 9px;
}

.setupStep strong {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 0.78rem;
}

.setupStep span {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 800;
}

.setupStep.ready {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent-soft) 35%, var(--panel-soft));
}

.setupStep.ready strong {
  background: var(--accent);
  color: white;
}

.ruleList {
  display: grid;
  gap: 8px;
}

.checkRule {
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 10px;
  color: var(--ink);
  font-size: 0.84rem;
}

.checkRule input {
  width: 18px;
  min-height: 18px;
}

.catalogImport a {
  align-self: center;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 0.82rem;
  font-weight: 850;
  padding: 9px 11px;
  text-decoration: none;
}

.productList,
.comps {
  display: grid;
  gap: 10px;
}


.reviewQueue {
  border-bottom: 1px solid var(--line);
  margin: 0 16px;
  padding: 14px 0;
}

.reviewQueue h3 {
  margin-bottom: 10px;
  font-size: 0.92rem;
  font-weight: 900;
}

.reviewQueueItems {
  display: grid;
  gap: 8px;
}

.reviewBulkPanel {
  display: grid;
  gap: 12px;
  margin: 0 16px 16px;
  padding-top: 14px;
}

.bulkStep {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-soft);
  padding: 12px;
}

.bulkStep .miniHead {
  margin-bottom: 0;
}

.bulkMatchBox {
  justify-self: start;
  width: min(260px, 100%);
}

.bulkMatchBox input {
  text-align: center;
  font-weight: 900;
}

.bulkActionBar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.bulkActionBar .marketStatus {
  margin: 0;
}

.queueItem {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  color: var(--ink);
  padding: 10px;
  text-align: left;
  box-shadow: none;
}

.queueItem strong {
  font-size: 0.84rem;
}

.queueItem span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.queueBadge {
  border-radius: 999px;
  background: var(--gold-soft);
  color: var(--gold);
  font-size: 0.72rem;
  font-weight: 900;
  padding: 4px 8px;
}
.productList {
  padding: 14px 0 16px;
}

.product {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 14px;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 12px;
  text-align: left;
  box-shadow: none;
}

.product:hover {
  border-color: var(--line-strong);
  background: color-mix(in srgb, var(--panel-soft) 88%, var(--panel));
  box-shadow: var(--shadow-soft);
}

.product[aria-selected="true"] {
  border-color: var(--accent);
  background: linear-gradient(90deg, var(--accent-soft), var(--panel) 46%);
  box-shadow: inset 4px 0 0 var(--accent), var(--shadow-soft);
}

.product h3 {
  font-size: 0.96rem;
  line-height: 1.25;
  font-weight: 850;
}

.meta {
  color: var(--muted);
  font-size: 0.8rem;
  line-height: 1.35;
}

.badge {
  align-self: start;
  border: 1px solid rgba(15, 118, 110, 0.18);
  border-radius: 999px;
  background: var(--accent-soft);
  color: var(--accent-strong);
  padding: 4px 9px;
  font-size: 0.78rem;
  font-weight: 900;
}

.badge.warning {
  border-color: color-mix(in srgb, var(--warn) 58%, var(--line));
  background: color-mix(in srgb, var(--warn-soft) 72%, var(--panel));
  color: color-mix(in srgb, var(--warn) 82%, var(--ink));
}

.detail > #detail {
  padding: 16px 0;
}

#detailTitle {
  margin-bottom: 12px;
  font-size: 1.08rem;
  font-weight: 850;
  line-height: 1.25;
}

.priceStrip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 14px;
}

.priceStrip div {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.priceStrip span {
  display: block;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 900;
}

.priceStrip strong {
  display: block;
  margin-top: 6px;
  font-size: 1.45rem;
  line-height: 1.1;
}

.conditionPanel,
.sourcePanel,


.inventoryEditor,
.visibilityPanel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  margin-bottom: 14px;
  padding: 12px;
}

.inventoryEditor .conditionIntakeGrid {
  margin-bottom: 10px;
}

.inventoryEditor .secondaryButton {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.twoActions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 0;
}

.conditionIntake {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  margin: 2px 0 12px;
  padding: 12px;
}

.miniHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.miniHead h3 {
  font-size: 0.9rem;
  font-weight: 900;
}

.miniHead span {
  border-radius: 999px;
  background: color-mix(in srgb, var(--blue-soft) 72%, var(--panel));
  color: var(--blue);
  font-size: 0.7rem;
  font-weight: 900;
  padding: 4px 8px;
}

.conditionIntakeGrid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.conditionIntakeGrid.singleColumn {
  grid-template-columns: minmax(180px, 280px);
}

.conditionIntakeGrid.singleStockEntry {
  grid-template-columns: 1fr;
}

.conditionIntakeGrid label {
  gap: 5px;
  color: var(--ink);
  text-align: center;
}

.conditionIntakeGrid input {
  text-align: center;
  font-weight: 900;
}

.catalogStockEntryRow {
  display: grid;
  grid-template-columns: minmax(160px, 220px) minmax(110px, 150px);
  gap: 10px;
  align-items: end;
  max-width: 390px;
}

.catalogStockEntryRow label {
  text-align: left;
}

.catalogStockEntryRow select,
.catalogStockEntryRow input {
  width: 100%;
}

.catalogStockQuantityControl input {
  text-align: center;
  font-weight: 900;
}

.catalogStockPanel {
  display: grid;
  gap: 12px;
  border: 1px solid color-mix(in srgb, var(--blue) 32%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 82%, var(--blue-soft));
  padding: 12px;
}

.catalogStockCostGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 620px;
}

.catalogMsrpHoldGrid {
  grid-template-columns: minmax(160px, 220px) minmax(160px, 260px);
  max-width: 500px;
  align-items: end;
}

.catalogProductLimitGrid {
  grid-template-columns: minmax(160px, 220px) minmax(130px, 180px) minmax(180px, 240px);
  max-width: 720px;
  align-items: end;
}

.catalogMsrpHoldGrid .checkRule,
.catalogProductLimitGrid .checkRule {
  min-height: 42px;
}

@media (max-width: 780px) {
  .catalogStockEntryRow {
    grid-template-columns: 1fr;
  }

  .catalogStockCostGrid,
  .catalogMsrpHoldGrid,
  .catalogProductLimitGrid {
    grid-template-columns: 1fr;
  }
}

.customVariantIntake {
  display: grid;
  gap: 10px;
}

.customVariantRow {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(140px, 220px);
  gap: 10px;
  align-items: end;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 78%, transparent);
  padding: 10px;
}

.customVariantRow[data-fixed-name] {
  grid-template-columns: minmax(140px, 240px);
}

.customVariantRow input {
  font-weight: 900;
}

.variantPreview {
  display: grid;
  gap: 7px;
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 12px;
}

.shopifyPreview .variantPreview h4 {
  margin: 0 0 2px;
  font-size: 0.82rem;
  font-weight: 900;
}

.shopifyPreview .variantPreview div {
  display: grid;
  grid-template-columns: minmax(112px, 1fr) 58px minmax(150px, 1.4fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 70%, transparent);
  padding: 8px;
}

.variantPreview strong,
.variantPreview span,
.variantPreview b,
.variantPreview code {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 0.74rem;
}

.variantPreview span {
  color: var(--muted);
  font-weight: 850;
}

.variantPreview code {
  color: var(--blue);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}

.variantPreview b {
  color: var(--good);
  text-align: right;
}

.shopifyPreview {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.conditionPanel,
.sourcePanel {
  margin-bottom: 14px;
}

.conditionPanel h4,
.sourcePanel h4,
.shopifyPreview h3,
.compForm h4 {
  margin-bottom: 10px;
  font-size: 0.92rem;
  font-weight: 850;
}

.conditionPrices {
  display: grid;
  gap: 0;
}

.conditionRow {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 10px;
  align-items: center;
  border-top: 1px solid var(--line);
  min-height: 34px;
  padding: 8px 0;
}

.conditionRow:first-child {
  border-top: 0;
  padding-top: 0;
}

.conditionRow span {
  border-radius: 999px;
  background: var(--gold-soft);
  color: var(--gold);
  font-size: 0.75rem;
  font-weight: 900;
  padding: 3px 8px;
}

.conditionRow strong {
  font-size: 0.93rem;
}

.pricingSources {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
}

.sourceLink {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 12px;
  text-decoration: none;
}

.sourceLink:hover {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent-soft) 28%, var(--panel));
}

.sourceLink strong {
  display: block;
  font-size: 0.88rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.sourceLink span {
  min-width: 0;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.sourceLink small {
  align-self: start;
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 0.72rem;
  font-weight: 900;
  padding: 3px 8px;
  line-height: 1.25;
  white-space: normal;
  text-align: right;
}

.sourcePanel .secondaryButton {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.marketStatus {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--blue-soft) 26%, var(--panel));
  color: var(--muted);
  margin-bottom: 10px;
  padding: 9px 10px;
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.35;
}

.ebayResults {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.ebayResult {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
}

.ebayResultHead {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
}

.ebayResult h5 {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.3;
}

.ebayResult strong {
  color: var(--good);
}

.ebayResult p {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.ebayResultActions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}

.ebayResultActions a {
  color: var(--blue);
  font-size: 0.78rem;
  font-weight: 850;
}

.ebayResultActions button {
  min-height: 34px;
  box-shadow: none;
}

.compForm {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  margin: 14px 0;
  padding: 14px 0;
}



.inventoryEditor,
.visibilityPanel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  margin-bottom: 14px;
  padding: 12px;
}

.inventoryEditor .conditionIntakeGrid {
  margin-bottom: 10px;
}

.inventoryEditor .secondaryButton {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.twoActions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 0;
}

.conditionIntake {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  margin: 2px 0 12px;
  padding: 12px;
}

.miniHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.miniHead h3 {
  font-size: 0.9rem;
  font-weight: 900;
}

.miniHead span {
  border-radius: 999px;
  background: color-mix(in srgb, var(--blue-soft) 72%, var(--panel));
  color: var(--blue);
  font-size: 0.7rem;
  font-weight: 900;
  padding: 4px 8px;
}

.conditionIntakeGrid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.conditionIntakeGrid.singleColumn {
  grid-template-columns: minmax(180px, 280px);
}

.conditionIntakeGrid label {
  gap: 5px;
  color: var(--ink);
  text-align: center;
}

.conditionIntakeGrid input {
  text-align: center;
  font-weight: 900;
}

.variantPreview {
  display: grid;
  gap: 7px;
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 12px;
}

.shopifyPreview .variantPreview h4 {
  margin: 0 0 2px;
  font-size: 0.82rem;
  font-weight: 900;
}

.shopifyPreview .variantPreview div {
  display: grid;
  grid-template-columns: minmax(112px, 1fr) 58px minmax(150px, 1.4fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 70%, transparent);
  padding: 8px;
}

.variantPreview strong,
.variantPreview span,
.variantPreview b,
.variantPreview code {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 0.74rem;
}

.variantPreview span {
  color: var(--muted);
  font-weight: 850;
}

.variantPreview code {
  color: var(--blue);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}

.variantPreview b {
  color: var(--good);
  text-align: right;
}

.shopifyPreview {
  background: color-mix(in srgb, var(--accent-soft) 32%, var(--panel-soft));
}

.shopifyPreview dl {
  display: grid;
  gap: 8px;
  margin: 0;
}

.shopifyPreview div {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 10px;
}

.shopifyPreview dt {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 900;
}

.shopifyPreview dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--ink);
}

.actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.actions button {
  min-height: 38px;
  padding: 0 8px;
  font-size: 0.8rem;
}

.actions button:nth-child(2) {
  background: var(--blue);
  border-color: var(--blue);
}

.actions button:nth-child(3) {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.comp {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
}

.comp strong {
  color: var(--good);
}

.empty {
  min-height: 160px;
  display: grid;
  place-items: center;
  border: 1px dashed var(--line-strong);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 72%, transparent);
  color: var(--muted);
  padding: 20px;
  text-align: center;
}

.detail > .empty {
  margin-top: 16px;
  margin-bottom: 16px;
}

.toast {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 20;
  width: min(520px, calc(100vw - 36px));
  min-height: 54px;
  display: flex;
  align-items: center;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 14px 16px;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.32);
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1.35;
}

.toast::before {
  content: "";
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  margin-right: 10px;
  background: var(--blue);
  -webkit-mask: url("/vmsstatus.png") center / contain no-repeat;
  mask: url("/vmsstatus.png") center / contain no-repeat;
}

.toast.success {
  border-color: color-mix(in srgb, var(--good) 70%, var(--line));
  background: color-mix(in srgb, var(--good) 14%, var(--panel));
}

.toast.success::before {
  background: var(--good);
}

.toast.warning {
  border-color: color-mix(in srgb, var(--gold) 75%, var(--line));
  background: color-mix(in srgb, var(--gold) 15%, var(--panel));
}

.toast.warning::before {
  background: var(--gold);
}

.toast.error {
  border-color: color-mix(in srgb, var(--danger) 75%, var(--line));
  background: color-mix(in srgb, var(--danger) 14%, var(--panel));
}

.toast.error::before {
  background: var(--danger);
}

.toast[hidden] {
  display: none !important;
}

.toast.longToast {
  width: min(440px, calc(100vw - 32px));
  max-height: min(420px, calc(100vh - 40px));
  align-items: flex-start;
}

.toast.longToast .toastMessage {
  max-height: 300px;
  overflow: auto;
  padding-right: 4px;
}

.workflowTabs {
  display: grid;
  grid-template-columns: repeat(7, minmax(120px, 1fr));
  gap: 8px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel) 94%, transparent);
  padding: 10px clamp(12px, 3vw, 40px);
}

.tabButton {
  display: grid;
  align-content: center;
  gap: 2px;
  min-height: 48px;
  border-color: var(--line-strong);
  background: var(--panel-soft);
  color: var(--ink);
  box-shadow: none;
  text-align: left;
}

.tabButton span {
  font-size: 0.9rem;
  line-height: 1.1;
}

.tabButton small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.tabButton.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 88%, var(--panel));
  color: white;
}

.tabButton.active small {
  color: color-mix(in srgb, white 82%, var(--accent-soft));
}

.workflowShell {
  grid-template-columns: minmax(320px, 940px);
  justify-content: center;
}

.tabPanel {
  display: none;
}

.tabPanel.active {
  display: block;
}

.workflowCopy {
  border-bottom: 1px solid var(--line);
  margin: 0 16px;
  padding: 16px 0;
}

.workflowCopy h3 {
  margin-bottom: 5px;
  font-size: 0.98rem;
  font-weight: 900;
}

.workflowCopy p {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.45;
}

.termGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0 16px;
  padding: 14px 0 4px;
}

.termGrid div {
  display: grid;
  gap: 4px;
  min-height: 74px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 10px;
}

.termGrid strong {
  color: var(--ink);
  font-size: 0.82rem;
}

.termGrid span {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}



.batchPanel {
  display: grid;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  margin: 0 16px 14px;
  padding: 16px 0;
}

.compactRules {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.batchPanel .secondaryButton {
  justify-self: start;
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.visibilityFlags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.visibilityFlags span {
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 0.68rem;
  font-weight: 900;
  padding: 3px 7px;
}

.visibilityFlags .hiddenFlag {
  background: var(--gold-soft);
  color: var(--gold);
}

.buylistSummary,
.buylistItems {
  display: grid;
  gap: 10px;
  margin: 0 16px;
  padding: 14px 0;
}

.buylistTermsPanel {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, 0.9fr);
  gap: 12px;
  margin: 12px 16px 0;
  padding: 13px;
  border: 1px solid color-mix(in srgb, var(--blue) 42%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--blue-soft) 35%, var(--panel-soft));
}

.buylistTermsPanel h3 {
  margin: 0 0 6px;
  color: var(--ink);
  font-size: 0.92rem;
}

.buylistTermsPanel p {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.5;
}

.buylistTermsActions {
  display: grid;
  gap: 10px;
  align-content: start;
}

.buylistTermsActions .secondaryButton {
  justify-self: start;
}

.buylistSetupPanel,
.buylistBulkDesiredPanel,
.buylistBatchBuilder {
  display: grid;
  gap: 12px;
  margin: 12px 16px 0;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}

.buylistSetupGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(170px, 1fr));
  gap: 10px;
}

.buylistSetupPanel.isCollapsed .buylistSetupGrid,
.buylistSetupPanel.isCollapsed .buylistConditionConfig,
.buylistSetupPanel.isCollapsed .buylistSetupActions {
  display: none;
}

.buylistSetupPanel.isCollapsed {
  background: color-mix(in srgb, var(--panel-soft) 82%, var(--panel) 18%);
}

.buylistBatchBuilder {
  display: block;
  padding: 0;
  overflow: hidden;
}

.buylistBatchBuilder .catalogBatchInner {
  padding: 13px;
}

.buylistBatchBuilder .batchListSettings {
  margin: 0;
}

.buylistBatchBuilder .batchActionRow {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.buylistSetupGrid label,
.buylistBulkDesiredPanel label,
.buylistDesiredInline {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 850;
}

.buylistSetupActions,
.buylistBulkDesiredPanel {
  align-items: end;
}

.buylistSetupActions {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
}

.buylistBulkDesiredPanel {
  grid-template-columns: minmax(240px, 1fr) 180px auto minmax(220px, 1fr);
}

.buylistDesiredInline input {
  width: 92px;
}

.buylistConditionConfig {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.buylistConditionGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 8px;
}

.buylistBulkConfig {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.buylistSetupPanel.isCollapsed .buylistBulkConfig {
  display: none;
}

.buylistBulkOptionGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 8px;
}

.buylistBulkOption {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--field);
  padding: 10px;
}

.buylistBulkOption .bulkToggle {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  color: var(--ink);
  font-weight: 900;
}

.buylistBulkOption .bulkUnit {
  display: block;
  grid-column: 2;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 750;
}

.buylistBulkOption .bulkPrice {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.buylistBulkOption .bulkPrice input {
  min-width: 0;
  width: 100%;
}

body[data-buylist-feature="off"] .buylistOperational,
body[data-buylist-feature="on"] .buylistComingSoonPanel {
  display: none !important;
}

.buylistComingSoonPanel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 12px 16px 0;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--gold) 48%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--gold-soft) 32%, var(--panel-soft));
}

.buylistComingSoonPanel h3 {
  margin: 0 0 5px;
  color: var(--ink);
  font-size: 0.95rem;
}

.buylistComingSoonPanel p {
  margin: 0;
  color: var(--muted);
  font-size: 0.83rem;
  line-height: 1.45;
}

.lockedBadge {
  align-self: center;
  justify-self: end;
  border: 1px solid color-mix(in srgb, var(--gold) 55%, var(--line));
  border-radius: 999px;
  color: var(--gold);
  background: color-mix(in srgb, var(--gold-soft) 48%, var(--panel));
  font-size: 0.7rem;
  font-weight: 950;
  letter-spacing: 0.03em;
  padding: 6px 10px;
  text-transform: uppercase;
}

.buylistSummary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid var(--line);
}

.buylistSummary div,
.buylistCard {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.buylistSummary strong,
.buylistCard h3 {
  color: var(--ink);
  font-size: 0.9rem;
}

.buylistSummary span {
  display: block;
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.35;
  margin-top: 4px;
}

.buylistCard {
  cursor: pointer;
}

.buylistActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
  margin-top: 10px;
}

.pendingBuylistTarget {
  border-color: color-mix(in srgb, var(--gold) 55%, var(--line));
  background: color-mix(in srgb, var(--gold-soft) 24%, var(--panel-soft));
}

.metBuylistTarget {
  border-color: color-mix(in srgb, var(--good) 45%, var(--line));
  background: color-mix(in srgb, var(--good) 10%, var(--panel-soft));
}

.buylistPendingNotice {
  border: 1px solid color-mix(in srgb, var(--gold) 45%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--gold-soft) 28%, transparent);
  color: var(--ink);
  font-weight: 800;
  line-height: 1.35;
  padding: 10px;
}

.buylistCardHead {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: start;
  margin-bottom: 10px;
}

.buylistOfferGrid {
  display: grid;
  gap: 7px;
}

.buylistOfferGrid div {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) 70px auto auto;
  gap: 8px;
  align-items: center;
  border-top: 1px solid var(--line);
  padding-top: 7px;
}

.buylistOfferGrid div:first-child {
  border-top: 0;
  padding-top: 0;
}

.buylistOfferGrid span {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 850;
}

.buylistOfferGrid b {
  color: var(--good);
  font-size: 0.78rem;
  text-align: right;
}

.syncChecklist {
  display: grid;
  gap: 8px;
  margin: 0 16px;
  padding: 14px 0;
}

@media (max-width: 1180px) {
  .buylistSetupGrid,
  .buylistBulkOption,
  .buylistBulkDesiredPanel {
    grid-template-columns: 1fr;
  }

  .buylistBulkOption .bulkUnit {
    grid-column: auto;
  }

  .buylistSetupActions {
    grid-template-columns: 1fr;
  }

  .topbar {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .brandBlock {
    grid-row: 2;
    max-width: none;
  }

  .storeLogoSlot {
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
    width: min(320px, 50vw);
    max-width: 320px;
  }

  .topActions {
    grid-column: 1;
    grid-row: 3;
    justify-self: stretch;
    max-width: none;
  }

  .layout {
    grid-template-columns: 1fr 1fr;
  }

  .detail {
    grid-column: 1 / -1;
  }
}


@media (max-width: 760px) {
  .workflowTabs,
  .termGrid {
    grid-template-columns: 1fr;
  }

  .topbar {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .sectionHead {
    align-items: stretch;
    flex-direction: column;
  }

  .storeLogoSlot {
    grid-column: 1;
    justify-self: stretch;
    width: 100%;
    max-width: none;
  }

  .topActions {
    justify-content: stretch;
  }

  .topbar button {
    width: 100%;
  }

  .topActions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .layout {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .two,
  .three,
  .four,
  .catalogImport,
  .bulkActionBar,
  .actions {
    grid-template-columns: 1fr;
  }

  .sectionHead input {
    max-width: none;
  }

  .conditionIntakeGrid,
  .manualVariantPriceGrid,
  .customVariantRow,
  .shopifyPreview .variantPreview div,
  .shopifyPreview div {
    grid-template-columns: 1fr;
    gap: 2px;
  }
}

.listingBuilder {
  display: grid;
  gap: 14px;
  margin-top: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 14px;
}

.exportStatusPanel {
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(320px, 1fr);
  gap: 14px;
  align-items: start;
  margin: 0 16px;
  padding: 14px 0;
}

.exportStatusPanel h3 {
  margin: 0 0 5px;
  color: var(--ink);
  font-size: 0.94rem;
  font-weight: 800;
}

.exportStatusPanel p {
  margin: 0;
}

.exportStatusPanel > div:last-child {
  display: grid;
  gap: 8px;
}

.shopifyStartupSyncPanel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  margin-top: 4px;
  padding: 12px;
}

#adminShopifySyncBadge[data-status="ready"] {
  border-color: color-mix(in srgb, var(--good) 55%, var(--line));
  background: color-mix(in srgb, var(--good) 18%, var(--panel));
  color: var(--good);
}

#adminShopifySyncBadge[data-status="warning"] {
  border-color: color-mix(in srgb, var(--warning) 65%, var(--line));
  background: color-mix(in srgb, var(--warning) 18%, var(--panel));
  color: var(--warning);
}

.exportQueuePanel {
  margin: 14px 16px 16px;
}

.syncStats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.syncStats div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 12px;
}

.syncStats strong {
  display: block;
  color: var(--good);
  font-size: 1.35rem;
  line-height: 1;
}

.syncStats span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 850;
}

.builderControls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.exportFilters {
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(180px, 0.7fr);
}

.exportActionPanel {
  margin: 0;
}

.simulationReportPanel {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel);
  padding: 0;
}

.simulationReportPanel summary,
.exportUtilityPanel summary {
  cursor: pointer;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 850;
  list-style-position: inside;
}

.simulationReportPanel summary {
  padding: 9px 11px;
}

.simulationReportPanel .payloadPreview {
  margin: 0 10px 10px;
}

.exportUtilityPanel summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.exportUtilityPanel summary span {
  color: var(--ink);
}

.exportUtilityPanel summary small {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
}


.orderPrinterPanel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 14px;
}

.orderPrinterControls {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) auto auto;
  gap: 10px;
  align-items: end;
}

.orderPrinterControls label {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
}

.orderPrinterControls select {
  margin-top: 5px;
}

.orderPrinterControls button {
  min-height: 39px;
  padding: 0 12px;
}

.orderPrinterPreview {
  display: grid;
  gap: 10px;
}

.orderPreviewGroup {
  display: grid;
  gap: 8px;
}

.orderPreviewGroup h4 {
  margin: 0;
  color: var(--ink);
  font-size: 0.82rem;
}

.orderPreviewCard {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  box-shadow: none;
  padding: 10px;
  text-align: left;
}

.orderPreviewCard span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 0.76rem;
}

.orderPreviewCard b {
  color: var(--good);
  font-size: 0.76rem;
}

.orderPrintArea {
  display: none;
}

.syncPreviewList {
  display: grid;
  gap: 12px;
}

.syncPreviewCard {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 13px;
  cursor: pointer;
}

.syncPreviewCard.ready {
  border-color: color-mix(in srgb, var(--good) 48%, var(--line));
}

.syncPreviewCard.review {
  border-color: color-mix(in srgb, var(--gold) 58%, var(--line));
}

.syncPreviewCard.hidden {
  opacity: 0.78;
}

.syncPreviewHead {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.syncPreviewHead h3 {
  margin: 0 0 4px;
  font-size: 0.98rem;
}

.syncBadge {
  flex: 0 0 auto;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent-soft) 30%, var(--panel));
  color: var(--ink);
  padding: 5px 9px;
  font-size: 0.72rem;
  font-weight: 900;
}

.syncPreviewCard dl {
  display: grid;
  gap: 7px;
  margin: 0 0 12px;
}

.syncPreviewCard dl div {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 10px;
}

.syncPreviewCard dt {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
}

.syncPreviewCard dd {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.syncVariantRows {
  display: grid;
  gap: 7px;
}

.syncVariantRows div {
  display: grid;
  grid-template-columns: minmax(110px, 1fr) minmax(150px, 1.5fr) 58px 72px;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px;
}

.syncVariantRows span,
.syncVariantRows code,
.syncVariantRows b,
.syncVariantRows strong {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 0.74rem;
}

.syncVariantRows code {
  color: var(--blue);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}

.syncVariantRows b {
  color: var(--muted);
}

.syncVariantRows strong {
  color: var(--good);
  text-align: right;
}

@media (max-width: 780px) {
  .syncStats,
  .exportStatusPanel,
  .exportFilters,
  .builderControls,
  .orderPrinterControls,
  .orderPreviewCard,
  .syncVariantRows div {
    grid-template-columns: 1fr;
  }

  .syncPreviewHead {
    display: grid;
  }
}

.syncDecisionActions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.syncDecisionActions button {
  min-height: 36px;
  padding: 0 8px;
  font-size: 0.76rem;
}

.syncDecisionActions button[data-decision="approved"] {
  background: var(--good);
  border-color: var(--good);
  color: var(--button-ink);
}

.syncDecisionActions button[data-decision="hold"] {
  background: var(--gold);
  border-color: var(--gold);
  color: #19110a;
}

.syncDecisionActions button[data-decision="review"],
.syncDecisionActions button[data-create-shopify] {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.shopifyStatusSwitch {
  display: inline-grid;
  grid-template-columns: 44px auto;
  gap: 8px;
  align-items: center;
  justify-content: start;
  width: max-content;
  margin: 0 0 12px;
  cursor: pointer;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 900;
}

.shopifyStatusSwitch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.shopifyStatusSwitch span {
  position: relative;
  width: 44px;
  height: 24px;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  background: var(--panel-soft);
}

.shopifyStatusSwitch span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--muted);
  transition: transform 140ms ease, background 140ms ease;
}

.shopifyStatusSwitch input:checked + span {
  border-color: var(--good);
  background: color-mix(in srgb, var(--good) 22%, var(--panel-soft));
}

.shopifyStatusSwitch input:checked + span::after {
  transform: translateX(20px);
  background: var(--good);
}

.syncPreviewCard.approved {
  border-color: color-mix(in srgb, var(--good) 65%, var(--line));
}

.syncPreviewCard.synced {
  border-color: color-mix(in srgb, var(--cyan) 65%, var(--line));
}

.syncPreviewCard.hold {
  border-color: color-mix(in srgb, var(--gold) 72%, var(--line));
}

@media (max-width: 780px) {
  .syncDecisionActions {
    grid-template-columns: 1fr;
  }

  .shopifyImportSetup {
    grid-template-columns: 1fr;
  }
}

.shopifyConnectionPanel,
.draftPayloadPanel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 13px;
  margin-top: 14px;
}

.shopifyConnectionPanel .secondaryButton {
  width: fit-content;
  min-height: 36px;
}

.shopifyImportSetup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px) auto;
  gap: 12px;
  align-items: end;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.shopifyImportSetup h4 {
  margin: 0 0 4px;
  color: var(--text);
  font-size: 0.92rem;
}

.shopifyImportSetup p {
  margin: 0;
  color: var(--muted);
  line-height: 1.4;
}

.shopifyImportSetup .marketStatus {
  grid-column: 1 / -1;
}

.profileActionRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
}

.profileActionRow #saveBasicSettings {
  margin-right: auto;
}

.profileActionRow #deleteSetupProductLine {
  margin-left: auto;
}

.shopifyConnectionPanel.exportUtilityPanel {
  margin: 14px 16px 0;
}

.shopifyConnectionPanel.exportUtilityPanel[open] {
  padding-bottom: 14px;
}

.shopifyConnectionPanel.exportUtilityPanel .shopifyCredentialForm {
  margin-top: 12px;
}

.payloadPreview {
  max-height: 360px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, #05060a 78%, var(--panel));
  color: #e9f2ff;
  padding: 12px;
  font: 0.78rem/1.45 ui-monospace, SFMono-Regular, Consolas, monospace;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.catalogProgress {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.catalogProgress div:not(.progressTrack) {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 10px;
}

.catalogProgress strong {
  display: block;
  color: var(--good);
  font-size: 1.1rem;
  line-height: 1;
}

.catalogProgress span {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 850;
}

.progressTrack {
  grid-column: 1 / -1;
  height: 8px;
  border-radius: 999px;
  background: var(--panel);
  border: 1px solid var(--line);
  overflow: hidden;
}

.progressTrack span {
  display: block;
  height: 100%;
  margin: 0;
  background: var(--good);
}

.batchPanel .catalogProgress {
  margin-top: 10px;
}

.batchPanel .progressTrack {
  grid-column: 1 / -1;
}

.catalogQueuePanel {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 14px;
}

.catalogBatchDrawer {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 88%, var(--accent) 12%);
  overflow: hidden;
}

.catalogBatchDrawer > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
  color: var(--ink);
  font-weight: 900;
}

.catalogBatchDrawer > summary::-webkit-details-marker {
  display: none;
}

.catalogBatchDrawer > summary small {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
}

.catalogBatchDrawer > summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--input-bg);
  color: var(--accent-strong);
}

.catalogBatchDrawer[open] > summary {
  border-bottom: 1px solid var(--line);
}

.catalogBatchDrawer[open] > summary::after {
  content: "-";
}

.catalogBatchInner {
  display: grid;
  gap: 12px;
  padding: 14px;
}

#batchSetSelect,
#bulkSetSelect,
#syncSetFilter,
#buylistSetFilter {
  width: 100%;
  min-height: 42px;
  max-width: 100%;
  text-overflow: ellipsis;
}

.catalogLaneControls label:has(#batchSetSelect),
.compactGrid label:has(#bulkSetSelect),
.compactGrid label:has(#syncSetFilter),
.buylistTargets label:has(#buylistSetFilter) {
  min-width: min(100%, 360px);
}

.catalogQueueList {
  display: grid;
  gap: 7px;
  max-height: 440px;
  overflow: auto;
}

.catalogQueueRow {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 2px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 9px 10px;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--line) 45%, transparent);
  text-align: left;
}

.catalogQueueRow strong,
.catalogQueueRow small,
.catalogQueueRow em {
  min-width: 0;
  overflow-wrap: anywhere;
}

.catalogQueueRow small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.72rem;
  font-style: normal;
}

.catalogQueueRow em {
  justify-self: end;
  color: var(--muted);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 850;
  text-align: right;
}

.catalogQueueRow.missing {
  border-color: color-mix(in srgb, var(--gold) 76%, var(--line));
  background: color-mix(in srgb, var(--gold) 9%, var(--panel));
}

.catalogQueueRow.staged {
  border-width: 3px;
  border-color: color-mix(in srgb, var(--good) 78%, var(--line));
  background: color-mix(in srgb, var(--good) 12%, var(--panel));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--good) 35%, transparent);
}

.catalogQueueRow.archived {
  border-width: 3px;
  border-color: color-mix(in srgb, var(--warn) 76%, var(--line));
  background: color-mix(in srgb, var(--panel) 86%, var(--warn) 14%);
}

.catalogQueueRow.isAdding,
.catalogQueueRow:disabled {
  cursor: wait;
  opacity: 0.82;
}

.catalogQueueRow.missing:hover {
  border-color: color-mix(in srgb, var(--accent) 70%, var(--gold));
  background: color-mix(in srgb, var(--accent-soft) 22%, var(--panel));
}

.catalogQueueRow.archived:hover {
  border-color: color-mix(in srgb, var(--accent) 65%, var(--warn));
}

.backendOnly {
  display: none !important;
}

body[data-ui-surface="store"] .developerOnly {
  display: none !important;
}

body[data-ui-surface="developer"] .developerOnly {
  display: revert;
}

.catalogReviewSummary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.catalogReviewSummary div,
.catalogReviewSourceNotes div {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.catalogReviewSummary strong {
  display: block;
  color: var(--good);
  font-size: 1.25rem;
}

.catalogReviewSummary span,
.catalogReviewSourceNotes span,
.catalogReviewSourceNotes small {
  display: block;
  color: var(--muted);
  line-height: 1.35;
}

.catalogReviewSourceNotes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.catalogReviewList {
  display: grid;
  gap: 10px;
}

.backendReviewShell {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.backendReviewIntro {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.backendReviewSection {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: color-mix(in srgb, var(--panel-soft) 84%, transparent);
  padding: 14px;
}

.backendBugReportList {
  display: grid;
  gap: 10px;
}

.backendBugItem {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 12px;
}

.backendBugHead {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.backendBugHead span,
.backendBugItem small {
  color: var(--muted);
}

.backendLogViewer {
  margin: 0;
  max-height: 280px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 88%, #05070a);
  color: var(--ink);
  padding: 12px;
  font-size: 0.78rem;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}

.catalogReviewFilters {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 10px;
}

.catalogReviewFilters label {
  min-width: 180px;
}

.catalogReviewItem {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  border: 1px solid var(--line);
  border-left: 4px solid var(--accent);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.catalogReviewItem.warning {
  border-left-color: var(--gold);
}

.catalogReviewItem.error {
  border-left-color: var(--danger);
}

.catalogReviewBody {
  min-width: 0;
}

.catalogReviewHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.catalogReviewHead strong,
.catalogReviewBody p,
.catalogReviewBody small,
.catalogReviewBody li {
  overflow-wrap: anywhere;
}

.catalogReviewHead span {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  padding: 3px 8px;
}

.catalogReviewBody ul {
  margin: 8px 0;
  padding-left: 18px;
}

.catalogReviewActions {
  display: grid;
  gap: 8px;
  min-width: 140px;
}

.dangerButton {
  border-color: color-mix(in srgb, var(--danger) 60%, var(--line));
  color: var(--danger);
}

@media (max-width: 780px) {
  .catalogProgress,
  .catalogQueueRow {
    grid-template-columns: 1fr;
  }

  .catalogQueueRow em {
    justify-self: start;
    text-align: left;
  }

  .catalogReviewSummary,
  .catalogReviewSourceNotes {
    grid-template-columns: 1fr;
  }

  .catalogReviewItem {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .catalogReviewActions {
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.pricingSimulator {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 13px;
  margin: 14px 0;
}

.pricingVerdict {
  display: grid;
  gap: 4px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
}

.pricingVerdict strong {
  color: var(--ink);
  font-size: 0.92rem;
}

.pricingVerdict span {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.pricingVerdict.ready {
  border-color: color-mix(in srgb, var(--good) 62%, var(--line));
}

.pricingVerdict.review {
  border-color: color-mix(in srgb, var(--gold) 70%, var(--line));
}

.pricingVerdict.low {
  border-color: color-mix(in srgb, var(--blue) 55%, var(--line));
}

.pricingMath {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.pricingMath div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 9px;
}

.pricingMath strong {
  display: block;
  color: var(--good);
  font-size: 0.92rem;
  overflow-wrap: anywhere;
}

.pricingMath span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 850;
}

.simulatorControls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.simulatorControls .secondaryButton {
  min-height: 42px;
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

@media (max-width: 780px) {
  .pricingMath,
  .simulatorControls {
    grid-template-columns: 1fr;
  }
}

.buylistSummary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.buylistSummary strong {
  display: block;
  color: var(--good);
  font-size: 1.08rem;
  overflow-wrap: anywhere;
}

.buyQuotePanel {
  display: grid;
  gap: 12px;
  margin: 14px 16px 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 13px;
}

.quoteControls {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) 92px;
  gap: 10px;
}

.quoteResult {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
  color: var(--muted);
}

.quoteResult div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px;
  background: color-mix(in srgb, var(--accent-soft) 20%, var(--panel));
}

.quoteResult strong {
  display: block;
  color: var(--good);
  font-size: 1rem;
}

.quoteResult span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.quoteResult p {
  grid-column: 1 / -1;
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.35;
}

.quoteSubmitRow {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.quoteSubmitRow .marketStatus {
  margin: 0;
}

.buylistSubmissionPanel {
  display: grid;
  gap: 10px;
  margin: 14px 16px 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 13px;
}

.buylistSubmissionList {
  display: grid;
  gap: 8px;
}

.buylistSubmissionItem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(100px, auto) minmax(100px, auto) auto minmax(170px, auto);
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
}

.buylistSubmissionItem > div:first-child {
  min-width: 0;
}

.buylistSubmissionItem strong,
.buylistSubmissionItem b {
  display: block;
  color: var(--ink);
  font-size: 0.84rem;
}

.buylistSubmissionItem b {
  color: var(--good);
}

.buylistSubmissionItem span,
.buylistSubmissionItem small {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 850;
}

.buylistSubmissionLines {
  display: grid;
  gap: 4px;
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}

.buylistSubmissionLines li {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 2px;
  border-top: 1px solid var(--line);
  padding-top: 5px;
}

.buylistSubmissionLines strong,
.buylistSubmissionLines span {
  overflow-wrap: anywhere;
}

.buylistSubmissionActions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.buylistSubmissionActions button {
  min-height: 36px;
  padding: 8px 10px;
}

.buylistPriority {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 8px 10px;
  margin-bottom: 10px;
}

.buylistPriority strong {
  color: var(--gold);
  font-size: 0.78rem;
}

.buylistPriority span {
  color: var(--muted);
  font-size: 0.76rem;
}

.buylistActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
  justify-content: flex-end;
  margin-top: 10px;
}

.buylistActions button {
  min-height: 34px;
  background: var(--panel);
  border: 1px solid var(--line-strong);
  color: var(--ink);
  box-shadow: none;
  padding: 0 10px;
  font-size: 0.76rem;
}

@media (max-width: 780px) {
  .buylistTermsPanel,
  .buylistSummary,
  .quoteControls,
  .quoteResult,
  .quoteSubmitRow,
  .buylistSubmissionItem {
    grid-template-columns: 1fr;
  }

  .buylistPriority {
    display: grid;
  }
}

.simulationExportPanel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 13px;
  margin-top: 14px;
}

.simulationExportPanel.exportActionPanel {
  margin-top: 0;
}

.simulationStats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.simulationStats div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
}

.simulationStats strong {
  display: block;
  color: var(--good);
  font-size: 1.06rem;
}

.simulationStats span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 850;
}

.simulationActions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
}

.simulationActions button {
  min-height: 38px;
}

.simulationActions .secondaryButton {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

@media (max-width: 780px) {
  .simulationStats,
  .simulationActions {
    grid-template-columns: 1fr;
  }
}

.mutedLine {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}


.stockCheckPanel {
  display: grid;
  gap: 12px;
  margin: 14px 16px 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 88%, var(--blue-soft));
}

.stockCheckControls {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(140px, 0.55fr) auto auto;
  gap: 10px;
  align-items: end;
}

.stockCheckControls label {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
}

.stockCheckControls select {
  margin-top: 5px;
}

.stockCheckControls button {
  min-height: 39px;
  padding: 0 12px;
}

.stockCheckList {
  display: grid;
  gap: 9px;
}

.stockCheckRow {
  display: grid;
  grid-template-columns: 92px minmax(190px, 1fr) 96px minmax(240px, 1.35fr) minmax(150px, 0.85fr);
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 10px;
}

.stockCheckRow[data-status="mismatch"] {
  border-color: color-mix(in srgb, var(--warn) 72%, var(--line));
  background: color-mix(in srgb, var(--warn-soft) 35%, var(--panel));
}

.stockCheckMark {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--ink);
  font-size: 0.78rem;
  font-weight: 900;
}

.stockCheckIdentity h3 {
  margin: 0 0 3px;
  font-size: 0.9rem;
}

.stockCheckExpected {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 8px;
  text-align: center;
}

.stockCheckExpected strong {
  display: block;
  color: var(--good);
  font-size: 1rem;
}

.stockCheckExpected span,
.stockCheckResult {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 900;
}

.stockCheckCounts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(64px, 1fr));
  gap: 7px;
}

.stockCheckCounts label {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 900;
  text-align: center;
}

.stockCheckCounts input {
  margin-top: 4px;
  text-align: center;
  font-weight: 900;
}

.stockCheckRow[data-status="match"] .stockCheckResult {
  color: var(--good);
}

.stockCheckRow[data-status="mismatch"] .stockCheckResult {
  color: var(--warn);
}

.inventorySummary,
.inventoryEditorList {
  display: grid;
  gap: 10px;
  margin: 0 16px;
  padding: 14px 0;
}

.inventorySummary {
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  border-bottom: 1px solid var(--line);
}

.inventorySummary div,
.inventoryRow {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 12px;
}

.inventorySummary strong {
  color: var(--good);
  font-size: 1.08rem;
}

.inventorySummary span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.syncStats strong,
.simulationStats strong,
.catalogProgress strong,
.buylistSummary strong,
.pricingMath strong,
.inventorySummary strong,
.marketQuoteStats strong,
.testListingStats strong,
.catalogAssetStatus strong,
.pricingDeskCard strong {
  display: inline-grid;
  min-width: 2.65rem;
  max-width: 100%;
  width: max-content;
  place-items: center;
  padding: 4px 8px;
  border: 1px solid var(--metric-border);
  border-radius: 6px;
  background: var(--metric-bg);
  color: var(--metric-ink);
  line-height: 1.1;
}

.inventoryRow {
  display: grid;
  gap: 12px;
}

.inventoryRowHead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.inventoryRowBadges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.inventoryRowHead h3 {
  margin: 0 0 4px;
  font-size: 0.98rem;
}

.inventoryStockGrid {
  display: grid;
  grid-template-columns: repeat(5, minmax(74px, 1fr));
  gap: 8px;
}

.inventoryStockGrid label,
.inventoryTargets label {
  min-width: 0;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.inventoryStockGrid input,
.inventoryTargets input {
  margin-top: 5px;
}

.inventoryTargets {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.inventoryToggles {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.inventoryToggles label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 8px 10px;
  font-size: 0.78rem;
  font-weight: 850;
}

.inventoryShopifyStatus {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px 10px;
  color: var(--muted);
  background: var(--panel-soft);
  font-size: 0.78rem;
  font-weight: 850;
}

.inventoryShopifyStatus.active {
  border-color: color-mix(in srgb, var(--success) 60%, var(--line));
  color: var(--success);
}

.inventoryShopifyStatus.draft {
  border-color: color-mix(in srgb, var(--warning) 55%, var(--line));
  color: var(--warning);
}

.inventoryRowActions {
  display: flex;
  justify-content: flex-end;
}

.inventoryRowActions button {
  min-height: 36px;
  padding: 0 12px;
}

@media (max-width: 780px) {
  .inventorySummary,
  .inventoryRowHead,
  .inventoryStockGrid,
  .inventoryTargets,
  .stockCheckControls,
  .stockCheckRow {
    grid-template-columns: 1fr;
  }
}

.marketQuote {
  margin-top: 10px;
}

.marketQuoteCard {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 86%, var(--blue-soft));
  padding: 12px;
}

.marketQuoteCard.ready {
  border-color: color-mix(in srgb, var(--good) 62%, var(--line));
}

.marketQuoteCard.review {
  border-color: color-mix(in srgb, var(--gold) 70%, var(--line));
}

.marketQuoteTop {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 10px;
}

.marketQuoteTop span,
.marketQuoteStats span {
  display: block;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 850;
}

.marketQuoteTop strong {
  display: block;
  color: var(--good);
  font-size: 1.35rem;
  line-height: 1.1;
}

.marketQuoteTop b {
  border-radius: 999px;
  background: var(--gold-soft);
  color: var(--gold);
  padding: 5px 9px;
  font-size: 0.72rem;
  white-space: nowrap;
}

.marketQuoteCard.ready .marketQuoteTop b {
  background: color-mix(in srgb, var(--good) 16%, var(--panel));
  color: var(--good);
}

.marketQuoteStats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.marketQuoteStats div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 8px;
}

.marketQuoteStats strong {
  display: block;
  color: var(--ink);
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}

.marketQuoteCard p {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.marketQuoteActions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.marketQuoteActions button {
  min-height: 34px;
  box-shadow: none;
}

.marketQuoteActions button:first-child {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
}

.compliancePanel {
  display: grid;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  margin: 0 16px;
  padding: 14px 0;
}

.compliancePanel summary {
  cursor: pointer;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.policyGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.policyGrid div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 10px;
}

.policyGrid strong {
  display: block;
  color: var(--ink);
  font-size: 0.82rem;
  margin-bottom: 4px;
}

.policyGrid span,
.policyNote {
  color: var(--muted);
  font-size: 0.74rem;
  line-height: 1.35;
}

.policyNote {
  border: 1px solid color-mix(in srgb, var(--gold) 45%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--gold-soft) 38%, var(--panel));
  padding: 9px 10px;
  font-weight: 800;
}

.dismissibleAdminNotice {
  position: relative;
  padding-right: 74px;
}

.dismissAdminNoticeButton {
  position: absolute;
  top: 7px;
  right: 7px;
  min-height: 26px;
  padding: 4px 9px;
  border: 1px solid color-mix(in srgb, var(--gold) 55%, var(--line));
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel) 74%, var(--gold-soft));
  color: var(--ink);
  font-size: 0.7rem;
  font-weight: 900;
  cursor: pointer;
}

.dismissibleAdminNotice[hidden] {
  display: none !important;
}

@media (max-width: 780px) {
  .policyGrid {
    grid-template-columns: 1fr;
  }
}

.testListingPanel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 13px;
}

.testListingPanel .secondaryButton {
  justify-self: start;
  min-height: 36px;
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.testListingPreview {
  display: grid;
  gap: 12px;
}

.testListingCard {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 13px;
}

.testListingCard.ready {
  border-color: color-mix(in srgb, var(--good) 62%, var(--line));
}

.testListingCard.review {
  border-color: color-mix(in srgb, var(--gold) 70%, var(--line));
}

.testListingCard.blocked {
  border-color: color-mix(in srgb, var(--important) 70%, var(--line));
}

.testListingHead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.testListingHead h3 {
  margin: 0 0 4px;
  font-size: 1rem;
}

.testListingStats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.testListingStats div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  padding: 9px;
}

.testListingStats strong {
  display: block;
  color: var(--good);
  font-size: 0.92rem;
  overflow-wrap: anywhere;
}

.testListingStats span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 850;
}

.testListingMeta {
  display: grid;
  gap: 7px;
  margin: 0;
}

.testListingMeta div {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 10px;
}

.testListingMeta dt {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
}

.testListingMeta dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--ink);
  font-size: 0.78rem;
  line-height: 1.35;
}

.testListingNotes {
  display: grid;
  gap: 6px;
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

@media (max-width: 780px) {
  .testListingHead,
  .testListingStats,
  .testListingMeta div {
    grid-template-columns: 1fr;
  }
}

.catalogBuilderPanel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 48%, transparent);
  margin: 16px 16px 22px;
  padding: 12px;
}

.catalogBuilderPanel summary {
  cursor: pointer;
  color: var(--ink);
  font-size: 0.86rem;
  font-weight: 900;
  line-height: 1.35;
  padding: 2px 4px;
}

.catalogBuilderPanel[open] summary {
  margin-bottom: 4px;
}

.catalogAssetStatus {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.catalogAssetStatus div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-strong) 72%, var(--bg));
  padding: 12px;
}

.catalogAssetStatus strong {
  display: block;
  color: var(--good);
  font-size: 1.22rem;
}

.catalogAssetStatus span {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.catalogBuilderGrid {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(320px, 1.1fr);
  gap: 14px;
  align-items: start;
}

.sourceRegistryList,
.imageRightsForm {
  min-width: 0;
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-strong) 68%, var(--bg));
  padding: 10px;
}

.catalogSourceItem small {
  max-width: 170px;
  text-align: right;
}

.imageRightsForm .secondaryButton {
  justify-self: start;
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
}

@media (max-width: 900px) {
  .catalogAssetStatus,
  .catalogBuilderGrid {
    grid-template-columns: 1fr;
  }

  .catalogSourceItem small {
    max-width: none;
    text-align: left;
  }
}

.workflowTabs {
  grid-template-columns: repeat(8, minmax(98px, 1fr));
  gap: 8px;
}

.tabButton {
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "num label"
    "num detail";
  column-gap: 8px;
  justify-items: start;
  text-align: left;
  min-height: 58px;
}

.tabButton b {
  grid-area: num;
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid var(--line-strong);
  background: var(--panel);
  color: var(--muted);
  font-size: 0.76rem;
}

.tabButton span {
  grid-area: label;
}

.tabButton small {
  grid-area: detail;
}

.tabButton.active b {
  background: white;
  color: var(--accent);
  border-color: white;
}

.workflowMap {
  display: grid;
  grid-template-columns: repeat(8, minmax(92px, 1fr));
  gap: 8px;
  padding: 10px clamp(12px, 3vw, 40px);
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--paper) 78%, var(--panel));
}

.workflowMap div {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 8px;
  color: var(--muted);
}

.workflowMap strong {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--panel-soft);
  color: var(--ink);
  font-size: 0.72rem;
}

.workflowMap span {
  min-width: 0;
  font-size: 0.73rem;
  font-weight: 850;
  line-height: 1.15;
}

.workflowMap div.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent-soft) 32%, var(--panel));
  color: var(--ink);
}

.workflowMap div.active strong {
  background: var(--accent);
  color: white;
}

.catalog > .workflowCopy,
.intake > .workflowCopy {
  margin-top: 0;
}

.catalog .batchPanel {
  border-top: 0;
}

@media (max-width: 1120px) {
  .workflowTabs,
  .workflowMap {
    grid-template-columns: repeat(4, minmax(120px, 1fr));
  }
}

@media (max-width: 680px) {
  .workflowTabs,
  .workflowMap {
    grid-template-columns: 1fr;
  }
}

.catalogAssetStatus div,
.sourceRegistryList,
.imageRightsForm {
  background: color-mix(in srgb, var(--panel-soft) 76%, var(--panel));
}

/* Listing preview fix: keep Shopify metadata and condition variant rows from fighting each other. */
.shopifyPreview > dl > div {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 10px;
}

.shopifyPreview .variantPreview {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  min-width: 0;
  overflow: hidden;
}

.shopifyPreview .variantPreview > div {
  display: grid;
  grid-template-columns: minmax(132px, 1fr) 68px minmax(220px, 1.7fr) 82px;
  gap: 10px;
  align-items: center;
  min-width: 0;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 70%, transparent);
  padding: 8px 10px;
}

.shopifyPreview .variantPreview strong,
.shopifyPreview .variantPreview span,
.shopifyPreview .variantPreview code,
.shopifyPreview .variantPreview b {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.25;
}

.shopifyPreview .variantPreview code {
  font-size: 0.68rem;
}

.shopifyPreview .variantPreview b {
  justify-self: end;
  text-align: right;
}

@media (max-width: 780px) {
  .shopifyPreview > dl > div,
  .shopifyPreview .variantPreview > div {
    grid-template-columns: 1fr;
  }

  .shopifyPreview .variantPreview b {
    justify-self: start;
    text-align: left;
  }
}

/* Listing page cleanup */
.intake #productForm {
  display: grid;
  gap: 14px;
  padding: 16px 0 18px;
}

.listingSection {
  min-width: 0;
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 78%, var(--panel));
  padding: 12px;
}

.listingIdentity {
  border-color: color-mix(in srgb, var(--accent) 35%, var(--line));
}

.listingSection .miniHead {
  margin-bottom: 0;
}

.listingSection .wideField input {
  min-height: 44px;
  font-size: 0.9rem;
}

.compactGrid label,
.buylistTargets label {
  min-width: 0;
}

.compactGrid input,
.compactGrid select,
.buylistTargets input {
  min-width: 0;
}

.inlineFields {
  display: grid;
  grid-template-columns: minmax(80px, 1fr) minmax(86px, auto);
  gap: 8px;
  align-items: center;
  margin-top: 6px;
}

.inlineFields input,
.inlineFields select {
  width: 100%;
  margin: 0;
}

.shopifyOptional {
  border-style: dashed;
}

.shopifyOptional summary {
  cursor: pointer;
  color: var(--ink);
  font-size: 0.86rem;
  font-weight: 900;
}

.shopifyOptional[open] summary {
  margin-bottom: 10px;
}

.previewSection {
  padding: 0;
  border: 0;
  background: transparent;
}

.previewSection .shopifyPreview {
  margin: 0;
}

.stageListingButton {
  min-height: 44px;
  width: 100%;
  font-size: 0.92rem;
}

.intake .conditionIntake.listingSection {
  margin: 0;
}

.intake .conditionIntakeGrid label {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 8px;
}

.intake .conditionIntakeGrid input {
  margin-top: 4px;
}

@media (max-width: 820px) {
  .intake .two,
  .intake .three,
  .intake .four {
    grid-template-columns: 1fr;
  }
}


/* Retail reference pricing */
.retailReferencePanel {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 86%, var(--accent) 14%);
}

.retailReferencePanel h4 {
  margin: 0 0 10px;
}

.retailReferences {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.retailReference {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel-strong);
}

.retailReference strong,
.retailReference span,
.retailReference a {
  min-width: 0;
}

.retailReference span {
  font-weight: 800;
  color: var(--good);
}

.retailReference a {
  color: var(--accent-strong);
  font-weight: 800;
  text-decoration: none;
}

.retailReferenceForm {
  display: grid;
  gap: 10px;
}

.compactEmpty {
  padding: 10px;
  min-height: auto;
}


@media (max-width: 760px) {
  .retailReference {
    grid-template-columns: 1fr;
    align-items: start;
  }
}


/* Simplified setup profile */
.profileForm {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--panel);
}

.profileForm textarea {
  width: 100%;
  resize: vertical;
  min-height: 58px;
}

.profileRules {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.profileRules .checkRule {
  margin: 0;
}

@media (max-width: 860px) {
  .profileRules {
    grid-template-columns: 1fr;
  }
}


.profileScope {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-strong) 82%, var(--accent) 18%);
}

.profileScope .policyNote {
  margin: 0;
}


/* Alert silence and reminders */
.alertControls {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 12px;
}

.alertQueueItem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.queueMain {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  text-align: left;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

.queueActions {
  display: flex;
  gap: 8px;
}

.queueActions button {
  min-height: 34px;
  padding: 0 10px;
}

.mutedAlert {
  opacity: 0.76;
  border-style: dashed;
}


@media (max-width: 760px) {
  .alertControls,
  .alertQueueItem {
    grid-template-columns: 1fr;
  }
}

/* Professional workflow cleanup */
.workflowTabs {
  position: sticky;
  top: 0;
  z-index: 8;
  grid-template-columns: repeat(8, minmax(106px, 1fr));
  border-bottom: 1px solid var(--line-strong);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
}

.tabButton {
  position: relative;
  grid-template-columns: auto 1fr;
  align-items: center;
  min-height: 54px;
  padding: 8px 10px;
  border-radius: 7px;
}

.tabButton b {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--panel);
  color: var(--muted);
  font-size: 0.76rem;
}

.tabButton span,
.tabButton small {
  min-width: 0;
}

.tabButton small {
  grid-column: 2;
}

.tabButton.complete {
  border-color: color-mix(in srgb, var(--good) 46%, var(--line));
}

.tabButton.complete b {
  background: color-mix(in srgb, var(--good) 20%, var(--panel));
  color: var(--good);
}

.tabButton.active b {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

.workflowMap {
  position: sticky;
  top: 75px;
  z-index: 7;
  align-items: stretch;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.workflowMap div {
  position: relative;
  min-height: 42px;
}

.workflowMap div.complete {
  border-color: color-mix(in srgb, var(--good) 45%, var(--line));
  background: color-mix(in srgb, var(--good) 9%, var(--panel-soft));
}

.workflowMap div.complete strong {
  background: color-mix(in srgb, var(--good) 24%, var(--panel));
  color: var(--good);
}

.workflowGuide {
  display: grid;
  grid-template-columns: minmax(220px, 0.8fr) minmax(280px, 1.2fr);
  gap: 14px;
  align-items: center;
  padding: 12px clamp(16px, 3vw, 40px);
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel) 93%, transparent);
}

.workflowGuide div {
  display: grid;
  gap: 4px;
}

.workflowGuide span {
  color: var(--blue);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.workflowGuide strong {
  color: var(--ink);
  font-size: 0.95rem;
  line-height: 1.3;
}

.workflowGuide p {
  justify-self: end;
  max-width: 720px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.35;
}

.workflowShell {
  padding-top: 20px;
}

.panel {
  box-shadow: var(--shadow-soft);
}

.panel > h2,
.sectionHead {
  min-height: 54px;
}

.listingSection,
.profileScope,
.batchPanel,
.reviewQueue,
.shopifyConnectionPanel,
.listingBuilder,
.catalogBuilderPanel,
.buyQuotePanel,
.bulkPanel,
.reviewQueue,
.simulationExportPanel,
.testListingPanel,
.draftPayloadPanel {
  border-radius: 8px;
}

button:disabled,
button[disabled] {
  cursor: not-allowed;
  border-color: var(--line);
  background: color-mix(in srgb, var(--panel-soft) 80%, var(--paper));
  color: var(--subtle);
  box-shadow: none;
  transform: none;
}

select {
  appearance: auto;
}

.marketStatus {
  min-height: 0;
  margin-bottom: 8px;
  padding: 6px 9px;
  border-color: color-mix(in srgb, var(--blue) 30%, var(--line));
  background: color-mix(in srgb, var(--blue-soft) 16%, var(--panel));
  color: var(--muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

.toast {
  width: min(380px, calc(100vw - 32px));
  min-height: 40px;
  padding: 9px 12px;
  border-radius: 7px;
  background: color-mix(in srgb, var(--panel) 96%, #000 4%);
  color: var(--ink);
  font-size: 0.82rem;
  line-height: 1.3;
}

.toast.attention {
  width: min(560px, calc(100vw - 32px));
  min-height: 62px;
  padding: 14px 16px;
  font-size: 0.94rem;
  color: #fff;
}

.toast.warning.attention {
  border-color: var(--gold);
  background: color-mix(in srgb, var(--gold) 28%, #1d1405 72%);
}

.toast.error.attention {
  border-color: var(--danger);
  background: color-mix(in srgb, var(--danger) 28%, #24070d 72%);
}

.toast.success {
  color: var(--ink);
}

.stageListingButton {
  width: 100%;
}

@media (max-width: 980px) {
  .workflowGuide {
    grid-template-columns: 1fr;
  }

  .workflowGuide p {
    justify-self: start;
  }

  .workflowMap {
    top: 0;
    position: relative;
  }
}

@media (max-width: 680px) {
  .workflowTabs {
    position: relative;
    grid-template-columns: 1fr;
  }

  .tabButton {
    grid-template-columns: auto 1fr auto;
  }

  .tabButton small {
    grid-column: 2;
  }
}

.purchaseLimitSection {
  border: 1px solid color-mix(in srgb, var(--gold) 36%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--gold-soft) 12%, var(--panel-soft));
  padding: 12px;
}

.inventoryPurchaseLimits {
  display: grid;
  grid-template-columns: 1fr repeat(3, minmax(120px, 0.8fr));
  gap: 8px;
  border-top: 1px solid var(--line);
  margin-top: 10px;
  padding-top: 10px;
}

.inventoryPurchaseLimits label:first-child {
  grid-template-columns: 18px 1fr;
  align-items: center;
}

.inventoryPurchaseLimits input[type="checkbox"] {
  width: 18px;
  min-height: 18px;
}

@media (max-width: 900px) {
  .inventoryPurchaseLimits {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 620px) {
  .inventoryPurchaseLimits {
    grid-template-columns: 1fr;
  }
}

/* Operator walkthrough */
.walkthroughOverlay {
  position: fixed;
  inset: 0;
  z-index: 30;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(0, 0, 0, 0.62);
}

.walkthroughOverlay[hidden] {
  display: none;
}

.walkthroughPanel {
  width: min(720px, 100%);
  max-height: min(760px, calc(100vh - 44px));
  overflow: auto;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.46);
}

.walkthroughHead,
.walkthroughActions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
  background: var(--panel-soft);
}

.walkthroughHead span {
  color: var(--blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.walkthroughHead h2 {
  margin-top: 4px;
  font-size: 1.05rem;
  line-height: 1.2;
}

.walkthroughHead .secondaryButton,
.walkthroughActions .secondaryButton {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
  box-shadow: none;
}

.walkthroughProgress {
  height: 6px;
  background: color-mix(in srgb, var(--panel-soft) 80%, var(--paper));
}

.walkthroughProgress span {
  display: block;
  width: 12.5%;
  height: 100%;
  background: var(--accent);
  transition: width 160ms ease;
}

.walkthroughBody {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.walkthroughBody h3 {
  font-size: 1.08rem;
  line-height: 1.3;
}

.walkthroughBody p,
.walkthroughBody li {
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.walkthroughBody ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 20px;
}

.walkthroughOutcome {
  border: 1px solid color-mix(in srgb, var(--good) 34%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--good) 8%, var(--panel-soft));
  padding: 12px;
}

.walkthroughOutcome strong {
  display: block;
  margin-bottom: 4px;
  color: var(--good);
  font-size: 0.78rem;
  text-transform: uppercase;
}

.walkthroughActions {
  border-top: 1px solid var(--line);
  border-bottom: 0;
}

.walkthroughActions button {
  min-width: 120px;
}

@media (max-width: 640px) {
  .walkthroughHead,
  .walkthroughActions {
    align-items: stretch;
    flex-direction: column;
  }

  .walkthroughActions button,
  .walkthroughHead button {
    width: 100%;
  }
}


.lookupStatus {
  margin: -0.2rem 0 0.85rem;
  padding: 0.65rem 0.75rem;
  border: 1px solid var(--border-strong, rgba(255, 255, 255, 0.16));
  border-radius: 8px;
  background: var(--panel-soft, rgba(255, 255, 255, 0.06));
  color: var(--text-muted, #d7d0df);
  font-size: 0.9rem;
  line-height: 1.35;
}

.lookupStatus[data-status="success"] {
  border-color: rgba(64, 220, 142, 0.65);
  background: rgba(64, 220, 142, 0.13);
  color: #d8ffe9;
}

.lookupStatus[data-status="warning"] {
  border-color: rgba(255, 198, 87, 0.72);
  background: rgba(255, 198, 87, 0.14);
  color: #fff1c9;
}

.lookupStatus[data-status="error"] {
  border-color: rgba(255, 107, 107, 0.75);
  background: rgba(255, 107, 107, 0.15);
  color: #ffe1e1;
}


.duplicateOverride {
  margin: 0.7rem 0 1rem;
  padding: 0.7rem 0.85rem;
  border: 1px solid rgba(255, 198, 87, 0.78);
  border-radius: 8px;
  background: rgba(255, 198, 87, 0.14);
  color: #fff1c9;
  font-weight: 700;
}

.duplicateOverride[hidden] {
  display: none !important;
}


.productLineMaintenance {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 0.75rem;
  align-items: end;
  margin: 0.25rem 0 0.9rem;
  padding: 0.75rem;
  border: 1px solid var(--border-strong, rgba(255, 255, 255, 0.16));
  border-radius: 8px;
  background: var(--panel-soft, rgba(255, 255, 255, 0.055));
}

.productLineMaintenance[hidden] {
  display: none !important;
}

.compactAction {
  align-self: end;
  min-height: 42px;
}


.rarityChecklist {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 0.55rem;
  margin-top: 0.65rem;
}

.rarityExclusionOption {
  min-height: 42px;
  align-items: center;
}


.catalogVisualPicker {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0.75rem;
  margin: 0.7rem 0 0.75rem;
}

.catalogVisualCard {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 0.65rem;
  align-items: center;
  min-height: 86px;
  padding: 0.65rem;
  border: 2px solid color-mix(in srgb, var(--warn) 58%, var(--border-strong, rgba(255, 255, 255, 0.16)));
  border-radius: 8px;
  background: color-mix(in srgb, var(--warn-soft, rgba(255, 176, 70, 0.13)) 30%, var(--panel-soft, rgba(255, 255, 255, 0.055)));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--warn) 24%, transparent);
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.catalogVisualCard.notInUse {
  border-width: 2px;
  border-color: color-mix(in srgb, var(--warn) 62%, var(--border-strong, rgba(255, 255, 255, 0.16)));
  background: color-mix(in srgb, var(--warn-soft, rgba(255, 176, 70, 0.13)) 36%, var(--panel-soft, rgba(255, 255, 255, 0.055)));
}

.catalogVisualCard.inUse {
  border-width: 3px;
  border-color: color-mix(in srgb, var(--good) 78%, var(--border-strong, rgba(255, 255, 255, 0.16)));
  background: color-mix(in srgb, var(--good) 18%, var(--panel-soft, rgba(255, 255, 255, 0.055)));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--good) 30%, transparent);
}

.catalogVisualCard:hover,
.catalogVisualCard.selected {
  border-width: 3px;
  border-color: rgba(126, 224, 255, 0.92);
  background: rgba(126, 224, 255, 0.12);
}

.catalogVisualCard.inUse.selected {
  border-color: color-mix(in srgb, var(--good) 86%, var(--accent, #9b5cff));
  background: color-mix(in srgb, var(--good) 24%, var(--panel-soft, rgba(255, 255, 255, 0.055)));
}

.visualThumb {
  display: grid;
  place-items: center;
  width: 72px;
  height: 96px;
  overflow: hidden;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.25);
  color: var(--text-muted, #d7d0df);
  font-size: 0.7rem;
  line-height: 1.1;
  text-align: center;
}

.visualThumb img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}

.catalogVisualCard .visualThumb {
  width: 72px;
  height: 96px;
  min-width: 72px;
  min-height: 96px;
}

.catalogVisualCard .visualInfo {
  align-self: center;
}

.catalogQueueThumb {
  width: 64px;
  height: 88px;
  min-width: 64px;
  min-height: 88px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-soft) 82%, var(--paper));
}

.catalogQueueThumb img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}

.catalogSearchResult .catalogThumb,
.catalogSearchResult img,
.catalogQueueThumb img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

body .catalogSearchResult,
body .catalogQueueRow {
  overflow: hidden !important;
}

body .catalogSearchResult {
  align-items: center !important;
}

body .catalogQueueRow {
  align-items: center !important;
}

.visualInfo {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}

.visualInfo strong,
.visualInfo small,
.visualInfo em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.visualInfo small {
  color: var(--text-muted, #d7d0df);
}

.visualInfo .visualVariant {
  color: var(--accent-strong, #7ee0ff);
  font-weight: 800;
}

.visualInfo em {
  color: #fff1c9;
  font-style: normal;
  font-size: 0.74rem;
}

.visualPickerEmpty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 0.75rem;
  border: 1px dashed var(--border-strong, rgba(255, 255, 255, 0.16));
  border-radius: 8px;
  color: var(--text-muted, #d7d0df);
}


@media print {
  body * {
    visibility: hidden !important;
  }

  .orderPrintArea,
  .orderPrintArea * {
    visibility: visible !important;
  }

  .orderPrintArea {
    display: block !important;
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    padding: 0.25in;
    background: #fff;
    color: #111;
    font-family: Arial, sans-serif;
  }

  .printHeader {
    border-bottom: 2px solid #111;
    margin-bottom: 14px;
    padding-bottom: 8px;
  }

  .printHeader h1 {
    margin: 0 0 4px;
    font-size: 20pt;
  }

  .printHeader p,
  .packingNote {
    margin: 0;
    font-size: 10pt;
  }

  .printOrderGroup {
    break-after: page;
  }

  .printOrderGroup h2 {
    margin: 0 0 8px;
    font-size: 15pt;
  }

  .pickList,
  .packingSlip table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 14px;
    font-size: 9pt;
  }

  .pickList th,
  .pickList td,
  .packingSlip th,
  .packingSlip td {
    border: 1px solid #333;
    padding: 5px;
    text-align: left;
    vertical-align: top;
  }

  .packingSlip {
    break-inside: avoid;
    border: 1px solid #111;
    margin: 0 0 12px;
    padding: 10px;
  }

  .packingSlip header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid #333;
    margin-bottom: 8px;
    padding-bottom: 6px;
  }

  .packingSlip h3 {
    margin: 0;
    font-size: 14pt;
  }

  .packingSlip dl {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin: 0 0 8px;
    font-size: 9pt;
  }

  .packingSlip dt {
    font-weight: 700;
  }

  .packingSlip dd {
    margin: 0;
  }

  .packChecks {
    display: flex;
    gap: 20px;
    margin-top: 8px;
    font-size: 10pt;
  }
}

/* Professional shell pass: Virtual Shop Manager */
:root,
[data-theme="blue-dark"],
[data-theme="purples-dark"] {
  color-scheme: dark;
  --ink: #f4f7fb;
  --muted: #aeb8c2;
  --subtle: #7f8b96;
  --line: #2f3945;
  --line-strong: #465363;
  --paper: #111820;
  --panel: #18222c;
  --panel-soft: #202b36;
  --accent: #2f6fed;
  --accent-strong: #6f9bff;
  --accent-soft: #1f355d;
  --blue: #7fb6ff;
  --blue-soft: #1b344f;
  --gold: #f0bd4f;
  --gold-soft: #3b2f17;
  --good: #51c878;
  --danger: #ef6b73;
  --important: #ff5a5f;
  --warn: #f0bd4f;
  --warn-soft: #3b2f17;
  --input-bg: #111923;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="blue-light"],
[data-theme="purples-light"] {
  color-scheme: light;
  --ink: #1f2933;
  --muted: #5f6b76;
  --subtle: #7d8790;
  --line: #d5dbe1;
  --line-strong: #b6c0ca;
  --paper: #f4f6f8;
  --panel: #ffffff;
  --panel-soft: #eef2f6;
  --accent: #265fbd;
  --accent-strong: #174a99;
  --accent-soft: #dce8fb;
  --blue: #265fbd;
  --blue-soft: #e4eefb;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="green-dark"] {
  color-scheme: dark;
  --ink: #f2f8f5;
  --muted: #aec0b8;
  --subtle: #7f9188;
  --line: #2d4038;
  --line-strong: #486356;
  --paper: #101913;
  --panel: #17241d;
  --panel-soft: #1f3027;
  --accent: #2f8f62;
  --accent-strong: #63c98d;
  --accent-soft: #183c2a;
  --blue: #75c7e8;
  --blue-soft: #163442;
  --gold: #e3b64f;
  --gold-soft: #3d3217;
  --good: #5fd284;
  --danger: #f07178;
  --important: #ff5a5f;
  --warn: #e3b64f;
  --warn-soft: #3d3217;
  --input-bg: #101a14;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="green-light"] {
  color-scheme: light;
  --ink: #1d2b24;
  --muted: #5c6d64;
  --subtle: #7b8b83;
  --line: #d2ddd7;
  --line-strong: #adc2b7;
  --paper: #f4f8f5;
  --panel: #ffffff;
  --panel-soft: #edf4ef;
  --accent: #23784f;
  --accent-strong: #155c3a;
  --accent-soft: #dcefe4;
  --blue: #1f6f94;
  --blue-soft: #e1f2f7;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #166534;
  --danger: #b43d45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="yellow-dark"] {
  color-scheme: dark;
  --ink: #f8f5ec;
  --muted: #c3baaa;
  --subtle: #968b79;
  --line: #423b2c;
  --line-strong: #655a40;
  --paper: #18150f;
  --panel: #242016;
  --panel-soft: #302a1d;
  --accent: #c99a26;
  --accent-strong: #f0c85a;
  --accent-soft: #433516;
  --blue: #82b8f0;
  --blue-soft: #1d344b;
  --gold: #f0c85a;
  --gold-soft: #433516;
  --good: #6cca84;
  --danger: #f07178;
  --important: #ff5a5f;
  --warn: #f0c85a;
  --warn-soft: #433516;
  --input-bg: #18140e;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="yellow-light"] {
  color-scheme: light;
  --ink: #2b2618;
  --muted: #6b614f;
  --subtle: #8c8068;
  --line: #ded6c5;
  --line-strong: #c0b28e;
  --paper: #f8f6ef;
  --panel: #fffdf7;
  --panel-soft: #f2ecd9;
  --accent: #8a650f;
  --accent-strong: #624807;
  --accent-soft: #fff1bf;
  --blue: #265fbd;
  --blue-soft: #e4eefb;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="orange-dark"],
[data-theme="browns-dark"] {
  color-scheme: dark;
  --ink: #f8f3ee;
  --muted: #c4b5a7;
  --subtle: #988979;
  --line: #44372b;
  --line-strong: #67523d;
  --paper: #17120e;
  --panel: #231b14;
  --panel-soft: #2f241a;
  --accent: #b8651d;
  --accent-strong: #f0a45a;
  --accent-soft: #3d2a18;
  --blue: #82b8f0;
  --blue-soft: #1d344b;
  --gold: #e8b74f;
  --gold-soft: #433316;
  --good: #6cca84;
  --danger: #f07178;
  --important: #ff5a5f;
  --warn: #e8b74f;
  --warn-soft: #433316;
  --input-bg: #1a130e;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="orange-light"],
[data-theme="browns-light"] {
  color-scheme: light;
  --ink: #2a1d14;
  --muted: #6f5948;
  --subtle: #8d7664;
  --line: #dfd0c2;
  --line-strong: #bea891;
  --paper: #f7f1ea;
  --panel: #fffaf4;
  --panel-soft: #f0e4d8;
  --accent: #9a5f12;
  --accent-strong: #6f4208;
  --accent-soft: #f4dfbf;
  --blue: #075985;
  --blue-soft: #dff3ff;
  --gold: #9a6500;
  --gold-soft: #fff1bf;
  --good: #166534;
  --danger: #b42318;
  --important: #c2410c;
  --warn: #9a6500;
  --warn-soft: #fff1bf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="black-dark"] {
  color-scheme: dark;
  --ink: #f5f7fa;
  --muted: #b5bdc7;
  --subtle: #858f9b;
  --line: #30363d;
  --line-strong: #505963;
  --paper: #0f1115;
  --panel: #171a20;
  --panel-soft: #20242b;
  --accent: #6f7d8f;
  --accent-strong: #a3adbb;
  --accent-soft: #2a3038;
  --blue: #7fb6ff;
  --blue-soft: #1b344f;
  --gold: #d7a441;
  --gold-soft: #3b2f17;
  --good: #51c878;
  --danger: #ef6b73;
  --important: #ff5a5f;
  --warn: #d7a441;
  --warn-soft: #3b2f17;
  --input-bg: #101318;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="black-light"] {
  color-scheme: light;
  --ink: #1d232b;
  --muted: #626b75;
  --subtle: #808a95;
  --line: #d4d8dd;
  --line-strong: #b4bbc3;
  --paper: #f3f4f6;
  --panel: #ffffff;
  --panel-soft: #eceff2;
  --accent: #384454;
  --accent-strong: #1f2933;
  --accent-soft: #e0e4e8;
  --blue: #265fbd;
  --blue-soft: #e4eefb;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="red-dark"] {
  color-scheme: dark;
  --ink: #fbf3f3;
  --muted: #c6b0b1;
  --subtle: #9a8082;
  --line: #463132;
  --line-strong: #68494b;
  --paper: #181011;
  --panel: #241719;
  --panel-soft: #301f22;
  --accent: #c54a4f;
  --accent-strong: #f27a7d;
  --accent-soft: #4a2225;
  --blue: #85b8ef;
  --blue-soft: #1d344b;
  --gold: #e4b655;
  --gold-soft: #433516;
  --good: #66ca86;
  --danger: #ff7676;
  --important: #ff5a5f;
  --warn: #e4b655;
  --warn-soft: #433516;
  --input-bg: #1a1012;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="red-light"] {
  color-scheme: light;
  --ink: #2c2021;
  --muted: #705b5d;
  --subtle: #8f7477;
  --line: #e0d0d1;
  --line-strong: #c4a8aa;
  --paper: #f8f3f3;
  --panel: #ffffff;
  --panel-soft: #f3e9ea;
  --accent: #ad393d;
  --accent-strong: #81282c;
  --accent-soft: #f7dddd;
  --blue: #265fbd;
  --blue-soft: #e4eefb;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="purple-dark"] {
  color-scheme: dark;
  --ink: #f7f3fb;
  --muted: #beb2c9;
  --subtle: #92809f;
  --line: #3d304a;
  --line-strong: #5b496d;
  --paper: #15101c;
  --panel: #201729;
  --panel-soft: #2a2036;
  --accent: #7c3aed;
  --accent-strong: #a78bfa;
  --accent-soft: #35224d;
  --blue: #7dd3fc;
  --blue-soft: #183345;
  --gold: #f0bd4f;
  --gold-soft: #44350f;
  --good: #62d985;
  --danger: #ff7a90;
  --important: #ff4d6d;
  --warn: #f0bd4f;
  --warn-soft: #44350f;
  --input-bg: #171120;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="purple-light"] {
  color-scheme: light;
  --ink: #21172c;
  --muted: #65556f;
  --subtle: #82728f;
  --line: #d9cfe4;
  --line-strong: #bba8cd;
  --paper: #f6f1f8;
  --panel: #fffaff;
  --panel-soft: #f0e8f6;
  --accent: #6d28d9;
  --accent-strong: #4c1d95;
  --accent-soft: #eadffd;
  --blue: #0369a1;
  --blue-soft: #e0f2fe;
  --gold: #9a6500;
  --gold-soft: #fff2bf;
  --good: #166534;
  --danger: #b4233f;
  --important: #d10f35;
  --warn: #9a6500;
  --warn-soft: #fff2bf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="tblks-dark"] {
  color-scheme: dark;
  --ink: #f4f6fb;
  --muted: #b5bfd0;
  --subtle: #8792a6;
  --line: #313849;
  --line-strong: #596174;
  --paper: #0d1018;
  --panel: #151a25;
  --panel-soft: #202636;
  --accent: #56627d;
  --accent-strong: #b4c0d8;
  --accent-soft: #2a3040;
  --blue: #8fb8ff;
  --blue-soft: #1b2f4a;
  --gold: #e7c85e;
  --gold-soft: #393119;
  --good: #64cf86;
  --danger: #ef767e;
  --important: #ff5a5f;
  --warn: #e7c85e;
  --warn-soft: #393119;
  --input-bg: #101522;
  --button-ink: #ffffff;
  --button-hover-ink: #111827;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="tblks-light"] {
  color-scheme: light;
  --ink: #1f2633;
  --muted: #606b7c;
  --subtle: #7f8896;
  --line: #d4dae4;
  --line-strong: #adb7c8;
  --paper: #f3f5f8;
  --panel: #ffffff;
  --panel-soft: #eceff4;
  --accent: #46536d;
  --accent-strong: #273147;
  --accent-soft: #dfe5ef;
  --blue: #2b61b8;
  --blue-soft: #e4ecfb;
  --gold: #876612;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="koahis-dark"] {
  color-scheme: light;
  --ink: #17110b;
  --muted: #463421;
  --subtle: #63492f;
  --line: #9d7b4f;
  --line-strong: #704f29;
  --paper: #cdb17f;
  --panel: #e4c996;
  --panel-soft: #b98f57;
  --accent: #7f241b;
  --accent-strong: #581610;
  --accent-soft: #bd806e;
  --blue: #185f8e;
  --blue-soft: #9dbfd4;
  --gold: #654810;
  --gold-soft: #cfaa60;
  --good: #145a33;
  --danger: #84231b;
  --important: #8f1f16;
  --warn: #6c4a0f;
  --warn-soft: #cba55f;
  --input-bg: #ead3ad;
  --metric-bg: #172333;
  --metric-ink: #f5d8a1;
  --metric-border: #185f8e;
  --button-ink: #ffffff;
  --button-hover-ink: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="koahis-light"] {
  color-scheme: light;
  --ink: #2b2016;
  --muted: #6d5a48;
  --subtle: #8a7663;
  --line: #ded1c1;
  --line-strong: #c0ab91;
  --paper: #4a3324;
  --panel: #ffffff;
  --panel-soft: #efe6da;
  --accent: #945f1d;
  --accent-strong: #6e4310;
  --accent-soft: #f3dfbf;
  --blue: #1f5f8f;
  --blue-soft: #e0eff8;
  --gold: #8a650f;
  --gold-soft: #fff1bf;
  --good: #166534;
  --danger: #b42318;
  --important: #c2410c;
  --warn: #9a6500;
  --warn-soft: #fff1bf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="koahis-light"] .appHeader,
[data-theme="koahis-light"] .workflowTabs {
  border-color: #7a5637;
  background: #4a3324;
}

[data-theme="koahis-light"] .brandBlock h1,
[data-theme="koahis-light"] .tabButton.active,
[data-theme="koahis-light"] .tabButton.active span,
[data-theme="koahis-light"] .tabButton.active small {
  color: #fff3dc;
}

[data-theme="koahis-light"] .brandBlock p,
[data-theme="koahis-light"] .operatorControls label,
[data-theme="koahis-light"] .palettePicker,
[data-theme="koahis-light"] .tabButton,
[data-theme="koahis-light"] .tabButton small {
  color: #ead0ae;
}

[data-theme="koahis-light"] .tabButton b {
  background: #f0ddbf;
  color: #4a3324;
}

[data-theme="koahis-light"] .tabButton.active {
  background: #6a472d;
}

[data-theme="koahis-light"] .tabButton.active b {
  background: #c44b33;
  color: #fff7ed;
}

[data-theme="koahis-light"] .storeLogoSlot {
  border-color: #7a5637;
  background: #3b281d;
}

[data-theme="smcribs-dark"] {
  color-scheme: dark;
  --ink: #17120a;
  --muted: #4f3f1e;
  --subtle: #6f5b2d;
  --line: #8b6f24;
  --line-strong: #18130d;
  --paper: #0e0d0b;
  --panel: #d8ae35;
  --panel-soft: #efd06a;
  --accent: #16130d;
  --accent-strong: #31210d;
  --accent-soft: #b88721;
  --blue: #255b8f;
  --blue-soft: #d7e5f4;
  --gold: #edc84f;
  --gold-soft: #f6dda0;
  --good: #1f6f3a;
  --danger: #a93a2b;
  --important: #c83822;
  --warn: #7a4e10;
  --warn-soft: #f5d77b;
  --input-bg: #fff4ca;
  --metric-bg: #17130d;
  --metric-ink: #ffe06a;
  --metric-border: #5a4516;
  --button-ink: #fff7d5;
  --button-hover-ink: #fff7d5;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="smcribs-light"] {
  color-scheme: light;
  --ink: #292310;
  --muted: #6a6049;
  --subtle: #887d63;
  --line: #ded5bd;
  --line-strong: #c4b37e;
  --paper: #f8f5eb;
  --panel: #ffffff;
  --panel-soft: #f1ead2;
  --accent: #96700d;
  --accent-strong: #674d06;
  --accent-soft: #fff0b8;
  --blue: #265fbd;
  --blue-soft: #e4eefb;
  --gold: #96700d;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #b23b2c;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="shannons-dark"] {
  color-scheme: light;
  --ink: #21151d;
  --muted: #563c4d;
  --subtle: #72586a;
  --line: #ad7e98;
  --line-strong: #7d4f6c;
  --paper: #cfa8bd;
  --panel: #e3c1d2;
  --panel-soft: #b87f9e;
  --accent: #79324f;
  --accent-strong: #512035;
  --accent-soft: #ae7394;
  --blue: #59429a;
  --blue-soft: #b8add3;
  --gold: #684d10;
  --gold-soft: #ceb161;
  --good: #145a33;
  --danger: #812d43;
  --important: #8e2247;
  --warn: #6f510d;
  --warn-soft: #ccb061;
  --input-bg: #ead0dd;
  --metric-bg: #251725;
  --metric-ink: #f4c9dc;
  --metric-border: #79324f;
  --button-ink: #ffffff;
  --button-hover-ink: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="shannons-light"] {
  color-scheme: light;
  --ink: #2b1d28;
  --muted: #705b69;
  --subtle: #8d7484;
  --line: #e0ceda;
  --line-strong: #c7a7bc;
  --paper: #f8f2f6;
  --panel: #ffffff;
  --panel-soft: #f2e7ef;
  --accent: #a74479;
  --accent-strong: #7a2855;
  --accent-soft: #f6ddec;
  --blue: #265fbd;
  --blue-soft: #e4eefb;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f58;
  --important: #c53059;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="deuces-dark"] {
  color-scheme: light;
  --ink: #14151f;
  --muted: #3f3b50;
  --subtle: #5c566d;
  --line: #817894;
  --line-strong: #5d5277;
  --paper: #aaa7b6;
  --panel: #c5c1cf;
  --panel-soft: #9891a9;
  --accent: #584083;
  --accent-strong: #38245d;
  --accent-soft: #9b8dbb;
  --blue: #40566f;
  --blue-soft: #aeb8c7;
  --gold: #675118;
  --gold-soft: #c0af70;
  --good: #205f3b;
  --danger: #833540;
  --important: #8b2432;
  --warn: #6b5315;
  --warn-soft: #bfaf72;
  --input-bg: #d4d0dd;
  --metric-bg: #181722;
  --metric-ink: #d8ccff;
  --metric-border: #584083;
  --button-ink: #ffffff;
  --button-hover-ink: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="deuces-light"] {
  color-scheme: light;
  --ink: #222033;
  --muted: #625c78;
  --subtle: #7d7890;
  --line: #d8d3e6;
  --line-strong: #b8afd2;
  --paper: #f5f3fa;
  --panel: #ffffff;
  --panel-soft: #eeebf7;
  --accent: #6656b8;
  --accent-strong: #44358d;
  --accent-soft: #e5dffd;
  --blue: #087b9c;
  --blue-soft: #dff5fb;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #ba3f45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="unds-dark"] {
  color-scheme: dark;
  --ink: #f5f0ea;
  --muted: #c1b3a7;
  --subtle: #928478;
  --line: #41372f;
  --line-strong: #605348;
  --paper: #14110f;
  --panel: #1f1a17;
  --panel-soft: #2a231f;
  --accent: #8a6f5b;
  --accent-strong: #c4a990;
  --accent-soft: #382c25;
  --blue: #79c4b2;
  --blue-soft: #173d36;
  --gold: #d8b75d;
  --gold-soft: #3d3218;
  --good: #62c985;
  --danger: #ef7777;
  --important: #ff5a5f;
  --warn: #d8b75d;
  --warn-soft: #3d3218;
  --input-bg: #171310;
  --button-ink: #ffffff;
  --button-hover-ink: #11100e;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="unds-light"] {
  color-scheme: light;
  --ink: #2a241e;
  --muted: #695d52;
  --subtle: #877a6e;
  --line: #ddd4cc;
  --line-strong: #bcae9f;
  --paper: #f6f2ee;
  --panel: #ffffff;
  --panel-soft: #eee7df;
  --accent: #725947;
  --accent-strong: #503c2f;
  --accent-soft: #eaded3;
  --blue: #247b6e;
  --blue-soft: #def3ef;
  --gold: #8a650f;
  --gold-soft: #fff3cf;
  --good: #1f7a43;
  --danger: #b43d45;
  --important: #c53030;
  --warn: #9a6500;
  --warn-soft: #fff3cf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="jinnorras-dark"] {
  color-scheme: dark;
  --ink: #f7f3fb;
  --muted: #beb2c9;
  --subtle: #92809f;
  --line: #3d304a;
  --line-strong: #5b496d;
  --paper: #15101c;
  --panel: #201729;
  --panel-soft: #2a2036;
  --accent: #7c3aed;
  --accent-strong: #a78bfa;
  --accent-soft: #35224d;
  --blue: #7dd3fc;
  --blue-soft: #183345;
  --gold: #f0bd4f;
  --gold-soft: #44350f;
  --good: #62d985;
  --danger: #ff7a90;
  --important: #ff4d6d;
  --warn: #f0bd4f;
  --warn-soft: #44350f;
  --input-bg: #171120;
  --button-ink: #ffffff;
  --button-hover-ink: #171120;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="jinnorras-light"] {
  color-scheme: light;
  --ink: #21172c;
  --muted: #65556f;
  --subtle: #82728f;
  --line: #d9cfe4;
  --line-strong: #bba8cd;
  --paper: #f6f1f8;
  --panel: #fffaff;
  --panel-soft: #f0e8f6;
  --accent: #6d28d9;
  --accent-strong: #4c1d95;
  --accent-soft: #eadffd;
  --blue: #0369a1;
  --blue-soft: #e0f2fe;
  --gold: #9a6500;
  --gold-soft: #fff2bf;
  --good: #166534;
  --danger: #b4233f;
  --important: #d10f35;
  --warn: #9a6500;
  --warn-soft: #fff2bf;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="tms-dark"] {
  color-scheme: light;
  --ink: #231006;
  --muted: #5a3018;
  --subtle: #75431f;
  --line: #8b461d;
  --line-strong: #0f587e;
  --paper: #bd6429;
  --panel: #de9450;
  --panel-soft: #a94f1f;
  --accent: #0f5f8c;
  --accent-strong: #073a59;
  --accent-soft: #96bdd3;
  --blue: #0f5f8c;
  --blue-soft: #96bdd3;
  --gold: #6d4209;
  --gold-soft: #ce8743;
  --good: #145a33;
  --danger: #842718;
  --important: #8f2111;
  --warn: #6a480c;
  --warn-soft: #c98542;
  --input-bg: #edb470;
  --metric-bg: #143447;
  --metric-ink: #ffd59c;
  --metric-border: #0f5f8c;
  --button-ink: #ffffff;
  --button-hover-ink: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

[data-theme="tms-light"] {
  color-scheme: light;
  --ink: #2c1b12;
  --muted: #735848;
  --subtle: #927362;
  --line: #e2cdc1;
  --line-strong: #c6a28e;
  --paper: #f8f1eb;
  --panel: #ffffff;
  --panel-soft: #f3e5dc;
  --accent: #b64f1b;
  --accent-strong: #81320d;
  --accent-soft: #f8d8c5;
  --blue: #1f68a8;
  --blue-soft: #e1edf8;
  --gold: #986b0b;
  --gold-soft: #fff0bd;
  --good: #1f7a43;
  --danger: #b93d2f;
  --important: #c5301d;
  --warn: #986b0b;
  --warn-soft: #fff0bd;
  --input-bg: #ffffff;
  --shadow: none;
  --shadow-soft: none;
}

html {
  background: var(--paper);
}

body {
  font-family: "Segoe UI Variable", "Segoe UI", Aptos, Arial, sans-serif;
  font-size: 14px;
  letter-spacing: 0;
  background: var(--paper);
}

body::before {
  display: none;
}

.appHeader {
  position: sticky;
  top: 0;
  z-index: 40;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--paper) 94%, var(--panel));
  padding: 14px 18px;
}

.brandBlock h1 {
  color: var(--ink);
  font-size: 1.18rem;
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: 0;
}

[data-theme$="-light"] .brandBlock h1 {
  color: #000;
}

.brandBlock p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 500;
}

.operatorControls {
  display: grid;
  grid-template-columns: minmax(128px, 150px) 136px 116px;
  gap: 8px;
  align-items: end;
}

.operatorControls label,
.palettePicker {
  min-width: 0;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 650;
}

button,
input,
select,
textarea {
  border-radius: 4px;
  box-shadow: none !important;
}

button {
  min-height: 36px;
  padding: 0 12px;
  font-weight: 650;
}

.secondaryButton,
button.secondaryButton {
  background: var(--panel);
  border-color: var(--line-strong);
  color: var(--ink);
}

button:hover {
  transform: none;
}

input,
select,
textarea {
  min-height: 36px;
  font-size: 0.88rem;
}

label {
  font-size: 0.74rem;
  font-weight: 650;
}

.workflowTabs {
  position: sticky;
  top: 65px;
  z-index: 35;
  display: grid;
  grid-template-columns: repeat(8, minmax(96px, 1fr));
  gap: 0;
  border-bottom: 1px solid var(--line);
  background: var(--paper);
  padding: 0 18px;
}

.tabButton {
  min-height: 58px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  box-shadow: none;
  justify-items: start;
  padding: 9px 12px;
}

.tabButton b {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--panel-soft);
  color: var(--muted);
  font-size: 0.72rem;
}

.tabButton span {
  font-size: 0.84rem;
  font-weight: 700;
}

.tabButton small {
  color: var(--subtle);
  font-size: 0.68rem;
  font-weight: 500;
}

.tabButton.active {
  border-bottom-color: var(--accent);
  background: color-mix(in srgb, var(--accent-soft) 25%, transparent);
  color: var(--ink);
}

.tabButton.active b {
  background: var(--accent);
  color: white;
}

body[data-department="inventory"] .tabButton[data-tab="inventory"],
body[data-department="shipping"] .tabButton[data-tab="sync"],
body[data-department="buylist"] .tabButton[data-tab="buylist"] {
  outline: 1px solid var(--line-strong);
  outline-offset: -4px;
}

.workflowMap {
  grid-template-columns: repeat(8, minmax(92px, 1fr));
  gap: 6px;
  margin: 14px 18px 0;
}

.workflowMap div {
  border-radius: 4px;
  box-shadow: none;
  padding: 8px;
}

.workflowGuide {
  margin: 10px 18px 0;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel);
  padding: 12px 14px;
}

.workflowGuide strong {
  font-size: 0.92rem;
}

.workflowGuide p {
  color: var(--muted);
  font-size: 0.8rem;
}

.layout.workflowShell {
  gap: 18px;
  padding: 18px;
}

.panel,
.profileScope,
.conditionIntake,
.inventoryEditor,
.visibilityPanel,
.stockCheckPanel,
.orderPrinterPanel,
.listingBuilder,
.catalogBuilderPanel,
.buyQuotePanel,
.bulkPanel,
.reviewQueue,
.simulationExportPanel,
.testListingPanel,
.draftPayloadPanel {
  border-radius: 6px !important;
  box-shadow: none !important;
}

.panel {
  border: 1px solid var(--line);
}

.panel h2 {
  font-size: 1rem;
  font-weight: 700;
}

.workflowCopy {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-soft);
  padding: 12px;
}

.workflowCopy h3,
.miniHead h3 {
  font-size: 0.88rem;
  font-weight: 700;
}

.workflowCopy p,
.policyNote,
.marketStatus,
.mutedLine,
.meta {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.miniHead span,
.badge,
.syncBadge {
  border-radius: 4px;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0;
}

.grid,
.compactGrid,
.builderControls,
.stockCheckControls,
.orderPrinterControls {
  gap: 10px;
}

.product,
.inventoryRow,
.stockCheckRow,
.syncPreviewCard,
.orderPreviewCard,
.catalogQueueRow,
.buylistCard {
  border-radius: 6px !important;
  box-shadow: none !important;
}

body[data-workflow-mode="basic"] .advancedOnly,
body[data-workflow-mode="basic"] .policyNote:not(.keepVisible),
body[data-workflow-mode="basic"] .profileRules,
body[data-workflow-mode="basic"] .hiddenProductLinePanel,
body[data-workflow-mode="basic"] .catalogVisualPicker .catalogVisualCard:nth-child(n+5),
body[data-workflow-mode="basic"] .syncPreviewList,
body[data-workflow-mode="basic"] #comps,
body[data-workflow-mode="basic"] .tabButton[data-tab="buylist"],
body[data-workflow-mode="basic"] .tabPanel[data-panel="buylist"] {
  display: none !important;
}

body[data-workflow-mode="basic"] .layout.workflowShell {
  grid-template-columns: minmax(0, 1fr);
}

body[data-workflow-mode="basic"] .workflowGuide {
  border-color: var(--accent);
}

body[data-workflow-mode="basic"] .panel {
  max-width: 1180px;
  margin-inline: auto;
  width: 100%;
}

@media (max-width: 1100px) {
  .appHeader {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) 180px minmax(0, 1fr);
  }

  .operatorControls {
    justify-content: end;
  }

  .workflowTabs {
    top: 124px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .operatorControls,
  .workflowTabs,
  .workflowMap {
    grid-template-columns: 1fr;
  }

  .workflowTabs {
    position: static;
  }

  .appHeader {
    position: static;
    grid-template-columns: 1fr;
  }
}



/* Theme-safe attention states */
.lookupStatus[data-status="success"] {
  border-color: color-mix(in srgb, var(--good) 68%, var(--line));
  background: color-mix(in srgb, var(--good) 14%, var(--panel));
  color: var(--ink);
}

.lookupStatus[data-status="warning"] {
  border-color: color-mix(in srgb, var(--warn) 72%, var(--line));
  background: color-mix(in srgb, var(--warn-soft) 58%, var(--panel));
  color: var(--ink);
}

.lookupStatus[data-status="error"] {
  border-color: color-mix(in srgb, var(--danger) 72%, var(--line));
  background: color-mix(in srgb, var(--danger) 14%, var(--panel));
  color: var(--ink);
}

.toast.warning.attention,
.toast.error.attention {
  color: #ffffff;
}


/* Catalog queue readability fix */
.catalogQueueList {
  align-content: start;
  gap: 10px;
  padding: 2px 4px 6px 0;
}

.catalogQueueRow {
  grid-template-columns: 54px minmax(0, 1fr) minmax(170px, auto);
  align-items: start;
  min-height: 76px;
  padding: 12px 12px;
  gap: 14px;
  line-height: 1.25;
  overflow: visible;
}

.catalogQueueInfo {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.catalogQueueThumb {
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.catalogQueueThumb small {
  color: var(--subtle);
  font-size: 0.64rem;
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
}

.catalogQueueRow strong {
  display: block;
  min-width: 0;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.28;
}

.catalogQueueRow small {
  display: block;
  margin-top: 0;
  white-space: normal;
  line-height: 1.25;
}

.catalogQueueRow em {
  align-self: start;
  max-width: 260px;
  white-space: normal;
  line-height: 1.3;
}

@media (max-width: 900px) {
  .catalogQueueRow {
    grid-template-columns: 54px minmax(0, 1fr);
    min-height: 0;
  }

  .catalogQueueRow em {
    grid-column: 2;
    justify-self: start;
    max-width: none;
    text-align: left;
  }
}


/* Pricing desk product reference image */
.pricingProductHeader {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-bottom: 14px;
}

.pricingProductThumb {
  width: 76px;
  aspect-ratio: 3 / 4;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-soft) 80%, var(--paper));
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 800;
  text-align: center;
}

.pricingProductThumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  background: var(--panel);
}

.pricingProductHeader #detailTitle {
  margin-bottom: 5px;
}

.pricingProductHeader .meta {
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

@media (max-width: 560px) {
  .pricingProductHeader {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  .pricingProductThumb {
    width: 58px;
  }
}


/* Basic automation path */
.basicAutomationPath {
  display: grid;
  grid-template-columns: minmax(240px, 0.9fr) minmax(280px, 1.1fr);
  gap: 14px;
  margin: 0 16px 14px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--accent) 52%, var(--line));
  border-radius: 6px;
  background: color-mix(in srgb, var(--accent-soft) 24%, var(--panel));
}

.basicAutomationPath strong {
  display: block;
  margin-bottom: 6px;
  color: var(--ink);
  font-size: 0.94rem;
}

.basicAutomationPath p,
.basicAutomationPath li {
  color: var(--muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.basicAutomationPath ol {
  margin: 0;
  padding-left: 20px;
}

body[data-workflow-mode="advanced"] .basicAutomationPath {
  border-color: var(--line);
  background: var(--panel-soft);
}

body[data-workflow-mode="basic"] .operatorControls #exportShopify {
  display: none !important;
}

body[data-workflow-mode="basic"] .workflowTabs .tabButton[data-tab="sync"] {
  display: none;
}

body[data-workflow-mode="basic"] .workflowTabs {
  grid-template-columns: repeat(7, minmax(106px, 1fr));
}

@media (max-width: 820px) {
  .basicAutomationPath {
    grid-template-columns: 1fr;
  }
}


/* Position permission presets */
.roleRulesPanel {
  display: grid;
  gap: 12px;
  margin: 0 16px 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-soft);
}

.roleRuleGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.roleRuleGrid div {
  min-width: 0;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel);
}

.roleRuleGrid strong,
.roleRuleGrid span {
  display: block;
}

.roleRuleGrid strong {
  margin-bottom: 5px;
  color: var(--ink);
  font-size: 0.86rem;
}

.roleRuleGrid span {
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.4;
}

body[data-role="manager"] .ownerOnly,
body[data-role="staff"] .ownerOnly,
body[data-role="staff"] .managerPlus {
  display: none !important;
}

body[data-role="staff"] .tabButton[data-tab="setup"],
body[data-role="staff"] .tabButton[data-tab="review"] {
  display: none;
}

body[data-role="staff"] .workflowTabs {
  grid-template-columns: repeat(5, minmax(106px, 1fr));
}

body[data-role="manager"] .workflowTabs {
  grid-template-columns: repeat(7, minmax(106px, 1fr));
}

body[data-role="manager"] .tabButton[data-tab="sync"],
body[data-role="staff"] .tabButton[data-tab="sync"] {
  display: none;
}

@media (max-width: 820px) {
  .roleRuleGrid {
    grid-template-columns: 1fr;
  }
}


/* Simplified workflow pass */
body[data-workflow-mode="basic"] .workflowTabs .tabButton[data-tab="review"],
body[data-workflow-mode="basic"] .workflowTabs .tabButton[data-tab="sync"] {
  display: none !important;
}

body[data-workflow-mode="basic"] .workflowTabs {
  grid-template-columns: repeat(6, minmax(108px, 1fr));
}

body[data-workflow-mode="basic"][data-role="staff"] .workflowTabs {
  grid-template-columns: repeat(5, minmax(108px, 1fr));
}

body[data-workflow-mode="basic"] .basicAutomationPath {
  border-color: color-mix(in srgb, var(--accent) 70%, var(--line));
  background: color-mix(in srgb, var(--accent-soft) 18%, var(--panel));
}

body[data-workflow-mode="basic"] .roleRulesPanel {
  margin-top: 0;
}

body[data-workflow-mode="basic"] .adminPricingDesk .inventoryEditor,
body[data-workflow-mode="basic"] .adminPricingDesk .detailImagePanel,
body[data-workflow-mode="basic"] .adminPricingDesk .visibilityPanel,
body[data-workflow-mode="basic"] .adminPricingDesk .pricingSimulator,
body[data-workflow-mode="basic"] .adminPricingDesk .sourcePanel,
body[data-workflow-mode="basic"] .adminPricingDesk .compForm,
body[data-workflow-mode="basic"] .adminPricingDesk .actions:not(.pricingApprovalActions),
body[data-workflow-mode="basic"] .adminPricingDesk #comps {
  display: none !important;
}

body[data-workflow-mode="basic"] .previewSection {
  border-top: 1px solid var(--line);
}

body[data-workflow-mode="basic"] .workflowGuide strong {
  font-size: 0.95rem;
}

body[data-workflow-mode="basic"] .workflowGuide p,
body[data-workflow-mode="basic"] .basicAutomationPath p,
body[data-workflow-mode="basic"] .basicAutomationPath li {
  font-size: 0.86rem;
  line-height: 1.5;
}

body[data-workflow-mode="advanced"] .basicAutomationPath strong::after {
  content: "";
  color: var(--muted);
  font-weight: 650;
}


/* Refined inventory workbench */
.inventoryFilters {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 0.85fr) auto auto;
  gap: 10px;
  align-items: end;
  width: 100%;
}

.inventoryFilters label {
  min-width: 0;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.inventoryFilters select,
.inventoryFilters input {
  margin-top: 5px;
}

.inventorySaveAll {
  align-self: end;
  min-height: 40px;
  white-space: nowrap;
}

.inventoryAttentionBar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: start;
  margin: 0 16px 12px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-soft) 76%, var(--panel));
}

.inventoryAttentionBar[data-status="warning"] {
  border-color: color-mix(in srgb, var(--warn) 58%, var(--line));
}

.inventoryAttentionBar .secondaryButton {
  min-height: 36px;
  white-space: nowrap;
}

.inventoryAttentionBar .primaryButton {
  min-height: 36px;
  white-space: nowrap;
}

.inventoryAttentionToggle[data-status="warning"] {
  border-color: color-mix(in srgb, var(--warn) 68%, var(--line));
  background: color-mix(in srgb, var(--warn) 16%, var(--panel-soft));
  color: var(--ink);
}

.inventoryAttentionToggle[data-active="true"],
.inventoryAttentionToggle[aria-pressed="true"] {
  border-color: color-mix(in srgb, var(--accent) 72%, var(--line));
  background: color-mix(in srgb, var(--accent) 18%, var(--panel-soft));
  color: var(--ink);
}

.inventoryAttentionBar small {
  flex: 1 1 100%;
  min-width: 0;
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.35;
}

.inventoryPager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin: 0 16px 12px;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 800;
}

.inventoryPager[hidden] {
  display: none;
}

.inventoryAttentionReason {
  margin: 0 0 10px;
  border: 1px solid color-mix(in srgb, var(--warn) 58%, var(--line));
  border-radius: 6px;
  background: color-mix(in srgb, var(--warn-soft) 72%, var(--panel));
  color: var(--text);
  padding: 8px 10px;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.35;
}

.inventorySyncNotice {
  border-color: color-mix(in srgb, var(--accent) 45%, var(--line));
  background: color-mix(in srgb, var(--accent-soft) 48%, var(--panel));
}

.inventoryAssignProfile {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 320px);
  gap: 12px;
  align-items: end;
  margin: 0 0 12px;
  border: 1px solid color-mix(in srgb, var(--accent) 52%, var(--line));
  border-radius: 6px;
  background: color-mix(in srgb, var(--accent-soft) 42%, var(--panel));
  padding: 12px;
}

.inventoryAssignProfile strong {
  display: block;
  margin-bottom: 4px;
  color: var(--text);
  font-size: 0.86rem;
}

.inventoryAssignProfile p {
  margin: 0;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 750;
  line-height: 1.35;
}

.inventoryAssignProfile label {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.inventoryAssignProfile select {
  margin-top: 6px;
  width: 100%;
}

.syncBulkActions {
  display: grid;
  grid-template-columns: auto auto auto minmax(220px, 1fr);
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-soft) 72%, var(--panel));
  padding: 10px;
}

.syncBulkActions .secondaryButton {
  min-height: 36px;
  white-space: nowrap;
}

.syncBulkActions small {
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.35;
}

.inventoryPriceGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 10px;
}

.inventoryWeightGrid {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(96px, 0.6fr);
  gap: 10px;
}

.inventoryMsrpHoldGrid {
  display: grid;
  grid-template-columns: minmax(150px, 220px) minmax(120px, 180px) minmax(220px, 1fr);
  gap: 10px;
  align-items: end;
}

.inventoryProductLimitGrid {
  display: grid;
  grid-template-columns: minmax(150px, 220px) minmax(110px, 150px) minmax(170px, 220px) minmax(220px, 1fr);
  gap: 10px;
  align-items: end;
}

.inventoryPriceGrid.noAutoPrice {
  grid-template-columns: repeat(3, minmax(120px, 1fr));
}

.inventoryPriceGrid label,
.inventoryWeightGrid label,
.inventoryMsrpHoldGrid label,
.inventoryProductLimitGrid label {
  min-width: 0;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}

.inventoryPriceGrid input,
.inventoryWeightGrid input,
.inventoryWeightGrid select,
.inventoryMsrpHoldGrid input,
.inventoryProductLimitGrid input,
.inventoryProductLimitGrid select {
  margin-top: 5px;
}

.inventoryPriceGrid input[readonly] {
  background: color-mix(in srgb, var(--panel) 70%, var(--panel-soft));
  color: var(--muted);
}

.panel[data-panel="inventory"] .sectionHead {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: stretch;
}

.panel[data-panel="inventory"] .sectionHead > div:first-child {
  display: flex;
  align-items: baseline;
  gap: 10px;
  min-width: 0;
}

.panel[data-panel="inventory"] .sectionHead .mutedLine {
  margin: 0;
  max-width: none;
  line-height: 1.35;
}

body[data-workflow-mode="basic"] .inventoryPurchaseLimits {
  display: none;
}

@media (max-width: 820px) {
  .inventoryFilters,
  .inventoryPriceGrid,
  .inventoryWeightGrid,
  .inventoryProductLimitGrid,
  .inventoryMsrpHoldGrid,
  .inventoryAttentionBar,
  .syncBulkActions {
    grid-template-columns: 1fr;
  }
}


/* Batch rarity exclusions */
.batchRarityPanel {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-soft) 82%, var(--panel));
  padding: 10px;
}

.batchRarityPanel summary {
  cursor: pointer;
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 750;
}

.compactRarityChecklist {
  grid-template-columns: repeat(auto-fit, minmax(74px, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.compactRarityChecklist .rarityToggle {
  min-height: 34px;
  padding: 7px 8px;
}


/* Basic setup settings */
.basicSettingsPanel {
  display: grid;
  gap: 12px;
  margin: 0 16px 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-soft);
}

.basicSettingsPanel .secondaryButton {
  justify-self: start;
}

.customLineDialogPanel {
  border-color: color-mix(in srgb, var(--blue) 48%, var(--line));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--blue-soft) 42%, var(--panel-soft)), var(--panel-soft) 72%),
    var(--panel-soft);
}

.configuredProfilesPanel {
  border-color: color-mix(in srgb, var(--good) 46%, var(--line));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--good) 10%, var(--panel-soft)), var(--panel-soft) 70%),
    var(--panel-soft);
}

.basicSafetyRules {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.configuredLineDrawer,
.customLineCreator {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel);
}

.configuredLineDrawer summary,
.customLineCreator summary {
  cursor: pointer;
  padding: 10px 12px;
  color: var(--ink);
  font-size: 0.82rem;
  font-weight: 800;
}

.configuredLineDrawer summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.configuredLineDrawer summary small {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
  text-align: right;
}

.customLineCreator summary::-webkit-details-marker {
  display: none;
}

.customLineCreator {
  display: grid;
  gap: 10px;
}

.customLineCreator[open] {
  padding-bottom: 12px;
}

.customLineCreator .grid,
.customLineCreator .customLineActions,
.customLineCreator .marketStatus {
  margin-inline: 12px;
}

.customLineActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.customLineCreator {
  border-color: color-mix(in srgb, var(--blue) 48%, var(--line));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--blue-soft) 62%, transparent), transparent 70%),
    var(--panel);
  box-shadow: inset 4px 0 0 color-mix(in srgb, var(--blue) 82%, var(--accent));
}

.customLineCreator summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: color-mix(in srgb, var(--blue-soft) 58%, transparent);
  border-bottom: 1px solid color-mix(in srgb, var(--blue) 22%, var(--line));
}

.customLineCreator summary::after {
  content: "v";
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid color-mix(in srgb, var(--blue) 46%, var(--line));
  border-radius: 6px;
  background: var(--input-bg);
  color: var(--blue);
  font-size: 0.82rem;
  font-weight: 950;
  line-height: 1;
}

.customLineCreator[open] summary::after {
  content: "^";
}

.customLineCreator summary small {
  max-width: 54ch;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
  text-align: right;
}

.programmedLinePicker {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-soft) 74%, var(--panel));
}

.programmedLinePicker .grid,
.programmedLinePicker .miniHead {
  margin-bottom: 0;
}

.programmedLineActions {
  display: grid;
  grid-template-columns: minmax(180px, max-content) minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  border: 1px solid color-mix(in srgb, var(--accent) 45%, var(--line));
  border-radius: 6px;
  background: color-mix(in srgb, var(--accent-soft) 26%, var(--panel));
  padding: 10px;
}

.programmedLineActions span {
  min-width: 0;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.35;
}

.programmedLineDefaultsOptions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.programmedLineDefaultsOptions .checkRule {
  margin: 0;
  min-height: 42px;
  align-items: center;
}

.bulkDefaultAction {
  background: color-mix(in srgb, var(--panel-soft) 70%, var(--accent-soft));
}

.programmedLineHead span {
  background: color-mix(in srgb, var(--accent-soft) 72%, var(--panel));
  color: var(--accent-strong);
}

.programmedLineConnection {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.programmedLineConnection div {
  min-width: 0;
  border: 1px solid color-mix(in srgb, var(--line) 74%, transparent);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel) 78%, var(--panel-soft));
  padding: 10px;
}

.programmedLineConnection b,
.programmedLineConnection span {
  display: block;
  min-width: 0;
}

.programmedLineConnection b {
  margin-bottom: 4px;
  color: var(--ink);
  font-size: 0.72rem;
  line-height: 1.2;
}

.programmedLineConnection span {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

@media (max-width: 980px) {
  .programmedLineConnection {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .programmedLineActions {
    grid-template-columns: 1fr;
  }

  .programmedLineDefaultsOptions {
    grid-template-columns: 1fr;
  }

  .programmedLineConnection {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .configuredLineDrawer summary,
  .customLineCreator summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .configuredLineDrawer summary small,
  .customLineCreator summary small {
    max-width: none;
    text-align: left;
  }
}

.configuredLineList {
  display: grid;
  gap: 8px;
  padding: 0 12px 12px;
}

.configuredLineItem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-soft);
  padding: 10px;
}

.configuredLineItem strong,
.configuredLineItem span {
  display: block;
}

.configuredLineItem span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 650;
}

.basicRecommendedProfile {
  border-color: color-mix(in srgb, var(--accent) 45%, var(--line));
  background: color-mix(in srgb, var(--accent) 8%, var(--panel));
}

.basicRecommendedProfile p {
  color: var(--muted);
  line-height: 1.45;
}

.productLineProfileForm {
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel);
  padding: 14px;
}

body[data-workflow-mode="advanced"] .basicSettingsPanel {
  border-color: color-mix(in srgb, var(--line-strong) 70%, var(--line));
  background: color-mix(in srgb, var(--panel-soft) 70%, var(--panel));
}

@media (max-width: 820px) {
  .basicSafetyRules {
    grid-template-columns: 1fr;
  }

  .configuredLineItem {
    grid-template-columns: 1fr;
  }
}


/* Inventory thumbnails */
.inventoryRowHead {
  grid-template-columns: 58px minmax(0, 1fr) auto;
  align-items: center;
}

.inventoryThumb {
  width: 58px;
  aspect-ratio: 3 / 4;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel) 72%, var(--panel-soft));
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 800;
  text-align: center;
}

.inventoryThumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  background: var(--panel);
}

.inventoryThumb.imageMissingThumb,
.catalogQueueThumb.imageMissingThumb {
  border-style: dashed;
  background: color-mix(in srgb, var(--panel-soft) 82%, var(--paper));
}

@media (max-width: 780px) {
  .inventoryRowHead {
    grid-template-columns: 52px minmax(0, 1fr);
  }

  .inventoryRow.importReview .inventoryRowHead {
    grid-template-columns: auto 52px minmax(0, 1fr);
  }

  .inventoryRowHead .badge {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .inventoryThumb {
    width: 52px;
  }
}


/* Buylist catalog filters */
.buylistCatalogFilters {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(220px, 1fr) minmax(190px, 0.7fr);
  gap: 10px;
  margin: 14px 16px 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-soft);
}

.buylistCatalogFilters label {
  min-width: 0;
}

@media (max-width: 780px) {
  .buylistCatalogFilters {
    grid-template-columns: 1fr;
  }
}

.inventoryArchiveToggle {
  align-self: end;
  min-height: 38px;
}

.inventoryRow.archived {
  opacity: 0.72;
  border-color: color-mix(in srgb, var(--warn) 58%, var(--line));
  background: color-mix(in srgb, var(--warn) 8%, var(--panel));
}

.inventoryRow.archived .badge {
  background: color-mix(in srgb, var(--warn) 24%, var(--panel));
  border-color: color-mix(in srgb, var(--warn) 65%, var(--line));
  color: var(--ink);
}

button.dangerButton,
.dangerButton {
  background: color-mix(in srgb, var(--danger) 78%, #000 22%);
  border-color: var(--danger);
  color: white;
}

button.dangerButton:hover,
.dangerButton:hover {
  background: var(--danger);
  border-color: var(--danger);
}

.pokemonPrintVariantRow {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(120px, 0.35fr) minmax(180px, 0.65fr);
  margin: 0.7rem 0 1rem;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--line);
  background: var(--panel-soft);
  color: var(--text);
}

.pokemonPrintVariantRow[hidden] {
  display: none !important;
}

.productImageGrid,
.detailImagePanel {
  border: 1px solid var(--line);
  background: var(--panel-soft);
  padding: 14px;
}

.productImageGrid {
  display: grid;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.productImagePreview {
  display: grid;
  place-items: center;
  min-height: 180px;
  border: 1px dashed var(--line-strong);
  background: var(--panel);
  color: var(--muted);
  font-size: 0.86rem;
  text-align: center;
  overflow: hidden;
}

.productImagePreview img {
  width: 100%;
  height: 100%;
  max-height: 220px;
  object-fit: contain;
}

.customLinePlaceholderGrid {
  align-items: stretch;
}

.customLinePlaceholderPreview {
  min-height: 120px;
  border-radius: 6px;
}

.customLinePlaceholderAck {
  margin-inline: 12px;
  border-color: color-mix(in srgb, var(--warn) 42%, var(--line));
  background: color-mix(in srgb, var(--warn-soft) 20%, var(--panel));
}

.productImageControls {
  display: grid;
  gap: 10px;
}

.imageRightsAck {
  border-color: color-mix(in srgb, var(--warn) 48%, var(--line));
  background: color-mix(in srgb, var(--warn-soft) 24%, var(--panel));
}

.detailImagePanel {
  display: grid;
  gap: 10px;
  margin: 14px 0;
}

.detailImageControls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

@media (max-width: 780px) {
  .productImageGrid,
  .detailImageControls {
    grid-template-columns: 1fr;
  }
}

.catalogLaneBar {
  display: grid;
  grid-template-columns: minmax(220px, 0.4fr) minmax(0, 1fr);
  gap: 12px;
  align-items: end;
  margin-bottom: 14px;
}

.catalogLaneBar .marketStatus {
  margin: 0;
  min-height: 40px;
  display: flex;
  align-items: center;
}

@media (max-width: 780px) {
  .catalogLaneBar {
    grid-template-columns: 1fr;
  }
}

.marketActions { display: flex; flex-wrap: wrap; gap: 10px; margin: 10px 0 12px; }
.marketActions .secondaryButton { min-height: 38px; }

/* Center checkbox-button labels after full rarity names were expanded. */
.rarityToggle,
.rarityExclusionOption {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 8px 12px;
  text-align: center;
  line-height: 1.2;
}

.rarityToggle input,
.rarityExclusionOption input {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
}

.rarityToggle span,
.rarityExclusionOption {
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}

.compactRarityChecklist .rarityToggle {
  min-height: 38px;
  padding: 8px 10px;
}

.compactRarityChecklist .rarityToggle span {
  padding-left: 18px;
  padding-right: 10px;
}

.marketActions .secondaryButton,
.sourcePanel .secondaryButton,
.batchPanel .secondaryButton,
.basicSettingsPanel .secondaryButton,
.stageListingButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Rarity tiles: keep checkbox at the left and center the label in the available text area. */
.rarityChecklist {
  grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
}

.compactRarityChecklist {
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
}

.rarityToggle,
.rarityExclusionOption {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  justify-items: stretch;
  column-gap: 8px;
  min-height: 42px;
  padding: 8px 10px !important;
  text-align: center;
}

.rarityToggle input,
.rarityExclusionOption input {
  position: static !important;
  transform: none !important;
  justify-self: center;
  margin: 0 !important;
  width: 18px;
  min-height: 18px;
}

.rarityToggle span {
  display: block;
  width: 100%;
  min-width: 0;
  padding: 0 !important;
  text-align: center;
  overflow-wrap: anywhere;
}

.rarityExclusionOption {
  justify-content: normal;
  padding-right: 12px !important;
}

.compactRarityChecklist .rarityToggle {
  min-height: 44px;
}

.batchActionRow {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.batchActionRow .secondaryButton {
  min-height: 38px;
}

.pokemonBatchPrintGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.checkRule.disabledOption {
  opacity: 0.5;
  border-style: dashed;
}

.checkRule.disabledOption input {
  cursor: not-allowed;
}

.pokemonOnlyAction {
  border-color: color-mix(in srgb, var(--blue) 60%, var(--line-strong));
  color: var(--blue);
}

.pokemonOnlyAction[hidden] {
  display: none !important;
}

[hidden] {
  display: none !important;
}

.listingGenerationDefaults {
  margin-top: 14px;
}

.batchListSettings {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 86%, transparent);
  padding: 12px;
}

.listingGenerationDefaults .compactRules {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.listingGenerationDefaults .cookieRunBuylistRules {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}


@media (max-width: 760px) {
  .listingGenerationDefaults .compactRules {
    grid-template-columns: 1fr;
  }
}


/* Final workflow clarity pass */
.priceStrip {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.priceStrip strong {
  overflow-wrap: anywhere;
  font-size: clamp(0.96rem, 1.4vw, 1.35rem);
}

.inventoryFieldGroup {
  display: grid;
  gap: 8px;
}

.inventoryAssignPanel {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 320px) auto auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 2px solid var(--warning);
  border-radius: 8px;
  background: color-mix(in srgb, var(--warning) 13%, var(--panel-soft));
}

.inventoryRow.importReview {
  border-color: color-mix(in srgb, var(--warning) 58%, var(--line));
}

.inventoryRow.selectedImportReview {
  border-color: color-mix(in srgb, var(--success) 82%, var(--line));
  background: color-mix(in srgb, var(--success) 12%, var(--panel-soft));
}

.inventoryRow.importReview .inventoryRowHead {
  grid-template-columns: auto 58px minmax(0, 1fr) auto;
}

.inventoryRowSelect {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 7px 9px;
  border: 2px solid color-mix(in srgb, var(--warning) 70%, var(--line));
  border-radius: 7px;
  background: color-mix(in srgb, var(--warning) 13%, var(--panel));
  color: var(--text);
  font-size: 0.72rem;
  font-weight: 950;
  line-height: 1;
}

.selectedImportReview .inventoryRowSelect {
  border-color: color-mix(in srgb, var(--success) 82%, var(--line));
  background: color-mix(in srgb, var(--success) 18%, var(--panel));
}

.inventoryRowSelect input {
  width: 20px;
  height: 20px;
}

.inventoryBulkAssignPanel {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(220px, 340px) minmax(280px, auto);
  gap: 10px;
  align-items: end;
  padding: 14px;
  border: 2px solid color-mix(in srgb, var(--accent) 70%, var(--warning));
  border-radius: 8px;
  background: color-mix(in srgb, var(--accent) 16%, var(--panel-soft));
}

.inventoryBulkAssignPanel p,
.inventoryBulkAssignPanel small {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.35;
}

.inventoryBulkAssignPanel small {
  grid-column: 1 / -1;
  font-size: 0.76rem;
  font-weight: 800;
}

.inventoryBulkAssignPanel label {
  display: grid;
  gap: 5px;
}

.inventoryBulkAssignActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.inventoryAssignPanel p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.35;
}

.inventoryAssignPanel label {
  display: grid;
  gap: 5px;
}

.inventoryGroupLabel {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 900;
}

.sealedStockGroup .inventoryStockGrid {
  grid-template-columns: minmax(140px, 220px);
}

.inventoryStockGrid label,
.inventoryTargets label,
.inventoryPriceGrid label,
.inventoryWeightGrid label,
.inventoryMsrpHoldGrid label,
.inventoryProductLimitGrid label,
.inventoryPurchaseLimits label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.inventoryStockGrid label span {
  display: block;
}

.inventoryStockGrid {
  grid-template-columns: repeat(auto-fit, minmax(86px, 1fr));
}

.inventoryPriceGrid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.inventoryWeightGrid {
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
}

.inventoryProductLimitGrid,
.inventoryMsrpHoldGrid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.inventoryTargets,
.inventoryToggles,
.inventoryPurchaseLimits {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.inventoryPricingStatus {
  text-overflow: ellipsis;
}

.inventoryRowActions {
  flex-wrap: wrap;
  gap: 8px;
}

.inventoryRowHead h3,
.inventoryRowHead .meta,
.pricingProductHeader #detailTitle,
.pricingProductHeader .meta {
  min-width: 0;
  overflow-wrap: anywhere;
}


@media (max-width: 760px) {
  .inventoryAssignPanel,
  .inventoryBulkAssignPanel {
    grid-template-columns: 1fr;
  }

  .priceStrip {
    grid-template-columns: 1fr;
  }
}


.pokemonPrintVariantRow {
  grid-template-columns: minmax(120px, 0.35fr) minmax(160px, 0.35fr) minmax(180px, 0.65fr);
}

.pokemonPrintVariantRow small {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.25;
}


@media (max-width: 760px) {
  .pokemonPrintVariantRow {
    grid-template-columns: 1fr;
  }
}


/* Low-skill daily mode: show the path, hide the machine room. */
body[data-workflow-mode="basic"] .advancedBasicSetting,
.draftPayloadPanel {
  display: none !important;
}

body[data-workflow-mode="basic"] .basicSettingsPanel {
  max-width: 760px;
}

body[data-workflow-mode="basic"] .basicSettingsPanel .grid.three {
  grid-template-columns: minmax(240px, 420px);
}

body[data-workflow-mode="basic"] .basicSettingsPanel .marketStatus {
  margin-bottom: 0;
}

body[data-workflow-mode="basic"] .basicAutomationPath {
  grid-template-columns: 0.82fr 1.18fr;
}

body[data-workflow-mode="basic"] .basicAutomationPath ol {
  columns: 2;
}

@media (max-width: 820px) {
  body[data-workflow-mode="basic"] .basicAutomationPath {
    grid-template-columns: 1fr;
  }

  body[data-workflow-mode="basic"] .basicAutomationPath ol {
    columns: 1;
  }
}


/* Rarity label readability: wrap at spaces, never through the middle of words. */
.batchRarityPanel .rarityChecklist,
.batchRarityPanel .compactRarityChecklist {
  grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
  gap: 10px;
}

.batchRarityPanel .rarityToggle {
  grid-template-columns: 24px minmax(0, 1fr);
  min-height: 48px;
  padding: 9px 12px !important;
}

.batchRarityPanel .rarityToggle span {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none;
  white-space: normal;
  line-height: 1.22;
  text-align: center;
}


@media (max-width: 760px) {
  .batchRarityPanel .rarityChecklist,
  .batchRarityPanel .compactRarityChecklist {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}


/* Guided daily workflow polish */
.workflowGuide {
  grid-template-columns: minmax(220px, 0.7fr) minmax(260px, 1fr) auto;
}

.workflowGuideActions {
  display: flex;
  justify-content: end;
  gap: 8px;
}

.workflowGuideActions button {
  min-width: 104px;
  white-space: nowrap;
}

.workflowGuideActions button:disabled {
  opacity: 0.55;
}

.tabButton.complete {
  border-color: color-mix(in srgb, var(--good) 52%, var(--line));
}

.tabButton.complete b {
  background: color-mix(in srgb, var(--good) 18%, var(--panel));
  color: var(--good);
}

body[data-workflow-mode="basic"] .workflowTabs {
  grid-template-columns: repeat(6, minmax(132px, 1fr));
}

body[data-workflow-mode="basic"] .workflowTabs .tabButton[data-tab="review"],
body[data-workflow-mode="basic"] .workflowTabs .tabButton[data-tab="sync"] {
  display: none;
}

body[data-workflow-mode="basic"] .basicAutomationPath {
  grid-template-columns: minmax(220px, 0.7fr) minmax(320px, 1fr);
}

body[data-workflow-mode="basic"] .basicAutomationPath ol {
  columns: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding-left: 0;
  list-style-position: inside;
}

body[data-workflow-mode="basic"] .basicAutomationPath li {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel) 78%, transparent);
  padding: 8px 10px;
}

@media (max-width: 980px) {
  .workflowGuide {
    grid-template-columns: 1fr;
  }

  .workflowGuideActions {
    justify-content: start;
  }

  body[data-workflow-mode="basic"] .workflowTabs,
  body[data-workflow-mode="basic"] .basicAutomationPath ol {
    grid-template-columns: 1fr;
  }
}

/* Setup tab should read like a guided page, not nested boxes inside boxes. */
.panel[data-panel="setup"] {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.panel[data-panel="setup"] > h2 {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 0 10px;
  border: 0;
  background: transparent;
}

.panel[data-panel="setup"] .basicAutomationPath {
  max-width: 1180px;
  margin: 0 auto 18px;
  padding: 0 0 16px;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
}

.panel[data-panel="setup"] .basicAutomationPath ol {
  padding-left: 18px;
}

body[data-workflow-mode="basic"] .panel[data-panel="setup"] .basicAutomationPath,
body[data-workflow-mode="advanced"] .panel[data-panel="setup"] .basicAutomationPath {
  border-color: var(--line);
  background: transparent;
}

body[data-workflow-mode="basic"] .panel[data-panel="setup"] .basicAutomationPath li {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.panel[data-panel="setup"] .basicSettingsPanel {
  max-width: 1180px;
  margin: 0 auto 18px;
}

/* Persistent workflow header */
.appHeader,
.topbar.appHeader {
  position: sticky;
  top: 0;
  z-index: 40;
  backdrop-filter: blur(14px);
}

.workflowTabs {
  position: sticky;
  top: var(--sticky-header-offset, 112px);
  z-index: 39;
  backdrop-filter: blur(14px);
}

.workflowGuide {
  position: sticky;
  top: var(--sticky-tabs-offset, 190px);
  z-index: 38;
  backdrop-filter: blur(14px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
}

body[data-guides-visible="no"] .workflowGuide {
  display: none !important;
}

body[data-guides-visible="no"] .basicAutomationPath {
  display: none !important;
}

.workflowTabs .tabButton.complete {
  border-bottom-color: transparent;
}

.workflowTabs .tabButton.complete:not(.active) {
  background: transparent;
}

@media (max-width: 980px) {
  .workflowTabs,
  .workflowGuide {
    position: static;
  }
}


/* Catalog search */
.catalogSearchControl {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 850;
}

.catalogSearchControl input {
  width: 100%;
  min-height: 42px;
  border-radius: 6px;
  border: 1px solid var(--line-strong);
  background: var(--field);
  color: var(--ink);
  padding: 0 12px;
  font: inherit;
}


button.dangerButton.confirmDanger,
.dangerButton.confirmDanger {
  background: color-mix(in srgb, var(--danger) 88%, #000 12%);
  border-color: color-mix(in srgb, var(--danger) 75%, var(--warn) 25%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--danger) 28%, transparent);
}

button.pricingConfirmArmed,
.pricingConfirmArmed {
  background: color-mix(in srgb, var(--warn) 82%, #000 18%);
  border-color: color-mix(in srgb, var(--warn) 68%, var(--line-strong) 32%);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--warn) 26%, transparent);
  color: #241500;
}

.toast.compactToast {
  width: min(260px, calc(100vw - 32px));
  min-height: 0;
  padding: 10px 12px;
  font-size: 0.82rem;
  line-height: 1.3;
  align-items: flex-start;
  bottom: 82px;
}

.toast.compactToast::before {
  width: 14px;
  height: 14px;
  margin-top: 2px;
  margin-right: 8px;
}


.pricingApprovalPanel {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}

.pricingApprovalActions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.pricingApprovalActions button {
  min-height: 40px;
}

.pricingDecisionItem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.pricingDecisionMain {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  box-shadow: none;
}

.pricingDecisionButtons {
  display: grid;
  grid-template-columns: minmax(54px, auto) minmax(130px, auto) minmax(86px, auto);
  gap: 8px;
  align-items: end;
}

.pricingDecisionButtons button {
  min-height: 34px;
  padding: 6px 12px;
}

.pricingOverridePanel {
  grid-column: 1 / -1;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.pricingOverridePanel summary {
  cursor: pointer;
  padding: 10px 12px;
  color: var(--text);
  font-weight: 800;
}

.pricingOverrideForm {
  display: grid;
  grid-template-columns: minmax(120px, 0.7fr) minmax(180px, 1fr) minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: end;
  padding: 0 12px 12px;
}

.pricingOverrideForm .marketStatus {
  grid-column: 1 / -1;
  margin: 0;
}

.compactCheck {
  align-self: stretch;
}

.pricingSkipControl {
  display: grid;
  gap: 3px;
  min-width: 130px;
  margin: 0;
  font-size: 0.68rem;
  color: var(--muted);
}

.pricingSkipControl select {
  min-height: 34px;
  padding: 6px 8px;
}

@media (max-width: 760px) {
  .pricingDecisionItem,
  .pricingDecisionMain,
  .pricingApprovalActions {
    grid-template-columns: 1fr;
  }

  .pricingDecisionButtons {
    grid-template-columns: 1fr;
  }

  .pricingOverrideForm {
    grid-template-columns: 1fr;
  }
}

.pricingProductHeaderTextOnly,
.pricingDecisionMain {
  grid-template-columns: minmax(0, 1fr) auto;
}

.pricingProductHeaderTextOnly {
  display: block;
}
/* Pricing automation desk */
.pricingDesk {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}

.adminPricingDesk {
  margin: 6px 0 16px;
}

.pricingRunPanel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: start;
  border: 1px solid color-mix(in srgb, var(--accent) 34%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--accent-soft) 26%, var(--panel));
  padding: 12px;
}

.pricingRunPanel h3 {
  margin-bottom: 5px;
  color: var(--ink);
  font-size: 0.94rem;
  font-weight: 900;
}

.pricingRunPanel p {
  color: var(--muted);
  font-size: 0.8rem;
  line-height: 1.42;
}

.pricingRunActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 250px;
}

.pricingRunActions .primaryButton,
.pricingRunActions .secondaryButton {
  min-height: 36px;
  white-space: nowrap;
}

.pricingRunPanel .compactNotice {
  grid-column: 1 / -1;
  margin: 0;
}

.pricingRunProgress {
  grid-column: 1 / -1;
  margin-top: 2px;
}

#pricingRunProgress {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pricingRunProgress span {
  overflow-wrap: anywhere;
}

.pricingRunProgress[data-state="running"] .progressTrack span {
  background: linear-gradient(90deg, var(--accent), var(--good));
}

.pricingRunProgress[data-state="warning"] .progressTrack span {
  background: var(--warn);
}

.pricingDeskIntro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.pricingDeskIntro h3 {
  display: block;
  margin-bottom: 5px;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.pricingDeskIntro p {
  max-width: 720px;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.pricingDeskSummary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.pricingDeskCard {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 12px;
}

.pricingDeskCard strong {
  display: block;
  color: var(--green);
  font-size: 1.35rem;
  line-height: 1.1;
}

.pricingDeskCard span,
.pricingDeskCard small {
  display: block;
  overflow-wrap: anywhere;
}

.pricingDeskCard span {
  margin-top: 5px;
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 900;
}

.pricingDeskCard small {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.syncStats strong,
.simulationStats strong,
.catalogProgress strong,
.buylistSummary strong,
.pricingMath strong,
.inventorySummary strong,
.marketQuoteStats strong,
.testListingStats strong,
.catalogAssetStatus strong,
.pricingDeskCard strong {
  display: inline-grid;
  min-width: 2.65rem;
  max-width: 100%;
  width: max-content;
  place-items: center;
  padding: 4px 8px;
  border: 1px solid var(--metric-border);
  border-radius: 6px;
  background: var(--metric-bg);
  color: var(--metric-ink);
  line-height: 1.1;
}

.pricingSearchRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.pricingDisclaimer {
  border: 1px solid color-mix(in srgb, var(--gold) 38%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--gold-soft) 38%, var(--panel));
  padding: 10px 12px;
}

.pricingDisclaimer strong {
  display: block;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 900;
}

.pricingDisclaimer p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.ownerMarketTuner {
  display: grid;
  gap: 12px;
  border: 1px solid color-mix(in srgb, var(--accent) 32%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 86%, var(--accent-soft) 14%);
  padding: 12px;
}

.ownerMarketTuner .miniHead {
  align-items: start;
}

.ownerMarketTuner .miniHead p {
  margin-top: 4px;
  max-width: 760px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.42;
}

.ownerMarketGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
  align-items: end;
}

.ownerMarketForm {
  display: grid;
  gap: 10px;
}

.ownerMarketForm textarea {
  min-height: 74px;
  resize: vertical;
}

.ownerMarketActions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.ownerMarketRecent {
  display: grid;
  gap: 8px;
}

.ownerMarketReference {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 9px 10px;
}

.ownerMarketReference strong,
.ownerMarketReference small {
  display: block;
  overflow-wrap: anywhere;
}

.ownerMarketReference small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.72rem;
}

.ownerMarketReference span {
  flex: 0 0 auto;
  color: var(--green);
  font-weight: 900;
}

.pricingExceptionList {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.pricingAlertControls {
  display: grid;
  grid-template-columns: minmax(150px, 0.8fr) minmax(190px, 1fr) minmax(220px, 1.2fr) auto;
  gap: 10px;
  align-items: end;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
}

.pricingAlertControls label {
  min-width: 0;
}

.pricingAlertControls select {
  width: 100%;
}

.pricingAlertPager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 220px;
}

.pricingAlertPager button {
  min-height: 36px;
  padding: 7px 12px;
}

.pricingAlertPager button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.pricingAlertPager span {
  min-width: 70px;
  text-align: center;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.pricingExceptionItem {
  width: 100%;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 9px;
  text-align: left;
  box-shadow: none;
}

.pricingExceptionItem:hover {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent-soft) 28%, var(--panel));
}

.pricingExceptionItem .inventoryThumb {
  width: 42px;
  min-height: 56px;
}

.pricingExceptionItem strong {
  display: block;
  overflow-wrap: anywhere;
  font-size: 0.84rem;
  line-height: 1.3;
}

.pricingExceptionItem small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.pricingSearchPrices {
  display: grid;
  justify-items: end;
  gap: 2px;
  min-width: 86px;
}

.pricingSearchPrices b {
  color: var(--green);
  font-size: 0.9rem;
}

.pricingExceptionItem em {
  justify-self: end;
  border-radius: 999px;
  background: var(--gold-soft);
  color: var(--gold);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 900;
  padding: 4px 8px;
  white-space: nowrap;
}

.compactEmpty {
  min-height: 0;
  padding: 10px;
  font-size: 0.8rem;
}

.queueBadge[data-status="success"] {
  background: var(--green-soft);
  color: var(--green);
}

.queueBadge[data-status="warning"] {
  background: var(--gold-soft);
  color: var(--gold);
}


@media (max-width: 760px) {
  .pricingRunPanel,
  .pricingDeskIntro,
  .ownerMarketActions,
  .pricingExceptionItem {
    grid-template-columns: 1fr;
  }

  .pricingRunActions {
    min-width: 0;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .pricingDeskIntro {
    display: grid;
  }

  .pricingExceptionItem em {
    justify-self: start;
  }

  .pricingAlertControls {
    justify-self: stretch;
  }

  .pricingAlertControls {
    grid-template-columns: 1fr;
  }

  .pricingAlertPager {
    justify-content: flex-start;
    min-width: 0;
  }
}

/* Pricing keeps product images out of the approval flow; catalog remains the visual lookup area. */
.adminPricingDesk .pricingDecisionMain {
  grid-template-columns: minmax(0, 1fr) auto;
}

.adminPricingDesk .pricingProductHeaderTextOnly {
  display: block;
  grid-template-columns: minmax(0, 1fr);
}
/* Inventory owns manual product entry now, so operators can stay in one stock workflow. */
.panel[data-panel="inventory"].active {
  display: flex;
  flex-direction: column;
}

.panel[data-panel="inventory"] .sectionHead {
  order: 0;
}

.panel[data-panel="inventory"] > section.inventoryConnectPanel {
  order: 1;
}

.panel[data-panel="inventory"] .inventoryPricingReviewDrawer {
  order: 2;
}

.panel[data-panel="inventory"] .inventorySummary {
  order: 3;
}

.panel[data-panel="inventory"] .inventoryAttentionBar {
  order: 4;
}

.panel[data-panel="inventory"] .inventoryPager {
  order: 5;
}

.panel[data-panel="inventory"] .inventoryEditorList {
  order: 6;
}

.panel[data-panel="inventory"] .inventoryManualEntry {
  order: 7;
}

.panel[data-panel="inventory"] .inventoryProfileCsvDrawer {
  order: 8;
}

.panel[data-panel="inventory"] > .compactPolicy {
  order: 9;
}

.inventoryConnectPanel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  margin: 0 16px 12px;
  padding: 12px 14px;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 86%, var(--accent) 14%);
}

details.inventoryConnectPanel {
  display: block;
}

details.inventoryConnectPanel > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  cursor: pointer;
  list-style: none;
}

details.inventoryConnectPanel > summary::-webkit-details-marker {
  display: none;
}

details.inventoryConnectPanel > summary span {
  color: var(--text);
  font-weight: 900;
}

details.inventoryConnectPanel > summary small {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
  text-align: right;
}

details.inventoryConnectPanel[open] > summary {
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.inventoryPricingReviewDrawer .pricingDesk {
  margin: 0;
}

.adminPricingUpdateSlot {
  display: block;
}

.adminPricingUpdateSlot .adminPricingUpdateDrawer {
  margin: 0 auto 14px;
  max-width: 940px;
}

.adminPricingUpdateSlot .pricingDesk {
  margin: 0;
}

.inventoryConnectPanel h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  color: var(--text);
}

.inventoryConnectPanel p {
  margin: 0;
  max-width: 76ch;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.35;
}

.inventoryConnectActions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: min(100%, 360px);
}

.inventoryConnectActions button {
  min-height: 36px;
}

.inventoryShowShopifyMismatch[data-status="warning"] {
  border-color: var(--warning);
  color: var(--warning);
  background: color-mix(in srgb, var(--panel-2) 74%, var(--warning) 26%);
}

.checkboxPill {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--panel-2) 88%, var(--accent) 12%);
  color: var(--text);
  font-weight: 700;
}

.checkboxPill input {
  width: 18px;
  height: 18px;
  margin: 0;
}

.inventoryConnectPanel .marketStatus {
  grid-column: 1 / -1;
  margin: 0;
}

.inventoryShopifyMismatchPanel {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-2) 90%, var(--warning) 10%);
}

.inventoryShopifyMismatchPanel .miniHead {
  align-items: start;
}

.inventoryShopifyMismatchPanel .miniHead h3 {
  margin: 0 0 4px;
}

.inventoryMismatchList {
  display: grid;
  gap: 8px;
}

.inventoryMismatchRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 12px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: color-mix(in srgb, var(--panel) 88%, var(--warning) 12%);
}

.inventoryMismatchRow strong,
.inventoryMismatchRow span,
.inventoryMismatchRow p {
  overflow-wrap: anywhere;
}

.inventoryMismatchRow strong {
  display: block;
  color: var(--text);
}

.inventoryMismatchRow span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.inventoryMismatchRow > span {
  align-self: start;
  color: var(--warning);
}

.inventoryMismatchRow p {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--text);
  font-size: 0.82rem;
}

.inventoryManualEntry {
  margin: 0 16px 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 92%, var(--accent) 8%);
  overflow: hidden;
}

.inventoryManualEntry > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
  border-bottom: 1px solid transparent;
}

.inventoryManualEntry[open] > summary {
  border-bottom-color: var(--line);
}

.inventoryManualEntry > summary::-webkit-details-marker {
  display: none;
}

.inventoryManualEntry > summary span {
  font-weight: 800;
  color: var(--text);
}

.inventoryManualEntry > summary small {
  color: var(--muted);
  font-size: 0.78rem;
  text-align: right;
}

.inventoryManualEntry > summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--accent-strong);
  background: var(--input-bg);
}

.inventoryManualEntry[open] > summary::after {
  content: "-";
}

.inventoryManualEntry > .marketStatus,
.inventoryManualEntry > form {
  margin: 12px 16px 16px;
}

.panel[data-panel="inventory"] .inventoryFilters,
.panel[data-panel="archive"] .inventoryFilters {
  grid-template-columns: minmax(220px, 320px) minmax(220px, 1fr);
}

.panel[data-panel="inventory"] .inventorySummary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 10px 0 12px;
}

.panel[data-panel="inventory"] .inventorySummary div {
  padding: 10px 12px;
}

.panel[data-panel="inventory"] .inventoryAttentionBar {
  grid-template-columns: repeat(6, max-content);
  margin-bottom: 10px;
}

.inventoryPolicyDisclosure {
  margin: 0 16px 14px;
  padding: 10px 12px;
}

.inventoryPolicyDisclosure summary {
  cursor: pointer;
  color: var(--text);
  font-weight: 850;
}

.inventoryPolicyDisclosure p {
  margin: 8px 0 0;
  color: var(--muted);
  line-height: 1.4;
}

.panel[data-panel="inventory"] .inventoryRow {
  padding: 14px;
}

.panel[data-panel="inventory"] .inventoryRowActions {
  justify-content: flex-end;
  gap: 8px;
}

.panel[data-panel="inventory"] .inventoryRowActions button {
  min-width: 84px;
}

.panel[data-panel="archive"].active {
  display: flex;
  flex-direction: column;
}

.panel[data-panel="archive"] .sectionHead {
  order: 0;
}

.panel[data-panel="archive"] .archiveNoticePanel {
  order: 1;
}

.panel[data-panel="archive"] .inventorySummary {
  order: 2;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 10px 0 12px;
}

.panel[data-panel="archive"] .inventoryPager {
  order: 3;
}

.panel[data-panel="archive"] .archiveInventoryList {
  order: 4;
}

.panel[data-panel="archive"] .inventoryRowActions {
  justify-content: flex-end;
}

.manualEntryProfileNote {
  display: grid;
  grid-template-columns: minmax(220px, 360px) 1fr;
  gap: 10px;
  align-items: end;
}

.manualEntryProfileNote label {
  min-width: 0;
}

.manualEntryProfileNote .marketStatus {
  margin: 0;
}

.manualIdentityFields[hidden] {
  display: none !important;
}

.inventoryManualEntry .listingSection {
  margin: 12px 0;
}

.manualVariantPriceGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.manualVariantPriceGrid label {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 8px;
}

.manualVariantPriceGrid input {
  margin-top: 5px;
  text-align: right;
  font-weight: 900;
}

.inventoryManualEntry .stageListingButton {
  width: 100%;
  margin-top: 12px;
}

@media (max-width: 900px) {
  .inventoryConnectPanel {
    grid-template-columns: 1fr;
  }

  .inventoryConnectActions {
    justify-content: flex-start;
    min-width: 0;
  }

  .inventoryManualEntry {
    margin-inline: 10px;
  }

  .manualEntryProfileNote {
    grid-template-columns: 1fr;
  }

  .inventoryManualEntry > summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .inventoryManualEntry > summary small {
    text-align: left;
  }

  .panel[data-panel="inventory"] .inventoryFilters,
  .panel[data-panel="archive"] .inventoryFilters,
  .panel[data-panel="inventory"] .inventorySummary,
  .panel[data-panel="archive"] .inventorySummary,
  .panel[data-panel="inventory"] .inventoryAttentionBar {
    grid-template-columns: 1fr;
  }
}

/* Catalog batch drawer: rarity exclusions and Pokemon print options belong together. */
.batchOptionGroup + .batchOptionGroup {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.batchOptionGroup h4 {
  margin: 0 0 8px;
  color: var(--ink);
  font-size: 0.82rem;
  font-weight: 800;
}

.batchOptionGroup .marketStatus {
  margin-top: 10px;
}

.pokemonBatchPrintGrid .checkRule.disabledOption {
  opacity: 0.55;
}

/* Pricing approval rows no longer reserve an image thumbnail column. */
.adminPricingDesk .pricingExceptionItem.pricingDecisionItem {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.adminPricingDesk .pricingDecisionMain {
  width: 100%;
  min-width: 0;
  justify-self: stretch;
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.adminPricingDesk .pricingDecisionMain span {
  min-width: 0;
}

.adminPricingDesk .pricingDecisionMain strong {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 760px) {
  .adminPricingDesk .pricingExceptionItem.pricingDecisionItem,
  .adminPricingDesk .pricingDecisionMain {
    grid-template-columns: 1fr !important;
  }
}

/* Pricing approvals show the before/after price without opening the detail drawer. */
.adminPricingDesk .pricingDecisionMain {
  grid-template-columns: minmax(220px, 1fr) minmax(250px, auto) auto !important;
}

.pricingDecisionCopy {
  display: block;
  min-width: 0;
}

.pricingMoveQuickRef {
  display: grid;
  grid-template-columns: repeat(2, minmax(74px, auto)) minmax(96px, auto) minmax(54px, auto);
  align-items: center;
  gap: 8px;
  justify-self: end;
  min-width: 0;
}

.pricingMoveQuickRef > span,
.priceConfidenceBadge {
  display: grid;
  gap: 2px;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--input-bg);
}

.pricingMoveQuickRef small,
.priceConfidenceBadge small {
  color: var(--muted);
  font-size: 0.62rem;
  text-transform: uppercase;
}

.pricingMoveQuickRef b,
.priceConfidenceBadge b {
  color: var(--ink);
  font-size: 0.82rem;
  white-space: nowrap;
}

.priceConfidenceBadge[data-confidence="high"],
.priceConfidenceBadge[data-confidence="strong"] {
  border-color: color-mix(in srgb, var(--good) 54%, var(--line));
  background: color-mix(in srgb, var(--good) 12%, var(--input-bg));
}

.priceConfidenceBadge[data-confidence="high"] b,
.priceConfidenceBadge[data-confidence="strong"] b {
  color: var(--good);
}

.priceConfidenceBadge[data-confidence="medium"] {
  border-color: color-mix(in srgb, var(--blue) 48%, var(--line));
  background: color-mix(in srgb, var(--blue-soft) 44%, var(--input-bg));
}

.priceConfidenceBadge[data-confidence="medium"] b {
  color: var(--blue);
}

.priceConfidenceBadge[data-confidence="thin"] {
  border-color: color-mix(in srgb, var(--gold) 56%, var(--line));
  background: color-mix(in srgb, var(--gold-soft) 48%, var(--input-bg));
}

.priceConfidenceBadge[data-confidence="thin"] b {
  color: var(--gold);
}

.priceConfidenceBadge[data-confidence="low"] {
  border-color: color-mix(in srgb, var(--danger) 46%, var(--line));
  background: color-mix(in srgb, var(--danger) 10%, var(--input-bg));
}

.priceConfidenceBadge[data-confidence="low"] b {
  color: var(--danger);
}

.inventoryConfidenceNote {
  display: grid;
  align-content: end;
}

.inventoryConfidenceNote .priceConfidenceBadge {
  min-height: 40px;
}

.pricingMoveQuickRef > em {
  justify-self: end;
  min-width: 48px;
  padding: 6px 8px;
  border-radius: 999px;
  font-style: normal;
  font-weight: 900;
  text-align: center;
  color: var(--ink);
  background: color-mix(in srgb, var(--panel-soft) 75%, var(--accent) 25%);
}

.pricingMoveQuickRef[data-tone="up"] > em,
.pricingSearchPrices[data-tone="up"] b {
  color: var(--green);
}

.pricingMoveQuickRef[data-tone="down"] > em,
.pricingSearchPrices[data-tone="down"] b {
  color: var(--warning);
}

.pricingMoveQuickRef[data-tone="same"] > em,
.pricingSearchPrices[data-tone="same"] b {
  color: var(--muted);
}

.pricingStatusLabel {
  white-space: nowrap;
}

/* Alerts rows stack their controls so titles, price chips, and skip buttons do not collide. */
.adminPricingDesk .pricingExceptionItem.pricingDecisionItem {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px;
  align-items: stretch;
  overflow: visible;
}

.adminPricingDesk .pricingDecisionMain {
  grid-template-columns: minmax(220px, 1fr) minmax(340px, auto) minmax(104px, auto) !important;
  gap: 12px;
  align-items: center;
}

.adminPricingDesk .pricingDecisionButtons {
  width: 100%;
  justify-content: end;
}

.adminPricingDesk .pricingMoveQuickRef {
  grid-template-columns: repeat(2, minmax(78px, auto)) minmax(118px, auto) minmax(54px, auto);
  justify-self: stretch;
}

@media (max-width: 980px) {
  .adminPricingDesk .pricingDecisionMain {
    grid-template-columns: 1fr !important;
  }

  .pricingMoveQuickRef {
    justify-self: stretch;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pricingMoveQuickRef > em {
    justify-self: stretch;
  }

  .pricingStatusLabel {
    justify-self: start;
  }
}

/* Batch rules are one grid: rarity exclusions and Pokemon print toggles live together. */
#batchRuleGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
  gap: 10px;
  margin-top: 10px;
}

#batchRarityExclusions,
#pokemonBatchPrintPanel {
  display: contents;
}

#pokemonBatchPrintPanel[hidden] {
  display: none !important;
}

.printRuleToggle {
  border-style: dashed !important;
}


.printRuleToggle.disabledOption {
  opacity: 0.55;
}

.batchOptionGroup,
.batchOptionGroup + .batchOptionGroup {
  margin: 0;
  padding: 0;
  border-top: 0;
}

.pricingApprovalFooter {
  display: flex;
  justify-content: flex-end;
  padding-top: 12px;
  margin-top: 12px;
  border-top: 1px solid var(--line);
}

.pricingApprovalFooter .secondaryButton {
  min-width: 180px;
}

.pricingApprovalFooter .secondaryButton:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

/* Pokemon variant rules are presented as exclusions, not a separate print category. */
.printRuleToggle span::before {
  content: "" !important;
}


.configuredLineDetail {
  display: block;
  padding: 0;
  overflow: hidden;
}

.configuredLineDetail summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  cursor: pointer;
  list-style: none;
  padding: 10px;
}

.configuredLineDetail summary::-webkit-details-marker {
  display: none;
}

.configuredLineDetail summary small,
.configuredLineDetail summary em {
  display: block;
  color: var(--muted);
  font-size: 0.74rem;
  font-style: normal;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.configuredLineBody {
  display: grid;
  gap: 10px;
  border-top: 1px solid var(--line);
  padding: 10px;
}

.configuredLineFacts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.configuredLineFacts span {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel);
  padding: 8px;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.configuredLineFacts b {
  display: block;
  margin-bottom: 3px;
  color: var(--ink);
  font-size: 0.72rem;
}

.configuredLineActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.configuredLineActions button {
  min-height: 36px;
}

@media (max-width: 760px) {
  .configuredLineFacts {
    grid-template-columns: 1fr;
  }
}

.toastMessage {
  min-width: 0;
  flex: 1 1 auto;
  overflow-wrap: anywhere;
}

.toastClear {
  flex: 0 0 auto;
  min-height: 30px;
  margin-left: 10px;
  padding: 0 10px;
  border-radius: 6px;
  border: 1px solid color-mix(in srgb, currentColor 32%, transparent);
  background: color-mix(in srgb, var(--field) 86%, transparent);
  color: inherit;
  font-size: 0.74rem;
  font-weight: 900;
  box-shadow: none;
}

.toastClear:hover {
  background: color-mix(in srgb, var(--accent) 22%, var(--field));
}

.toast.attention .toastClear {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.toast.compactToast .toastClear {
  min-height: 26px;
  padding-inline: 8px;
  font-size: 0.7rem;
}

/* QC pass: keep legal notes compact and prevent text/thumb overlap. */
.compactPolicy {
  margin: 10px 0 14px;
  padding: 8px 10px;
  border-radius: 6px;
  line-height: 1.45;
  font-size: 0.82rem;
}

.textOnlyThumb span,
.catalogQueueThumb small {
  display: block;
  max-width: 100%;
  padding: 0 4px;
  text-align: center;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.catalogQueueThumb img {
  background: var(--panel);
}

.catalogQueueInfo strong,
.catalogQueueInfo small,
.inventoryEditorList strong,
.inventoryEditorList small,
.buylistItems strong,
.buylistItems small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.productImageSection[hidden] {
  display: none !important;
}



#setupPricingRules[hidden],
#profileAutomationScope[hidden],
#profilePricingScope[hidden],
#catalogListingGenerationRules[hidden] {
  display: none !important;
}

.setupPricingRules {
  align-items: end;
}

.setupPricingRules > .checkRule {
  grid-column: 1 / -1;
  width: min(360px, 100%);
  min-height: 44px;
}

.setupPricingRules > label:not(.checkRule) {
  align-self: end;
}

.vsmDialogOverlay {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(0, 0, 0, 0.58);
}

.vsmDialog {
  width: min(460px, calc(100vw - 36px));
  max-height: min(620px, calc(100vh - 48px));
  display: grid;
  gap: 12px;
  border: 1px solid color-mix(in srgb, var(--gold) 46%, var(--line));
  border-radius: 8px;
  background: var(--panel);
  color: var(--ink);
  padding: 16px;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.46);
}

.vsmDialog h3 {
  margin: 0;
  font-size: 1rem;
}

.vsmDialogBody {
  max-height: 390px;
  overflow: auto;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.48;
}

.vsmDialogActions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
/* Header logo boot stability */
.topbar.appHeader {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(180px, 240px) minmax(260px, 1fr);
  align-items: center;
  column-gap: clamp(12px, 2vw, 24px);
  min-height: 104px;
}

.topbar.appHeader .brandBlock {
  grid-column: 1;
  justify-self: start;
  align-self: center;
}

.topbar.appHeader .storeLogoSlot {
  grid-column: 2;
  justify-self: center;
  align-self: center;
  width: min(240px, 18vw);
  min-width: 180px;
  height: 76px;
  max-width: 240px;
  padding: 8px 12px;
}

.topbar.appHeader .storeLogoSlot img {
  width: 100%;
  height: 100%;
  max-height: 60px;
  object-fit: contain;
}

.topbar.appHeader .operatorControls {
  grid-column: 3;
  justify-self: end;
  width: auto;
  max-width: min(100%, 410px);
  grid-template-columns: minmax(128px, 150px) 136px 116px;
}

.logoActions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
}

.logoActions button {
  width: 100%;
  min-width: 0;
}

@media (max-width: 1240px) {
  .topbar.appHeader {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .topbar.appHeader .brandBlock,
  .topbar.appHeader .storeLogoSlot,
  .topbar.appHeader .operatorControls {
    grid-column: 1;
  }

  .topbar.appHeader .storeLogoSlot {
    width: min(320px, 56vw);
    max-width: 320px;
    min-width: 0;
  }

  .topbar.appHeader .operatorControls {
    justify-self: stretch;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .topbar.appHeader .operatorControls,
  .logoActions {
    grid-template-columns: 1fr;
  }

  .topbar.appHeader .storeLogoSlot {
    width: 100%;
    max-width: none;
  }
}
.logoUploadGrid .logoActions {
  display: grid;
  grid-template-columns: 1fr;
  align-self: end;
}

.adminLockBar {
  max-width: 1180px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 0 auto 18px;
  border: 1px solid color-mix(in srgb, var(--gold) 42%, var(--line));
  border-radius: 6px;
  background: color-mix(in srgb, var(--gold-soft) 30%, var(--panel));
  padding: 12px;
}

.adminLockBar strong {
  display: block;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 800;
}

.adminLockBar p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.8rem;
  line-height: 1.4;
}

.adminLockActions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, auto));
  gap: 8px;
  align-items: center;
  justify-content: end;
}

.adminLockActions button {
  min-width: 170px;
  white-space: nowrap;
}

.adminLockHint {
  margin-top: 6px;
}

.adminLockHint b {
  color: var(--ink);
}

body[data-admin-panel-locked="yes"] .panel[data-panel="setup"] .basicSettingsPanel,
body[data-admin-panel-locked="yes"] .panel[data-panel="setup"] .compliancePanel,
body[data-admin-panel-locked="yes"] .panel[data-panel="setup"] .setupPanel {
  opacity: 0.72;
}

.adminUnlockedContent {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.adminUnlockedContent > .adminAcknowledgementPanel {
  order: 0;
}

.adminAcknowledgementPanel {
  border-color: color-mix(in srgb, var(--gold) 58%, var(--line));
}

.adminAcknowledgementBody {
  display: grid;
  gap: 10px;
  padding-top: 12px;
}

.adminAcknowledgementBody .policyNote {
  margin: 0;
}

.acknowledgementCheck {
  align-items: start;
  line-height: 1.35;
}

.adminAcknowledgementBody #adminAcceptAcknowledgement {
  justify-self: start;
}

.adminUnlockedContent > .basicAutomationPath {
  order: 1;
}

.adminUnlockedContent > .adminBrandingPanel {
  order: 2;
}

.adminBrandingPanel {
  overflow: hidden;
}

.adminBrandingPanel > summary {
  align-items: center;
}

.adminBrandingBody {
  display: grid;
  gap: 12px;
  padding-top: 12px;
}

.adminUnlockedContent > .adminShopifyConnectionPanel {
  order: 3;
}

.adminUnlockedContent > .adminPricingConnectionPanel {
  order: 4;
}

.adminUnlockedContent > .adminProductLinePanel {
  order: 5;
}

.adminUnlockedContent > .adminCustomLinePanel {
  order: 6;
}

.adminUnlockedContent > .adminCompliancePanel {
  order: 7;
}

.adminUnlockedContent > .adminBuylistConnectionPanel {
  order: 8;
}

body[data-admin-panel-locked="yes"] .adminUnlockedContent {
  display: none;
}

body[data-admin-panel-locked="no"] .adminLockBar {
  border-color: color-mix(in srgb, var(--good) 52%, var(--line));
  background: color-mix(in srgb, var(--good) 12%, var(--panel));
}

body[data-admin-workflow-ready="no"] .workflowTabs .tabButton:not([data-tab="setup"]),
body[data-admin-workflow-ready="no"] #exportShopify {
  display: none !important;
}

body[data-admin-workflow-ready="no"] .workflowTabs {
  grid-template-columns: minmax(220px, 1fr);
}

[data-theme="smcribs-dark"] .appHeader,
[data-theme="smcribs-dark"] .workflowTabs {
  border-color: #33250c;
  background: #0e0d0b;
}

[data-theme="smcribs-dark"] .brandBlock h1,
[data-theme="smcribs-dark"] .tabButton.active,
[data-theme="smcribs-dark"] .tabButton.active span,
[data-theme="smcribs-dark"] .tabButton.active small {
  color: #fff1b8;
}

[data-theme="smcribs-dark"] .brandBlock p,
[data-theme="smcribs-dark"] .operatorControls label,
[data-theme="smcribs-dark"] .palettePicker,
[data-theme="smcribs-dark"] .tabButton,
[data-theme="smcribs-dark"] .tabButton small {
  color: #d6be72;
}

[data-theme="smcribs-dark"] .tabButton b {
  background: #2a2110;
  color: #f2cf55;
}

[data-theme="smcribs-dark"] .tabButton.active {
  background: #2c210f;
}

[data-theme="smcribs-dark"] .tabButton.active b {
  background: #edc84f;
  color: #15110a;
}

[data-theme="smcribs-dark"] .storeLogoSlot {
  border-color: #483414;
  background: #16130d;
}

[data-theme="smcribs-dark"] .workflowGuide,
[data-theme="smcribs-dark"] .panel,
[data-theme="smcribs-dark"] .product,
[data-theme="smcribs-dark"] .inventoryRow,
[data-theme="smcribs-dark"] .syncPreviewCard,
[data-theme="smcribs-dark"] .catalogQueueRow,
[data-theme="smcribs-dark"] .buylistCard {
  color: #17120a;
}

.workflowTabs .tabButton {
  position: relative;
}

.workflowTabs .tabButton[data-tab="inventory"][data-alerts="available"] {
  border-bottom-color: var(--warn);
  background: color-mix(in srgb, var(--warn-soft) 56%, var(--panel) 44%);
  color: var(--ink);
}

.workflowTabs .tabButton[data-tab="inventory"][data-alerts="available"] b {
  background: var(--warn);
  color: color-mix(in srgb, var(--ink) 86%, #000 14%);
}

.tabAlertCount {
  position: absolute;
  top: 7px;
  right: 9px;
  min-width: 18px;
  min-height: 18px;
  border: 1px solid color-mix(in srgb, var(--warn) 70%, var(--line));
  border-radius: 999px;
  background: var(--warn);
  color: color-mix(in srgb, var(--ink) 88%, #000 12%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 0 0 2px var(--paper);
}

@media (max-width: 760px) {
  .adminLockBar {
    grid-template-columns: 1fr;
  }

  .adminLockBar button {
    width: 100%;
  }

  .adminLockActions {
    grid-template-columns: 1fr;
    justify-content: stretch;
  }
}

/* Catalog intake: clean stacked workflow. */
.catalog .batchPanel {
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: start;
  gap: 12px;
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
}

.catalog .batchPanel > * {
  grid-column: 1 / -1 !important;
  min-width: 0;
}

.catalog .catalogStockPanel,
.catalog .catalogQueuePanel,
.catalog .catalogBatchDrawer {
  width: 100%;
  max-width: none;
}

.catalog .catalogStockPanel {
  grid-column: 1 / -1 !important;
  align-content: start;
  align-self: start;
  gap: 10px;
  padding: 12px;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
}

.catalog .catalogStockPanel > .miniHead,
.catalog .catalogStockPanel > .marketStatus,
.catalog .catalogSecondaryCollectionsField {
  grid-column: 1 / -1;
}

.catalog .catalogStockEntryRow {
  grid-template-columns: minmax(150px, 1fr) 110px;
  width: 100%;
  max-width: none;
  gap: 8px;
}

.catalog .catalogStockCostGrid {
  grid-template-columns: repeat(2, minmax(140px, 1fr));
  width: 100%;
  max-width: none;
}

.catalog .catalogMsrpHoldGrid {
  grid-template-columns: minmax(150px, 0.7fr) minmax(140px, 1fr);
  width: 100%;
  max-width: none;
}

.catalog .catalogProductLimitGrid {
  grid-template-columns: minmax(170px, 0.8fr) minmax(120px, 0.55fr) minmax(190px, 1fr);
  width: 100%;
  max-width: none;
}

.catalog .catalogStockWeightGrid {
  grid-template-columns: minmax(140px, 1fr) 110px;
  width: 100%;
  max-width: none;
}

.catalog .conditionIntakeGrid,
.catalog .catalogStockCostGrid,
.catalog .catalogMsrpHoldGrid,
.catalog .catalogProductLimitGrid,
.catalog .catalogStockWeightGrid {
  grid-column: 1 / -1;
}

.catalog .catalogSecondaryCollectionsField {
  display: grid;
  gap: 5px;
  width: 100%;
}

.catalog .catalogSecondaryCollectionsField textarea {
  min-height: 70px;
  resize: vertical;
  width: 100%;
}

.catalog .catalogQueuePanel {
  grid-column: 1 / -1 !important;
  align-self: stretch;
  overflow: hidden;
  min-height: 0;
}

.catalog .catalogSearchControl,
.catalog .catalogSearchControl input,
.catalog .catalogQueueList {
  min-width: 0;
  width: 100%;
}

.catalog .catalogStockPanel .miniHead {
  display: flex;
  gap: 10px;
  margin-bottom: 0;
}

.catalog .catalogStockPanel .miniHead span {
  border-radius: 6px;
  white-space: normal;
}

.catalog .catalogStockPanel label {
  min-width: 0;
  font-size: 0.72rem;
}

.catalog .catalogStockPanel input,
.catalog .catalogStockPanel select {
  min-height: 36px;
  width: 100%;
}

.catalog .catalogStockPanel .marketStatus {
  margin: 0;
  padding: 8px;
  font-size: 0.72rem;
  line-height: 1.35;
}

@media (max-width: 900px) {
  .catalog .batchPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogStockPanel,
  .catalog .catalogQueuePanel {
    grid-column: 1 / -1 !important;
  }

  .catalog .catalogStockPanel {
    grid-template-columns: minmax(0, 1fr);
  }

  .catalog .catalogMsrpHoldGrid,
  .catalog .catalogProductLimitGrid,
  .catalog .catalogStockCostGrid,
  .catalog .catalogStockWeightGrid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Browser-style workflow shell: compact header, clear work order, no customer-facing Archive tab. */
body {
  background: var(--paper);
}

body::before {
  display: none;
}

.topbar.appHeader {
  position: sticky;
  top: 0;
  z-index: 30;
  display: grid;
  grid-template-columns: minmax(250px, 1fr) auto minmax(280px, 1fr);
  align-items: center;
  gap: 16px;
  min-height: 76px;
  padding: 12px 18px;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel) 96%, var(--paper));
  box-shadow: none;
}

.topbar.appHeader .brandBlock {
  align-self: center;
}

.topbar.appHeader .brandBlock h1 {
  font-size: clamp(1.05rem, 1.4vw, 1.32rem);
  line-height: 1.1;
}

.topbar.appHeader .brandBlock p {
  margin-top: 4px;
  max-width: 460px;
  font-size: 0.82rem;
  line-height: 1.3;
}

.topbar.appHeader .storeLogoSlot {
  width: clamp(180px, 18vw, 240px);
  height: 58px;
  min-height: 58px;
  border-radius: 8px;
  box-shadow: none;
}

.topbar.appHeader .storeLogoSlot img {
  max-width: calc(100% - 18px);
  max-height: 48px;
}

.topbar.appHeader .operatorControls {
  justify-self: end;
  display: grid;
  grid-template-columns: minmax(140px, 170px) minmax(150px, auto);
  gap: 8px;
  align-items: center;
}

.topbar.appHeader .operatorControls button,
.topbar.appHeader .operatorControls select {
  min-height: 38px;
}

.workflowTabs {
  position: sticky;
  top: var(--sticky-header-offset, 76px);
  z-index: 28;
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 0;
  padding: 0 18px;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel) 97%, var(--paper));
  box-shadow: none;
}

.workflowTabs .tabButton[hidden] {
  display: none !important;
}

.workflowTabs .tabButton {
  min-height: 58px;
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  box-shadow: none;
  transform: none;
}

.workflowTabs .tabButton:first-child {
  border-left: 1px solid var(--line);
}

.workflowTabs .tabButton:hover {
  background: color-mix(in srgb, var(--panel-soft) 72%, transparent);
  color: var(--ink);
  box-shadow: none;
  transform: none;
}

.workflowTabs .tabButton.active {
  border-bottom: 3px solid var(--accent);
  background: color-mix(in srgb, var(--accent-soft) 28%, var(--panel));
  color: var(--ink);
}

.workflowTabs .tabButton b {
  width: 24px;
  height: 24px;
  background: color-mix(in srgb, var(--panel-soft) 86%, var(--paper));
  color: var(--muted);
}

.workflowTabs .tabButton.active b {
  background: var(--accent);
  color: var(--button-ink, #fff);
}

.workflowTabs .tabButton span {
  font-size: 0.86rem;
}

.workflowTabs .tabButton small {
  font-size: 0.68rem;
}

.workflowGuide {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(320px, 1.3fr) auto;
  gap: 14px;
  align-items: center;
  padding: 10px 18px;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel-soft) 60%, var(--panel));
}

.workflowGuideMain {
  gap: 2px;
}

.workflowGuide strong {
  font-size: 0.92rem;
}

.workflowGuide p {
  justify-self: start;
  max-width: none;
  font-size: 0.78rem;
  line-height: 1.35;
}

.workflowGuideActions {
  justify-self: end;
  display: grid;
  grid-template-columns: repeat(2, minmax(108px, auto));
  gap: 8px;
}

.workflowGuideActions button {
  min-height: 36px;
}

.layout.workflowShell {
  width: min(1220px, calc(100vw - 36px));
  margin: 0 auto;
  padding: 18px 0 44px;
}

.panel {
  border-radius: 8px;
  box-shadow: none;
}

.panel > h2,
.sectionHead {
  min-height: 48px;
}

.panel > h2 {
  font-size: 1rem;
}

.basicAutomationPath {
  border-radius: 8px;
}

.basicAutomationPath ol {
  gap: 6px;
}

body[data-guides-visible="no"] .workflowGuide {
  display: none;
}

@media (max-width: 980px) {
  .topbar.appHeader {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .topbar.appHeader .storeLogoSlot,
  .topbar.appHeader .operatorControls {
    justify-self: stretch;
  }

  .topbar.appHeader .storeLogoSlot {
    width: 100%;
  }

  .topbar.appHeader .operatorControls {
    grid-template-columns: 1fr 1fr;
  }

  .workflowTabs {
    top: 0;
    position: relative;
    grid-template-columns: repeat(2, minmax(140px, 1fr));
    padding: 0;
  }

  .workflowGuide {
    grid-template-columns: 1fr;
  }

  .workflowGuideActions {
    justify-self: stretch;
  }
}

@media (max-width: 560px) {
  .workflowTabs {
    grid-template-columns: 1fr;
  }

  .workflowGuideActions,
  .topbar.appHeader .operatorControls {
    grid-template-columns: 1fr;
  }

  .layout.workflowShell {
    width: min(100vw - 20px, 1220px);
  }
}

/* Header pricing controls: compact run buttons with a small circular progress meter. */
.topbar.appHeader .operatorControls {
  grid-template-columns: minmax(230px, auto) minmax(132px, 160px) minmax(148px, auto);
}

.headerPricingControls {
  justify-self: end;
  display: grid;
  grid-template-columns: 44px minmax(158px, auto);
  gap: 8px;
  align-items: center;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 78%, var(--panel));
}

.headerPricingMeter {
  --pricing-progress: 0%;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, var(--panel) 56%, transparent 57%),
    conic-gradient(var(--accent) var(--pricing-progress), color-mix(in srgb, var(--line) 78%, transparent) 0);
  color: var(--ink);
  font-size: 0.62rem;
  font-weight: 900;
  line-height: 1;
}

.headerPricingMeter[data-state="running"] {
  background:
    radial-gradient(circle at center, var(--panel) 56%, transparent 57%),
    conic-gradient(var(--info) var(--pricing-progress), color-mix(in srgb, var(--line) 78%, transparent) 0);
}

.headerPricingMeter[data-state="warning"] {
  background:
    radial-gradient(circle at center, var(--panel) 56%, transparent 57%),
    conic-gradient(var(--warning) var(--pricing-progress), color-mix(in srgb, var(--line) 78%, transparent) 0);
}

.headerPricingMeter[data-state="complete"] {
  background:
    radial-gradient(circle at center, var(--panel) 56%, transparent 57%),
    conic-gradient(var(--success) var(--pricing-progress), color-mix(in srgb, var(--line) 78%, transparent) 0);
}

.headerPricingActions {
  display: grid;
  grid-template-columns: repeat(2, minmax(76px, 1fr));
  gap: 6px;
}

.headerPricingButton {
  min-height: 32px !important;
  padding: 6px 10px;
  font-size: 0.76rem;
  white-space: nowrap;
}

.pricingRunActions {
  justify-content: end;
}

@media (max-width: 1180px) {
  .topbar.appHeader .operatorControls {
    grid-template-columns: minmax(230px, auto) minmax(132px, 160px);
  }

  .topbar.appHeader .operatorControls #guideVisibilityToggle {
    grid-column: 1 / -1;
  }
}

@media (max-width: 980px) {
  .topbar.appHeader .operatorControls {
    grid-template-columns: 1fr 1fr;
  }

  .headerPricingControls {
    grid-column: 1 / -1;
    justify-self: stretch;
    grid-template-columns: 44px 1fr;
  }
}

/* Final header toolbar layout: keep pricing actions out of the theme/walkthrough controls. */
.topbar.appHeader {
  grid-template-columns: minmax(260px, 1fr) minmax(220px, 280px) minmax(320px, 1fr);
  grid-template-areas:
    "brand logo actions"
    "pricing pricing pricing";
  row-gap: 8px;
  min-height: auto;
  padding: 10px 14px 8px;
}

.topbar.appHeader .brandBlock {
  grid-area: brand;
}

.topbar.appHeader .storeLogoSlot {
  grid-area: logo;
  justify-self: center;
}

.topbar.appHeader .operatorControls {
  grid-area: actions;
  justify-self: end;
  display: grid;
  grid-template-columns: minmax(140px, 170px) minmax(150px, 170px);
  gap: 10px;
  align-items: center;
}

.headerPricingControls {
  grid-area: pricing;
  justify-self: stretch;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 6px 0 0;
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--line) 72%, transparent);
  border-radius: 0;
  background: transparent;
}

.headerPricingLabel {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

.headerPricingActions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.headerPricingButton {
  width: 132px;
  min-height: 34px !important;
  padding: 7px 12px;
  font-size: 0.74rem;
  line-height: 1.1;
}

.topbar.appHeader .operatorControls button,
.topbar.appHeader .operatorControls select {
  min-height: 38px;
}

@media (max-width: 1180px) {
  .topbar.appHeader {
    grid-template-columns: minmax(230px, 1fr) minmax(190px, 240px) minmax(250px, 1fr);
  }

  .topbar.appHeader .operatorControls {
    grid-template-columns: minmax(130px, 160px) minmax(140px, 160px);
  }

  .headerPricingButton {
    width: 120px;
  }
}

@media (max-width: 900px) {
  .topbar.appHeader {
    grid-template-columns: 1fr;
    grid-template-areas:
      "brand"
      "logo"
      "actions"
      "pricing";
  }

  .topbar.appHeader .brandBlock,
  .topbar.appHeader .storeLogoSlot,
  .topbar.appHeader .operatorControls,
  .headerPricingControls {
    justify-self: stretch;
  }

  .topbar.appHeader .operatorControls {
    grid-template-columns: 1fr 1fr;
  }

  .headerPricingControls {
    justify-content: stretch;
  }

  .headerPricingActions {
    flex: 1;
  }

  .headerPricingButton {
    flex: 1;
    width: auto;
  }
}

@media (max-width: 560px) {
  .topbar.appHeader .operatorControls,
  .headerPricingControls,
  .headerPricingActions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .headerPricingMeter {
    justify-self: start;
  }
}

/* Header action toolbar: pricing and Shopify sync share one browser-style strip. */
.headerPricingControls {
  justify-content: flex-end;
  gap: 14px;
}

.headerToolbarGroup {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 5px 8px;
  border: 1px solid color-mix(in srgb, var(--line) 74%, transparent);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 76%, var(--panel));
}

.headerShopifyGroup {
  background: color-mix(in srgb, var(--panel-soft) 60%, var(--paper));
}

.headerPricingGroup {
  align-items: flex-start;
}

.headerPricingGroup .headerPricingLabel {
  padding-top: 4px;
}

.headerPricingActions {
  display: flex;
  gap: 7px;
  align-items: center;
}

.headerPricingActionsStacked {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}

.headerEngineCard {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.headerPricingButtonRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.headerPricingButton {
  width: 112px;
  min-width: 112px;
  max-width: 112px;
  min-height: 32px !important;
  padding: 6px 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.headerPricingGroup .headerPricingButton {
  width: 100%;
  min-width: 0;
  max-width: none;
}

.headerShopifyGroup .headerPricingButton {
  width: 104px;
  min-width: 104px;
  max-width: 104px;
}

.headerEngineMeter {
  width: 42px;
  height: 42px;
  font-size: 0.58rem;
}

.headerEngineMeter[data-shape="pill"] {
  width: auto;
  min-width: 126px;
  height: 32px;
  padding: 0 10px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--line) 78%, var(--panel) 22%);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0;
  white-space: nowrap;
}

.headerEngineMeter[data-shape="pill"][data-state="complete"] {
  background: color-mix(in srgb, var(--good) 22%, var(--panel) 78%);
  color: var(--good);
}

.headerEngineMeter[data-shape="pill"][data-state="warning"] {
  background: color-mix(in srgb, var(--warning) 20%, var(--panel) 80%);
  color: var(--warning);
}

.headerEngineMeter[data-shape="pill"]::before {
  display: none;
}

.headerEngineStatus {
  display: block;
  min-width: 0;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.headerEngineStatus[data-state="running"] {
  color: var(--info);
}

.headerEngineStatus[data-state="warning"] {
  color: var(--warning);
}

.headerEngineStatus[data-state="complete"] {
  color: var(--good);
}

.inventoryConnectPanel .inventoryConnectActions:empty {
  display: none;
}

@media (max-width: 1180px) {
  .headerPricingControls {
    justify-content: stretch;
    flex-wrap: wrap;
  }

  .headerToolbarGroup {
    flex: 1 1 320px;
  }

  .headerPricingActions {
    flex: 1;
    justify-content: flex-end;
  }

  .headerPricingActionsStacked {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .headerToolbarGroup {
    display: grid;
    grid-template-columns: 70px 42px 1fr;
    width: 100%;
  }

  .headerShopifyGroup {
    grid-template-columns: 70px 1fr;
  }

  .headerPricingGroup {
    grid-template-columns: 70px 1fr;
  }

  .headerPricingButton,
  .headerShopifyGroup .headerPricingButton {
    width: auto;
    min-width: 0;
    max-width: none;
  }

  .headerPricingActionsStacked {
    grid-template-columns: 1fr;
  }

  .headerEngineMeter[data-shape="pill"] {
    min-width: 0;
  }
}

/* Duplicated body controls stay wired but are hidden after moving actions into the header. */
.hiddenWorkflowUtility {
  display: none !important;
}

.generalDisclaimerGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.generalDisclaimerGrid p {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid color-mix(in srgb, var(--warning) 46%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--warning) 10%, var(--panel-soft));
  color: var(--ink);
  font-size: 0.78rem;
  line-height: 1.45;
}

.generalDisclaimerGrid strong {
  color: var(--warning);
}

@media (max-width: 720px) {
  .generalDisclaimerGrid {
    grid-template-columns: 1fr;
  }
}

/* Admin proportion pass: tighter settings-page rhythm without touching behavior. */
.panel[data-panel="setup"] {
  --admin-content-width: 1040px;
  padding-top: 18px;
}

.panel[data-panel="setup"] > h2,
.panel[data-panel="setup"] .adminLockBar,
.panel[data-panel="setup"] .adminUnlockedContent,
.panel[data-panel="setup"] .basicAutomationPath,
.panel[data-panel="setup"] .basicSettingsPanel,
.panel[data-panel="setup"] .setupPanel,
.panel[data-panel="setup"] .compliancePanel {
  width: min(var(--admin-content-width), calc(100vw - 40px));
  max-width: var(--admin-content-width);
  margin-left: auto;
  margin-right: auto;
}

.panel[data-panel="setup"] > h2 {
  padding-bottom: 8px;
  font-size: 1rem;
}

.adminLockBar {
  gap: 14px;
  margin-bottom: 12px;
  padding: 12px 14px;
}

.adminLockBar p {
  margin-top: 3px;
}

.adminUnlockedContent {
  gap: 10px;
}

.panel[data-panel="setup"] .basicAutomationPath {
  display: grid;
  grid-template-columns: minmax(220px, 0.85fr) minmax(360px, 1.15fr);
  gap: 16px;
  align-items: start;
  margin-bottom: 10px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 62%, var(--panel));
}

.panel[data-panel="setup"] .basicAutomationPath p {
  margin-top: 4px;
}

.panel[data-panel="setup"] .basicAutomationPath ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 12px;
  margin: 0;
  padding-left: 18px;
}

.panel[data-panel="setup"] .basicAutomationPath li {
  line-height: 1.28;
}

.panel[data-panel="setup"] details.basicSettingsPanel,
.panel[data-panel="setup"] details.setupPanel,
.panel[data-panel="setup"] .basicSettingsPanel,
.panel[data-panel="setup"] .setupPanel,
.panel[data-panel="setup"] .compliancePanel {
  margin-top: 0;
  margin-bottom: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 86%, var(--panel-soft));
  overflow: hidden;
}

.panel[data-panel="setup"] details.basicSettingsPanel > summary,
.panel[data-panel="setup"] details.setupPanel > summary,
.panel[data-panel="setup"] .compliancePanel > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 42px;
  padding: 10px 14px;
  border-bottom: 1px solid color-mix(in srgb, var(--line) 68%, transparent);
  background: color-mix(in srgb, var(--panel-soft) 68%, var(--panel));
}

.panel[data-panel="setup"] details:not([open]) > summary {
  border-bottom: 0;
}

.panel[data-panel="setup"] .adminAcknowledgementBody,
.panel[data-panel="setup"] .adminBrandingBody,
.panel[data-panel="setup"] .shopifyCredentialForm,
.panel[data-panel="setup"] .pricingConnectionPanel > div,
.panel[data-panel="setup"] .programmedLinePicker,
.panel[data-panel="setup"] .customLineCreator > :not(summary),
.panel[data-panel="setup"] .compliancePanel > :not(summary) {
  padding: 12px 14px;
}

.panel[data-panel="setup"] .setupPanel {
  display: block;
}

.panel[data-panel="setup"] .setupPanel h3 {
  margin: 0 0 4px;
}

.panel[data-panel="setup"] .setupPanel p,
.panel[data-panel="setup"] .marketStatus,
.panel[data-panel="setup"] .policyNote {
  line-height: 1.35;
}

.generalDisclaimerGrid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 10px 0;
}

.generalDisclaimerGrid p {
  padding: 9px 10px;
  font-size: 0.72rem;
  line-height: 1.34;
}

.acknowledgementCheck {
  margin-top: 2px;
}

.adminAcknowledgementBody #adminAcceptAcknowledgement {
  min-height: 34px;
}

.adminBrandingBody {
  gap: 8px;
}

.panel[data-panel="setup"] .grid.compactGrid {
  gap: 10px;
}

.panel[data-panel="setup"] label {
  gap: 4px;
}

.panel[data-panel="setup"] input,
.panel[data-panel="setup"] select,
.panel[data-panel="setup"] textarea {
  min-height: 36px;
}

.panel[data-panel="setup"] textarea {
  min-height: 72px;
}

.programmedLinePicker {
  margin: 12px 14px 14px;
}

.programmedLineActions {
  padding: 8px 10px;
}

.programmedLineConnection div {
  padding: 8px 9px;
}

.programmedLineDefaultsOptions .checkRule {
  min-height: 38px;
}

@media (max-width: 980px) {
  .panel[data-panel="setup"] .basicAutomationPath,
  .generalDisclaimerGrid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .panel[data-panel="setup"] {
    --admin-content-width: calc(100vw - 20px);
  }

  .panel[data-panel="setup"] > h2,
  .panel[data-panel="setup"] .adminLockBar,
  .panel[data-panel="setup"] .adminUnlockedContent,
  .panel[data-panel="setup"] .basicAutomationPath,
  .panel[data-panel="setup"] .basicSettingsPanel,
  .panel[data-panel="setup"] .setupPanel,
  .panel[data-panel="setup"] .compliancePanel {
    width: min(var(--admin-content-width), calc(100vw - 20px));
  }

  .panel[data-panel="setup"] .basicAutomationPath,
  .panel[data-panel="setup"] .basicAutomationPath ol,
  .generalDisclaimerGrid {
    grid-template-columns: 1fr;
  }

  .adminLockActions {
    grid-template-columns: 1fr;
  }
}

/* Catalog workflow pass: compact daily add flow without changing control IDs. */
.panel.catalog {
  --catalog-content-width: 1180px;
  padding-top: 18px;
}

.panel.catalog > h2,
.panel.catalog .catalogWorkflowIntro,
.panel.catalog .batchPanel,
.panel.catalog .catalogSourceDisclosure {
  width: min(var(--catalog-content-width), calc(100vw - 40px));
  max-width: var(--catalog-content-width);
  margin-left: auto;
  margin-right: auto;
}

.panel.catalog > h2 {
  margin-bottom: 8px;
  font-size: 1rem;
}

.catalogWorkflowIntro {
  display: grid;
  grid-template-columns: minmax(180px, 0.35fr) minmax(360px, 1fr);
  gap: 12px;
  align-items: center;
  margin-bottom: 10px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 70%, var(--panel));
}

.catalogWorkflowIntro h3,
.catalogWorkflowIntro p {
  margin: 0;
}

.catalogWorkflowIntro p {
  color: var(--muted);
  line-height: 1.35;
}

.catalog .batchPanel {
  display: grid;
  grid-template-columns: minmax(290px, 340px) minmax(0, 1fr) !important;
  gap: 12px;
  align-items: start;
  max-width: var(--catalog-content-width);
}

.catalog .batchPanel > * {
  min-width: 0;
}

.catalog .batchPanel > .miniHead:first-child,
.catalog .catalogLaneBar,
.catalog .catalogDestinationPanel,
.catalog .catalogBatchDrawer {
  grid-column: 1 / -1 !important;
}

.catalog .batchPanel > .miniHead:first-child {
  margin: 0;
  padding: 0 2px;
}

.catalog .catalogLaneBar {
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 78%, var(--panel-soft));
}

.catalog .catalogDestinationPanel {
  padding: 12px;
  border-radius: 8px;
}

.catalog .catalogDestinationPanel .compactGrid {
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 10px;
}

.catalog .catalogDestinationPanel .checkRule {
  min-height: 40px;
}

.catalog .catalogDestinationPanel .compactNotice {
  margin-top: 8px;
  padding: 8px 10px;
}

.catalog .catalogStockPanel {
  grid-column: 1 / 2 !important;
  width: 100%;
  min-height: 0;
  padding: 12px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 84%, var(--panel-soft));
}

.catalog .catalogQueuePanel {
  grid-column: 2 / 3 !important;
  width: 100%;
  min-height: 420px;
  padding: 12px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel) 84%, var(--panel-soft));
}

.catalog .catalogStockPanel > .miniHead,
.catalog .catalogQueuePanel > .miniHead,
.catalog .catalogBatchDrawer .miniHead {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
}

.catalog .miniHead h3 {
  font-size: 0.92rem;
}

.catalog .miniHead span {
  max-width: 55%;
  padding: 4px 8px;
  border-radius: 6px;
  white-space: normal;
  text-align: right;
  line-height: 1.2;
}

.catalog .catalogStockEntryRow,
.catalog .catalogStockCostGrid,
.catalog .catalogMsrpHoldGrid,
.catalog .catalogProductLimitGrid,
.catalog .catalogStockWeightGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
  margin-bottom: 8px;
}

.catalog .catalogProductLimitGrid {
  grid-template-columns: minmax(0, 1fr) minmax(92px, 0.65fr);
}

.catalog .catalogProductLimitGrid label:last-child {
  grid-column: 1 / -1;
}

.catalog .catalogStockPanel label,
.catalog .catalogQueuePanel label,
.catalog .catalogBatchDrawer label {
  min-width: 0;
  gap: 4px;
  font-size: 0.72rem;
}

.catalog .catalogStockPanel input,
.catalog .catalogStockPanel select,
.catalog .catalogStockPanel textarea,
.catalog .catalogQueuePanel input,
.catalog .catalogBatchDrawer input,
.catalog .catalogBatchDrawer select {
  min-height: 34px;
  width: 100%;
}

.catalog .catalogSecondaryCollectionsField {
  display: grid;
  gap: 4px;
  margin-top: 2px;
}

.catalog .catalogSecondaryCollectionsField textarea {
  min-height: 58px;
  max-height: 120px;
}

.catalog .catalogStockPanel .marketStatus,
.catalog .catalogQueuePanel .marketStatus,
.catalog .catalogBatchDrawer .marketStatus {
  margin: 8px 0 0;
  padding: 8px 10px;
  font-size: 0.72rem;
  line-height: 1.35;
}

.catalog .catalogSearchControl {
  display: grid;
  gap: 5px;
  margin-bottom: 10px;
}

.catalog .catalogSearchControl input {
  min-height: 42px;
}

.catalog .catalogQueueList {
  max-height: min(58vh, 620px);
  min-height: 260px;
  overflow: auto;
  padding-right: 2px;
}

.catalog .catalogQueueRow {
  grid-template-columns: 58px minmax(0, 1fr) minmax(180px, 0.36fr);
  gap: 10px;
  min-height: 72px;
  border-width: 2px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--panel-soft) 74%, var(--panel));
}

.catalog .catalogQueueRow.staged {
  border-width: 3px;
  background: color-mix(in srgb, var(--success) 12%, var(--panel));
}

.catalog .catalogQueueRow.missing {
  border-color: color-mix(in srgb, var(--warning) 82%, var(--line));
}

.catalog .catalogQueueRow.archived {
  border-style: dashed;
  opacity: 0.92;
}

.catalog .catalogQueueRow em {
  align-self: center;
  text-align: right;
  line-height: 1.25;
}

.catalog .catalogBatchDrawer {
  border-radius: 8px;
  overflow: hidden;
}

.catalog .catalogBatchDrawer > summary {
  min-height: 42px;
  padding: 10px 12px;
}

.catalog .catalogBatchInner {
  padding: 12px;
}

.catalog .batchActionRow {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 10px;
}

.catalog .batchActionRow button {
  min-height: 36px;
}

@media (max-width: 980px) {
  .catalogWorkflowIntro,
  .catalog .batchPanel,
  .catalog .catalogLaneBar {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogStockPanel,
  .catalog .catalogQueuePanel {
    grid-column: 1 / -1 !important;
  }

  .catalog .catalogQueueList {
    max-height: none;
  }
}

@media (max-width: 640px) {
  .panel.catalog {
    --catalog-content-width: calc(100vw - 20px);
  }

  .panel.catalog > h2,
  .panel.catalog .catalogWorkflowIntro,
  .panel.catalog .batchPanel,
  .panel.catalog .catalogSourceDisclosure {
    width: min(var(--catalog-content-width), calc(100vw - 20px));
  }

  .catalog .catalogDestinationPanel .compactGrid,
  .catalog .catalogStockEntryRow,
  .catalog .catalogStockCostGrid,
  .catalog .catalogMsrpHoldGrid,
  .catalog .catalogProductLimitGrid,
  .catalog .catalogStockWeightGrid,
  .catalog .catalogQueueRow {
    grid-template-columns: minmax(0, 1fr);
  }

  .catalog .miniHead {
    align-items: flex-start;
  }

  .catalog .miniHead span,
  .catalog .catalogQueueRow em {
    max-width: none;
    text-align: left;
  }
}

/* Catalog polish: tighter proportions, no cut-off helper text, Buylist stays opt-in. */
.panel.catalog {
  --catalog-content-width: 1060px;
}

.panel.catalog .catalogWorkflowIntro,
.panel.catalog .batchPanel,
.panel.catalog .catalogSourceDisclosure {
  width: min(var(--catalog-content-width), calc(100vw - 48px));
}

.catalogWorkflowIntro {
  grid-template-columns: minmax(160px, 220px) minmax(0, 1fr);
  padding: 9px 12px;
}

.catalog .batchPanel {
  grid-template-columns: minmax(278px, 320px) minmax(0, 1fr) !important;
  gap: 10px;
}

.catalog .catalogLaneBar {
  grid-template-columns: minmax(250px, 340px) minmax(0, 1fr);
  gap: 10px;
  padding: 10px 12px;
}

.catalog #catalogLaneStatus,
.catalog .marketStatus,
.catalog .compactNotice {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  line-height: 1.35;
}

.catalog .catalogDestinationPanel {
  padding: 10px 12px;
}

.catalog .catalogDestinationPanel .compactGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.catalog .checkRule {
  min-width: 0;
}

.catalog .checkRule,
.catalog .miniHead span,
.catalog .catalogQueueRow em {
  overflow-wrap: anywhere;
}

.catalog .catalogStockPanel,
.catalog .catalogQueuePanel {
  padding: 10px 12px;
}

.catalog .catalogStockPanel {
  align-self: start;
}

.catalog .catalogQueuePanel {
  min-height: 300px;
}

.catalog .catalogStockEntryRow,
.catalog .catalogStockCostGrid,
.catalog .catalogMsrpHoldGrid,
.catalog .catalogProductLimitGrid,
.catalog .catalogStockWeightGrid {
  gap: 7px;
  margin-bottom: 7px;
}

.catalog .catalogProductLimitGrid {
  grid-template-columns: minmax(0, 1fr) minmax(86px, 0.65fr);
}

.catalog .catalogProductLimitGrid label:last-child {
  grid-column: 1 / -1;
}

.catalog .catalogStockPanel input,
.catalog .catalogStockPanel select,
.catalog .catalogStockPanel textarea,
.catalog .catalogQueuePanel input,
.catalog .catalogBatchDrawer input,
.catalog .catalogBatchDrawer select {
  min-height: 32px;
}

.catalog .catalogSearchControl input {
  min-height: 38px;
}

.catalog .catalogSecondaryCollectionsField textarea {
  min-height: 50px;
}

.catalog .catalogQueueList {
  min-height: 170px;
  max-height: min(46vh, 500px);
}

.catalog .catalogQueueList:empty {
  min-height: 150px;
  border: 1px dashed var(--line);
  border-radius: 8px;
}

.catalog .catalogQueueRow {
  grid-template-columns: 56px minmax(0, 1fr) minmax(150px, 0.32fr);
  gap: 9px;
  min-height: 68px;
}

.catalog .catalogBatchDrawer > summary {
  min-height: 38px;
  padding: 9px 12px;
}

.catalog .catalogBatchInner {
  padding: 10px 12px;
}

@media (max-width: 1120px) {
  .panel.catalog {
    --catalog-content-width: calc(100vw - 32px);
  }
}

@media (max-width: 760px) {
  .catalog .catalogDestinationPanel .compactGrid,
  .catalog .catalogProductLimitGrid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Catalog containment fix: all Catalog sections size to their parent, not the viewport. */
.panel.catalog {
  --catalog-content-width: 980px;
  overflow-x: clip;
}

.panel.catalog > h2,
.panel.catalog .catalogWorkflowIntro,
.panel.catalog .batchPanel,
.panel.catalog .catalogSourceDisclosure {
  width: 100% !important;
  max-width: min(var(--catalog-content-width), 100%) !important;
  margin-left: auto;
  margin-right: auto;
}

.catalogWorkflowIntro {
  grid-template-columns: minmax(130px, 190px) minmax(0, 1fr);
}

.catalog .batchPanel {
  grid-template-columns: minmax(250px, 290px) minmax(0, 1fr) !important;
}

.catalog .catalogLaneBar {
  grid-template-columns: minmax(230px, 320px) minmax(0, 1fr);
}

.catalog .catalogLaneBar,
.catalog .catalogDestinationPanel,
.catalog .catalogStockPanel,
.catalog .catalogQueuePanel,
.catalog .catalogBatchDrawer {
  max-width: 100%;
  overflow: hidden;
}

.catalog .batchPanel > .miniHead:first-child span,
.catalog .catalogStockPanel > .miniHead span,
.catalog .catalogQueuePanel > .miniHead span,
.catalog .catalogBatchDrawer .miniHead span {
  display: none;
}

.catalog .catalogStockPanel > .miniHead,
.catalog .catalogQueuePanel > .miniHead,
.catalog .catalogBatchDrawer .miniHead {
  justify-content: flex-start;
}

.catalog #catalogLaneStatus {
  min-width: 0;
  padding-right: 10px;
}

.catalog .catalogQueuePanel {
  min-height: 250px;
}

.catalog .catalogQueueList {
  min-height: 126px;
  max-height: min(42vh, 440px);
}

.catalog .catalogQueueList:empty {
  min-height: 124px;
}

.catalog .catalogSearchControl {
  margin-bottom: 8px;
}

.catalog .catalogStockPanel .marketStatus {
  font-size: 0.69rem;
}

@media (max-width: 1180px) {
  .panel.catalog {
    --catalog-content-width: 880px;
  }

  .catalog .batchPanel {
    grid-template-columns: minmax(230px, 280px) minmax(0, 1fr) !important;
  }
}

@media (max-width: 900px) {
  .panel.catalog {
    --catalog-content-width: 720px;
  }

  .catalogWorkflowIntro,
  .catalog .batchPanel,
  .catalog .catalogLaneBar {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogStockPanel,
  .catalog .catalogQueuePanel {
    grid-column: 1 / -1 !important;
  }
}

/* Catalog batch-count workflow. Keep this late so older Catalog layout rules cannot override it. */
.panel.catalog {
  --catalog-content-width: 1100px;
}

.catalogSearchActions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

.catalogSearchActions > span {
  overflow-wrap: anywhere;
}

.compactAction {
  min-height: 32px;
  padding: 0 10px;
}

.catalog .catalogQueuePanel,
.catalog .catalogSearchControl,
.catalog .catalogSearchControl input {
  min-width: 0;
  width: 100%;
}

.catalogBatchCountScreen[hidden] {
  display: none !important;
}

.panel.catalog .catalogBatchCountScreen {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  margin: 0 auto 18px !important;
  max-width: min(var(--catalog-content-width), 100%) !important;
  overflow: hidden;
  width: 100% !important;
}

/* Catalog + Buylist workflow polish. Keep this late so older compact rules cannot hide controls. */
.panel.catalog,
.panel[data-panel="buylist"] {
  --workflow-content-width: 1120px;
}

.panel.catalog > h2,
.panel.catalog > .workflowCopy,
.panel.catalog > #catalogMainPanel,
.panel.catalog > .catalogBatchCountScreen,
.panel.catalog > .catalogBuilderPanel,
.panel[data-panel="buylist"] > h2,
.panel[data-panel="buylist"] > .buylistComingSoonPanel,
.panel[data-panel="buylist"] > .buylistTermsPanel,
.panel[data-panel="buylist"] > .buylistSetupPanel,
.panel[data-panel="buylist"] > .buylistBatchBuilder,
.panel[data-panel="buylist"] > .buylistCatalogFilters,
.panel[data-panel="buylist"] > .buylistSummary,
.panel[data-panel="buylist"] > .buylistBulkDesiredPanel,
.panel[data-panel="buylist"] > .buylistPricingPanel,
.panel[data-panel="buylist"] > .buyQuotePanel,
.panel[data-panel="buylist"] > .buylistSubmissionPanel,
.panel[data-panel="buylist"] > .buylistItems {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: min(var(--workflow-content-width), calc(100vw - 32px)) !important;
  min-width: 0;
  width: 100% !important;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
  display: flex !important;
  flex: 1 1 auto;
  justify-content: flex-end;
  max-width: none !important;
  min-width: 0;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span,
.catalog .catalogQueuePanel > .miniHead .catalogSearchActions .compactAction {
  display: inline-flex !important;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  color: var(--blue);
  font-size: 0.72rem;
  font-weight: 850;
  line-height: 1.25;
}

.catalog .catalogLaneBar {
  grid-template-columns: minmax(240px, 340px) minmax(0, 1fr);
}

.catalog #catalogLaneStatus {
  overflow-wrap: anywhere;
  white-space: normal;
}

.catalog .catalogStockPanel,
.catalog .catalogQueuePanel {
  align-self: start;
}

.catalog .catalogQueuePanel {
  min-height: 420px;
}

.panel[data-panel="buylist"].active {
  display: grid;
  gap: 12px;
}

.tabPanel:not(.active),
.panel[data-panel="buylist"]:not(.active) {
  display: none !important;
}

.panel[data-panel="buylist"] > h2 {
  margin-bottom: 0 !important;
}

.buylistTermsPanel,
.buylistSetupPanel,
.buylistCatalogFilters,
.buylistBulkDesiredPanel,
.buylistPricingPanel,
.buyQuotePanel,
.buylistSubmissionPanel,
.buylistItems {
  border-radius: 8px !important;
  padding: 14px !important;
}

.buylistTermsPanel {
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: start;
}

.buylistTermsActions {
  align-items: center;
  display: grid !important;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.buylistTermsActions p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.buylistSetupPanel > .miniHead,
.buylistSubmissionPanel > .miniHead {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}

.buylistSetupPanel > .miniHead h3,
.buylistSubmissionPanel > .miniHead h3 {
  margin: 0;
}

.buylistSetupGrid,
.buylistCatalogFilters,
.buylistSummary {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
}

.buylistBulkDesiredPanel {
  grid-template-columns: minmax(220px, 1fr) minmax(130px, 180px) auto minmax(220px, 1fr) !important;
}

.buylistPricingPanel {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.buyQuotePanel {
  grid-template-columns: minmax(0, 1fr) !important;
}

.buylistSubmissionPanel .compactButton {
  min-height: 34px;
  white-space: nowrap;
}

.buylistSubmissionItem {
  align-items: center;
  gap: 10px;
  grid-template-columns: minmax(260px, 1fr) minmax(100px, 140px) minmax(100px, 140px) minmax(110px, auto) minmax(180px, auto) !important;
}

.buylistSubmissionLines,
.buylistSubmissionItem,
.buylistCatalogFilters label,
.buylistSetupGrid label,
.buylistBulkDesiredPanel,
.buyQuotePanel {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 980px) {
  .catalog .catalogLaneBar,
  .buylistTermsPanel,
  .buylistBulkDesiredPanel,
  .buylistPricingPanel,
  .buylistSubmissionItem {
    grid-template-columns: 1fr !important;
  }

  .buylistTermsActions {
    justify-content: flex-start;
  }
}

.catalogBatchCountHeader {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: grid !important;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  padding: 14px;
}

.catalogBatchCountHeader h3,
.catalogBatchCountHeader p {
  margin: 0;
}

.catalogBatchCountHeader p {
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.35;
}

.catalogBatchCountToolbar {
  align-items: end;
  display: grid !important;
  gap: 12px;
  grid-template-columns: minmax(220px, 340px) minmax(0, 1fr) !important;
  padding: 14px;
}

.catalogBatchCountToolbar label {
  display: grid;
  gap: 6px;
}

.catalogBatchCountToolbar .compactNotice {
  margin: 0;
}

.catalogBatchCountList {
  border-top: 1px solid var(--line);
  display: grid !important;
  gap: 10px;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  max-height: min(70vh, 720px);
  overflow: auto;
  padding: 14px;
}

.catalogBatchCountCard {
  background: var(--panel-2);
  border: 2px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 10px;
}

.catalogBatchCountCard.hasCount {
  background: color-mix(in srgb, var(--success) 12%, var(--panel-2));
  border-color: var(--success);
}

.catalogBatchCountIdentity {
  align-items: start;
  display: grid;
  gap: 8px;
  grid-template-columns: 58px minmax(0, 1fr);
  min-width: 0;
}

.catalogBatchCountIdentity strong,
.catalogBatchCountIdentity span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.catalogBatchCountIdentity span {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.3;
}

.catalogBatchCountThumb {
  align-items: center;
  aspect-ratio: 0.72;
  background: var(--input);
  border: 1px solid var(--line);
  border-radius: 6px;
  display: flex;
  justify-content: center;
  overflow: hidden;
  width: 52px;
}

.catalogBatchCountThumb img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.catalogBatchStepper {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: minmax(0, 1fr) 32px 44px 32px;
}

.catalogBatchStepper span {
  color: var(--muted);
  min-width: 0;
  overflow-wrap: anywhere;
}

.catalogBatchStepper button {
  min-height: 30px;
  padding: 0;
}

.catalogBatchStepper strong {
  background: var(--input);
  border: 1px solid var(--line);
  border-radius: 6px;
  min-height: 30px;
  padding: 5px 6px;
  text-align: center;
}

@media (max-width: 760px) {
  .catalogBatchCountHeader,
  .catalogBatchCountToolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .catalogBatchCountList {
    grid-template-columns: minmax(0, 1fr);
    max-height: none;
  }
}

/* VSM polish: keep compact setup controls readable without crowding. */
.programmedLineDefaultsOptions .checkRule,
.buylistSetupPanel .checkRule,
.catalogDestinationPanel .checkRule {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  min-width: 0;
}

.programmedLineDefaultsOptions .checkRule input,
.buylistSetupPanel .checkRule input,
.catalogDestinationPanel .checkRule input {
  flex: 0 0 auto;
  margin: 0 !important;
}

.programmedLineDefaultsOptions .checkRule {
  padding-inline: 12px;
}

.buylistConfigEnabledRow {
  display: none !important;
}

.buylistAutoDesiredControl {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-soft);
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
}

.buylistAutoDesiredControl p {
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.35;
  margin: 0;
}

.buylistSetupGrid {
  align-items: start;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
}

.buylistBulkOptionGrid {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
}

.buylistBulkOption {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) minmax(104px, 128px) !important;
}

.buylistBulkOption .bulkToggle {
  grid-template-columns: auto minmax(0, 1fr) !important;
}

.buylistBulkOption .bulkToggle strong {
  min-width: 0;
  overflow-wrap: anywhere;
}

.buylistBulkOption .bulkUnit {
  grid-column: 2 !important;
  margin-top: 2px;
}

.buylistBulkOption .bulkPrice {
  min-width: 0;
}

.buylistTermsPanel,
.buylistSetupPanel,
.buylistBulkDesiredPanel,
.buylistPricingPanel,
.buyQuotePanel,
.buylistSubmissionPanel,
.buylistItems {
  box-sizing: border-box;
  max-width: 100%;
}

/* Final alpha polish: Catalog and Buylist must stay compact, readable, and non-overlapping. */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

.panel.catalog,
.panel[data-panel="buylist"] {
  --workflow-content-width: 1040px;
}

.panel.catalog > h2,
.panel.catalog > .catalogWorkflowIntro,
.panel.catalog > #catalogMainPanel,
.panel.catalog > .catalogBatchCountScreen,
.panel[data-panel="buylist"] > h2,
.panel[data-panel="buylist"] > .buylistComingSoonPanel,
.panel[data-panel="buylist"] > .buylistTermsPanel,
.panel[data-panel="buylist"] > .buylistSetupPanel,
.panel[data-panel="buylist"] > .buylistCatalogTargetPanel,
.panel[data-panel="buylist"] > .buylistCatalogFilters,
.panel[data-panel="buylist"] > .buylistSummary,
.panel[data-panel="buylist"] > .buylistBulkDesiredPanel,
.panel[data-panel="buylist"] > .buylistPricingPanel,
.panel[data-panel="buylist"] > .buylistSubmissionPanel,
.panel[data-panel="buylist"] > .buylistItems {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  max-width: min(var(--workflow-content-width), calc(100vw - 32px));
  width: 100%;
}

#catalogMainPanel {
  align-items: start;
  display: grid !important;
  gap: 12px;
  grid-template-columns: minmax(230px, 320px) minmax(0, 1fr);
  overflow: hidden;
  padding: 12px;
}

#catalogMainPanel > .miniHead,
#catalogMainPanel > .catalogLaneBar,
#catalogMainPanel > .catalogDestinationPanel {
  grid-column: 1 / -1;
}

.catalog .catalogLaneBar {
  align-items: end;
  display: grid !important;
  gap: 10px;
  grid-template-columns: minmax(220px, 340px) minmax(0, 1fr) !important;
  margin: 0;
  min-width: 0;
}

.catalog .catalogLaneBar .marketStatus {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.catalogDestinationPanel {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.catalogDestinationPanel .miniHead {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.catalogDestinationPanel .compactGrid {
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.catalogDestinationPanel .marketStatus {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.catalog .catalogStockPanel {
  grid-column: 1;
  min-width: 0;
  position: sticky;
  top: 88px;
}

.catalog .catalogQueuePanel {
  grid-column: 2;
  min-height: 480px;
  min-width: 0;
  overflow: hidden;
}

.catalog .catalogQueuePanel > .miniHead {
  align-items: center;
  display: grid !important;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  background: var(--info-soft);
  border-radius: 6px;
  color: var(--info);
  display: inline-block;
  font-size: 0.74rem;
  line-height: 1.2;
  max-width: 260px;
  overflow-wrap: anywhere;
  padding: 6px 8px;
  white-space: normal;
}

.catalog .catalogSearchControl {
  display: grid;
  gap: 7px;
  margin: 8px 0 12px;
  min-width: 0;
}

.catalog .catalogQueueList {
  border: 1px solid var(--line);
  border-radius: 8px;
  box-sizing: border-box;
  display: grid;
  gap: 10px;
  max-height: min(62vh, 680px);
  min-height: 260px;
  overflow: auto;
  padding: 10px;
}

.catalog .catalogQueueRow {
  align-items: center;
  border-width: 2px !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: 58px minmax(0, 1fr) minmax(130px, 190px) !important;
  min-height: 76px;
  padding: 10px !important;
  text-align: left;
}

.catalog .catalogQueueRow .catalogQueueThumb,
.catalog .catalogQueueRow > span:first-child {
  align-self: center;
}

.catalog .catalogQueueInfo {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.catalog .catalogQueueInfo strong,
.catalog .catalogQueueInfo small,
.catalog .catalogQueueRow em {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal !important;
}

.catalog .catalogQueueRow em {
  align-self: center;
  font-size: 0.78rem;
  line-height: 1.25;
  text-align: right;
}

.panel.catalog .catalogBatchCountScreen {
  overflow: hidden;
}

.catalogBatchCountHeader,
.catalogBatchCountToolbar {
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  min-width: 0;
}

.catalogBatchCountToolbar .marketStatus {
  min-width: 0;
  overflow-wrap: anywhere;
}

.buylistTermsPanel {
  align-items: start;
  display: grid !important;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) !important;
}

.buylistTermsPanel p {
  max-width: none !important;
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.buylistTermsActions {
  align-items: center;
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
}

.buylistTermsActions p {
  flex: 1 1 420px;
  margin: 0;
}

.buylistCatalogTargetPanel {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.buylistCatalogTargetPanel .miniHead {
  align-items: end;
  display: grid !important;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) minmax(140px, 180px);
}

.buylistCatalogTargetPanel .miniHead p {
  color: var(--muted);
  margin: 3px 0 0;
}

.buylistCatalogTargetPanel .compactField,
.buylistCatalogSearchField {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.buylistCatalogSearchResults {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  max-height: 360px;
  min-height: 120px;
  overflow: auto;
  padding: 8px;
}

.buylistCatalogSearchRow {
  align-items: center;
  background: var(--panel-2);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--text);
  display: grid;
  gap: 10px;
  grid-template-columns: 68px minmax(0, 1fr) auto;
  min-height: 64px;
  padding: 8px;
  text-align: left;
}

.buylistCatalogSearchRow .catalogQueueThumb {
  width: 68px;
  height: 96px;
}

.buylistCatalogSearchRow strong,
.buylistCatalogSearchRow small,
.buylistCatalogSearchRow em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.buylistCatalogSearchRow small {
  color: var(--muted);
  font-size: 0.78rem;
}

.buylistCatalogSearchRow em {
  color: var(--info);
  font-size: 0.78rem;
  font-style: normal;
}

.buylistSetupPanel,
.buylistBulkConfig,
.buylistBulkDesiredPanel,
.buylistPricingPanel,
.buylistSubmissionPanel,
.buylistItems {
  overflow: hidden;
}

@media (max-width: 900px) {
  #catalogMainPanel {
    grid-template-columns: minmax(0, 1fr);
  }

  .catalog .catalogStockPanel,
  .catalog .catalogQueuePanel {
    grid-column: 1;
    position: static;
  }

  .catalog .catalogLaneBar,
  .catalogDestinationPanel .compactGrid,
  .buylistCatalogTargetPanel .miniHead {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogQueueRow {
    grid-template-columns: 52px minmax(0, 1fr) !important;
  }

  .catalog .catalogQueueRow em {
    grid-column: 1 / -1;
    text-align: left;
  }
}

/* Final workflow cleanup: keep active screens readable and prevent hidden panels from leaking. */
body .tabPanel:not(.active),
body .hiddenWorkflowUtility,
body .hiddenWorkflowUtility[hidden] {
  display: none !important;
  visibility: hidden !important;
}

body .tabPanel.active {
  display: block;
  visibility: visible;
}

body {
  overflow-x: hidden;
}

.content,
main.content {
  box-sizing: border-box;
  max-width: 100vw;
  overflow-x: hidden;
  padding-inline: clamp(12px, 2.2vw, 26px);
}

.panel {
  box-sizing: border-box;
  max-width: min(1040px, calc(100vw - 48px));
  overflow: visible;
}

.workflowCopy,
.catalogWorkflowIntro {
  align-items: center;
  box-sizing: border-box;
  display: grid !important;
  gap: 12px;
  grid-template-columns: minmax(160px, 240px) minmax(0, 1fr);
  max-width: min(1040px, calc(100vw - 48px));
  overflow: hidden;
  padding: 10px 12px;
}

.workflowCopy p,
.catalogWorkflowIntro p,
.marketStatus,
.compactNotice {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

#catalogMainPanel {
  box-sizing: border-box;
  gap: 14px !important;
  grid-template-columns: minmax(220px, 310px) minmax(0, 1fr) !important;
  max-width: min(1040px, calc(100vw - 48px));
  overflow: visible;
  padding: 12px !important;
}

#catalogMainPanel > .miniHead,
#catalogMainPanel > .catalogLaneBar,
#catalogMainPanel > .catalogDestinationPanel {
  grid-column: 1 / -1;
}

.catalog .miniHead {
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.catalog .miniHead h3,
.catalog .miniHead span,
.catalog .miniHead p,
.catalogLaneBar label,
.catalogLaneBar select,
#catalogLaneStatus {
  min-width: 0;
}

.catalog .catalogLaneBar {
  align-items: end;
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: minmax(220px, 340px) minmax(0, 1fr) !important;
}

#catalogLaneStatus {
  box-sizing: border-box;
  line-height: 1.35;
  max-height: none;
  padding: 8px 10px;
}

.catalogDestinationPanel {
  margin: 2px 0 8px !important;
  padding: 10px !important;
}

.catalogDestinationPanel .compactGrid {
  gap: 10px !important;
}

.catalogDestinationPanel .checkRule {
  align-items: center;
  min-height: 44px;
  padding: 10px 12px;
}

.catalog .catalogStockPanel {
  align-self: start;
  grid-column: 1;
  max-width: 310px;
  overflow: hidden;
  position: static !important;
}

.catalogStockPanel .miniHead {
  grid-template-columns: minmax(0, 1fr) auto;
}

.catalogStockPanel .grid,
.catalogStockPanel .compactGrid {
  display: grid !important;
  gap: 8px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.catalogStockPanel label,
.catalogStockPanel input,
.catalogStockPanel select,
.catalogStockPanel textarea {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
}

.catalogStockPanel .catalogProductLimitGrid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
}

.catalogStockPanel .catalogProductLimitGrid label:last-child {
  grid-column: 1 / -1;
}

.catalogSecondaryCollectionsField textarea {
  min-height: 58px;
  resize: vertical;
}

#catalogStockStatus {
  line-height: 1.25;
  margin: 8px 0 0;
  padding: 8px;
}

.catalog .catalogQueuePanel {
  align-self: stretch;
  grid-column: 2;
  min-height: 410px;
  overflow: hidden;
  padding: 14px !important;
}

.catalog .catalogQueuePanel > .miniHead {
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.catalog .catalogQueuePanel > .miniHead h3 {
  overflow-wrap: anywhere;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
  flex-wrap: nowrap;
  max-width: 100%;
}

.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  max-width: 240px;
  text-align: right;
}

.catalog .catalogSearchControl input {
  min-height: 44px;
}

.catalog .catalogQueueList {
  max-height: min(58vh, 600px);
  min-height: 230px;
  padding: 10px;
}

.catalog .catalogQueueRow {
  border-radius: 8px;
  grid-template-columns: 56px minmax(0, 1fr) minmax(122px, 170px) !important;
  min-height: 76px;
  outline: 1px solid color-mix(in srgb, var(--line) 78%, transparent);
}

.catalog .catalogQueueRow.isActive,
.catalog .catalogQueueRow[aria-pressed="true"] {
  background: color-mix(in srgb, var(--success-soft) 78%, var(--panel-2));
  border-color: var(--success) !important;
  outline: 2px solid var(--success);
}

.catalog .catalogQueueThumb,
.catalog .catalogQueueRow img {
  border-radius: 6px;
  height: 52px;
  object-fit: contain;
  width: 52px;
}

.catalog .catalogQueueInfo {
  gap: 3px;
}

.catalog .catalogQueueInfo strong {
  line-height: 1.2;
}

.catalog .catalogQueueInfo small {
  line-height: 1.25;
}

.catalog .catalogQueueRow em {
  font-size: 0.72rem;
  line-height: 1.2;
  text-align: right;
}

.panel.catalog .catalogBatchCountScreen {
  box-sizing: border-box;
  max-width: min(1040px, calc(100vw - 48px));
  padding: 12px;
}

.catalogBatchCountHeader {
  align-items: center;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
}

.catalogBatchCountHeader h3,
.catalogBatchCountHeader p {
  margin: 0;
}

.catalogBatchCountToolbar {
  align-items: end;
  gap: 10px;
  grid-template-columns: minmax(220px, 340px) minmax(0, 1fr) !important;
}

.catalogBatchCountList {
  display: grid;
  gap: 10px;
  max-height: min(66vh, 660px);
  overflow: auto;
  padding: 10px 0 0;
}

.catalogBatchCountCard {
  box-sizing: border-box;
  min-width: 0;
}

.buylistConfigEnabledRow {
  display: none !important;
}

.buylistTermsPanel,
.buylistSetupPanel,
.buylistCatalogTargetPanel,
.buylistCatalogFilters,
.buylistSummary,
.buylistSubmissionPanel,
.buylistItems {
  box-sizing: border-box;
  max-width: min(1040px, calc(100vw - 48px));
}

.buylistTermsPanel {
  grid-template-columns: minmax(0, 1fr) !important;
  padding: 14px !important;
}

.buylistTermsActions {
  align-items: center;
  display: grid !important;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.buylistTermsActions p {
  flex: unset;
  line-height: 1.4;
  min-width: 0;
}

.buylistSetupPanel {
  padding: 14px !important;
}

.buylistSetupGrid {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.buylistAutoDesiredControl,
.buylistSetupGrid label,
.buylistSetupGrid input,
.buylistSetupGrid select {
  min-width: 0;
}

.buylistAutoDesiredControl {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 10px;
}

.buylistAutoDesiredControl p {
  color: var(--muted);
  margin: 0;
}

.buylistConditionGrid,
.buylistBulkOptionGrid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.buylistBulkOptionGrid .checkRule,
.buylistConditionGrid .checkRule {
  align-items: center;
  min-height: 44px;
}

.buylistBulkDesiredPanel,
.buylistPricingPanel {
  display: none !important;
}

.buylistCatalogTargetPanel .miniHead {
  align-items: end;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 170px) !important;
}

.buylistCatalogSearchResults {
  min-height: 84px;
}

.buylistSubmissionPanel .miniHead {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

@media (max-width: 1180px) {
  #catalogMainPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogStockPanel,
  .catalog .catalogQueuePanel {
    grid-column: 1 / -1;
    max-width: none;
  }

  .catalog .catalogStockPanel {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalogStockPanel > .miniHead,
  .catalogStockPanel > #catalogStockGrid,
  .catalogStockPanel > #catalogStockStatus {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .workflowCopy,
  .catalogWorkflowIntro,
  .catalog .catalogLaneBar,
  .catalogBatchCountHeader,
  .catalogBatchCountToolbar,
  .buylistTermsActions,
  .buylistSetupGrid,
  .buylistConditionGrid,
  .buylistBulkOptionGrid,
  .buylistCatalogTargetPanel .miniHead {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogQueuePanel > .miniHead {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
    justify-content: start;
  }

  .catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
    max-width: none;
    text-align: left;
  }

  .catalog .catalogQueueRow {
    grid-template-columns: 52px minmax(0, 1fr) !important;
  }

  .catalog .catalogQueueRow em {
    grid-column: 1 / -1;
    text-align: left;
  }

  .catalog .catalogStockPanel {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Final flow polish: keep Catalog and Buylist compact, readable, and non-overlapping. */
.appHeader,
.topBar,
.workflowTabs,
.panel,
.tabPanel,
.catalog,
.buylist {
  min-width: 0;
}

.headerControls,
.pricingHeaderControls,
.shopifyHeaderControls {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

.pricingHeaderControls,
.shopifyHeaderControls {
  max-width: min(100%, 560px);
}

.pricingHeaderControls .compactAction,
.shopifyHeaderControls .compactAction,
.pricingHeaderControls button,
.shopifyHeaderControls button {
  min-height: 32px;
  min-width: 112px;
  padding-inline: 12px;
  white-space: nowrap;
}

.panel.catalog {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: min(1080px, calc(100vw - 40px));
  overflow: hidden;
}

.panel.catalog > .miniHead,
.panel[data-panel="buylist"] > .miniHead {
  padding: 14px 16px;
}

.catalogWorkflowIntro {
  align-items: center;
  gap: 12px;
  grid-template-columns: minmax(140px, 220px) minmax(0, 1fr) !important;
  padding: 10px 14px !important;
}

.catalogWorkflowIntro p {
  max-width: none;
  overflow-wrap: normal;
  text-wrap: balance;
}

#catalogMainPanel > .catalogLaneBar {
  gap: 12px;
  grid-template-columns: minmax(220px, 340px) minmax(0, 1fr) !important;
}

.catalog .catalogLaneBar .marketStatus {
  min-height: 40px;
  overflow-wrap: anywhere;
  white-space: normal;
}

.catalogDestinationGrid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.catalogDestinationGrid .checkRule {
  min-height: 44px;
}

#catalogMainPanel {
  align-items: start;
  gap: 12px;
  grid-template-columns: minmax(240px, 330px) minmax(0, 1fr) !important;
}

.catalog .catalogStockPanel,
.catalog .catalogQueuePanel {
  min-width: 0;
}

.catalog .catalogStockPanel {
  padding: 14px !important;
}

.catalogStockPanel .miniHead {
  align-items: center;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.catalogStockPanel .miniHead span,
.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  max-width: 260px;
  overflow-wrap: normal;
  text-align: right;
  white-space: normal;
}

.catalogStockPanel .grid,
.catalogStockPanel .compactGrid,
.catalogStockPanel .catalogProductLimitGrid {
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.catalogStockPanel label {
  gap: 5px;
}

.catalogStockPanel input,
.catalogStockPanel select,
.catalogStockPanel textarea,
.catalog .catalogQueuePanel input {
  min-height: 38px;
}

.catalogStockPanel textarea {
  min-height: 58px;
}

.catalog .catalogQueuePanel {
  overflow: hidden;
  padding: 14px !important;
}

.catalog .catalogQueuePanel > .miniHead {
  align-items: center;
  gap: 10px;
  grid-template-columns: minmax(180px, 1fr) auto !important;
}

.catalog .catalogSearchControl {
  gap: 8px;
}

.catalog .catalogSearchControl input {
  min-height: 42px;
}

.catalog .catalogQueueList {
  border-radius: 8px;
  max-height: min(54vh, 540px);
  min-height: 180px;
  overflow-x: hidden;
}

.catalog .catalogQueueRow {
  align-items: center;
  border: 2px solid color-mix(in srgb, var(--line) 78%, transparent) !important;
  gap: 10px;
  grid-template-columns: 58px minmax(0, 1fr) minmax(120px, 180px) !important;
  margin-bottom: 8px;
  padding: 10px !important;
}

.catalog .catalogQueueRow.isActive,
.catalog .catalogQueueRow[aria-pressed="true"] {
  border-width: 3px !important;
}

.catalog .catalogQueueInfo {
  min-width: 0;
}

.catalog .catalogQueueInfo strong,
.catalog .catalogQueueInfo small {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.catalog .catalogQueueRow em {
  justify-self: end;
  max-width: 180px;
  overflow-wrap: anywhere;
}

.panel.catalog .catalogBatchCountScreen {
  margin-inline: auto;
  max-width: min(1080px, calc(100vw - 40px));
  overflow: hidden;
}

.catalogBatchCountHeader {
  padding: 12px 14px;
}

.catalogBatchCountToolbar {
  padding: 12px 14px;
}

.catalogBatchCountToolbar .compactNotice {
  min-height: 40px;
  overflow-wrap: anywhere;
}

.catalogBatchCountList {
  padding: 12px 14px 16px;
}

.catalogBatchCountCard {
  border-radius: 8px;
  gap: 10px;
  padding: 10px !important;
}

.panel[data-panel="buylist"] {
  margin-inline: auto;
  max-width: min(1080px, calc(100vw - 40px));
}

.buylistTermsPanel,
.buylistSetupPanel,
.buylistCatalogTargetPanel,
.buylistCatalogFilters,
.buylistSummary,
.buylistSubmissionPanel,
.buylistItems {
  margin-inline: auto;
  max-width: min(1080px, calc(100vw - 40px));
}

.buylistTermsActions {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
}

.buylistTermsActions p {
  line-height: 1.45;
  overflow-wrap: normal;
  white-space: normal;
}

.buylistSetupPanel .checkRule,
.buylistBulkOption {
  gap: 10px;
  padding: 10px 12px;
}

.buylistBulkOptionGrid {
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.buylistBulkOption {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(80px, 110px) minmax(90px, 120px);
}

.buylistBulkOption .bulkToggle,
.buylistBulkOption .bulkUnit,
.buylistBulkOption .bulkPrice {
  min-width: 0;
}

@media (max-width: 1320px) {
  .appHeader {
    grid-template-columns: minmax(220px, 1fr) auto minmax(260px, 1fr) !important;
  }

  .pricingHeaderControls,
  .shopifyHeaderControls {
    max-width: 100%;
  }
}

@media (max-width: 1080px) {
  .appHeader {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .brandSlot,
  .headerControls {
    justify-content: center;
  }

  #catalogMainPanel,
  #catalogMainPanel > .catalogLaneBar,
  .catalogWorkflowIntro,
  .catalogDestinationGrid,
  .buylistSetupGrid,
  .buylistBulkOptionGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .catalog .catalogStockPanel,
  .catalog .catalogQueuePanel {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .panel.catalog,
  .panel[data-panel="buylist"],
  .buylistTermsPanel,
  .buylistSetupPanel,
  .buylistCatalogTargetPanel,
  .buylistCatalogFilters,
  .buylistSummary,
  .buylistSubmissionPanel,
  .buylistItems {
    max-width: calc(100vw - 20px);
  }

  .catalog .catalogQueueRow {
    grid-template-columns: 52px minmax(0, 1fr) !important;
  }

  .catalog .catalogQueueRow em {
    grid-column: 1 / -1;
    justify-self: start;
    max-width: none;
    text-align: left;
  }

  .buylistTermsActions,
  .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Store-facing polish pass: keep Catalog and Buylist compact, proportional, and non-overlapping. */
body .tabPanel:not(.active) {
  display: none !important;
}

body .workflowShell {
  grid-template-columns: minmax(0, 1120px);
  justify-content: center;
  padding-inline: 18px;
}

body .panel.catalog,
body .panel[data-panel="buylist"] {
  max-width: min(1120px, calc(100vw - 36px));
  overflow: visible;
}

body .catalogWorkflowIntro {
  display: grid;
  grid-template-columns: minmax(160px, 240px) minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  margin: 0;
  padding: 12px 16px;
}

body .catalogWorkflowIntro h3,
body .catalogWorkflowIntro p {
  margin: 0;
  min-width: 0;
}

body #catalogMainPanel {
  display: grid !important;
  grid-template-columns: minmax(260px, 330px) minmax(0, 1fr) !important;
  gap: 14px !important;
  max-width: 100% !important;
  overflow: visible !important;
  padding: 14px !important;
}

body #catalogMainPanel > .miniHead,
body #catalogMainPanel > .catalogLaneBar,
body #catalogMainPanel > .catalogDestinationPanel {
  grid-column: 1 / -1;
}

body #catalogMainPanel > .miniHead {
  display: grid;
  grid-template-columns: minmax(150px, auto) minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}

body #catalogMainPanel > .miniHead span,
body #catalogLaneStatus,
body .catalogDestinationPanel .marketStatus {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

body #catalogMainPanel > .catalogLaneBar {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) !important;
  gap: 12px;
  align-items: end;
}

body .catalogDestinationPanel {
  display: grid;
  gap: 10px;
}

body .catalogDestinationPanel .miniHead {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(150px, auto) minmax(0, 1fr);
  gap: 12px;
}

body .catalogDestinationPanel .miniHead span {
  justify-self: end;
  max-width: 360px;
  overflow-wrap: anywhere;
  text-align: right;
}

body .catalogDestinationPanel .compactGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .catalogDestinationPanel .checkRule {
  min-height: 42px;
}

body .catalog .catalogStockPanel {
  grid-column: 1;
  position: static !important;
  align-self: start;
  max-width: none;
  min-width: 0;
  overflow: visible;
  padding: 14px !important;
}

body .catalog .catalogStockPanel .miniHead {
  align-items: start;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  gap: 4px;
}

body .catalog .catalogStockPanel .miniHead span {
  justify-self: start;
  max-width: 100%;
  text-align: left;
}

body .catalogStockPanel .conditionIntakeGrid,
body .catalogStockPanel .compactGrid,
body .catalogStockPanel .catalogStockCostGrid,
body .catalogStockPanel .catalogStockWeightGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body .catalogStockPanel label,
body .catalogStockPanel .marketStatus {
  min-width: 0;
  overflow-wrap: anywhere;
}

body .catalogStockPanel input,
body .catalogStockPanel select,
body .catalogStockPanel textarea {
  width: 100%;
}

body .catalogStockPanel textarea {
  min-height: 64px;
}

body .catalogStockPanel [hidden] {
  display: none !important;
}

body .catalog .catalogQueuePanel {
  grid-column: 2;
  min-height: 430px;
  min-width: 0;
  overflow: hidden;
  padding: 14px !important;
}

body .catalog .catalogQueuePanel > .miniHead {
  align-items: center;
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) minmax(220px, auto) !important;
  gap: 12px;
}

body .catalog .catalogQueuePanel > .miniHead h3 {
  min-width: 0;
}

body .catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

body .catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  max-width: 240px;
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

body .catalog .catalogSearchControl {
  display: grid;
  gap: 8px;
  margin-top: 8px;
}

body .catalog .catalogQueueList {
  margin-top: 12px;
  max-height: min(56vh, 560px);
  min-height: 250px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 8px;
}

body .catalog .catalogQueueRow {
  align-items: center;
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) minmax(135px, 185px) !important;
  gap: 12px !important;
  min-height: 74px;
  padding: 10px !important;
}

body .catalog .catalogQueueThumb,
body .catalog .catalogThumb,
body .catalog img.catalogQueueThumb,
body .catalog img.catalogThumb {
  height: 54px;
  width: 42px;
  object-fit: contain;
}

body .catalog .catalogQueueInfo strong,
body .catalog .catalogQueueInfo small,
body .catalog .catalogQueueRow em {
  line-height: 1.25;
  min-width: 0;
  overflow-wrap: anywhere;
}

body .catalog .catalogQueueRow em {
  justify-self: end;
  text-align: right;
}

body .catalog .catalogBatchCountScreen {
  max-width: min(1120px, calc(100vw - 36px));
}

body .catalogBatchCountHeader,
body .catalogBatchCountToolbar {
  display: grid;
  gap: 12px;
  align-items: center;
}

body .catalogBatchCountHeader {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

body .catalogBatchCountToolbar {
  grid-template-columns: minmax(260px, 420px) minmax(0, 1fr);
}

body .catalogBatchCountList {
  display: grid;
  gap: 10px;
  max-height: 62vh;
  overflow-y: auto;
}

body .catalogBatchCountCard {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, auto);
  align-items: center;
}

body .catalogBatchCountIdentity {
  min-width: 0;
}

body .catalogBatchStepper {
  justify-self: end;
}

body .buylistCatalogTargetPanel,
body .buylistCatalogFilters,
body .buylistSummary,
body .buylistBulkDesiredPanel,
body .buylistPricingPanel,
body .buyQuotePanel,
body .buylistSubmissionPanel,
body .buylistItems,
body .buylistBatchBuilder {
  display: none !important;
}

body .panel[data-panel="buylist"] {
  display: none;
}

body .panel[data-panel="buylist"].active {
  display: grid !important;
  gap: 14px;
}

body .panel[data-panel="buylist"] > h2,
body .buylistTermsPanel,
body .buylistSetupPanel {
  max-width: min(1040px, calc(100vw - 36px)) !important;
  width: 100%;
}

body .buylistTermsPanel {
  display: grid !important;
  gap: 12px;
  padding: 14px;
}

body .buylistTermsPanel > div:first-child {
  display: grid;
  gap: 6px;
}

body .buylistTermsPanel h3,
body .buylistTermsPanel p {
  margin: 0;
}

body .buylistTermsActions {
  align-items: start;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 12px;
}

body .buylistTermsActions p {
  min-width: 0;
  overflow-wrap: anywhere;
}

body .buylistSetupPanel {
  display: grid !important;
  gap: 14px;
  padding: 14px;
}

body .buylistSetupGrid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .buylistConfigEnabledRow {
  display: none !important;
}

body .buylistConditionConfig,
body .buylistBulkConfig {
  display: grid;
  gap: 10px;
}

body .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .buylistBulkOption {
  align-items: center;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(70px, 90px) minmax(90px, 120px) !important;
  gap: 10px;
}

body .buylistBulkOption label,
body .buylistBulkOption span,
body .buylistSetupPanel label,
body .buylistSetupPanel p {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 980px) {
  body #catalogMainPanel,
  body #catalogMainPanel > .catalogLaneBar,
  body .catalogDestinationPanel .compactGrid,
  body .catalog .catalogQueuePanel > .miniHead,
  body .catalogBatchCountHeader,
  body .catalogBatchCountToolbar,
  body .buylistTermsActions,
  body .buylistSetupGrid,
  body .buylistBulkOptionGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalog .catalogStockPanel,
  body .catalog .catalogQueuePanel {
    grid-column: 1 / -1;
  }

  body .catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  body .workflowShell,
  body .panel.catalog,
  body .panel[data-panel="buylist"],
  body .panel[data-panel="buylist"] > h2,
  body .buylistTermsPanel,
  body .buylistSetupPanel {
    max-width: calc(100vw - 20px) !important;
    padding-inline: 10px;
  }

  body .catalog .catalogQueueRow,
  body .catalogBatchCountCard,
  body .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalog .catalogQueueRow em,
  body .catalogBatchStepper {
    justify-self: start;
    text-align: left;
  }
}

/* Final Catalog batch-count pass: keep card tiles compact and prevent vertical text collapse. */
body .catalogBatchCountScreen {
  max-width: min(1180px, calc(100vw - 32px)) !important;
}

body .catalogBatchCountHeader {
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  padding: 14px 16px !important;
}

body .catalogBatchCountToolbar {
  grid-template-columns: minmax(240px, 380px) minmax(0, 1fr) !important;
  padding: 14px 16px !important;
}

body .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  gap: 12px !important;
  padding: 14px !important;
  max-height: min(64vh, 680px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body .catalogBatchCountCard {
  align-items: stretch !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px !important;
  min-height: 0 !important;
  min-width: 0 !important;
  padding: 12px !important;
}

body .catalogBatchCountIdentity {
  align-items: center !important;
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 10px !important;
  min-width: 0 !important;
}

body .catalogBatchCountIdentity > div {
  min-width: 0 !important;
}

body .catalogBatchCountIdentity strong,
body .catalogBatchCountIdentity span {
  display: block !important;
  line-height: 1.25 !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
  word-break: normal !important;
}

body .catalogBatchCountThumb {
  height: 72px !important;
  width: 54px !important;
}

body .catalogBatchStepper {
  align-items: center !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 34px 46px 34px !important;
  gap: 8px !important;
  justify-self: stretch !important;
  min-width: 0 !important;
}

body .catalogBatchStepper span {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
}

body .catalogBatchStepper button,
body .catalogBatchStepper strong {
  min-height: 34px !important;
}

body .buylistSetupGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 12px !important;
}

body .buylistAutoDesiredControl {
  min-width: 0 !important;
}

@media (max-width: 900px) {
  body .catalogBatchCountHeader,
  body .catalogBatchCountToolbar {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalogBatchCountList {
    grid-template-columns: minmax(0, 1fr) !important;
    max-height: none !important;
  }
}

body .topbar.appHeader .reportBugButton {
  min-width: 104px;
}

body .bugReportOverlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(5, 3, 8, 0.72);
}

body .bugReportOverlay[hidden] {
  display: none;
}

body .authOverlay {
  position: fixed;
  inset: 0;
  z-index: 11000;
  display: grid;
  place-items: center;
  padding: 20px;
  background:
    linear-gradient(135deg, rgba(8, 16, 26, 0.9), rgba(22, 11, 9, 0.86)),
    rgba(4, 7, 12, 0.72);
  backdrop-filter: blur(8px);
}

body[data-auth-overlay] {
  overflow: hidden;
}

body .authOverlay[hidden] {
  display: none;
}

body .authCard {
  width: min(760px, calc(100vw - 32px));
  border: 1px solid var(--line-strong);
  border-radius: 16px;
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--accent-soft) 42%, transparent), transparent 55%),
    color-mix(in srgb, var(--panel) 96%, transparent);
  box-shadow: 0 28px 64px rgba(0, 0, 0, 0.42);
  padding: 20px;
}

body .authHeader {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

body .authHeader h2 {
  margin: 0 0 6px;
}

body .authHeader p {
  color: var(--muted);
  line-height: 1.45;
}

body .authPanel {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

body .authBootstrapGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body .authOverlay .marketStatus[data-status="error"] {
  color: var(--danger);
}

body .authOverlay .marketStatus[data-status="success"] {
  color: var(--good);
}

body .bugReportDialog {
  width: min(620px, calc(100vw - 32px));
  border: 1px solid var(--border-strong, #6f4d8a);
  border-radius: 8px;
  background: var(--panel, #241831);
  color: var(--text, #f7f2ff);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.42);
  padding: 18px;
}

body .bugReportHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--border, #49345f);
  margin-bottom: 16px;
  padding-bottom: 14px;
}

body .bugReportHeader h2 {
  margin: 0 0 6px;
  font-size: 1.15rem;
}

body .bugReportHeader p {
  margin: 0;
  color: var(--muted, #c6b7d8);
  line-height: 1.45;
}

body .bugReportDialog label {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  color: var(--muted, #c6b7d8);
  font-weight: 700;
}

body .bugReportDialog input,
body .bugReportDialog textarea {
  width: 100%;
  border: 1px solid var(--border, #49345f);
  border-radius: 6px;
  background: var(--field, #120a18);
  color: var(--text, #f7f2ff);
  padding: 10px 11px;
  font: inherit;
}

body .bugReportDialog textarea {
  resize: vertical;
  min-height: 130px;
}

body .bugReportActions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
}

body .bugReportActions .marketStatus {
  margin: 0;
}

@media (max-width: 720px) {
  .headerSessionBox,
  .backendReviewIntro,
  body .bugReportHeader,
  body .bugReportActions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .catalogReviewFilters,
  body .authBootstrapGrid {
    display: grid;
    grid-template-columns: 1fr;
  }

  body .bugReportHeader .secondaryButton,
  body .bugReportActions .primaryButton,
  body .authPanel .primaryButton {
    width: 100%;
  }
}

/* 2026-06-13 workflow polish: compact catalog, readable batch count, clean buylist/admin spacing. */
body .workflowShell,
body .panel.catalog,
body .panel[data-panel="buylist"],
body .panel[data-panel="setup"] {
  width: min(1180px, calc(100vw - 32px));
  max-width: min(1180px, calc(100vw - 32px));
  margin-inline: auto;
}

body .panel.catalog {
  overflow: visible;
}

body .panel.catalog > h2,
body .panel[data-panel="buylist"] > h2 {
  padding: 16px 18px;
}

body .panel.catalog .catalogWorkflowIntro,
body .catalogWorkflowIntro {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 10px 14px !important;
}

body .catalogWorkflowIntro p {
  margin: 0;
  min-width: 0;
  overflow-wrap: break-word;
}

body #catalogMainPanel {
  display: grid !important;
  gap: 14px !important;
  padding: 14px !important;
}

body .catalogLaneBar {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) !important;
  align-items: end !important;
  gap: 12px !important;
}

body .catalogLaneBar .marketStatus,
body .catalogLaneBar [aria-live],
body #catalogLaneSummary {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body .catalogDestinationPanel .compactGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body .catalogDestinationPanel .checkRule {
  min-height: 44px;
  padding: 11px 14px !important;
}

body .catalogDestinationPanel .compactNotice {
  margin-top: 10px;
  padding: 10px 12px;
}

body .catalogWorkGrid {
  display: grid !important;
  grid-template-columns: 310px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: stretch;
}

body .catalogStockPanel,
body .catalogQueuePanel {
  min-width: 0;
}

body .catalogStockPanel {
  padding: 14px !important;
}

body .catalogStockPanel .formGrid,
body .catalogStockGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .catalogStockPanel label,
body .catalogQueuePanel label,
body .buylistSetupPanel label,
body .programmedLineDefaultsOptions label {
  min-width: 0;
}

body .catalogStockPanel textarea {
  min-height: 76px;
}

body .catalogQueuePanel {
  padding: 14px !important;
}

body .catalogQueuePanel > .miniHead {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 10px !important;
  align-items: center !important;
}

body .catalogSearchInput,
body #catalogSearchInput {
  min-height: 42px;
}

body .catalogResults,
body #catalogResults {
  max-height: min(52vh, 560px);
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
}

body .catalog .catalogQueueRow,
body .catalogQueueRow {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) minmax(150px, auto) !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px 12px !important;
  border-width: 2px !important;
}

body .catalog .catalogQueueRow strong,
body .catalog .catalogQueueRow span,
body .catalog .catalogQueueRow em,
body .catalogQueueRow strong,
body .catalogQueueRow span,
body .catalogQueueRow em {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  white-space: normal !important;
  line-height: 1.25 !important;
}

body .catalog .catalogQueueRow em,
body .catalogQueueRow em {
  justify-self: end;
  text-align: right;
  font-style: normal;
}

body .catalogThumb,
body .catalogBatchCountThumb {
  border-radius: 4px;
  object-fit: contain;
  background: var(--field, #120a18);
}

body .catalogBatchCountScreen {
  width: min(1100px, calc(100vw - 32px)) !important;
  max-width: min(1100px, calc(100vw - 32px)) !important;
  margin-inline: auto !important;
}

body .catalogBatchCountHeader {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 16px !important;
}

body .catalogBatchCountHeader p {
  margin: 2px 0 0;
}

body .catalogBatchCountToolbar {
  display: grid !important;
  grid-template-columns: minmax(240px, 340px) minmax(0, 1fr) !important;
  align-items: end !important;
  gap: 12px !important;
  padding: 14px 16px !important;
}

body .catalogBatchCountToolbar .marketStatus {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
}

body .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 12px !important;
  padding: 14px !important;
  max-height: min(64vh, 680px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body .catalogBatchCountCard {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px !important;
  align-content: start !important;
  padding: 12px !important;
  min-width: 0 !important;
}

body .catalogBatchCountIdentity {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body .catalogBatchCountIdentity > div,
body .catalogBatchCountText {
  min-width: 0 !important;
}

body .catalogBatchCountIdentity strong,
body .catalogBatchCountIdentity span {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  white-space: normal !important;
  line-height: 1.25 !important;
}

body .catalogBatchCountThumb {
  width: 64px !important;
  height: 88px !important;
}

body .catalogBatchVariantControls {
  display: grid;
  gap: 8px;
}

body .catalogBatchVariantRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px 46px 34px;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border: 1px solid var(--border, #49345f);
  border-radius: 7px;
  background: color-mix(in srgb, var(--panel, #241831) 80%, var(--field, #120a18));
}

body .catalogBatchVariantRow.hasCount {
  border-color: var(--success, #57de8b);
  background: color-mix(in srgb, var(--success, #57de8b) 14%, var(--panel, #241831));
}

body .catalogBatchVariantLabel {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
  line-height: 1.25;
}

body .catalogBatchVariantRow button,
body .catalogBatchVariantRow strong {
  min-height: 34px;
}

body .catalogBatchVariantRow strong {
  display: grid;
  place-items: center;
  border: 1px solid var(--border, #49345f);
  border-radius: 6px;
  background: var(--field, #120a18);
}

body .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 14px !important;
}

body .buylistTermsPanel p,
body .buylistTermsPanel h3 {
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
}

body .buylistTermsActions {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

body .buylistConfigEnabledRow {
  display: none !important;
}

body .buylistSetupPanel {
  padding: 14px !important;
}

body .buylistSetupGrid,
body .buylistBulkOptionGrid,
body .programmedLineDefaultsOptions {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 12px !important;
}

body .buylistBulkOption,
body .programmedLineDefaultsOptions .checkRule,
body .compactCheck {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
  padding: 12px !important;
}

body .buylistBulkOption label,
body .buylistBulkOption span,
body .buylistSetupPanel label,
body .buylistSetupPanel p,
body .programmedLineDefaultsOptions .checkRule {
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

@media (max-width: 980px) {
  body .catalogLaneBar,
  body .catalogWorkGrid,
  body .catalogQueuePanel > .miniHead,
  body .catalogBatchCountHeader,
  body .catalogBatchCountToolbar,
  body .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalogQueuePanel > .miniHead .catalogSearchActions,
  body .buylistTermsActions {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  body .catalogDestinationPanel .compactGrid,
  body .catalogStockPanel .formGrid,
  body .catalogStockGrid,
  body .catalog .catalogQueueRow,
  body .catalogQueueRow,
  body .catalogBatchCountList {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalog .catalogQueueRow em,
  body .catalogQueueRow em {
    justify-self: start;
    text-align: left;
  }
}

/* 2026-06-13 final containment pass for catalog batch count and buylist setup. */
body .catalogBatchCountScreen {
  width: min(1180px, calc(100vw - 40px)) !important;
  max-width: min(1180px, calc(100vw - 40px)) !important;
}

body .catalogBatchCountToolbar {
  grid-template-columns: minmax(240px, 340px) minmax(140px, 180px) minmax(0, 1fr) !important;
  align-items: end !important;
}

body .catalogBatchCountToolbar label {
  min-width: 0 !important;
}

body .catalogBatchCountToolbar select {
  width: 100% !important;
}

body .catalogBatchCountList {
  grid-template-columns: repeat(auto-fit, minmax(410px, 1fr)) !important;
  align-items: start !important;
}

body .catalogBatchCountCard {
  min-height: 0 !important;
}

body .catalogBatchCountIdentity {
  grid-template-columns: 72px minmax(0, 1fr) !important;
}

body .catalogBatchCountThumb {
  width: 72px !important;
  height: 98px !important;
}

body .catalogBatchCountText strong,
body .catalogBatchCountText span,
body .catalogBatchVariantLabel {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

body .buylistTermsPanel {
  grid-template-columns: minmax(0, 1fr) max-content !important;
  align-items: start !important;
  width: min(1100px, calc(100vw - 40px)) !important;
  margin-inline: auto !important;
}

body .buylistTermsPanel > div:first-child {
  min-width: 0 !important;
}

body .buylistTermsPanel p {
  margin: 6px 0 0 !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

body .buylistTermsActions {
  min-width: max-content !important;
  align-self: start !important;
}

@media (max-width: 900px) {
  body .catalogBatchCountToolbar,
  body .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalogBatchCountList {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .buylistTermsActions {
    min-width: 0 !important;
    justify-content: flex-start !important;
  }
}

/* 2026-06-13 buylist/catalog containment override.
   Keep high-risk workflow panels readable even when the browser is narrow. */
body .panel,
body .catalogQueuePanel,
body .catalogBatchCountScreen,
body .buylistSetupPanel,
body .buylistTermsPanel {
  box-sizing: border-box !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

body .panel.catalog,
body .catalogQueuePanel,
body .catalogBatchCountScreen,
body .buylistSetupPanel,
body .buylistTermsPanel {
  width: min(1120px, calc(100vw - 48px)) !important;
  max-width: min(1120px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body .catalogLaneBar,
body .catalogLaneRow,
body .catalogDestinationPanel .compactGrid,
body .catalogWorkGrid,
body .catalogSearchLayout,
body .catalogBatchCountToolbar,
body .buylistSetupGrid,
body .buylistBulkOptionGrid,
body .programmedLineDefaultsOptions {
  display: grid !important;
  min-width: 0 !important;
  gap: 12px !important;
}

body .catalogLaneBar,
body .catalogLaneRow {
  grid-template-columns: minmax(260px, 380px) minmax(0, 1fr) !important;
  align-items: end !important;
}

body .catalogLaneStatus,
body .catalogHint,
body .catalogWorkflowCopy,
body .buylistConfigStatus,
body .buylistTermsPanel,
body .buylistTermsPanel * {
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.35 !important;
}

body .catalogDestinationPanel .compactGrid {
  grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
}

body .catalogWorkGrid {
  grid-template-columns: minmax(250px, 330px) minmax(0, 1fr) !important;
  align-items: start !important;
}

body .catalogSearchLayout {
  grid-template-columns: minmax(0, 1fr) !important;
}

body .catalogStockPanel {
  align-self: start !important;
}

body .catalogSearchResult,
body .catalogQueueRow {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) minmax(150px, auto) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 12px !important;
  min-width: 0 !important;
}

body .catalogSearchResult .catalogThumb,
body .catalogSearchResult img,
body .catalogQueueRow .catalogThumb,
body .catalogQueueRow img {
  width: 64px !important;
  height: 88px !important;
  object-fit: contain !important;
}

body .catalogSearchResult strong,
body .catalogSearchResult span,
body .catalogSearchResult em,
body .catalogQueueRow strong,
body .catalogQueueRow span,
body .catalogQueueRow em {
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  text-align: left !important;
}

body .catalogBatchCountHeader {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
}

body .catalogBatchCountToolbar {
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) !important;
  align-items: end !important;
}

body .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)) !important;
  gap: 12px !important;
  max-height: 62vh !important;
  overflow: auto !important;
  padding: 10px !important;
}

body .catalogBatchCountCard {
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 10px !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 12px !important;
}

body .catalogBatchCountIdentity {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
}

body .catalogBatchCountText {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

body .catalogBatchCountText strong,
body .catalogBatchCountText span,
body .catalogBatchVariantLabel {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

body .catalogBatchVariantControls {
  display: grid !important;
  gap: 8px !important;
}

body .catalogBatchVariantRow {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 36px 44px 36px !important;
  gap: 8px !important;
  align-items: center !important;
}

body .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 16px !important;
  padding: 16px !important;
}

body .buylistTermsPanel h3,
body .buylistTermsPanel p {
  display: block !important;
  max-width: 100% !important;
}

body .buylistTermsActions {
  display: flex !important;
  gap: 10px !important;
  justify-content: flex-end !important;
  align-items: center !important;
  min-width: max-content !important;
}

body #saveBuylistSettings,
body .buylistConfigEnabledRow {
  display: none !important;
}

@media (max-width: 860px) {
  body .catalogLaneBar,
  body .catalogLaneRow,
  body .catalogDestinationPanel .compactGrid,
  body .catalogWorkGrid,
  body .catalogBatchCountHeader,
  body .catalogBatchCountToolbar,
  body .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .catalogSearchResult,
  body .catalogQueueRow {
    grid-template-columns: 64px minmax(0, 1fr) !important;
  }

  body .catalogSearchResult em,
  body .catalogQueueRow em {
    grid-column: 2;
  }

  body .buylistTermsActions {
    justify-content: flex-start !important;
    min-width: 0 !important;
  }
}

/* 2026-06-13 buylist setup polish: final overrides after older layout patches. */
body .panel[data-panel="buylist"] > .buylistTermsPanel,
body .panel[data-panel="buylist"] > .buylistSetupPanel {
  width: min(1120px, calc(100vw - 48px)) !important;
  max-width: min(1120px, calc(100vw - 48px)) !important;
  margin: 16px auto !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 20px !important;
  align-items: start !important;
  padding: 18px !important;
}

body .buylistTermsPanel > div:first-child {
  min-width: 0 !important;
  max-width: 92ch !important;
}

body .buylistTermsPanel h3,
body .buylistTermsPanel p {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  line-height: 1.45 !important;
  margin: 0 0 10px !important;
}

body .buylistTermsPanel p:last-child {
  margin-bottom: 0 !important;
}

body .buylistSetupPanel {
  padding: 16px !important;
}

body .buylistSetupPanel > .miniHead {
  margin-bottom: 14px !important;
}

body .buylistSetupGrid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

body .buylistSetupGrid > label,
body .buylistAutoDesiredControl {
  min-height: 92px !important;
  box-sizing: border-box !important;
}

body .buylistSetupGrid input,
body .buylistSetupGrid select {
  width: 100% !important;
  min-height: 42px !important;
  box-sizing: border-box !important;
}

body .buylistConditionGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

body .buylistBulkOption {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 128px !important;
  gap: 12px !important;
  align-items: stretch !important;
  min-height: 98px !important;
  padding: 12px !important;
  box-sizing: border-box !important;
}

body .buylistBulkOption .bulkToggle {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: start !important;
  min-width: 0 !important;
}

body .buylistBulkOption .bulkText {
  display: grid !important;
  gap: 6px !important;
  min-width: 0 !important;
}

body .buylistBulkOption .bulkText strong,
body .buylistBulkOption .bulkUnit {
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  line-height: 1.25 !important;
}

body .buylistBulkOption .bulkPrice {
  display: grid !important;
  grid-template-rows: auto 42px !important;
  gap: 6px !important;
  width: 128px !important;
  min-width: 128px !important;
  align-self: stretch !important;
}

body .buylistBulkOption .bulkPrice small {
  white-space: nowrap !important;
  overflow: visible !important;
}

body .buylistBulkOption .bulkPrice input {
  width: 100% !important;
  min-height: 42px !important;
  text-align: right !important;
  box-sizing: border-box !important;
}

body #saveBuylistSettings,
body .buylistConfigEnabledRow {
  display: none !important;
}

@media (max-width: 1040px) {
  body .buylistBulkOptionGrid,
  body .buylistSetupGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  body .panel[data-panel="buylist"] > .buylistTermsPanel,
  body .panel[data-panel="buylist"] > .buylistSetupPanel {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }

  body .buylistTermsPanel,
  body .buylistSetupGrid,
  body .buylistConditionGrid,
  body .buylistBulkOptionGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .buylistBulkOption .bulkPrice {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* 2026-06-13 buylist hard polish: keep setup readable at demo widths. */
body .panel[data-panel="buylist"] {
  overflow-x: hidden !important;
}

body .buylistTermsPanel,
body .buylistSetupPanel {
  border-radius: 8px !important;
}

body .buylistTermsPanel {
  grid-template-columns: minmax(0, 1fr) minmax(220px, auto) !important;
  min-height: auto !important;
}

body .buylistTermsPanel > div:first-child {
  max-width: none !important;
  width: 100% !important;
}

body .buylistTermsPanel h3,
body .buylistTermsPanel p,
body .buylistTermsPanel strong,
body .buylistTermsPanel span {
  overflow-wrap: break-word !important;
  word-break: normal !important;
  writing-mode: horizontal-tb !important;
}

body .buylistTermsActions {
  align-self: center !important;
}

body .buylistSetupGrid {
  grid-template-columns: repeat(3, minmax(220px, 1fr)) !important;
}

body .buylistSetupGrid > label,
body .buylistAutoDesiredControl {
  min-height: 84px !important;
  padding: 12px !important;
}

body .buylistBulkOptionGrid {
  grid-template-columns: repeat(2, minmax(360px, 1fr)) !important;
  align-items: stretch !important;
}

body .buylistBulkOption {
  grid-template-columns: minmax(0, 1fr) 150px !important;
  min-height: 96px !important;
  align-items: center !important;
  overflow: hidden !important;
}

body .buylistBulkOption .bulkPrice {
  width: 150px !important;
  min-width: 150px !important;
}

body .buylistBulkOption .bulkPrice input {
  height: 44px !important;
}

body .buylistBulkOption .bulkText strong {
  font-size: 0.92rem !important;
}

body .buylistBulkOption .bulkUnit {
  color: var(--muted) !important;
}

@media (max-width: 900px) {
  body .buylistTermsPanel,
  body .buylistSetupGrid,
  body .buylistBulkOptionGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .buylistTermsActions {
    justify-content: flex-start !important;
  }
}

/* 2026-06-13 final buylist setup containment pass. */
body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
  grid-template-columns: repeat(2, minmax(340px, 1fr)) !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption {
  width: 100% !important;
  max-width: 100% !important;
  grid-template-columns: minmax(0, 1fr) 148px !important;
  gap: 14px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice {
  width: 148px !important;
  min-width: 148px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice input {
  width: 148px !important;
}

@media (max-width: 980px) {
  body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="buylist"] .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) 148px !important;
  }
}

@media (max-width: 640px) {
  body .panel[data-panel="buylist"] .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice,
  body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice input {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* 2026-06-13 buylist bulk option proportion lock. Keep this last. */
body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(380px, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  gap: 14px !important;
  align-items: center !important;
  min-height: 96px !important;
  padding: 14px 16px !important;
  overflow: visible !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkToggle {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkText {
  display: grid !important;
  gap: 5px !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkText strong {
  display: block !important;
  line-height: 1.22 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkUnit {
  display: block !important;
  grid-column: auto !important;
  line-height: 1.2 !important;
  color: var(--muted) !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-rows: auto 44px !important;
  gap: 6px !important;
  width: 150px !important;
  min-width: 150px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice small {
  white-space: nowrap !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice input {
  box-sizing: border-box !important;
  width: 150px !important;
  height: 44px !important;
  min-height: 44px !important;
  text-align: right !important;
}

@media (max-width: 1180px) {
  body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 640px) {
  body .panel[data-panel="buylist"] .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice,
  body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice input {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* 2026-06-13 final VSM containment pass: prevent Catalog/Buylist text collapse and sideways overflow. */
body .panel[data-panel="catalog"],
body .panel[data-panel="buylist"],
body .panel[data-panel="inventory"] {
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] .panel,
body .panel[data-panel="catalog"] .catalogWorkflow,
body .panel[data-panel="catalog"] .catalogSingleProductGrid,
body .panel[data-panel="catalog"] .catalogSearchPanel,
body .panel[data-panel="catalog"] .catalogBatchCountPanel,
body .panel[data-panel="catalog"] .catalogBatchCountList,
body .panel[data-panel="catalog"] .catalogLaneSummary,
body .panel[data-panel="catalog"] .catalogStatusNote,
body .panel[data-panel="catalog"] .catalogVisualCard,
body .panel[data-panel="catalog"] .visualInfo,
body .panel[data-panel="buylist"] .buylistTermsPanel,
body .panel[data-panel="buylist"] .buylistSetupPanel,
body .panel[data-panel="inventory"] .inventoryRow {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogWorkflow,
body .panel[data-panel="catalog"] .catalogLaneSummary,
body .panel[data-panel="catalog"] .catalogStatusNote {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  white-space: normal !important;
}

body .panel[data-panel="catalog"] .catalogSingleProductGrid {
  display: grid !important;
  grid-template-columns: minmax(240px, 320px) minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
}

body .panel[data-panel="catalog"] .catalogSearchPanel {
  overflow: hidden !important;
}

body .panel[data-panel="catalog"] .catalogSearchResults,
body .panel[data-panel="catalog"] #catalogVisualPicker {
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 82px !important;
  padding: 10px 12px !important;
  text-align: left !important;
}

body .panel[data-panel="catalog"] .visualInfo,
body .panel[data-panel="catalog"] .catalogBatchCountText,
body .panel[data-panel="inventory"] .inventoryRowHead > div {
  display: grid !important;
  gap: 3px !important;
  min-width: 0 !important;
  white-space: normal !important;
  writing-mode: horizontal-tb !important;
}

body .panel[data-panel="catalog"] .visualInfo strong,
body .panel[data-panel="catalog"] .visualInfo small,
body .panel[data-panel="catalog"] .visualInfo em,
body .panel[data-panel="catalog"] .catalogBatchCountText strong,
body .panel[data-panel="catalog"] .catalogBatchCountText span,
body .panel[data-panel="inventory"] .inventoryRow h3,
body .panel[data-panel="inventory"] .inventoryRow .meta {
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  writing-mode: horizontal-tb !important;
  line-height: 1.25 !important;
}

body .vsmTcgReference {
  display: inline-block !important;
  width: max-content !important;
  max-width: 100% !important;
  padding: 2px 7px !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--panel-strong) 78%, var(--accent) 22%) !important;
  color: var(--accent-contrast, var(--text)) !important;
  font-size: 0.72rem !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

body .inventoryTcgReference {
  margin-bottom: 2px !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountCard {
  display: grid !important;
  gap: 12px !important;
  min-width: 0 !important;
  padding: 12px !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountIdentity {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantControls {
  display: grid !important;
  gap: 8px !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantRow {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 36px 44px 36px !important;
  gap: 8px !important;
  align-items: center !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantLabel {
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.2 !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel,
body .panel[data-panel="buylist"] .buylistTermsPanel * {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  writing-mode: horizontal-tb !important;
}

@media (max-width: 920px) {
  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel[data-panel="buylist"] .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* 2026-06-13 hard layout lock: catalog and buylist must never compress text into vertical columns. */
body main,
body .tabPanel,
body .panel[data-panel="catalog"] .batchPanel,
body .panel[data-panel="buylist"] {
  box-sizing: border-box !important;
  width: min(1120px, calc(100vw - 40px)) !important;
  max-width: min(1120px, calc(100vw - 40px)) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] .catalogLaneBar {
  display: grid !important;
  grid-template-columns: minmax(240px, 380px) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: end !important;
}

body .panel[data-panel="catalog"] #catalogLaneStatus {
  min-height: 40px !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

body .panel[data-panel="catalog"] .catalogDestinationPanel .compactGrid,
body .panel[data-panel="catalog"] .catalogStockCostGrid,
body .panel[data-panel="catalog"] .catalogStockWeightGrid,
body .panel[data-panel="catalog"] .catalogMsrpHoldGrid,
body .panel[data-panel="catalog"] .catalogProductLimitGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .panel[data-panel="catalog"] .catalogProductLimitGrid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(140px, 1fr) !important;
}

body .panel[data-panel="catalog"] .catalogSingleProductGrid {
  display: grid !important;
  grid-template-columns: 340px minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: start !important;
  width: 100% !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel[data-panel="catalog"] .catalogQueuePanel,
body .panel[data-panel="catalog"] .catalogBatchCountScreen {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

body .panel[data-panel="catalog"] .catalogQueueList {
  min-height: 220px !important;
  max-height: 520px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) minmax(140px, auto) !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard > * {
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .visualInfo {
  display: grid !important;
  grid-auto-rows: min-content !important;
  gap: 3px !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountToolbar {
  display: grid !important;
  grid-template-columns: minmax(240px, 360px) minmax(140px, 180px) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: end !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountList {
  grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)) !important;
  max-height: 620px !important;
  padding-right: 8px !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountText strong,
body .panel[data-panel="catalog"] .catalogBatchCountText span,
body .panel[data-panel="catalog"] .visualInfo strong,
body .panel[data-panel="catalog"] .visualInfo small,
body .panel[data-panel="catalog"] .visualInfo em,
body .panel[data-panel="buylist"] .buylistTermsPanel,
body .panel[data-panel="buylist"] .buylistTermsPanel p,
body .panel[data-panel="buylist"] .buylistTermsPanel h3 {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  line-height: 1.28 !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 16px !important;
}

body .panel[data-panel="buylist"] .buylistTermsCopy {
  display: grid !important;
  gap: 8px !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)) !important;
  gap: 12px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 140px !important;
  min-height: 96px !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 14px !important;
}

@media (max-width: 980px) {
  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel[data-panel="catalog"] .catalogLaneBar,
  body .panel[data-panel="catalog"] .catalogBatchCountToolbar,
  body .panel[data-panel="buylist"] .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="catalog"] .catalogBatchCountList {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* 2026-06-13 final containment pass: prevent catalog/buylist text, cards, and controls from collapsing or spilling. */
body .panel[data-panel="catalog"],
body .panel[data-panel="buylist"] {
  min-width: 0 !important;
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] *,
body .panel[data-panel="buylist"] * {
  box-sizing: border-box !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  letter-spacing: 0 !important;
}

body .panel[data-panel="catalog"] .card,
body .panel[data-panel="buylist"] .card,
body .panel[data-panel="catalog"] .batchPanel {
  width: min(1080px, calc(100vw - 48px)) !important;
  max-width: min(1080px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: hidden !important;
}

body .panel[data-panel="catalog"] .catalogWorkflowHint,
body .panel[data-panel="catalog"] .catalogDestinationPanel,
body .panel[data-panel="catalog"] .catalogLaneBar,
body .panel[data-panel="buylist"] .buylistTermsPanel {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogLaneBar {
  grid-template-columns: minmax(260px, 370px) minmax(0, 1fr) !important;
}

body .panel[data-panel="catalog"] #catalogLaneStatus,
body .panel[data-panel="catalog"] .marketStatus,
body .panel[data-panel="catalog"] .compactNotice {
  overflow: hidden !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.35 !important;
}

body .panel[data-panel="catalog"] .catalogSingleProductGrid {
  display: grid !important;
  grid-template-columns: minmax(240px, 320px) minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel[data-panel="catalog"] .catalogQueuePanel {
  border: 1px solid var(--line) !important;
  border-radius: 8px !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel {
  padding: 18px !important;
}

body .panel[data-panel="catalog"] .catalogQueueList {
  display: grid !important;
  gap: 10px !important;
  min-height: 190px !important;
  max-height: 430px !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard {
  display: grid !important;
  grid-template-columns: 62px minmax(0, 1fr) minmax(150px, max-content) !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px 12px !important;
  min-height: 78px !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard img,
body .panel[data-panel="catalog"] .catalogBatchCountThumb {
  width: 54px !important;
  height: 70px !important;
  object-fit: contain !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard em {
  justify-self: end !important;
  text-align: right !important;
  max-width: 210px !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

body .panel[data-panel="catalog"] .visualInfo,
body .panel[data-panel="catalog"] .catalogBatchCountText {
  min-width: 0 !important;
  display: grid !important;
  gap: 3px !important;
}

body .panel[data-panel="catalog"] .visualInfo strong,
body .panel[data-panel="catalog"] .catalogBatchCountText strong {
  font-size: 0.95rem !important;
}

body .panel[data-panel="catalog"] .visualInfo strong,
body .panel[data-panel="catalog"] .visualInfo small,
body .panel[data-panel="catalog"] .visualInfo em,
body .panel[data-panel="catalog"] .catalogBatchCountText strong,
body .panel[data-panel="catalog"] .catalogBatchCountText span,
body .panel[data-panel="catalog"] .catalogBatchVariantLabel {
  overflow-wrap: anywhere !important;
  white-space: normal !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)) !important;
  gap: 12px !important;
  max-height: 620px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 10px 8px 10px 0 !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountCard {
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 12px !important;
  min-height: 0 !important;
  padding: 12px !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountIdentity {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantControls {
  display: grid !important;
  gap: 8px !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantRow {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 36px 46px 36px !important;
  gap: 8px !important;
  align-items: center !important;
  min-height: 42px !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantRow button,
body .panel[data-panel="catalog"] .catalogBatchVariantRow strong {
  width: 100% !important;
  min-width: 0 !important;
  text-align: center !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 16px !important;
  align-items: center !important;
  min-height: 0 !important;
  padding: 16px !important;
}

body .panel[data-panel="buylist"] .buylistTermsCopy,
body .panel[data-panel="buylist"] .buylistTermsCopy p,
body .panel[data-panel="buylist"] .buylistTermsCopy h3 {
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.4 !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel .actionRow {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 12px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 118px !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 92px !important;
  padding: 12px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption strong,
body .panel[data-panel="buylist"] .buylistBulkOption small {
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

body .vsmTcgReference {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 0 3px !important;
  padding: 2px 7px !important;
  border-radius: 999px !important;
  border: 1px solid var(--line-strong) !important;
  background: color-mix(in srgb, var(--accent) 18%, var(--panel) 82%) !important;
  color: var(--accent-contrast, var(--text)) !important;
  font-size: 0.72rem !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
}

@media (max-width: 900px) {
  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel[data-panel="catalog"] .catalogLaneBar,
  body .panel[data-panel="buylist"] .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="catalog"] .catalogVisualCard {
    grid-template-columns: 56px minmax(0, 1fr) !important;
  }

  body .panel[data-panel="catalog"] .catalogVisualCard em {
    grid-column: 2 !important;
    justify-self: start !important;
    text-align: left !important;
  }
}

/* 2026-06-13 proportional form lock: final override for all VSM pages. */
body {
  overflow-x: hidden !important;
}

body .tabPanel,
body .panel,
body .card,
body .batchPanel,
body .formPanel,
body .inventoryRow,
body .buylistSetupPanel,
body .buylistTermsPanel {
  min-width: 0 !important;
}

body label,
body button,
body input,
body select,
body textarea,
body .marketStatus,
body .compactNotice,
body .meta,
body .badge,
body .actionRow,
body .visualInfo,
body .catalogBatchCountText,
body .buylistTermsCopy {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  letter-spacing: 0 !important;
  line-height: 1.28 !important;
}

body input,
body select,
body textarea {
  min-width: 0 !important;
  max-width: 100% !important;
}

body button {
  min-width: max-content !important;
  max-width: 100% !important;
}

body .panel[data-panel="catalog"],
body .panel.catalog {
  --catalog-content-width: min(1060px, calc(100vw - 56px));
}

body .panel[data-panel="catalog"] .batchPanel,
body .panel.catalog .batchPanel,
body .panel[data-panel="buylist"] > .card,
body .panel[data-panel="inventory"] > .card,
body .panel[data-panel="setup"] > .card {
  width: var(--catalog-content-width, min(1060px, calc(100vw - 56px))) !important;
  max-width: var(--catalog-content-width, min(1060px, calc(100vw - 56px))) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body .panel[data-panel="catalog"] .catalogSingleProductGrid,
body .panel.catalog .catalogSingleProductGrid {
  display: grid !important;
  grid-template-columns: minmax(280px, 330px) minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
  overflow: visible !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel.catalog .catalogStockPanel {
  display: grid !important;
  gap: 12px !important;
  max-width: 330px !important;
  padding: 14px !important;
  overflow: visible !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead,
body .panel.catalog .catalogStockPanel .miniHead,
body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead,
body .panel.catalog .catalogQueuePanel > .miniHead {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead h3,
body .panel.catalog .catalogStockPanel .miniHead h3,
body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead h3,
body .panel.catalog .catalogQueuePanel > .miniHead h3 {
  margin: 0 !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead span,
body .panel.catalog .catalogStockPanel .miniHead span,
body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead span,
body .panel.catalog .catalogQueuePanel > .miniHead span {
  flex: 0 1 auto !important;
  max-width: 210px !important;
  text-align: right !important;
}

body .panel[data-panel="catalog"] .conditionIntakeGrid,
body .panel[data-panel="catalog"] .catalogStockCostGrid,
body .panel[data-panel="catalog"] .catalogStockWeightGrid,
body .panel.catalog .conditionIntakeGrid,
body .panel.catalog .catalogStockCostGrid,
body .panel.catalog .catalogStockWeightGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
}

body .panel[data-panel="catalog"] .catalogMsrpHoldGrid,
body .panel.catalog .catalogMsrpHoldGrid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(96px, 128px) !important;
  gap: 10px !important;
  width: 100% !important;
  align-items: end !important;
}

body .panel[data-panel="catalog"] .catalogProductLimitGrid,
body .panel.catalog .catalogProductLimitGrid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(96px, 128px) !important;
  gap: 10px !important;
  width: 100% !important;
  align-items: end !important;
}

body .panel[data-panel="catalog"] .catalogProductLimitGrid .checkRule,
body .panel.catalog .catalogProductLimitGrid .checkRule {
  grid-column: 1 / -1 !important;
  min-height: 42px !important;
}

body .panel[data-panel="catalog"] .catalogProductLimitGrid label:last-child,
body .panel.catalog .catalogProductLimitGrid label:last-child {
  grid-column: 1 / -1 !important;
}

body .panel[data-panel="catalog"] .checkRule,
body .panel.catalog .checkRule,
body .programmedLineDefaultsOptions label,
body .buylistSetupPanel label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .checkRule input[type="checkbox"],
body .panel.catalog .checkRule input[type="checkbox"],
body .programmedLineDefaultsOptions input[type="checkbox"],
body .buylistSetupPanel input[type="checkbox"] {
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
}

body .panel[data-panel="catalog"] .checkRule span,
body .panel.catalog .checkRule span {
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogSecondaryCollectionsField,
body .panel.catalog .catalogSecondaryCollectionsField {
  display: grid !important;
  gap: 6px !important;
}

body .panel[data-panel="catalog"] .catalogSecondaryCollectionsField textarea,
body .panel.catalog .catalogSecondaryCollectionsField textarea {
  min-height: 58px !important;
  resize: vertical !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .marketStatus,
body .panel.catalog .catalogStockPanel .marketStatus {
  padding: 9px 10px !important;
  font-size: 0.72rem !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel,
body .panel.catalog .catalogQueuePanel {
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 16px !important;
}

body .panel[data-panel="catalog"] .catalogSearchControl input,
body .panel.catalog .catalogSearchControl input {
  min-height: 42px !important;
}

body .panel[data-panel="catalog"] .catalogQueueList,
body .panel.catalog .catalogQueueList {
  min-height: 220px !important;
  max-height: 470px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard,
body .panel.catalog .catalogVisualCard,
body .panel[data-panel="catalog"] .catalogSearchResult,
body .panel.catalog .catalogSearchResult,
body .panel[data-panel="catalog"] .catalogQueueRow,
body .panel.catalog .catalogQueueRow {
  display: grid !important;
  grid-template-columns: 62px minmax(0, 1fr) minmax(132px, max-content) !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 82px !important;
  padding: 10px 12px !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard em,
body .panel.catalog .catalogVisualCard em,
body .panel[data-panel="catalog"] .catalogSearchResult em,
body .panel.catalog .catalogSearchResult em,
body .panel[data-panel="catalog"] .catalogQueueRow em,
body .panel.catalog .catalogQueueRow em {
  justify-self: end !important;
  max-width: 190px !important;
  text-align: right !important;
  font-size: 0.78rem !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountList,
body .panel.catalog .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)) !important;
  gap: 12px !important;
}

body .panel[data-panel="catalog"] .catalogBatchCountCard,
body .panel.catalog .catalogBatchCountCard {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 12px !important;
}

body .panel[data-panel="catalog"] .catalogBatchVariantRow,
body .panel.catalog .catalogBatchVariantRow {
  grid-template-columns: minmax(0, 1fr) 38px 48px 38px !important;
  gap: 8px !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 16px !important;
}

body .panel[data-panel="buylist"] .buylistTermsCopy {
  display: grid !important;
  gap: 8px !important;
}

body .panel[data-panel="buylist"] .buylistTermsCopy p {
  margin: 0 !important;
  max-width: 100% !important;
}

@media (max-width: 980px) {
  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel.catalog .catalogSingleProductGrid,
  body .panel[data-panel="buylist"] .buylistTermsPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="catalog"] .catalogStockPanel,
  body .panel.catalog .catalogStockPanel {
    max-width: 100% !important;
  }
}

@media (max-width: 720px) {
  body .panel[data-panel="catalog"] .catalogVisualCard,
  body .panel.catalog .catalogVisualCard,
  body .panel[data-panel="catalog"] .catalogSearchResult,
  body .panel.catalog .catalogSearchResult,
  body .panel[data-panel="catalog"] .catalogQueueRow,
  body .panel.catalog .catalogQueueRow {
    grid-template-columns: 58px minmax(0, 1fr) !important;
  }

  body .panel[data-panel="catalog"] .catalogVisualCard em,
  body .panel.catalog .catalogVisualCard em,
  body .panel[data-panel="catalog"] .catalogSearchResult em,
  body .panel.catalog .catalogSearchResult em,
  body .panel[data-panel="catalog"] .catalogQueueRow em,
  body .panel.catalog .catalogQueueRow em {
    grid-column: 2 !important;
    justify-self: start !important;
    text-align: left !important;
  }
}

/* 2026-06-13 final page proportion guard.
   Keep form text horizontal and prevent compact control panels from crushing labels. */
body .panel label,
body .panel .checkRule,
body .panel .marketStatus,
body .panel .compactNotice,
body .panel .visualInfo,
body .panel .meta,
body .panel button,
body .panel input,
body .panel select,
body .panel textarea {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.35 !important;
  min-width: 0 !important;
}

body .panel input,
body .panel select,
body .panel textarea {
  width: 100% !important;
  max-width: 100% !important;
}

body .panel[data-panel="catalog"] .batchPanel,
body .panel.catalog .batchPanel {
  width: min(1120px, calc(100vw - 64px)) !important;
  max-width: min(1120px, calc(100vw - 64px)) !important;
  overflow: hidden !important;
}

body .panel[data-panel="catalog"] .catalogSingleProductGrid,
body .panel.catalog .catalogSingleProductGrid {
  grid-template-columns: minmax(360px, 390px) minmax(0, 1fr) !important;
  gap: 18px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel.catalog .catalogStockPanel {
  max-width: 390px !important;
  width: 100% !important;
  padding: 16px !important;
}

body .panel[data-panel="catalog"] .catalogMsrpHoldGrid,
body .panel[data-panel="catalog"] .catalogProductLimitGrid,
body .panel.catalog .catalogMsrpHoldGrid,
body .panel.catalog .catalogProductLimitGrid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: stretch !important;
  width: 100% !important;
}

body .panel[data-panel="catalog"] .catalogMsrpHoldGrid .checkRule,
body .panel[data-panel="catalog"] .catalogProductLimitGrid .checkRule,
body .panel.catalog .catalogMsrpHoldGrid .checkRule,
body .panel.catalog .catalogProductLimitGrid .checkRule {
  grid-column: auto !important;
  min-height: 40px !important;
  padding: 10px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

body .panel[data-panel="catalog"] .catalogMsrpHoldGrid .checkRule span,
body .panel[data-panel="catalog"] .catalogProductLimitGrid .checkRule span,
body .panel.catalog .catalogMsrpHoldGrid .checkRule span,
body .panel.catalog .catalogProductLimitGrid .checkRule span {
  display: inline !important;
  white-space: normal !important;
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogMsrpHoldGrid label:last-child,
body .panel[data-panel="catalog"] .catalogProductLimitGrid label:last-child,
body .panel.catalog .catalogMsrpHoldGrid label:last-child,
body .panel.catalog .catalogProductLimitGrid label:last-child {
  grid-column: auto !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel,
body .panel.catalog .catalogQueuePanel {
  padding: 18px !important;
  min-height: 420px !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel .miniHead,
body .panel.catalog .catalogQueuePanel .miniHead {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 18px !important;
}

body .panel[data-panel="catalog"] .catalogSearchControl,
body .panel.catalog .catalogSearchControl {
  display: grid !important;
  gap: 10px !important;
}

body .panel[data-panel="catalog"] .catalogQueueList,
body .panel.catalog .catalogQueueList {
  margin-top: 12px !important;
  border-radius: 8px !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard,
body .panel.catalog .catalogVisualCard,
body .panel[data-panel="catalog"] .catalogSearchResult,
body .panel.catalog .catalogSearchResult,
body .panel[data-panel="catalog"] .catalogQueueRow,
body .panel.catalog .catalogQueueRow {
  grid-template-columns: 68px minmax(0, 1fr) minmax(160px, max-content) !important;
  gap: 14px !important;
  min-height: 88px !important;
}

body .panel[data-panel="catalog"] .catalogVisualCard strong,
body .panel.catalog .catalogVisualCard strong,
body .panel[data-panel="catalog"] .catalogSearchResult strong,
body .panel.catalog .catalogSearchResult strong,
body .panel[data-panel="catalog"] .catalogQueueRow strong,
body .panel.catalog .catalogQueueRow strong {
  display: block !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel,
body .panel[data-panel="buylist"] .buylistSetupPanel,
body .panel[data-panel="inventory"] .inventoryRow,
body .panel[data-panel="setup"] .card {
  overflow: hidden !important;
}

@media (max-width: 1050px) {
  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel.catalog .catalogSingleProductGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="catalog"] .catalogStockPanel,
  body .panel.catalog .catalogStockPanel {
    max-width: 100% !important;
  }
}

@media (max-width: 760px) {
  body .panel[data-panel="catalog"] .batchPanel,
  body .panel.catalog .batchPanel {
    width: min(100%, calc(100vw - 28px)) !important;
    max-width: min(100%, calc(100vw - 28px)) !important;
  }

  body .panel[data-panel="catalog"] .catalogVisualCard,
  body .panel.catalog .catalogVisualCard,
  body .panel[data-panel="catalog"] .catalogSearchResult,
  body .panel.catalog .catalogSearchResult,
  body .panel[data-panel="catalog"] .catalogQueueRow,
  body .panel.catalog .catalogQueueRow {
    grid-template-columns: 60px minmax(0, 1fr) !important;
  }
}

/* 2026-06-13 Catalog operator layout: compact, predictable, no floating blocks. */
body .panel[data-panel="catalog"] {
  --vsm-catalog-width: min(1080px, calc(100vw - 72px));
  --vsm-stock-rail: 320px;
}

body .panel[data-panel="catalog"] .batchPanel,
body .panel.catalog .batchPanel {
  width: var(--vsm-catalog-width) !important;
  max-width: var(--vsm-catalog-width) !important;
  margin-inline: auto !important;
  padding-inline: 14px !important;
  overflow: visible !important;
}

body .panel[data-panel="catalog"] .catalogSingleProductGrid,
body .panel.catalog .catalogSingleProductGrid {
  display: grid !important;
  grid-template-columns: var(--vsm-stock-rail) minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
  width: 100% !important;
  overflow: visible !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel.catalog .catalogStockPanel,
body .panel[data-panel="catalog"] .catalogQueuePanel,
body .panel.catalog .catalogQueuePanel {
  box-sizing: border-box !important;
  border-radius: 8px !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel.catalog .catalogStockPanel {
  max-width: var(--vsm-stock-rail) !important;
  padding: 14px !important;
  align-self: start !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel,
body .panel.catalog .catalogQueuePanel {
  min-height: 0 !important;
  padding: 14px !important;
  display: grid !important;
  grid-template-rows: auto auto minmax(140px, auto) !important;
  gap: 12px !important;
  align-self: start !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead,
body .panel.catalog .catalogQueuePanel > .miniHead {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 12px !important;
  align-items: center !important;
  margin: 0 !important;
  min-height: 38px !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead h3,
body .panel.catalog .catalogQueuePanel > .miniHead h3 {
  margin: 0 !important;
  line-height: 1.2 !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead .catalogSearchActions,
body .panel.catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead .catalogSearchActions > span,
body .panel.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  max-width: 220px !important;
  padding: 6px 10px !important;
  text-align: center !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead .catalogSearchActions .compactAction,
body .panel.catalog .catalogQueuePanel > .miniHead .catalogSearchActions .compactAction {
  min-height: 30px !important;
  padding: 6px 10px !important;
}

body .panel[data-panel="catalog"] .catalogSearchControl,
body .panel.catalog .catalogSearchControl {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
}

body .panel[data-panel="catalog"] .catalogSearchControl label,
body .panel.catalog .catalogSearchControl label {
  display: grid !important;
  gap: 6px !important;
  margin: 0 !important;
}

body .panel[data-panel="catalog"] .catalogSearchControl input,
body .panel.catalog .catalogSearchControl input {
  min-height: 42px !important;
}

body .panel[data-panel="catalog"] .catalogQueueList,
body .panel.catalog .catalogQueueList {
  margin: 0 !important;
  min-height: 140px !important;
  max-height: min(430px, calc(100vh - 430px)) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  border-radius: 8px !important;
}

body .panel[data-panel="catalog"] .catalogQueueList .empty,
body .panel.catalog .catalogQueueList .empty {
  min-height: 120px !important;
  display: grid !important;
  place-items: center !important;
  padding: 18px !important;
  text-align: center !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead,
body .panel.catalog .catalogStockPanel .miniHead {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead span,
body .panel.catalog .catalogStockPanel .miniHead span {
  max-width: 142px !important;
  padding: 5px 8px !important;
  text-align: right !important;
  line-height: 1.15 !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .grid,
body .panel[data-panel="catalog"] .catalogStockPanel .compactGrid,
body .panel[data-panel="catalog"] .catalogStockCostGrid,
body .panel[data-panel="catalog"] .catalogStockWeightGrid,
body .panel.catalog .catalogStockPanel .grid,
body .panel.catalog .catalogStockPanel .compactGrid,
body .panel.catalog .catalogStockCostGrid,
body .panel.catalog .catalogStockWeightGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel label,
body .panel.catalog .catalogStockPanel label {
  display: grid !important;
  gap: 6px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .checkRule,
body .panel.catalog .catalogStockPanel .checkRule {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 42px !important;
  padding: 10px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .checkRule input,
body .panel.catalog .catalogStockPanel .checkRule input {
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
}

body .panel[data-panel="catalog"] .catalogMsrpHoldGrid,
body .panel[data-panel="catalog"] .catalogProductLimitGrid,
body .panel.catalog .catalogMsrpHoldGrid,
body .panel.catalog .catalogProductLimitGrid {
  grid-template-columns: minmax(0, 1fr) !important;
}

body .panel[data-panel="catalog"] .catalogSecondaryCollectionsField textarea,
body .panel.catalog .catalogSecondaryCollectionsField textarea {
  min-height: 56px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .marketStatus,
body .panel.catalog .catalogStockPanel .marketStatus {
  padding: 9px 10px !important;
  margin: 0 !important;
}

@media (max-width: 980px) {
  body .panel[data-panel="catalog"] {
    --vsm-catalog-width: min(100%, calc(100vw - 32px));
    --vsm-stock-rail: 100%;
  }

  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel.catalog .catalogSingleProductGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* 2026-06-13 Catalog polish lock: final visible proportions. */
body .panel[data-panel="catalog"] .catalogSingleProductGrid,
body .panel.catalog .catalogSingleProductGrid {
  display: grid !important;
  grid-template-columns: 330px minmax(520px, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
  width: 100% !important;
  margin-top: 16px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel,
body .panel.catalog .catalogStockPanel {
  max-width: none !important;
  min-height: auto !important;
  padding: 14px !important;
  align-self: start !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel,
body .panel.catalog .catalogQueuePanel {
  min-height: 0 !important;
  padding: 14px !important;
  align-self: start !important;
  display: grid !important;
  grid-template-rows: auto auto auto !important;
  gap: 12px !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead,
body .panel.catalog .catalogQueuePanel > .miniHead {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 34px !important;
  margin: 0 !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead .catalogSearchActions,
body .panel.catalog .catalogQueuePanel > .miniHead .catalogSearchActions {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead .catalogSearchActions > span,
body .panel.catalog .catalogQueuePanel > .miniHead .catalogSearchActions > span {
  max-width: none !important;
  min-height: 28px !important;
  padding: 5px 9px !important;
  white-space: nowrap !important;
}

body .panel[data-panel="catalog"] .catalogQueuePanel > .miniHead .catalogSearchActions .compactAction,
body .panel.catalog .catalogQueuePanel > .miniHead .catalogSearchActions .compactAction {
  min-height: 28px !important;
  padding: 5px 9px !important;
  white-space: nowrap !important;
}

body .panel[data-panel="catalog"] .catalogSearchControl input,
body .panel.catalog .catalogSearchControl input {
  height: 44px !important;
  min-height: 44px !important;
}

body .panel[data-panel="catalog"] .catalogQueueList,
body .panel.catalog .catalogQueueList {
  min-height: 150px !important;
  max-height: 430px !important;
  height: auto !important;
}

body .panel[data-panel="catalog"] .catalogQueueList .empty,
body .panel.catalog .catalogQueueList .empty {
  min-height: 138px !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead,
body .panel.catalog .catalogStockPanel .miniHead {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
  align-items: center !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .miniHead span,
body .panel.catalog .catalogStockPanel .miniHead span {
  max-width: 132px !important;
  white-space: normal !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .checkRule,
body .panel.catalog .catalogStockPanel .checkRule {
  min-width: 0 !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .checkRule input,
body .panel.catalog .catalogStockPanel .checkRule input {
  margin: 0 !important;
}

body .panel[data-panel="catalog"] .catalogStockPanel .checkRule,
body .panel[data-panel="catalog"] .catalogStockPanel label,
body .panel.catalog .catalogStockPanel .checkRule,
body .panel.catalog .catalogStockPanel label {
  line-height: 1.25 !important;
}

@media (max-width: 1100px) {
  body .panel[data-panel="catalog"] .catalogSingleProductGrid,
  body .panel.catalog .catalogSingleProductGrid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
/* 2026-06-13 final buylist/admin proportion lock. Keep this at EOF. */
body .panel[data-panel="buylist"] {
  --buylist-panel-width: min(1120px, calc(100vw - 48px));
}

body .panel[data-panel="buylist"] > .buylistTermsPanel,
body .panel[data-panel="buylist"] > .buylistSetupPanel,
body .panel[data-panel="buylist"] > .buylistCatalogTargetPanel,
body .panel[data-panel="buylist"] > .buylistBulkDesiredPanel,
body .panel[data-panel="buylist"] > .buylistPricingPanel,
body .panel[data-panel="buylist"] > .buylistSubmissionPanel,
body .panel[data-panel="buylist"] > .card {
  box-sizing: border-box !important;
  max-width: var(--buylist-panel-width) !important;
  overflow: hidden !important;
  width: var(--buylist-panel-width) !important;
}

body .panel[data-panel="buylist"] .buylistTermsPanel {
  align-items: center !important;
  display: grid !important;
  gap: 16px !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  padding: 14px 16px !important;
}

body .panel[data-panel="buylist"] .buylistTermsCopy {
  display: grid !important;
  gap: 8px !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistTermsCopy h3,
body .panel[data-panel="buylist"] .buylistTermsCopy p {
  line-height: 1.42 !important;
  margin: 0 !important;
  max-width: 100% !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
  word-break: normal !important;
  writing-mode: horizontal-tb !important;
}

body .panel[data-panel="buylist"] .buylistTermsActions {
  align-items: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  justify-content: flex-end !important;
  min-width: max-content !important;
}

body .panel[data-panel="buylist"] .buylistSetupPanel {
  align-items: start !important;
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.85fr) !important;
  padding: 16px !important;
}

body .panel[data-panel="buylist"] .buylistSetupPanel > .miniHead,
body .panel[data-panel="buylist"] .buylistBulkConfig,
body .panel[data-panel="buylist"] .buylistSetupActions {
  grid-column: 1 / -1 !important;
}

body .panel[data-panel="buylist"] .buylistSetupGrid {
  align-items: end !important;
  display: grid !important;
  gap: 12px !important;
  grid-column: 1 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body .panel[data-panel="buylist"] .buylistSetupGrid label {
  display: grid !important;
  gap: 6px !important;
  grid-template-columns: minmax(0, 1fr) !important;
  margin: 0 !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistSetupGrid input,
body .panel[data-panel="buylist"] .buylistSetupGrid select {
  box-sizing: border-box !important;
  height: 42px !important;
  min-height: 42px !important;
  min-width: 0 !important;
  width: 100% !important;
}

body .panel[data-panel="buylist"] .buylistAutoDesiredControl {
  align-content: start !important;
  display: grid !important;
  gap: 6px !important;
  min-height: 0 !important;
  padding: 10px 12px !important;
}

body .panel[data-panel="buylist"] .buylistAutoDesiredControl p {
  line-height: 1.35 !important;
  margin: 0 !important;
}

body .panel[data-panel="buylist"] .buylistConditionConfig {
  align-self: start !important;
  grid-column: 2 !important;
  margin: 0 !important;
  padding: 12px !important;
}

body .panel[data-panel="buylist"] .buylistConditionGrid {
  display: grid !important;
  gap: 8px !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

body .panel[data-panel="buylist"] .buylistConditionGrid .checkRule,
body .panel[data-panel="buylist"] .buylistConditionGrid label {
  align-items: center !important;
  display: flex !important;
  gap: 10px !important;
  min-height: 42px !important;
  overflow-wrap: break-word !important;
  padding: 10px 12px !important;
  white-space: normal !important;
}

body .panel[data-panel="buylist"] .buylistBulkConfig {
  padding: 12px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
  align-items: stretch !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption {
  align-items: center !important;
  box-sizing: border-box !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: minmax(0, 1fr) 118px !important;
  min-height: 92px !important;
  padding: 12px !important;
  width: 100% !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkToggle {
  align-items: center !important;
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption input[type="checkbox"] {
  height: 18px !important;
  margin: 0 !important;
  width: 18px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkText {
  display: grid !important;
  gap: 5px !important;
  min-width: 0 !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkText strong,
body .panel[data-panel="buylist"] .buylistBulkOption .bulkUnit {
  display: block !important;
  line-height: 1.24 !important;
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
  word-break: normal !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice {
  box-sizing: border-box !important;
  display: grid !important;
  gap: 6px !important;
  grid-template-rows: auto 42px !important;
  min-width: 118px !important;
  width: 118px !important;
}

body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice input {
  box-sizing: border-box !important;
  height: 42px !important;
  min-height: 42px !important;
  text-align: right !important;
  width: 118px !important;
}

body .panel[data-panel="buylist"] .buylistSetupActions {
  align-items: center !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
}

@media (max-width: 1120px) {
  body .panel[data-panel="buylist"] .buylistSetupPanel {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="buylist"] .buylistConditionConfig {
    grid-column: 1 !important;
  }

  body .panel[data-panel="buylist"] .buylistBulkOptionGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body .panel[data-panel="buylist"] {
    --buylist-panel-width: calc(100vw - 24px);
  }

  body .panel[data-panel="buylist"] .buylistTermsPanel,
  body .panel[data-panel="buylist"] .buylistSetupGrid,
  body .panel[data-panel="buylist"] .buylistBulkOptionGrid,
  body .panel[data-panel="buylist"] .buylistSetupActions {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .panel[data-panel="buylist"] .buylistTermsActions {
    justify-content: stretch !important;
    min-width: 0 !important;
  }

  body .panel[data-panel="buylist"] .buylistTermsActions .btn,
  body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice,
  body .panel[data-panel="buylist"] .buylistBulkOption .bulkPrice input {
    width: 100% !important;
  }

  body .panel[data-panel="buylist"] .buylistBulkOption {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
/* 2026-06-13 theme and buylist polish lock.
   Keep this block at the end so theme overrides do not hide dropdown text or collapse layouts. */
body .panel[data-panel="buylist"] > h2,
body .panel[data-panel="catalog"] > .sectionHead.catalogPageHead {
  display: none !important;
}

body select,
body select option {
  background: var(--field-bg, #12081d) !important;
  color: var(--text, #f8f3ff) !important;
}

body[data-palette="koahis"] select,
body[data-theme="koahis"] select,
body.theme-koahis select,
body[data-palette="koahis"] select option,
body[data-theme="koahis"] select option,
body.theme-koahis select option,
body[data-palette="smcribs"] select,
body[data-theme="smcribs"] select,
body.theme-smcribs select,
body[data-palette="smcribs"] select option,
body[data-theme="smcribs"] select option,
body.theme-smcribs select option,
body[data-palette="shannons"] select,
body[data-theme="shannons"] select,
body.theme-shannons select,
body[data-palette="shannons"] select option,
body[data-theme="shannons"] select option,
body.theme-shannons select option,
body[data-palette="tms"] select,
body[data-theme="tms"] select,
body.theme-tms select,
body[data-palette="tms"] select option,
body[data-theme="tms"] select option,
body.theme-tms select option {
  background: #fff7e8 !important;
  color: #1b1021 !important;
}

body .connectionActions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  margin-top: 10px !important;
}

body .connectionActions .secondaryButton,
body .adminPricingConnectionPanel .secondaryButton {
  min-height: 38px !important;
  padding: 0 16px !important;
}

body .adminPricingConnectionPanel #testEbay {
  margin-top: 12px !important;
}

body .panel[data-panel="catalog"],
body .panel[data-panel="buylist"] {
  max-width: min(1120px, calc(100vw - 32px)) !important;
  margin-inline: auto !important;
  overflow: visible !important;
}

body .catalogWorkflowBody,
body .catalogWorkGrid,
body .catalogActionGrid {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body .catalogStockSearchGrid {
  display: grid !important;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
}

body .catalogStockPanel,
body .catalogSearchPanel {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body .catalogStockPanel label,
body .catalogSearchPanel label,
body .buylistSetupPanel label,
body .buylistBulkOption,
body .buylistBulkOption * {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body .catalogStockPanel .checkRule {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-height: 44px !important;
}

body .catalogStockPanel textarea,
body .catalogStockPanel input,
body .catalogStockPanel select {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body .catalogSearchPanel .miniHead {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 42px !important;
}

body .catalogSearchPanel .miniHead > * {
  min-width: 0 !important;
}

body .catalogSearchResults {
  overflow-x: hidden !important;
}

body .catalogSearchResult {
  display: grid !important;
  grid-template-columns: 62px minmax(0, 1fr) auto !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 78px !important;
}

body .catalogSearchResult img {
  width: 54px !important;
  height: 54px !important;
  object-fit: contain !important;
}

body .catalogSearchResult strong,
body .catalogSearchResult span,
body .catalogSearchResult small {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

body .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  gap: 16px !important;
  align-items: center !important;
}

body .buylistTermsCopy {
  min-width: 0 !important;
}

body .buylistSetupPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.7fr) !important;
  gap: 14px !important;
  align-items: start !important;
}

body .buylistSetupPanel > .miniHead,
body .buylistBulkConfig,
body .buylistSetupActions {
  grid-column: 1 / -1 !important;
}

body .buylistSetupGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}

body .buylistAutoDesiredControl {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: minmax(160px, 190px) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px !important;
}

body .buylistAutoDesiredControl p {
  margin: 0 !important;
  line-height: 1.35 !important;
}

body .buylistConditionConfig {
  min-width: 0 !important;
}

body .buylistConditionGrid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

body .buylistConditionGrid label {
  min-height: 42px !important;
}

body .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(220px, 1fr)) !important;
  gap: 10px !important;
}

body .buylistBulkOption {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) 112px !important;
  gap: 10px !important;
  align-items: center !important;
  min-height: 82px !important;
  padding: 12px !important;
}

body .buylistBulkOption input[type="number"] {
  width: 100% !important;
  min-width: 0 !important;
  text-align: right !important;
}

body .buylistSetupActions {
  display: grid !important;
  grid-template-columns: max-content minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
}

@media (max-width: 900px) {
  body .catalogStockSearchGrid,
  body .buylistSetupPanel,
  body .buylistTermsPanel {
    grid-template-columns: 1fr !important;
  }

  body .buylistBulkOptionGrid {
    grid-template-columns: 1fr !important;
  }
}
html body select,
html body select option {
  background-color: var(--field-bg, #12081d) !important;
  color: var(--text, #f8f3ff) !important;
  -webkit-text-fill-color: currentColor !important;
}

html body[data-palette="koahis"] select,
html body[data-palette="koahis"] select option,
html body[data-palette="smcribs"] select,
html body[data-palette="smcribs"] select option,
html body[data-palette="shannons"] select,
html body[data-palette="shannons"] select option,
html body[data-palette="tms"] select,
html body[data-palette="tms"] select option {
  background-color: #fff7e8 !important;
  color: #1b1021 !important;
  -webkit-text-fill-color: #1b1021 !important;
}

html body .panel[data-panel="buylist"] > h2,
html body .panel[data-panel="catalog"] > .sectionHead.catalogPageHead {
  display: none !important;
}

html body .buylistBulkOption,
html body .catalogStockPanel,
html body .catalogSearchPanel {
  overflow: visible !important;
}

/* 2026-06-13 final proportion lock for Catalog, Inventory, and Buylist setup.
   These rules are intentionally generic so Pokemon, One Piece, and future TCGCSV
   product lines do not regress into one-letter text columns. */
html body *,
html body *::before,
html body *::after {
  box-sizing: border-box;
}

html body .panel[data-panel="catalog"],
html body .panel[data-panel="buylist"],
html body .panel[data-panel="inventory"] {
  width: min(1120px, calc(100vw - 32px)) !important;
  max-width: min(1120px, calc(100vw - 32px)) !important;
  margin-inline: auto !important;
}

html body .catalogWorkflowBody,
html body .catalogActionGrid,
html body .catalogStockSearchGrid,
html body .catalogBatchCounter,
html body .catalogBatchCountList,
html body .catalogSearchPanel,
html body .catalogStockPanel,
html body .buylistSetupPanel,
html body .buylistTermsPanel,
html body .buylistBulkOptionGrid,
html body .inventoryProductCard {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

html body .catalogWorkflowBody {
  display: grid !important;
  gap: 18px !important;
}

html body .catalogWorkflowBody > section,
html body .catalogWorkflowBody > div,
html body .catalogActionGrid,
html body .catalogStockSearchGrid,
html body .catalogBatchCounter {
  padding: 14px !important;
  border-radius: 8px !important;
}

html body .catalogActionGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

html body .catalogActionGrid label,
html body .catalogDestinationOption,
html body .catalogStockPanel .checkRule,
html body .buylistConditionGrid label,
html body .buylistBulkOption {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-height: 44px !important;
}

html body .catalogStockSearchGrid {
  display: grid !important;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

html body .catalogStockPanel,
html body .catalogSearchPanel {
  padding: 16px !important;
  min-height: 0 !important;
}

html body .catalogStockPanel {
  align-self: start !important;
}

html body .catalogStockPanel label,
html body .catalogStockPanel .checkRule,
html body .catalogStockPanel .checkRule *,
html body .catalogSearchPanel label,
html body .catalogSearchPanel .miniHead,
html body .catalogSearchPanel .miniHead *,
html body .catalogSearchResult,
html body .catalogSearchResult *,
html body .catalogBatchCountCard,
html body .catalogBatchCountCard *,
html body .buylistBulkOption,
html body .buylistBulkOption *,
html body .buylistTermsPanel,
html body .buylistTermsPanel *,
html body .inventoryProductCard,
html body .inventoryProductCard * {
  writing-mode: horizontal-tb !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  min-width: 0 !important;
}

html body .catalogStockPanel input,
html body .catalogStockPanel select,
html body .catalogStockPanel textarea,
html body .catalogSearchPanel input,
html body .catalogSearchPanel select,
html body .buylistSetupPanel input,
html body .buylistSetupPanel select,
html body .buylistSetupPanel textarea {
  width: 100% !important;
  min-width: 0 !important;
}

html body .catalogSearchPanel .miniHead {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 38px !important;
}

html body .catalogSearchPanel .miniHead .guidePill,
html body .catalogSearchPanel .miniHead .statusPill {
  justify-self: end !important;
  max-width: 280px !important;
  white-space: normal !important;
  text-align: right !important;
}

html body .catalogSearchResults {
  display: grid !important;
  gap: 10px !important;
  max-height: 420px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding-right: 4px !important;
}

html body .catalogSearchResult {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) minmax(120px, 180px) !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 88px !important;
  padding: 10px !important;
}

html body .catalogSearchResult img,
html body .catalogSearchResult .catalogThumb,
html body .catalogSearchResult .catalogImage {
  width: 64px !important;
  height: 88px !important;
  object-position: center !important;
  display: block !important;
  object-fit: contain !important;
}

html body .catalogSearchResult > .catalogQueueThumb,
html body .catalogSearchResult .catalogQueueThumb {
  width: 64px !important;
  height: 88px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}

html body .catalogSearchResult > .catalogQueueThumb img,
html body .catalogSearchResult .catalogQueueThumb img {
  width: 100% !important;
  height: 100% !important;
  object-position: center !important;
  object-fit: contain !important;
  display: block !important;
}

html body .buylistCatalogSearchRow .catalogQueueThumb {
  width: 68px !important;
  height: 96px !important;
}

html body .buylistCatalogSearchRow > .catalogQueueThumb img,
html body .buylistCatalogSearchRow .catalogQueueThumb img {
  width: 100% !important;
  height: 100% !important;
  object-position: center !important;
  object-fit: contain !important;
  display: block !important;
}

html body .catalogSearchResult strong,
html body .catalogSearchResult span,
html body .catalogSearchResult small,
html body .catalogBatchCountText strong,
html body .catalogBatchCountText span,
html body .inventoryProductCard strong,
html body .inventoryProductCard span,
html body .inventoryProductCard small {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.25 !important;
}

html body .vsmTcgReference {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-bottom: 4px !important;
  color: var(--accent, #8b5cf6) !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body .catalogBatchCounter {
  display: grid !important;
  gap: 14px !important;
}

html body .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)) !important;
  gap: 12px !important;
  max-height: 560px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 10px !important;
}

html body .catalogBatchCountCard {
  display: grid !important;
  gap: 12px !important;
  min-height: 0 !important;
  padding: 14px !important;
}

html body .catalogBatchCountIdentity {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
}

html body .catalogBatchCountThumb {
  width: 64px !important;
  height: 88px !important;
  object-fit: contain !important;
}

html body .catalogBatchVariantControls {
  display: grid !important;
  gap: 8px !important;
}

html body .catalogBatchVariantRow {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 36px 52px 36px !important;
  gap: 8px !important;
  align-items: center !important;
  min-height: 40px !important;
}

html body .catalogBatchVariantLabel {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.2 !important;
}

html body .catalogBatchVariantRow button,
html body .catalogBatchVariantRow input {
  min-width: 0 !important;
  width: 100% !important;
}

html body .buylistTermsPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 16px !important;
}

html body .buylistTermsCopy,
html body .buylistTermsCopy p {
  max-width: 100% !important;
  line-height: 1.45 !important;
}

html body .buylistSetupPanel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.85fr) !important;
  gap: 16px !important;
  align-items: start !important;
  padding: 16px !important;
}

html body .buylistSetupPanel > .miniHead,
html body .buylistBulkConfig,
html body .buylistSetupActions {
  grid-column: 1 / -1 !important;
}

html body .buylistSetupGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}

html body .buylistConditionGrid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

html body .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 12px !important;
}

html body .buylistBulkOption {
  grid-template-columns: 24px minmax(0, 1fr) 112px !important;
  padding: 12px !important;
  min-height: 74px !important;
}

html body .buylistBulkOption input[type="number"] {
  justify-self: end !important;
  width: 112px !important;
  text-align: right !important;
}

@media (max-width: 980px) {
  html body .catalogStockSearchGrid,
  html body .buylistSetupPanel,
  html body .buylistTermsPanel {
    grid-template-columns: 1fr !important;
  }

  html body .catalogSearchResult {
    grid-template-columns: 56px minmax(0, 1fr) !important;
  }

  html body .catalogSearchResult > :last-child {
    grid-column: 1 / -1 !important;
    justify-self: stretch !important;
  }
}

/* 2026-06-13 final proportional layout lock. Keep this at EOF so older
   experimental spacing cannot collapse labels into vertical text again. */
html body {
  overflow-x: hidden !important;
}

html body select,
html body option,
html body input,
html body textarea,
html body button {
  min-width: 0;
  max-width: 100%;
}

html body .panel[data-panel="catalog"] .sectionCard,
html body .catalogCard,
html body .buylistTermsPanel,
html body .buylistSetupPanel,
html body .inventoryCard,
html body .productRow {
  overflow: hidden !important;
}

html body .panel[data-panel="catalog"] .sectionCard,
html body .catalogCard {
  width: min(1120px, calc(100vw - 48px)) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
}

html body .catalogWorkflowBody {
  padding: 20px 24px !important;
}

html body .catalogLineGrid,
html body .catalogLineChoiceGrid,
html body .catalogBatchHeader,
html body .catalogBatchSetRow {
  display: grid !important;
  grid-template-columns: minmax(260px, 380px) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: end !important;
}

html body .catalogLineGrid > *,
html body .catalogLineChoiceGrid > *,
html body .catalogBatchHeader > *,
html body .catalogBatchSetRow > * {
  min-width: 0 !important;
}

html body .catalogLineSummary,
html body .catalogInfoLine,
html body .catalogWorkflowNote,
html body .catalogBadge {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.35 !important;
}

html body .catalogDestinationGrid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

html body .catalogStockSearchGrid {
  display: grid !important;
  grid-template-columns: 330px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

html body .catalogStockPanel,
html body .catalogSearchPanel {
  min-width: 0 !important;
  min-height: auto !important;
}

html body .catalogSearchPanel {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  padding: 16px !important;
}

html body .catalogSearchPanel .miniHead,
html body .catalogSearchPanel .catalogSearchHeader,
html body .catalogSearchPanelHeader {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}

html body .catalogSearchResult {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) minmax(132px, 180px) !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 84px !important;
  padding: 12px !important;
}

html body .catalogSearchResult *,
html body .catalogBatchCountCard *,
html body .buylistBulkOption *,
html body .productRow * {
  min-width: 0 !important;
}

html body .catalogSearchAction,
html body .catalogSearchResult > :last-child {
  text-align: right !important;
  overflow-wrap: anywhere !important;
  line-height: 1.2 !important;
}

html body .catalogBatchCountList {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 12px !important;
  max-height: 640px !important;
  overflow: auto !important;
  padding: 12px !important;
}

html body .catalogBatchCountCard {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  min-height: 0 !important;
  padding: 12px !important;
}

html body .catalogBatchCountIdentity {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
}

html body .catalogBatchCountText {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  line-height: 1.25 !important;
}

html body .catalogBatchCountText strong,
html body .catalogBatchCountText span {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

html body .vsmTcgReference {
  display: block !important;
  color: var(--muted, #b8a9c9) !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
  margin-bottom: 2px !important;
}

html body .catalogBatchVariantControls,
html body .catalogBatchVariantRows {
  display: grid !important;
  gap: 8px !important;
}

html body .catalogBatchVariantRow {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 40px 48px 40px !important;
  gap: 8px !important;
  align-items: center !important;
  min-height: 42px !important;
}

html body .catalogBatchVariantLabel {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.2 !important;
}

html body .catalogBatchVariantRow button,
html body .catalogBatchVariantRow strong {
  width: 100% !important;
  min-height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

html body .buylistTermsPanel {
  width: min(1120px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 16px !important;
}

html body .buylistTermsPanel * {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.4 !important;
}

html body .buylistSetupPanel {
  width: min(1120px, calc(100vw - 48px)) !important;
  margin-inline: auto !important;
  padding: 16px !important;
}

html body .buylistSetupGrid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(190px, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}

html body .buylistConditionGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 10px !important;
}

html body .buylistBulkOptionGrid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 12px !important;
}

html body .buylistBulkOption {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) 120px !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 82px !important;
}

html body .buylistBulkOption strong,
html body .buylistBulkOption span {
  white-space: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.2 !important;
}

html body .buylistBulkOption input[type="number"] {
  width: 120px !important;
  justify-self: end !important;
}

@media (max-width: 980px) {
  html body .catalogLineGrid,
  html body .catalogLineChoiceGrid,
  html body .catalogBatchHeader,
  html body .catalogBatchSetRow,
  html body .catalogStockSearchGrid,
  html body .buylistTermsPanel,
  html body .buylistSetupGrid {
    grid-template-columns: 1fr !important;
  }

  html body .catalogDestinationGrid {
    grid-template-columns: 1fr !important;
  }
}

/* 2026-06-14 catalog queue/click-to-add visual alignment repair. Keep at EOF. */
html body .catalog .catalogQueueRow,
html body .catalogQueueRow {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) minmax(150px, auto) !important;
  gap: 12px !important;
  align-items: center !important;
  overflow: hidden !important;
}

html body .catalog .catalogQueueRow .catalogQueueThumb,
html body .catalogQueueRow .catalogQueueThumb,
html body .catalog .catalogQueueRow > span:first-child,
html body .catalogQueueRow > span:first-child {
  align-self: center !important;
  justify-self: start !important;
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
}

html body .catalog .catalogQueueRow > .catalogQueueThumb img,
html body .catalogQueueRow > .catalogQueueThumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

html body .catalog .catalogQueueInfo,
html body .catalogQueueInfo {
  min-width: 0 !important;
  max-width: 100% !important;
  display: grid !important;
  gap: 5px !important;
  overflow: hidden !important;
}

html body .catalog .catalogQueueInfo strong,
html body .catalog .catalogQueueInfo small,
html body .catalogQueueInfo strong,
html body .catalogQueueInfo small,
html body .catalog .catalogQueueRow em,
html body .catalogQueueRow em {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  white-space: normal !important;
  line-height: 1.3 !important;
}

html body .catalog .catalogQueueRow em,
html body .catalogQueueRow em,
html body .buylistCatalogSearchRow em {
  align-self: center !important;
  text-align: right !important;
}

html body .buylistCatalogSearchRow {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) minmax(150px, auto) !important;
  gap: 12px !important;
  align-items: center !important;
  overflow: hidden !important;
}

/* Hosted header polish: make the session/utility area and action bars feel intentional. */
.topbar.appHeader {
  grid-template-columns: minmax(240px, 1.05fr) minmax(180px, 240px) minmax(360px, 1.15fr);
  grid-template-areas:
    "brand logo actions"
    "pricing pricing pricing";
  align-items: start;
  row-gap: 16px;
  column-gap: 20px;
  padding: 18px clamp(14px, 2.2vw, 24px) 14px;
}

.topbar.appHeader .brandBlock {
  max-width: 34rem;
  align-self: center;
}

.topbar.appHeader .brandBlock p {
  margin-top: 6px;
  max-width: 40ch;
}

.topbar.appHeader .storeLogoSlot {
  width: min(240px, 100%);
  height: 64px;
  min-height: 64px;
  padding: 8px 12px;
}

.topbar.appHeader .operatorControls {
  grid-area: actions;
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  align-items: center;
  gap: 10px;
}

.topbar.appHeader #paletteSelect {
  min-width: 168px;
}

.topbar.appHeader #guideVisibilityToggle {
  min-width: 152px;
}

.topbar.appHeader #reportBugButton {
  min-width: 132px;
}

.topbar.appHeader .operatorControls button,
.topbar.appHeader .operatorControls select {
  width: auto;
}

.headerPricingControls {
  grid-area: pricing;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 10px;
  padding-top: 10px;
  border-top: 1px solid color-mix(in srgb, var(--line) 72%, transparent);
}

.headerToolbarGroup {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-height: 0;
  padding: 8px 10px;
  border-radius: 12px;
}

.headerPricingGroup,
.headerShopifyGroup {
  align-items: flex-start;
}

.headerPricingGroup .headerPricingLabel,
.headerShopifyGroup .headerPricingLabel {
  padding-top: 4px;
}

.headerPricingActions {
  flex-wrap: nowrap;
  gap: 8px;
}

.headerPricingActionsStacked {
  width: auto;
  grid-template-columns: repeat(2, minmax(220px, 280px));
  gap: 8px 10px;
}

.headerEngineCard {
  display: grid;
  gap: 4px;
  align-content: start;
  min-width: 0;
}

.headerPricingButtonRow {
  grid-template-columns: minmax(0, 1fr) 34px;
  gap: 8px;
}

.headerPricingButton {
  min-height: 32px !important;
  padding: 6px 10px;
  font-size: 0.72rem;
  line-height: 1.1;
}

.headerPricingGroup .headerPricingButton {
  width: 100%;
  min-width: 0;
  max-width: none;
}

.headerPricingGroup {
  width: min(100%, 650px);
}

.headerShopifyGroup {
  justify-self: end;
  min-width: 290px;
}

.headerShopifyGroup .headerPricingActions {
  margin-left: auto;
  justify-content: flex-end;
}

.headerShopifyGroup .headerPricingButton {
  width: 132px;
  min-width: 132px;
  max-width: 132px;
}

.headerEngineMeter {
  width: 34px;
  height: 34px;
  font-size: 0.52rem;
}

.headerEngineStatus {
  min-height: 16px;
  font-size: 0.68rem;
  line-height: 1.2;
}

.productLineImageCheck {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
  line-height: 1.45;
  padding: 13px 14px;
}

.productLineImageCheck input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin: 2px 0 0 !important;
}

@media (max-width: 1200px) {
  .topbar.appHeader {
    grid-template-columns: minmax(220px, 1fr) minmax(160px, 220px) minmax(300px, 1fr);
  }

  .topbar.appHeader .operatorControls {
    justify-content: flex-end;
  }

  .topbar.appHeader #reportBugButton {
    min-width: 120px;
  }

  .headerPricingControls {
    width: 100%;
    justify-content: stretch;
  }

  .headerPricingGroup,
  .headerShopifyGroup {
    width: 100%;
    min-width: 0;
  }

  .headerShopifyGroup .headerPricingActions {
    justify-content: flex-start;
    margin-left: 0;
  }

  .headerPricingActionsStacked {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 920px) {
  .topbar.appHeader {
    grid-template-columns: 1fr;
    grid-template-areas:
      "brand"
      "logo"
      "actions"
      "pricing";
  }

  .topbar.appHeader .brandBlock,
  .topbar.appHeader .storeLogoSlot,
  .topbar.appHeader .operatorControls,
  .headerPricingControls {
    justify-self: stretch;
  }

  .topbar.appHeader .storeLogoSlot {
    justify-self: start;
  }

  .topbar.appHeader .operatorControls {
    justify-content: stretch;
  }

  .topbar.appHeader #paletteSelect,
  .topbar.appHeader #guideVisibilityToggle,
  .topbar.appHeader #reportBugButton {
    width: 100%;
    max-width: none;
  }

  .headerToolbarGroup {
    min-height: 0;
  }

  .headerPricingGroup,
  .headerShopifyGroup {
    width: 100%;
  }
}

@media (max-width: 620px) {
  .topbar.appHeader .operatorControls {
    display: grid;
    grid-template-columns: 1fr;
  }

  .headerToolbarGroup {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .headerPricingGroup .headerPricingLabel,
  .headerShopifyGroup .headerPricingLabel {
    padding-top: 0;
  }

  .headerPricingActionsStacked {
    grid-template-columns: 1fr;
  }

  .headerShopifyGroup .headerPricingActions {
    flex-wrap: wrap;
  }

  .headerShopifyGroup .headerPricingButton {
    width: auto;
    min-width: 0;
    max-width: none;
    flex: 1 1 160px;
  }
}

.adminLockBar {
  border-color: color-mix(in srgb, var(--line-strong) 70%, transparent);
  background: color-mix(in srgb, var(--panel-soft) 48%, var(--panel));
  box-shadow: none;
}

.adminLockActions button {
  min-width: 152px;
}

/* 2026-06-17 Hosted density pass: tighter header, setup, and inventory layout. */
body .topbar.appHeader {
  gap: 12px 16px;
  padding: 14px 22px 12px;
  grid-template-columns: minmax(210px, 1fr) minmax(150px, 220px) minmax(320px, auto);
}

body .topbar.appHeader .brandBlock h1 {
  font-size: clamp(1.55rem, 1.8vw, 1.95rem);
  line-height: 1.04;
}

body .topbar.appHeader .brandBlock p {
  margin-top: 4px;
  max-width: 34ch;
  font-size: 0.8rem;
  line-height: 1.28;
}

body .topbar.appHeader .storeLogoSlot {
  width: min(220px, 100%);
  height: 56px;
  min-height: 56px;
  padding: 6px 10px;
}

body .topbar.appHeader .operatorControls {
  gap: 8px;
}

body .topbar.appHeader #paletteSelect {
  min-width: 148px;
}

body .topbar.appHeader #guideVisibilityToggle,
body .topbar.appHeader #reportBugButton {
  min-width: 120px;
}

body .headerPricingControls {
  gap: 8px;
  padding-top: 8px;
}

body .headerToolbarGroup {
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 8px;
  padding: 7px 9px;
  border-radius: 10px;
}

body .headerPricingLabel {
  font-size: 0.7rem;
  letter-spacing: 0.08em;
}

body .headerPricingActionsStacked {
  grid-template-columns: repeat(2, minmax(168px, 214px));
  gap: 6px 8px;
}

body .headerPricingButtonRow {
  grid-template-columns: minmax(0, 1fr) 30px;
  gap: 6px;
}

body .headerPricingButton {
  min-height: 28px !important;
  padding: 5px 8px;
  font-size: 0.68rem;
}

body .headerPricingGroup {
  width: min(100%, 560px);
}

body .headerShopifyGroup {
  min-width: 250px;
}

body .headerShopifyGroup .headerPricingButton {
  width: 120px;
  min-width: 120px;
  max-width: 120px;
}

body .headerEngineMeter {
  width: 30px;
  height: 30px;
  font-size: 0.48rem;
}

body .headerEngineStatus {
  min-height: 14px;
  font-size: 0.64rem;
  line-height: 1.2;
}

body .adminLockBar {
  gap: 10px 14px;
  padding: 12px 14px;
}

body .adminLockBar strong {
  font-size: 1rem;
}

body .adminLockBar p,
body .adminLockBar .adminLockHint {
  margin: 2px 0 0;
  font-size: 0.78rem;
  line-height: 1.32;
}

body .adminLockActions {
  gap: 8px;
}

body .adminLockActions button {
  min-width: 132px;
  min-height: 34px;
}

body .inventoryConnectPanel {
  gap: 10px;
  margin: 0 16px 10px;
  padding: 10px 12px;
  border-radius: 7px;
}

body .inventoryConnectPanel h3 {
  margin: 0 0 4px;
  font-size: 0.92rem;
}

body .inventoryConnectPanel p,
body .inventoryConnectPanel .marketStatus,
body details.inventoryConnectPanel > summary small {
  font-size: 0.76rem;
  line-height: 1.3;
}

body .inventoryConnectActions {
  gap: 8px;
  min-width: min(100%, 280px);
}

body .inventoryConnectActions button,
body .checkboxPill {
  min-height: 34px;
}

body .panel[data-panel="inventory"] .inventorySummary {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  padding: 8px 0 10px;
}

body .panel[data-panel="inventory"] .inventorySummary div {
  padding: 8px 10px;
}

body .inventorySummary strong {
  min-width: 2.2rem;
  padding: 3px 7px;
  font-size: 0.94rem;
}

body .inventorySummary span {
  margin-top: 3px;
  font-size: 0.66rem;
}

body .panel[data-panel="inventory"] .inventoryRow {
  gap: 10px;
  padding: 11px 12px;
}

body .inventoryRowHead {
  gap: 10px;
}

body .inventoryThumb {
  width: 52px;
  border-radius: 5px;
}

body .inventoryRowHead h3 {
  margin-bottom: 2px;
  font-size: 0.92rem;
  line-height: 1.18;
}

body .inventoryStockGrid {
  grid-template-columns: repeat(5, minmax(62px, 1fr));
  gap: 6px;
}

body .inventoryStockGrid label,
body .inventoryTargets label,
body .inventoryWeightGrid label,
body .inventoryPriceGrid label {
  font-size: 0.68rem;
}

body .inventoryPriceGrid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

body .inventoryPriceGrid.noAutoPrice {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body .inventoryWeightGrid {
  grid-template-columns: minmax(0, 1.15fr) minmax(110px, 0.85fr);
  gap: 8px;
}

body .inventoryProductLimitGrid,
body .inventoryMsrpHoldGrid {
  gap: 8px;
}

body .inventoryGroupLabel {
  font-size: 0.72rem;
}

body .inventoryToggles {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  align-items: stretch;
}

body .inventoryToggles label,
body .inventoryShopifyStatus {
  min-height: 34px;
  padding: 7px 9px;
  font-size: 0.74rem;
}

body .inventoryToggles input[type="checkbox"] {
  width: 16px;
  height: 16px;
}

body .panel[data-panel="inventory"] .inventoryRowActions {
  gap: 6px;
}

body .panel[data-panel="inventory"] .inventoryRowActions button {
  min-width: 74px;
  min-height: 32px;
  padding: 0 10px;
  font-size: 0.74rem;
}

body .panel .checkRule {
  gap: 10px !important;
}

body .panel .checkRule input[type="checkbox"] {
  width: 17px !important;
  height: 17px !important;
  margin: 2px 0 0 !important;
}

@media (max-width: 1200px) {
  body .topbar.appHeader {
    grid-template-columns: minmax(220px, 1fr) minmax(140px, 210px) minmax(0, 1fr);
  }

  body .headerPricingGroup,
  body .headerShopifyGroup {
    width: 100%;
    min-width: 0;
  }

  body .panel[data-panel="inventory"] .inventorySummary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 920px) {
  body .panel[data-panel="inventory"] .inventoryPriceGrid,
  body .panel[data-panel="inventory"] .inventoryToggles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body .panel[data-panel="inventory"] .inventorySummary,
  body .panel[data-panel="inventory"] .inventoryPriceGrid,
  body .panel[data-panel="inventory"] .inventoryToggles,
  body .panel[data-panel="inventory"] .inventoryWeightGrid {
    grid-template-columns: 1fr;
  }

  body .panel[data-panel="inventory"] .inventoryStockGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
