/* Semantic surfaces, text, actions, focus, and states use shared tokens.
   Literal colors below this block are reserved for charts and decorative art. */
:root {
  --bg: var(--so-color-canvas, #f4f8fd);
  --bg-accent: var(--so-color-canvas-accent, #e9f1fb);
  --panel: var(--so-color-surface, #ffffff);
  --panel-subtle: var(--so-color-surface-subtle, #f7faff);
  --line: var(--so-color-border, #b7c8df);
  --ink: var(--so-color-text, #0e2454);
  --muted: var(--so-color-muted, #52637f);
  --nav: var(--so-color-surface, #ffffff);
  --teal: var(--so-color-action, #08756f);
  --teal-dark: var(--so-color-action-hover, #065f5b);
  --teal-soft: var(--so-color-action-soft, #e7f8f6);
  --on-action: var(--so-color-on-action, #ffffff);
  --info: var(--so-color-info, #075985);
  --info-soft: var(--so-color-info-soft, #e0f2fe);
  --success: var(--so-color-success, #166534);
  --success-soft: var(--so-color-success-soft, #e9f8ee);
  --warning: var(--so-color-warning, #854d0e);
  --warning-soft: var(--so-color-warning-soft, #fff7e6);
  --danger: var(--so-color-danger, #b42318);
  --danger-soft: var(--so-color-danger-soft, #fff1f0);
  --strong: var(--so-color-surface-strong, #10233f);
  --strong-accent: var(--so-color-surface-strong-accent, #1d4d7d);
  --on-strong: var(--so-color-text-on-strong, #f7fbff);
  --line-on-strong: var(--so-color-border-on-strong, #4f7aa4);
  --orange: #f97316;
  --purple: #365fc7;
  --navy: #0f2a6b;
  --shell-shadow: var(--so-shadow-panel, 0 18px 48px rgba(18,41,83,0.12));
}
* { box-sizing:border-box; }
body {
  margin:0;
  font-family:"Segoe UI",Arial,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(1200px 700px at 15% 10%, rgba(255,255,255,0.94), transparent 62%),
    radial-gradient(900px 600px at 90% 92%, rgba(220,233,255,0.78), transparent 58%),
    linear-gradient(160deg, var(--bg), var(--bg-accent));
  overflow-x:hidden;
}
.analytics-shell { display:grid; grid-template-columns:250px minmax(0,1fr); min-height:100vh; }
.analytics-sidebar {
  background:
    radial-gradient(180px 140px at 82% 8%, rgba(255,255,255,0.62), transparent 44%),
    linear-gradient(145deg, rgba(189,247,235,0.98) 0%, rgba(132,226,215,0.92) 48%, rgba(218,248,246,0.96) 100%);
  color:var(--ink);
  padding:18px;
  min-width:0;
  border-right:1px solid rgba(130,203,203,0.5);
  box-shadow:18px 0 50px rgba(18,41,83,0.07);
  backdrop-filter:blur(14px);
  position:relative;
  overflow:hidden;
}
.analytics-sidebar::before {
  content:"";
  position:absolute;
  inset:-20% -45% auto -20%;
  height:48%;
  background:linear-gradient(135deg, transparent 0%, rgba(255,255,255,0.38) 48%, transparent 62%);
  transform:rotate(-10deg);
  pointer-events:none;
}
.analytics-sidebar > * {
  position:relative;
  z-index:1;
}
.sidebar-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.brand { font-size:26px; font-weight:800; margin-bottom:12px; color:var(--ink); letter-spacing:-0.02em; }
.brand-logo {
  display:inline-flex;
  align-items:center;
  width:min(100%, 190px);
  min-height:42px;
  text-decoration:none;
}
.brand-logo img {
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.shop-pill,
.tenant-switcher {
  width:100%;
  display:block;
  text-align:left;
  background:transparent;
  border:0;
  color:var(--ink);
  padding:0;
  margin:0;
  box-shadow:none;
}
.tenant-switcher {
  cursor:pointer;
  font-weight:700;
  appearance:none;
  -webkit-appearance:none;
  padding:0 26px 0 0;
  min-width:0;
}
.shop-switcher {
  margin:2px 0 18px;
}
.shop-switcher__label {
  display:block;
  margin:0 0 8px;
  color:var(--ink);
  font-weight:800;
  font-size:15px;
}
.shop-switcher__control {
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:58px;
  background:rgba(255,255,255,0.72);
  border:1px solid rgba(130,203,203,0.65);
  border-radius:12px;
  padding:9px 12px 9px 9px;
  box-shadow:0 14px 32px rgba(16,37,71,0.08);
  position:relative;
}
.shop-switcher__control::after {
  content:"";
  position:absolute;
  right:14px;
  top:50%;
  width:8px;
  height:8px;
  border-right:2px solid var(--ink);
  border-bottom:2px solid var(--ink);
  transform:translateY(-65%) rotate(45deg);
  pointer-events:none;
}
.shop-switcher__icon {
  width:38px;
  height:38px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, var(--teal-soft), var(--panel));
  border:1px solid rgba(130,203,203,0.72);
  color:var(--teal);
  font-weight:900;
}
.shop-switcher__control:hover,
.shop-switcher__control:focus-within {
  border-color:rgba(26,167,161,0.55);
  box-shadow:0 0 0 4px rgba(26,167,161,0.12), 0 12px 30px rgba(16,37,71,0.08);
}
.tenant-switcher:focus-visible {
  outline:none;
}
.shop-switcher__status {
  min-height:16px;
  margin:6px 0 0;
  color:var(--muted);
  font-size:12px;
}
.subnav { width:100%; display:block; text-align:left; text-decoration:none; padding:10px 12px; border:1px solid transparent; background:transparent; color:var(--ink); border-radius:12px; margin-bottom:8px; cursor:pointer; font-weight:700; }
.subnav:hover { background:var(--teal-soft); color:var(--ink); }
.subnav.active { background:linear-gradient(135deg, var(--teal-soft), var(--panel)); border-color:var(--teal); color:var(--teal-dark); box-shadow:0 12px 28px rgba(16,37,71,0.08); }
.subnav-children { margin: -2px 0 8px 16px; padding-left: 10px; border-left: 1px solid rgba(28,181,170,0.28); }
.subnav.child { width: calc(100% - 2px); font-size: 13px; color:var(--muted); padding:8px 10px; }
.subnav.child.active { color:var(--teal-dark); }
.subnav.toggle { width:40px; height:40px; padding:0; display:grid; place-items:center; margin-bottom:0; }
.analytics-main { padding:16px; min-width:0; }
.content-page-main { max-width:900px; margin:24px auto; }
.u-mt-10 { margin-top:10px; }
.u-mt-12 { margin-top:12px; }
.u-m-0 { margin:0; }
.topbar-title { display:flex; flex-direction:column; gap:2px; min-width:0; }
.workspace-eyebrow,
.workspace-summary__eyebrow {
  margin:0;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:11px;
  font-weight:700;
  color:var(--teal);
}
.topbar { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; min-width:0; }
.topbar h1 { margin:0; font-size:32px; }
.toolbar { display:flex; gap:8px; align-items:center; justify-content:flex-end; flex-wrap:wrap; min-width:0; }
.muted { color:var(--muted); font-size:13px; align-self:center; }
.toolbar input, .toolbar select, .toolbar button, .filters-row input, .filters-row select { border:1px solid var(--line); border-radius:9px; padding:10px 12px; background:var(--panel); min-height:40px; }
.toolbar button { cursor:pointer; font-weight:600; color:var(--ink); }
.pane { display:none; }
.pane.active { display:block; }
.kpi-grid { display:grid; gap:10px; margin-bottom:12px; min-width:0; }
.kpi-grid.four { grid-template-columns:repeat(4,minmax(160px,1fr)); }
.kpi-grid.six { grid-template-columns:repeat(6,minmax(130px,1fr)); }
.kpi-grid.two { grid-template-columns:repeat(2,minmax(160px,1fr)); }
.kpi { background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:12px; }
.kpi h4 { margin:0 0 6px; color:var(--muted); font-size:13px; }
.kpi strong { font-size:24px; }
.metric-source { display:block; margin-top:6px; color:var(--muted); font-size:12px; line-height:1.35; }
.kpi-link {
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  font-size: 38px;
  font-weight: 700;
  color: var(--ink);
  cursor: pointer;
  line-height: 1;
  text-align: left;
}
.kpi-link:hover,
.kpi-link:focus-visible {
  text-decoration: underline;
  outline: none;
}
.kpi.teal { border-left:5px solid var(--teal); }
.kpi.orange { border-left:5px solid var(--orange); }
.kpi.purple { border-left:5px solid var(--purple); }
.kpi.navy { border-left:5px solid var(--navy); }
.panel { background:rgba(255,255,255,0.88); border:1px solid rgba(206,217,234,0.92); border-radius:18px; padding:14px; margin-bottom:12px; min-width:0; overflow-x:auto; box-shadow:0 18px 45px rgba(18,41,83,0.08); backdrop-filter:blur(12px); }
.panel h3 { margin:0 0 10px; font-size:24px; }
.workspace-summary {
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);
  gap:12px;
  margin-bottom:12px;
}
.workspace-summary-card--identity:only-child {
  grid-column:1 / -1;
}
.workspace-summary-card {
  background:linear-gradient(180deg, var(--panel) 0%, var(--panel-subtle) 100%);
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px;
  box-shadow:0 8px 24px rgba(16,35,56,0.04);
  min-width:0;
}
.workspace-summary__header {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  flex-wrap:wrap;
}
.workspace-summary__header h2 {
  margin:4px 0 0;
  font-size:28px;
}
.workspace-summary__badges {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.workspace-badge {
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--panel-subtle);
  border:1px solid var(--line);
  color:var(--ink);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.workspace-badge--ready {
  background:var(--success-soft);
  border-color:var(--line);
  color:var(--success);
}
.workspace-summary__details {
  margin:10px 0 0;
  color:var(--muted);
  line-height:1.5;
}
.workspace-summary__section + .workspace-summary__section {
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--line);
}
.workspace-chip-list {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
}
.workspace-chip {
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--panel-subtle);
  border:1px solid var(--line);
  color:var(--ink);
  font-size:12px;
  font-weight:600;
}
.workspace-chip--locked {
  background:var(--warning-soft);
  border-color:var(--warning);
  color:var(--warning);
}
.workspace-upgrade-link {
  display:inline-flex;
  margin-top:12px;
  color:var(--teal);
  font-weight:700;
  text-decoration:none;
}
.workspace-upgrade-link:hover { text-decoration:underline; }
.workspace-command-center {
  display:none;
}
.workspace-page .workspace-command-center {
  display:block;
}
.workspace-page .workspace-mobile-kpis {
  grid-template-columns:repeat(4, minmax(0,1fr));
}
.workspace-page .workspace-visual-grid {
  grid-template-columns:repeat(2, minmax(0,1fr));
}
.workspace-page .workspace-summary {
  margin-top:14px;
}
.workspace-mobile-kpis {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
  margin-bottom:12px;
}
.workspace-mobile-kpi,
.workspace-mobile-panel {
  background:rgba(255,255,255,0.9);
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 18px 45px rgba(18,41,83,0.08);
  backdrop-filter:blur(12px);
}
.workspace-mobile-kpi {
  min-height:96px;
  padding:12px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.workspace-mobile-kpi span,
.workspace-attention-grid span,
.workspace-mobile-panel__head span {
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}
.workspace-mobile-kpi strong {
  color:var(--ink);
  font-size:30px;
  line-height:1;
}
.workspace-mobile-panel {
  padding:14px;
  margin-bottom:12px;
}
.workspace-mobile-panel__head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.workspace-mobile-panel__head h2 {
  margin:0;
  font-size:22px;
}
.workspace-mobile-panel__head > span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--teal-soft);
  border:1px solid var(--line);
  color:var(--teal);
}
.workspace-attention-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:8px;
}
.workspace-attention-grid article {
  border:1px solid rgba(197,212,234,0.86);
  border-radius:12px;
  background:var(--panel-subtle);
  padding:10px;
  min-height:78px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:background 0.2s ease, border-color 0.2s ease;
}
.workspace-attention-tile.has-value {
  background:var(--warning-soft);
  border-color:var(--warning);
}
.workspace-attention-value {
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  color:var(--ink);
  font-size:28px;
  font-weight:800;
  text-align:left;
  cursor:pointer;
  line-height:1;
}
.workspace-attention-tile.has-value .workspace-attention-value {
  color:var(--warning);
}
.workspace-attention-value:hover,
.workspace-attention-value:focus-visible {
  text-decoration:underline;
  outline:none;
}
.workspace-visual-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.workspace-order-flow {
  display:flex;
  align-items:stretch;
  gap:3px;
  height:34px;
  border-radius:8px;
  overflow:hidden;
}
.workspace-order-flow__segment {
  position:relative;
  min-width:4%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  transition:width 0.4s ease;
}
.workspace-order-flow__segment--active::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.30) 45%, rgba(255,255,255,0.5) 50%, rgba(255,255,255,0.30) 55%, transparent 100%);
  transform:translateX(-100%);
  animation:workspace-order-flow-shimmer 3.2s ease-in-out infinite;
}
@keyframes workspace-order-flow-shimmer {
  0% { transform:translateX(-100%); }
  100% { transform:translateX(100%); }
}
@media (prefers-reduced-motion: reduce) {
  .workspace-order-flow__segment--active::after { animation:none; display:none; }
}
.workspace-order-flow__labels {
  display:flex;
  justify-content:space-between;
  gap:8px;
  margin-top:8px;
  flex-wrap:wrap;
}
.workspace-order-flow__labels span {
  color:var(--muted);
  font-size:11.5px;
  font-weight:700;
  display:flex;
  gap:4px;
  align-items:baseline;
}
.workspace-order-flow__labels strong {
  color:var(--ink);
  font-size:13px;
}
.workspace-mini-chart {
  height:120px;
  border:1px dashed var(--line);
  border-radius:12px;
  display:grid;
  place-items:center;
  color:var(--muted);
  background:linear-gradient(180deg,var(--panel-subtle),var(--teal-soft));
  overflow:hidden;
}
.workspace-pie-row {
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  gap:14px;
  align-items:center;
}
.workspace-pie-chart {
  width:112px;
  height:112px;
  border-radius:50%;
  background:conic-gradient(#dbe7f4 0deg 360deg);
  position:relative;
  box-shadow:inset 0 0 0 1px rgba(14,36,84,0.08);
}
.workspace-pie-chart::after {
  content:"";
  position:absolute;
  inset:26px;
  border-radius:50%;
  background:var(--panel);
}
.workspace-pie-legend {
  display:grid;
  gap:8px;
}
.workspace-pie-legend span {
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-weight:700;
}
.workspace-pie-legend i {
  width:12px;
  height:12px;
  border-radius:999px;
  display:inline-block;
}
.workspace-open-orders-toolbar {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.workspace-hidden-note {
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  margin-right:auto;
}
.workspace-mini-btn {
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--panel);
  color:var(--ink);
  font-size:12px;
  font-weight:700;
  padding:6px 10px;
  cursor:pointer;
}
.workspace-mini-btn:hover:not(:disabled) {
  border-color:var(--purple);
  color:var(--purple);
}
.workspace-mini-btn:disabled {
  opacity:0.5;
  cursor:not-allowed;
}
.workspace-open-orders {
  display:grid;
  gap:6px;
  max-height:340px;
  overflow:auto;
  padding-right:2px;
}
.workspace-open-orders__row {
  display:grid;
  grid-template-columns:26px minmax(70px,0.9fr) minmax(80px,1.1fr) minmax(90px,1.3fr) minmax(80px,0.9fr) minmax(90px,1fr) minmax(70px,0.8fr);
  align-items:center;
  gap:8px;
  border:1px solid rgba(197,212,234,0.86);
  border-radius:10px;
  background:var(--panel);
  padding:8px 10px;
  min-width:0;
}
.workspace-open-orders__row > span {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted);
  font-size:12.5px;
}
.workspace-open-orders__row--head {
  background:transparent;
  border:0;
  padding:0 10px;
  position:sticky;
  top:0;
}
.workspace-open-orders__row--head > span {
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.04em;
}
.workspace-open-orders__row strong {
  color:var(--ink);
}
.workspace-order-select {
  width:15px;
  height:15px;
  cursor:pointer;
}
.workspace-open-orders__row .is-overdue {
  color:var(--danger);
  background:var(--danger-soft);
  border-radius:999px;
  padding:2px 8px;
  font-weight:800;
  text-align:center;
}
.workspace-open-orders__row .is-risk {
  color:var(--warning);
  background:var(--warning-soft);
  border-radius:999px;
  padding:2px 8px;
  font-weight:800;
  text-align:center;
}
.workspace-open-orders__row .is-open {
  color:var(--info);
  background:var(--info-soft);
  border-radius:999px;
  padding:2px 8px;
  font-weight:800;
  text-align:center;
}
.workspace-ledger-row {
  display:grid;
  grid-template-columns:minmax(80px,0.7fr) minmax(70px,0.7fr) minmax(120px,2fr) minmax(70px,0.8fr) minmax(80px,0.7fr);
  align-items:center;
  gap:8px;
  border:1px solid rgba(197,212,234,0.86);
  border-radius:10px;
  background:var(--panel);
  padding:8px 10px;
  min-width:0;
}
.workspace-ledger-summary {
  color:var(--muted);
  font-size:12.5px;
  font-weight:700;
  margin-bottom:8px;
}
.store-console-row--validation td {
  background:var(--panel-subtle);
  border-top:1px dashed rgba(54,95,199,0.35);
  font-weight:700;
  color:var(--ink);
}
.workspace-ledger-row > span {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted);
  font-size:12.5px;
}
.workspace-ledger-row--head {
  background:transparent;
  border:0;
  padding:0 10px;
}
.workspace-ledger-row--head > span {
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.04em;
}
.workspace-empty-state {
  border:1px dashed var(--line);
  border-radius:12px;
  padding:18px;
  text-align:center;
  color:var(--muted);
  background:var(--panel-subtle);
}
.analytics-mobile-visuals {
  display:none;
}
.analytics-mobile-chart-panel {
  overflow:hidden;
}
.analytics-mobile-chart-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.analytics-mobile-chart-head h3 {
  margin:0;
  font-size:22px;
}
.analytics-mobile-chart-head span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--teal-soft);
  border:1px solid var(--line);
  color:var(--teal);
  font-size:12px;
  font-weight:800;
}
.analytics-mobile-chart-empty {
  height:120px;
  border:1px dashed var(--line);
  border-radius:12px;
  display:grid;
  place-items:center;
  color:var(--muted);
  background:linear-gradient(180deg,var(--panel-subtle),var(--teal-soft));
  overflow:hidden;
}
.analytics-mobile-pie-row {
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  gap:14px;
  align-items:center;
}
.analytics-mobile-pie {
  width:112px;
  height:112px;
  border-radius:50%;
  background:conic-gradient(#dbe7f4 0deg 360deg);
  position:relative;
  box-shadow:inset 0 0 0 1px rgba(14,36,84,0.08);
}
.analytics-mobile-pie::after {
  content:"";
  position:absolute;
  inset:26px;
  border-radius:50%;
  background:var(--panel);
}
.analytics-mobile-pie-legend {
  display:grid;
  gap:8px;
}
.analytics-mobile-pie-legend span {
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-weight:700;
}
.analytics-mobile-pie-legend i {
  width:12px;
  height:12px;
  border-radius:999px;
  display:inline-block;
}
.source-summary { margin: 4px 0 10px; font-size: 12px; color: var(--muted); }
.assumptions-panel {
  background: linear-gradient(180deg, var(--panel-subtle) 0%, var(--panel-subtle) 100%);
}
.assumptions-summary-toggle {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  font-size:24px;
  font-weight:800;
  list-style:none;
}
.assumptions-summary-toggle::-webkit-details-marker {
  display:none;
}
.assumptions-summary-state {
  border:1px solid rgba(130,203,203,0.75);
  background:var(--teal-soft);
  color:var(--teal);
  border-radius:999px;
  padding:4px 10px;
  font-size:12px;
  font-weight:800;
}
.assumptions-panel[open] .assumptions-summary-state::before {
  content:"Hide ";
}
.profit-assumptions-detail {
  display:grid;
  gap:12px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(197,212,234,0.72);
}
.assumptions-period {
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}
.assumption-metric-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px;
}
.assumption-metric {
  min-width:0;
  padding:10px;
  border:1px solid rgba(197,212,234,0.82);
  border-radius:12px;
  background:rgba(255,255,255,0.82);
}
.assumption-metric span,
.assumption-metric em {
  display:block;
  font-size:11px;
  font-style:normal;
  font-weight:800;
}
.assumption-metric span {
  color:var(--muted);
}
.assumption-metric strong {
  display:block;
  margin:4px 0 2px;
  color:var(--ink);
  font-size:18px;
  line-height:1.05;
  overflow-wrap:anywhere;
}
.assumption-metric em {
  color:var(--teal);
}
.assumption-metric--cost em {
  color:var(--warning);
}
.assumption-metric--revenue {
  border-top:3px solid #16b9b1;
}
.assumption-metric--cost {
  border-top:3px solid #ef7a45;
}
.assumption-metric--profit {
  border-top:3px solid #365fc7;
}
.assumption-metric--margin {
  border-top:3px solid #31a46c;
}
.assumption-chart-panel {
  padding:10px;
  border:1px solid rgba(197,212,234,0.82);
  border-radius:12px;
  background:linear-gradient(180deg,var(--panel),var(--teal-soft));
}
.assumption-mini-chart {
  min-height:132px;
  display:grid;
  grid-template-columns:repeat(7, minmax(0,1fr));
  gap:8px;
  align-items:end;
}
.assumption-chart-group {
  min-width:0;
  display:grid;
  gap:6px;
  justify-items:center;
}
.assumption-bars {
  height:96px;
  display:flex;
  align-items:end;
  justify-content:center;
  gap:4px;
}
.assumption-bar {
  width:10px;
  min-height:8px;
  border-radius:5px 5px 2px 2px;
  box-shadow:0 4px 10px rgba(16,37,71,0.1);
}
.assumption-bar--sales {
  background:#16b9b1;
}
.assumption-bar--profit {
  background:#365fc7;
}
.assumption-chart-group small {
  color:var(--muted);
  font-size:10px;
  font-weight:700;
}
.assumption-chart-empty {
  grid-column:1 / -1;
  min-height:112px;
  display:grid;
  place-items:center;
  color:var(--muted);
  border:1px dashed var(--line);
  border-radius:10px;
}
.assumption-chart-legend {
  display:flex;
  justify-content:center;
  gap:16px;
  margin-top:8px;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.assumption-chart-legend span {
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.assumption-chart-legend i {
  width:10px;
  height:10px;
  border-radius:3px;
}
.legend-sales {
  background:#16b9b1;
}
.legend-profit {
  background:#365fc7;
}
.assumption-web-breakdown {
  display:grid;
  gap:14px;
  padding:12px;
  border:1px solid rgba(197,212,234,0.82);
  border-radius:14px;
  background:var(--panel);
}
.assumption-window-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--muted);
}
.assumption-window-head span {
  display:block;
  font-size:12px;
  font-weight:800;
}
.assumption-window-head strong {
  color:var(--ink);
  font-size:13px;
}
.assumption-web-tabs {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:0;
  border-bottom:1px solid var(--line);
}
.assumption-web-tabs article {
  position:relative;
  min-width:0;
  padding:0 12px 12px;
}
.assumption-web-tabs article:first-child {
  padding-left:0;
}
.assumption-web-tabs article:first-child::after {
  content:"";
  position:absolute;
  left:0;
  right:12px;
  bottom:-1px;
  height:3px;
  border-radius:999px;
  background:#16b9b1;
}
.assumption-web-tabs span,
.assumption-web-tabs em {
  display:block;
  font-size:12px;
  font-style:normal;
  font-weight:800;
}
.assumption-web-tabs span {
  color:var(--muted);
}
.assumption-web-tabs strong {
  display:block;
  margin:6px 0 2px;
  color:var(--ink);
  font-size:18px;
  line-height:1.05;
}
.assumption-web-tabs em,
.assumption-total-cost em {
  color:var(--teal);
}
.assumption-split-breakdown {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:18px;
}
.assumption-split-breakdown h4 {
  margin:0 0 10px;
  color:var(--muted);
  font-size:13px;
  font-weight:800;
}
.assumption-store-list,
.assumption-cost-list {
  display:grid;
  gap:10px;
}
.assumption-store-row {
  display:grid;
  gap:6px;
}
.assumption-store-row > div,
.assumption-cost-row {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:8px;
  align-items:center;
}
.assumption-store-icon {
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:6px;
  background:var(--teal-soft);
  color:var(--teal);
  font-size:11px;
  font-weight:900;
}
.assumption-store-row strong,
.assumption-cost-row span {
  color:var(--ink);
  font-size:13px;
  font-weight:800;
}
.assumption-store-row em,
.assumption-cost-row strong {
  color:var(--ink);
  font-size:13px;
  font-style:normal;
  font-weight:900;
}
.assumption-store-bar {
  display:block;
  height:4px;
  border-radius:999px;
  background:var(--line);
  overflow:hidden;
}
.assumption-store-bar i {
  display:block;
  height:100%;
  border-radius:999px;
  background:#16b9b1;
}
.assumption-total-cost {
  display:flex;
  align-items:baseline;
  gap:8px;
  margin-bottom:12px;
}
.assumption-total-cost strong {
  color:var(--ink);
  font-size:20px;
}
.assumption-total-cost em,
.assumption-cost-row em {
  font-size:12px;
  font-style:normal;
  font-weight:800;
}
.assumption-cost-row {
  grid-template-columns:minmax(0,1fr) auto auto;
  border-top:1px solid var(--line);
  padding-top:9px;
}
.assumption-cost-row em.is-warning {
  color:var(--warning);
}
.assumption-cost-row em.is-good {
  color:var(--teal);
}
.assumption-empty-row {
  padding:12px;
  color:var(--muted);
  border:1px dashed var(--line);
  border-radius:10px;
  background:var(--panel-subtle);
  text-align:center;
}
.assumption-summary {
  margin: 0 0 8px;
}
.assumptions-list {
  margin: 0;
  padding-left: 18px;
  color: var(--ink);
}
.assumptions-list li {
  margin-bottom: 6px;
  line-height: 1.35;
}
.section-subheading {
  margin:12px 0 8px;
}
.obs-summary-spaced {
  margin-bottom:8px;
}
.filters-row { display:flex; gap:8px; margin-bottom:10px; flex-wrap:wrap; min-width:0; }
.filters-row input { min-width:min(260px, 100%); }
.grid-table { width:100%; border-collapse:collapse; font-size:14px; }
.grid-table th, .grid-table td { border-bottom:1px solid var(--line); padding:10px 8px; text-align:left; }
.grid-table th { color:var(--muted); font-weight:600; }
.grid-table th.numeric,
.grid-table td.numeric { text-align:right; font-variant-numeric:tabular-nums; }
.grid-table td.channel-empty { text-align:center; color:var(--muted); }
.grid-table tbody tr:hover { background-color:var(--teal-soft); }
.orders-mobile-list {
  display:none;
}
.order-mobile-card {
  border:1px solid var(--line);
  border-radius:12px;
  padding:12px;
  background:var(--panel);
  margin-bottom:8px;
}
.order-mobile-card div {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
}
.order-mobile-card strong {
  color:var(--ink);
}
.order-mobile-card span,
.order-mobile-card p {
  color:var(--muted);
}
.order-mobile-card p {
  margin:8px 0 0;
}
.row-actions { display:flex; gap:6px; flex-wrap:wrap; }
.row-actions button { border:1px solid var(--line); background:var(--panel-subtle); color:var(--ink); border-radius:8px; padding:6px 8px; min-height:32px; font-size:12px; cursor:pointer; }
.row-actions button.primary { background:var(--teal); border-color:var(--teal); color:var(--on-action); }
.shipping-action-row {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line);
}
.shipping-filter-row {
  margin-bottom: 10px;
  padding-top: 2px;
}
.shipping-action-row button,
.shipping-filter-row button {
  min-height: 36px;
  padding: 8px 12px;
}
.shipping-filter-row .muted {
  font-size: 14px;
}
.shopops-toast { position:fixed; right:14px; bottom:14px; z-index:60; background:linear-gradient(135deg, var(--strong-accent), var(--strong)); color:var(--on-strong); border-radius:10px; padding:10px 12px; border:1px solid var(--line-on-strong); box-shadow:0 10px 25px rgba(2,6,23,0.35); font-size:12px; }
.empty { border:1px dashed var(--line); border-radius:10px; padding:24px; text-align:center; color:var(--muted); background:var(--panel-subtle); }
.hidden { display:none; }
.status-chip,
.status-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:12px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  vertical-align:middle;
}
.status-critical { background:var(--danger-soft); border-color:var(--danger); color:var(--danger); }
.status-low { background:var(--info-soft); border-color:var(--info); color:var(--info); }
.status-healthy { background:var(--success-soft); border-color:var(--line); color:var(--success); }
.status-on-time { background:var(--info-soft); border-color:var(--info); color:var(--info); }
.status-at-risk { background:var(--warning-soft); border-color:var(--warning); color:var(--warning); }
.status-action-required { background:var(--danger-soft); border-color:var(--danger); color:var(--danger); }
.status-pending { background:var(--panel-subtle); border-color:var(--line); color:var(--ink); }
.status-packed { background:var(--teal-soft); border-color:var(--teal); color:var(--teal); }
.status-delivered { background:var(--success-soft); border-color:var(--success); color:var(--success); }
.status-in-transit { background:var(--info-soft); border-color:var(--info); color:var(--info); }
.status-label-created { background:var(--info-soft); border-color:var(--info); color:var(--info); }
.status-address-valid { background:var(--success-soft); border-color:var(--success); color:var(--success); }
.status-address-invalid { background:var(--danger-soft); border-color:var(--danger); color:var(--danger); }
.status-address-warning { background:var(--warning-soft); border-color:var(--warning); color:var(--warning); }
.status-address-error { background:var(--danger-soft); border-color:var(--danger); color:var(--danger); }
.status-address-unchecked { background:var(--panel-subtle); border-color:var(--line); color:var(--ink); }
.address-check-wrap { display:inline-flex; align-items:center; gap:6px; min-width:0; }
.address-check-time { white-space:nowrap; }
.address-validation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.address-validation-grid p { margin:0; }
.address-validation-grid strong { display:block; font-size:12px; color:var(--muted); }
.address-validation-normalized { grid-column:1 / -1; white-space:pre-line; }
.shipping-sheet.hidden { display:none; }
.shipping-sheet { position:fixed; inset:0; z-index:90; display:flex; align-items:flex-end; justify-content:center; }
.shipping-sheet-backdrop { position:absolute; inset:0; background:rgba(15,23,42,0.32); }
.shipping-sheet-panel { position:relative; width:min(1180px, calc(100vw - 28px)); min-height:72vh; max-height:88vh; background:var(--panel); border:1px solid var(--line); border-bottom:0; border-radius:14px 14px 0 0; box-shadow:0 -18px 46px rgba(15,23,42,0.24); display:flex; flex-direction:column; overflow:hidden; transform:translateY(0); animation:shippingSheetUp 180ms ease-out; }
@keyframes shippingSheetUp { from { transform:translateY(24px); opacity:.76; } to { transform:translateY(0); opacity:1; } }
.shipping-sheet-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:16px 18px; border-bottom:1px solid var(--line); background:var(--panel-subtle); }
.shipping-sheet-head h3 { margin:0; }
.shipping-sheet-head p { margin:4px 0 0; }
.shipping-sheet-head button { min-width:36px; }
.shipping-sheet-actions { display:flex; align-items:center; gap:8px; }
.shipping-sheet-body { padding:16px 18px 86px; overflow:auto; }
.shipment-detail-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.45fr); gap:12px; }
.shipment-detail-section { border:1px solid var(--line); border-radius:8px; padding:12px; background:var(--panel); margin-bottom:12px; }
.shipment-detail-section h4, .shipment-customs h4 { margin:0 0 10px; }
.shipment-address { white-space:pre-line; margin-bottom:0; }
.shipment-costs p { display:flex; justify-content:space-between; gap:12px; margin:5px 0; }
.shipment-items { display:grid; gap:8px; }
.shipment-item { display:grid; grid-template-columns:44px minmax(0,1fr) auto auto; align-items:center; gap:10px; border-bottom:1px solid var(--line); padding:8px 0; }
.shipment-item img { width:44px; height:44px; border-radius:6px; object-fit:cover; background:var(--panel-subtle); }
.shipment-item small { display:block; }
.shipment-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.shipment-config-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.shipment-config-grid label, .shipment-customs label { display:grid; gap:5px; color:var(--ink); font-weight:600; }
.shipment-config-grid label span { display:flex; gap:6px; }
.shipment-config-grid input, .shipment-config-grid select, .shipment-customs select { min-width:0; width:100%; }
.shipment-customs { margin-top:12px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.shipment-customs h4 { grid-column:1 / -1; }
.shipping-purchase-bar { position:absolute; left:0; right:0; bottom:0; min-height:70px; display:flex; align-items:center; justify-content:flex-end; gap:16px; padding:12px 18px; background:var(--panel-subtle); border-top:1px solid var(--line); box-shadow:0 -8px 20px rgba(15,23,42,0.08); }
.shipping-carrier-summary { margin-right:auto; display:flex; align-items:center; gap:10px; min-width:0; }
.shipping-carrier-mark { width:38px; height:38px; border-radius:8px; display:grid; place-items:center; background:var(--info-soft); border:1px solid var(--info); color:var(--info); font-weight:800; font-size:12px; overflow:hidden; }
.shipping-carrier-logo-img { width:26px; height:26px; object-fit:contain; }
.shipping-carrier-summary small { display:block; }
.shipping-orders-bulk { display:inline-flex; flex-wrap:wrap; gap:6px; margin:0; }
.shipping-order-link { padding:0; min-height:auto; }
@media (max-width: 760px) {
  .shipment-detail-grid, .shipment-config-grid, .shipment-customs { grid-template-columns:1fr; }
  .shipping-sheet-panel { width:100vw; max-height:92vh; border-radius:12px 12px 0 0; }
  .shipping-purchase-bar { align-items:stretch; flex-wrap:wrap; }
}
.alert { background:var(--danger-soft); border:1px solid var(--danger); color:var(--danger); padding:10px 12px; border-radius:10px; margin-bottom:12px; }
.alert-link { color:var(--danger); font-weight:700; text-decoration:underline; margin:0 4px; }
.alert-link:hover { color:var(--danger); text-decoration-thickness:2px; }
.split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; min-width:0; }
.feed { margin:0; padding-left:18px; color:var(--ink); }
.chart-placeholder { height:220px; border:1px dashed var(--line); border-radius:10px; display:grid; place-items:center; color:var(--muted); background:linear-gradient(180deg,var(--panel-subtle),var(--bg)); }
.chart-placeholder.mini { height:120px; margin-top:10px; }
.donut-wrap { display:flex; gap:16px; align-items:center; }
.donut { width:140px; height:140px; border-radius:50%; background:conic-gradient(#3b82f6 0 22%, #f97316 22% 38%, #ef4444 38% 50%, #1d4ed8 50% 64%, #10b981 64% 100%); position:relative; }
.donut::after { content:""; position:absolute; inset:26px; background:var(--panel); border-radius:50%; }
.analytics-shell.nav-collapsed { grid-template-columns:64px 1fr; }
.analytics-shell.nav-collapsed .analytics-sidebar {
  width:64px;
  padding:12px;
  border-right:1px solid rgba(206,217,234,0.92);
  overflow:hidden;
}
.analytics-shell.nav-collapsed .sidebar-head { justify-content:center; }
.analytics-shell.nav-collapsed .brand,
.analytics-shell.nav-collapsed .shop-pill,
.analytics-shell.nav-collapsed .analytics-sidebar nav,
.analytics-shell.nav-collapsed .analytics-sidebar .subnav:not(.toggle) {
  display:none;
}
.analytics-shell.nav-collapsed .shop-pill,
.analytics-shell.nav-collapsed .analytics-sidebar nav {
  display:none;
}
.subnav.is-locked {
  opacity:0.7;
  border-color:rgba(206,217,234,0.92);
  background:rgba(255,255,255,0.58);
}
.subnav.is-locked::after {
  content:"Locked";
  float:right;
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
}
.subnav.is-locked.active {
  background:rgba(26,167,161,0.12);
  color:var(--teal);
}
.subnav.is-locked.active::after {
  color:var(--teal);
}
.subnav.is-locked:hover {
  background:rgba(26,167,161,0.08);
  color:var(--teal);
}
.subnav.is-locked[data-upgrade-href] {
  cursor:pointer;
}
.workspace-transition {
  position:fixed;
  inset:0;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,0.82);
  backdrop-filter:blur(8px);
  z-index:120;
  padding:24px;
}
.workspace-transition.hidden { display:none; }
.workspace-transition__card {
  width:min(100%, 360px);
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:18px;
  padding:24px;
  box-shadow:0 24px 70px rgba(16,35,56,0.18);
  text-align:center;
}
.workspace-transition__spinner {
  width:44px;
  height:44px;
  margin:0 auto 12px;
  border-radius:50%;
  border:4px solid var(--line);
  border-top-color:var(--teal);
  display:block;
  animation: workspace-spin 0.85s linear infinite;
}
.workspace-transition__card strong {
  display:block;
  font-size:18px;
  margin-bottom:6px;
}
.workspace-transition__card p {
  margin:0;
  color:var(--muted);
  line-height:1.45;
}
@keyframes workspace-spin {
  to { transform: rotate(360deg); }
}

/* Team page cards */
#teamGrid { grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); }
#teamGrid .card { background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:14px; }
#teamGrid .head { display:flex; gap:10px; align-items:center; }
#teamGrid .avatar { width:56px; height:56px; border-radius:10px; object-fit:cover; border:1px solid var(--line); }
#teamGrid .name { margin:0; font-size:18px; }
#teamGrid .title { margin:3px 0 0; color:var(--muted); font-size:13px; }
#teamGrid .badges { display:flex; gap:8px; margin-top:8px; }
#teamGrid .badge { font-size:11px; padding:4px 8px; border-radius:999px; border:1px solid var(--line); }
#teamGrid .status-online { background:var(--success-soft); border-color:var(--success); color:var(--success); }
#teamGrid .status-reviewing { background:var(--warning-soft); border-color:var(--warning); color:var(--warning); }
#teamGrid .status-focus { background:var(--info-soft); border-color:var(--info); color:var(--info); }
#teamGrid .tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
#teamGrid .tag { font-size:11px; padding:4px 8px; border-radius:999px; background:var(--panel-subtle); color:var(--ink); }
#teamGrid .trait { margin-top:10px; font-size:13px; color:var(--ink); }
#teamGrid .actions { margin-top:12px; display:flex; gap:10px; }
#teamGrid .actions a { font-size:12px; text-decoration:none; color:var(--info); }
.panel textarea, .panel input { width:100%; box-sizing:border-box; margin-top:6px; margin-bottom:8px; padding:8px; border:1px solid var(--line); border-radius:8px; }
.panel pre { white-space: pre-wrap; background:var(--panel-subtle); border:1px solid var(--line); border-radius:8px; padding:8px; max-height:300px; overflow:auto; }
.panel button { padding:8px 10px; border:1px solid var(--line); background:var(--panel-subtle); border-radius:8px; cursor:pointer; }
.media-item-layout { display:flex; gap:10px; align-items:flex-start; }
.media-item-thumb { width:96px; height:96px; object-fit:cover; border-radius:8px; }
.media-item-body { flex:1; }
.media-item-actions { margin-top:8px; display:flex; gap:8px; }
.media-item-cover { width:100%; max-height:140px; object-fit:cover; border-radius:8px; }
.creative-output-preview { width:100%; max-height:140px; object-fit:cover; border-radius:8px; }
.market-insights .insights-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; flex-wrap:wrap; }
.market-insights .insights-controls { margin-bottom:0; }
.kpi-grid.three { grid-template-columns:repeat(3,minmax(160px,1fr)); }
.insight-callouts { display:grid; grid-template-columns:repeat(3,minmax(180px,1fr)); gap:10px; margin-top:10px; }
.insight-card { border:1px solid var(--line); border-radius:10px; background:var(--panel-subtle); padding:10px; }
.insight-card h4 { margin:0 0 6px; font-size:14px; color:var(--ink); }
.insight-card p { margin:0; color:var(--muted); font-size:13px; line-height:1.35; }
@media (max-width:1200px){ .kpi-grid.four{grid-template-columns:repeat(2,minmax(160px,1fr));} .kpi-grid.six{grid-template-columns:repeat(3,minmax(130px,1fr));} }
@media (max-width:900px){
  .analytics-shell{grid-template-columns:1fr; min-height:0; align-items:start;}
  .analytics-sidebar{min-height:0;}
  .split{grid-template-columns:1fr;}
  .analytics-shell.nav-collapsed{grid-template-columns:1fr;}
  .analytics-shell.nav-collapsed .analytics-sidebar{transform:none;width:auto;padding:18px;border-right:0;}
  .kpi-grid.three{grid-template-columns:1fr;}
  .insight-callouts{grid-template-columns:1fr;}
  .workspace-summary{grid-template-columns:1fr;}
}

.shipping-workspace { display:grid; grid-template-columns:220px minmax(0,1fr); gap:12px; min-width:0; }
.shipping-rail { border:1px solid var(--line); border-radius:10px; padding:10px; background:var(--panel-subtle); }
.shipping-rail h4 { margin:0 0 8px; font-size:16px; color:var(--ink); }
.shipping-rail-link { width:100%; text-align:left; margin-bottom:6px; border:1px solid transparent; background:var(--panel-subtle); color:var(--ink); border-radius:8px; padding:8px 10px; cursor:pointer; }
.shipping-rail-link.active { background:rgba(26,167,161,0.14); color:var(--teal); border-color:rgba(26,167,161,0.42); font-weight:700; }
.shipping-canvas { border:1px solid var(--line); border-radius:10px; padding:10px; background:var(--panel); }
.shipping-action-row button { background:var(--panel-subtle); border-color:var(--line); color:var(--ink); }
.shipping-filter-row { align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:8px 0; }
.shipping-filter-btn { background:var(--panel); border:1px solid var(--line); color:var(--ink); }
.shipping-filter-btn.active { background:rgba(26,167,161,0.14); border-color:rgba(26,167,161,0.42); color:var(--teal); font-weight:700; }
.orders-workspace { display:grid; grid-template-columns:220px minmax(0,1fr); gap:12px; min-width:0; }
.orders-rail { border:1px solid var(--line); border-radius:10px; padding:10px; background:var(--panel-subtle); }
.orders-rail h4 { margin:0 0 8px; font-size:16px; color:var(--ink); }
.orders-rail-link { width:100%; text-align:left; margin-bottom:6px; border:1px solid transparent; background:var(--panel-subtle); color:var(--ink); border-radius:8px; padding:8px 10px; cursor:pointer; }
.orders-rail-link.active { background:rgba(26,167,161,0.14); color:var(--teal); border-color:rgba(26,167,161,0.42); font-weight:700; }
.orders-canvas { border:1px solid var(--line); border-radius:10px; padding:10px; background:var(--panel); }
.orders-action-row button { background:var(--panel-subtle); border-color:var(--line); color:var(--ink); }
.orders-filter-row { align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:8px 0; }
.orders-filter-btn { background:var(--panel); border:1px solid var(--line); color:var(--ink); }
.orders-filter-btn.is-active { background:var(--info-soft); border-color:var(--info); color:var(--ink); font-weight:600; }
#clearOrdersFiltersBtn:disabled { opacity:0.6; cursor:not-allowed; }
@media (max-width:1100px) { .shipping-workspace { grid-template-columns:1fr; } }
@media (max-width:1100px) { .orders-workspace { grid-template-columns:1fr; } }

.inventory-ops-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.inventory-ops-card { border:1px solid var(--line); border-radius:10px; background:var(--panel-subtle); padding:10px; }
.inventory-ops-card h4 { margin:0 0 8px; font-size:16px; color:var(--ink); }
.inventory-inline-check { display:inline-flex; align-items:center; gap:6px; font-size:13px; color:var(--ink); }
.inventory-inline-check input { width:auto; margin:0; }
.inventory-camera-wrap { border-top:1px solid var(--line); margin-top:8px; padding-top:10px; }
.inventory-scanner-video { width:100%; max-width:460px; border-radius:10px; border:1px solid var(--line); background:#0f172a; }
.inventory-mapping-input { min-width:120px; max-width:180px; width:100%; }
.inventory-mapping-actions { display:flex; gap:6px; flex-wrap:wrap; }
@media (max-width:1100px) { .inventory-ops-grid { grid-template-columns:1fr; } }

@media (max-width:900px) {
  .analytics-sidebar {
    padding:14px;
  }
  .users-page .analytics-sidebar {
    padding-bottom:10px;
  }
  .users-page .analytics-shell:not(.mobile-menu-open) .analytics-sidebar nav {
    display:none;
  }
  .users-page .shop-switcher {
    margin-bottom:6px;
  }
  .users-page .shop-switcher__status {
    min-height:0;
    margin-bottom:0;
  }
  .analytics-sidebar nav {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .subnav,
  .subnav.child {
    width:auto;
    margin-bottom:0;
  }
  .subnav-children {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    width:100%;
    margin:0;
    padding-left:0;
    border-left:0;
  }
  .topbar {
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .workspace-summary__header h2 {
    font-size:24px;
  }
  .topbar h1 {
    flex:1 1 220px;
  }
  .toolbar {
    flex:1 1 320px;
    justify-content:flex-start;
  }
  .toolbar input,
  .toolbar select,
  .filters-row input,
  .filters-row select,
  .filters-row button,
  .panel button {
    max-width:100%;
  }
  .toolbar input,
  .toolbar select,
  .filters-row input,
  .filters-row select {
    flex:1 1 220px;
  }
  .filters-row .subnav {
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .shipping-rail,
  .orders-rail {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .shipping-rail h4,
  .orders-rail h4 {
    flex:1 1 100%;
  }
  .shipping-rail-link,
  .orders-rail-link {
    width:auto;
    margin-bottom:0;
  }
  .donut-wrap,
  .media-item-layout {
    flex-wrap:wrap;
  }
}

@media (max-width:640px) {
  .analytics-main {
    padding:12px;
  }
  .users-page .analytics-main {
    padding-top:8px;
  }
  .users-page .topbar {
    margin-bottom:8px;
  }
  .analytics-sidebar {
    padding:12px;
  }
  .analytics-sidebar nav {
    display:none;
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar nav {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    align-content:flex-start;
    justify-content:flex-start;
    gap:6px;
    height:auto;
    min-height:0;
    margin-top:12px;
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav,
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav.child {
    width:100%;
    min-height:0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin:0;
    padding:2px 12px;
    font-size:18px;
    line-height:1.2;
    text-align:center;
    border-radius:12px;
    box-sizing:border-box;
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav-children {
    display:flex;
    flex-direction:column;
    gap:6px;
    margin:0;
    padding:0;
    border-left:0;
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav.child {
    min-height:0;
    font-size:16px;
    padding:2px 12px;
    background:rgba(255,255,255,0.82);
    border:1px solid rgba(197,212,234,0.92);
    color:var(--ink);
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav.child.active {
    color:var(--teal-dark);
    border-color:rgba(130,203,203,0.75);
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav.is-locked {
    justify-content:space-between;
    color:var(--muted) !important;
    font-size:18px;
    font-weight:800;
    background:rgba(255,255,255,0.58) !important;
    border:1px dashed rgba(148,163,184,0.58) !important;
    opacity:1;
  }
  .analytics-shell.mobile-menu-open .analytics-sidebar .subnav.is-locked::after {
    float:none;
    flex:0 0 auto;
    margin-left:12px;
    content:"Upgrade";
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:0;
    padding:2px 8px;
    border-radius:999px;
    background:var(--warning-soft);
    color:var(--warning);
    font-size:12px;
    font-weight:900;
    letter-spacing:0;
    text-transform:uppercase;
  }
  .brand {
    font-size:22px;
    margin-bottom:0;
  }
  .shop-pill {
    margin:10px 0 12px;
    overflow-wrap:anywhere;
  }
  .topbar h1 {
    flex-basis:100%;
    font-size:28px;
  }
  .workspace-summary {
    display:none;
  }
  .workspace-page .workspace-summary {
    display:grid;
  }
  .workspace-page .workspace-mobile-kpis {
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .workspace-page .workspace-visual-grid {
    grid-template-columns:1fr;
  }
  .workspace-command-center {
    display:block;
  }
  .analytics-mobile-visuals {
    display:grid;
    gap:12px;
    margin-bottom:12px;
  }
  .analytics-mobile-chart-panel {
    padding:14px;
  }
  .toolbar,
  .toolbar input,
  .toolbar select,
  .toolbar button,
  .filters-row input,
  .filters-row select,
  .filters-row button {
    width:100%;
  }
  .toolbar button,
  .filters-row button,
  .panel button {
    min-height:40px;
  }
  #exportOrdersCsv,
  #exportProductsCsv,
  #exportStoreCsv {
    display:none;
  }
  .filters-row label,
  .filters-row .muted {
    flex:1 1 100%;
  }
  .kpi-grid.four,
  .kpi-grid.six,
  .kpi-grid.two,
  .kpi-grid.three,
  .insights-kpis {
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .kpi-grid.six,
  .insights-kpis {
    grid-template-columns:1fr;
  }
  .kpi strong,
  .kpi-link {
    font-size:30px;
  }
  .panel {
    padding:10px;
  }
  .panel h3 {
    font-size:20px;
    line-height:1.15;
  }
  #ordersTable {
    display:none;
  }
  .orders-mobile-list {
    display:block;
  }
  .grid-table:not(#ordersTable) {
    min-width:640px;
  }
  .assumptions-panel:not([open]) {
    padding:12px;
  }
  .assumptions-panel:not([open]) .assumption-summary,
  .assumptions-panel:not([open]) .assumptions-list {
    display:none;
  }
  .assumptions-summary-toggle {
    font-size:20px;
  }
  .assumption-metric-grid {
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:8px;
  }
  .assumption-metric {
    padding:8px;
  }
  .assumption-metric strong {
    font-size:16px;
  }
  .assumption-mini-chart {
    gap:6px;
  }
  .assumption-bars {
    height:86px;
  }
  .assumption-bar {
    width:8px;
  }
  .assumption-chart-legend {
    flex-wrap:wrap;
    gap:10px;
  }
  .assumption-web-breakdown {
    display:none;
  }
  .row-actions {
    min-width:140px;
  }
  .shipping-action-row button,
  .shipping-filter-row button,
  .orders-action-row button,
  .orders-filter-row button {
    flex:1 1 150px;
  }
  .shipping-rail-link,
  .orders-rail-link {
    flex:1 1 150px;
  }
  .inventory-inline-check {
    flex:1 1 100%;
    align-items:flex-start;
  }
  .inventory-mapping-input {
    max-width:100%;
  }
  .inventory-scanner-video,
  .media-item-thumb,
  .media-item-body {
    width:100%;
    max-width:100%;
  }
  .media-item-actions {
    flex-wrap:wrap;
  }
  .shopops-toast {
    left:12px;
    right:12px;
    bottom:12px;
  }
}

@media (max-width:420px) {
  .analytics-main {
    padding:10px;
  }
  .analytics-sidebar {
    padding:10px;
  }
  .sidebar-head {
    align-items:flex-start;
  }
  .subnav,
  .subnav.child {
    flex:1 1 130px;
    text-align:center;
  }
  .subnav.toggle {
    flex:0 0 40px;
  }
  .topbar h1 {
    font-size:26px;
  }
  .workspace-summary {
    gap:10px;
  }
  .workspace-summary-card {
    padding:12px;
  }
  .toolbar input,
  .toolbar select,
  .toolbar button,
  .filters-row input,
  .filters-row select,
  .filters-row button {
    flex-basis:100%;
  }
  .empty {
    padding:18px 12px;
  }
  .chart-placeholder {
    height:180px;
  }
  .donut {
    width:120px;
    height:120px;
  }
  .donut::after {
    inset:22px;
  }
}
