.asset-scope { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.asset-scope > div:nth-child(2) { box-shadow: inset 0 -4px var(--teal); }
.asset-scope > div:nth-child(3) { box-shadow: inset 0 -4px #326b9a; }
.asset-scope > div:nth-child(4) { box-shadow: inset 0 -4px var(--red); }

.asset-chart .bar.incoming { background: var(--teal); }
.asset-chart .bar.outgoing { background: #326b9a; }
.asset-chart .bar.internal { background: #7a838b; }
.asset-chart .bar.loss { background: var(--red); }

.asset-legend .incoming::before { background: var(--teal); }
.asset-legend .outgoing::before { background: #326b9a; }
.asset-legend .internal::before { background: #7a838b; }
.asset-legend .loss::before { background: var(--red); }

.warehouse-grid {
  margin-bottom: 18px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.warehouse-block {
  padding: 15px;
  background: #fff;
  border: 1px solid var(--line);
  border-top: 4px solid var(--ink);
  border-radius: 6px;
}

.warehouse-block h3 { margin: 0 0 12px; font-size: 1rem; }
.warehouse-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.warehouse-metrics span, .warehouse-metrics strong { display: block; }
.warehouse-metrics span { color: var(--muted); font-size: 0.68rem; text-transform: uppercase; }
.warehouse-metrics strong { margin-top: 4px; font-size: 1rem; }
.warehouse-metrics .loss strong { color: var(--red); }

.loss-zero { color: #075c57; background: var(--teal-soft); border-left-color: var(--teal); }
.loss-cell strong { color: var(--red); }
.summary-title { margin-top: 2px; }

.return-scope { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.return-scope > div:nth-child(2) { box-shadow: inset 0 -4px var(--teal); }
.return-scope > div:nth-child(3) { box-shadow: inset 0 -4px var(--amber); }
.return-scope > div:nth-child(4) { box-shadow: inset 0 -4px #326b9a; }

.status-pill.pending-return { color: #754700; background: var(--amber-soft); }
.status-pill.operational-loss { color: #8b1721; background: var(--danger-soft); }
.status-pill.overreturned { color: #365063; background: #e8f0f5; }
.status-pill.no-activity { color: #59636b; background: #edf0f2; }
.return-row.operational-loss { background: #fff8f8; }
.return-row.pending-return { background: #fffdf8; }
.return-row td:first-child { box-shadow: inset 3px 0 transparent; }
.return-row.operational-loss td:first-child { box-shadow: inset 3px 0 var(--red); }
.return-row.pending-return td:first-child { box-shadow: inset 3px 0 var(--amber); }
.event-row.operational-loss td:first-child { box-shadow: inset 3px 0 var(--red); }
.event-row.pending-return td:first-child { box-shadow: inset 3px 0 var(--amber); }

.drill.event-mode { width: 100vw; }
.event-summary-head {
  margin-bottom: 15px;
  padding: 0 2px 14px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--line);
}
.event-summary-head h2 { margin: 4px 0 5px; font-size: 1.3rem; }
.event-summary-head p { margin: 0; color: var(--muted); font-size: 0.78rem; }
.event-eyebrow { color: var(--red); font-size: 0.7rem; font-weight: 800; text-transform: uppercase; }
.event-summary-grid {
  margin-bottom: 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}
.event-summary-grid .kpi { min-height: 102px; }
.event-summary-grid .kpi strong { font-size: 1.25rem; }
.compact-cell { min-width: 170px; }
.event-movements .table-wrap { max-height: none; }
.movement-pill {
  display: inline-flex;
  min-height: 25px;
  align-items: center;
  padding: 4px 7px;
  border-radius: 4px;
  font-size: 0.68rem;
  font-weight: 800;
  white-space: nowrap;
  background: #edf0f2;
}
.movement-pill.sent { color: #365063; background: #e8f0f5; }
.movement-pill.returned,
.movement-pill.receipt { color: #075c57; background: var(--teal-soft); }
.movement-pill.loss { color: #8b1721; background: var(--danger-soft); }
.movement-pill.issue { color: #754700; background: var(--amber-soft); }

.comparison-intro {
  margin: 22px 0 12px;
  display: flex;
  align-items: end;
  justify-content: space-between;
}
.comparison-intro h2 { margin: 3px 0 4px; font-size: 1.18rem; }
.comparison-intro p { margin: 0; color: var(--muted); font-size: 0.78rem; }
.document-compare-grid {
  margin-bottom: 16px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.document-lane {
  min-width: 0;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--line);
  border-top: 4px solid #326b9a;
  border-radius: 6px;
}
.document-lane.returned { border-top-color: var(--teal); }
.lane-head {
  margin-bottom: 11px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.lane-head span,
.lane-total span { display: block; color: var(--muted); font-size: 0.65rem; font-weight: 700; text-transform: uppercase; }
.lane-head h2 { margin: 3px 0 0; font-size: 1rem; }
.lane-total { flex: 0 0 auto; text-align: right; }
.lane-total strong { display: block; margin-top: 2px; font-size: 1.3rem; }
.document-list { display: grid; gap: 8px; }
.document-card {
  min-width: 0;
  padding: 11px;
  background: #f8fafb;
  border: 1px solid var(--line);
  border-radius: 5px;
}
.document-card-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.document-card-title span { color: var(--muted); font-size: 0.72rem; font-weight: 700; }
.document-card-title strong { font-size: 1rem; }
.document-card dl { margin: 10px 0 8px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.document-card dl div { min-width: 0; }
.document-card dt { color: var(--muted); font-size: 0.62rem; text-transform: uppercase; }
.document-card dd { margin: 2px 0 0; font-size: 0.8rem; font-weight: 800; }
.document-card small { display: block; overflow-wrap: anywhere; color: var(--muted); font-size: 0.66rem; }
.compact-empty { min-height: 76px; display: grid; place-items: center; }
.comparison-table { margin-bottom: 16px; }
.comparison-heading { gap: 14px; }
.comparison-key { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.comparison-key span,
.document-ref {
  display: inline-flex;
  padding: 3px 6px;
  border-radius: 3px;
  font-size: 0.64rem;
  font-weight: 800;
  white-space: nowrap;
}
.key-delivered,
.sent-ref { color: #365063; background: #e8f0f5; }
.key-returned,
.return-ref { color: #075c57; background: var(--teal-soft); }
.key-missing { color: #8b1721; background: var(--danger-soft); }
.comparison-table table { min-width: 980px; }
.comparison-table .delivered-column { background: #f3f7fa; }
.comparison-table .returned-column { background: #f2f9f8; }
.compare-row td:first-child { box-shadow: inset 3px 0 transparent; }
.compare-row.missing { background: #fff8f8; }
.compare-row.missing td:first-child { box-shadow: inset 3px 0 var(--red); }
.compare-row.overreturned { background: #f5faf9; }
.compare-row.overreturned td:first-child { box-shadow: inset 3px 0 var(--teal); }
.compare-row .status-pill.missing { color: #8b1721; background: var(--danger-soft); }
.compare-row .status-pill.overreturned { color: #075c57; background: var(--teal-soft); }
.row-order { color: var(--muted); }
.difference-column strong { font-size: 0.86rem; }
.event-history {
  margin-top: 16px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}
.event-history > summary {
  min-height: 58px;
  padding: 12px 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 3px;
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 800;
}
.event-history > summary:hover { background: #f7f8f9; }
.event-history > summary small { color: var(--muted); font-size: 0.68rem; font-weight: 500; }
.event-history .event-movements { border: 0; border-top: 1px solid var(--line); border-radius: 0; }

.positive-text { color: #075c57; }
.negative-text { color: #a1232e; }

.stock-change-chart,
.snapshot-chart {
  height: 260px;
  display: flex;
  align-items: stretch;
  gap: 5px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
}

.stock-day,
.snapshot-day {
  min-width: 42px;
  flex: 1 0 42px;
  padding: 0 2px;
  display: grid;
  color: inherit;
  background: transparent;
  border: 0;
  cursor: pointer;
}

.stock-day { grid-template-rows: 1fr 1px 1fr 26px; }
.stock-half { min-height: 0; display: flex; justify-content: center; }
.stock-half.upper { align-items: end; }
.stock-half.lower { align-items: start; }
.stock-zero { height: 1px; background: #aeb6bc; }
.delta { width: 18px; display: block; border-radius: 2px; }
.delta.positive { background: var(--teal); }
.delta.negative { background: var(--red); }

.snapshot-day { grid-template-rows: 1fr 26px; align-items: end; }
.snapshot-bar { width: 22px; min-height: 4px; justify-self: center; background: #326b9a; border-radius: 2px 2px 0 0; }
.stock-day small,
.snapshot-day small { align-self: center; color: var(--muted); font-size: 0.61rem; text-align: center; white-space: nowrap; }
.stock-day:hover,
.stock-day:focus-visible,
.snapshot-day:hover,
.snapshot-day:focus-visible { background: #f2f4f5; outline: 2px solid transparent; }

#content .table-panel + .table-panel { margin-top: 16px; }

@media (max-width: 760px) {
  .asset-scope { grid-template-columns: 1fr; }
  .return-scope { grid-template-columns: 1fr 1fr; }
  .warehouse-grid { grid-template-columns: 1fr; }
  .event-summary-head { flex-direction: column; }
  .event-summary-grid { grid-template-columns: 1fr 1fr; }
  .document-compare-grid { grid-template-columns: 1fr; }
  .document-card dl { grid-template-columns: 1fr 1fr; }
  .comparison-heading { align-items: flex-start; }
  .comparison-key { justify-content: flex-start; }
}

@media (max-width: 470px) {
  .warehouse-metrics { grid-template-columns: 1fr; }
  .return-scope { grid-template-columns: 1fr; }
  .event-summary-grid { grid-template-columns: 1fr; }
}
