/* Customer refinement layer loaded once after the generated design-system CSS. */
:root {
  --customer-surface: #ffffff;
  --customer-surface-soft: #f8fbfb;
  --customer-status-shadow: 0 1px 0 rgba(15, 23, 42, .03);
  --customer-card-radius: 8px;
  --customer-touch-target: 44px;
  --customer-control-height: 42px;
  --customer-compact-gap: 8px;
  --customer-section-gap: 12px;
  --customer-focus-ring: rgba(14, 116, 144, .24);
  --green: var(--accent);
  --orange: var(--warning);
  --red: var(--danger);
}

body {
  overflow-x: hidden;
}

.layout,
.workspace,
.status-strip,
.value-hero,
.workbench,
.grid-two,
.delivery-layout,
.panel,
.hero-stage,
.platform-preview,
.page-visual,
.evidence-overview > *,
.delivery-status-board > * {
  min-width: 0;
  max-width: 100%;
}

.workspace {
  margin-inline: auto;
  overflow-x: clip;
}

.topbar,
.brand,
.topnav,
.top-status {
  min-width: 0;
}

.brand span:last-child,
.top-status span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.button-row {
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap: 8px;
}

.button-row button {
  width: 100%;
  min-height: var(--customer-touch-target, var(--customer-control-height));
  white-space: normal;
}

button,
.primary-action,
.secondary-link,
input,
select {
  min-height: var(--customer-control-height);
}

button,
.primary-action,
.secondary-link {
  max-width: 100%;
  line-height: 1.25;
  text-align: center;
  white-space: normal;
}

textarea {
  min-height: calc(var(--customer-control-height) * 1.8);
}

.topnav a[aria-current="page"],
.rail a[aria-current="location"] {
  color: var(--ink);
  background: #edf3f3;
  box-shadow: inset 0 0 0 1px var(--line);
}

.rail a[aria-current="location"] {
  color: #073b3a;
  background: #fff;
}

.customer-governance-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr) minmax(0, 1fr);
  gap: var(--customer-section-gap);
  margin: 0 0 var(--customer-section-gap);
}

.customer-governance-strip article {
  display: grid;
  align-content: start;
  min-width: 0;
  border: 1px solid var(--line);
  border-left: 4px solid var(--warning);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 13px 14px;
  box-shadow: 0 1px 0 rgba(15,23,42,.02);
}

.customer-governance-strip article,
.evidence-overview article,
.delivery-status-board article {
  gap: 4px;
  background: var(--customer-surface);
  box-shadow: var(--customer-status-shadow);
}

.customer-governance-strip article:first-child {
  border-left-color: var(--accent);
}

.customer-governance-strip article:nth-child(2) {
  border-left-color: var(--warning);
}

.customer-governance-strip article:last-child {
  border-left-color: var(--accent-2);
}

.customer-governance-strip span,
.customer-governance-strip small {
  color: var(--muted);
}

.customer-governance-strip > article > span {
  display: block;
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.customer-governance-strip b {
  display: block;
  margin-bottom: 4px;
  font-size: 18px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.customer-governance-strip small {
  display: block;
  line-height: 1.45;
}

.customer-governance-strip .boundary-strip {
  margin-top: 0;
}

.customer-evidence-card-gate {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(0, .72fr) minmax(0, 1.3fr);
  gap: 10px;
  margin-top: 14px;
}

.customer-evidence-card-gate > div,
.customer-evidence-card-gate > p {
  min-width: 0;
  margin: 0;
  border: 1px solid var(--line);
  border-left: 4px solid var(--orange);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 12px;
  overflow-wrap: anywhere;
}

.customer-evidence-card-gate > div:first-child {
  border-left-color: var(--red);
}

.customer-evidence-card-gate > div:nth-child(2) {
  border-left-color: var(--green);
}

.customer-evidence-card-gate b,
.customer-evidence-card-gate span {
  display: block;
}

.customer-evidence-card-gate b {
  margin-bottom: 5px;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.2;
}

.customer-evidence-card-gate span,
.customer-evidence-card-gate p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.evidence-overview,
.delivery-status-board {
  align-items: stretch;
}

.evidence-overview article,
.delivery-status-board article {
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
  border: 1px solid var(--line);
  border-left: 4px solid var(--accent);
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

.evidence-overview article:nth-child(2),
.delivery-status-board article:nth-child(3) {
  border-left-color: var(--warning);
}

.evidence-overview article:nth-child(3) {
  border-left-color: var(--danger);
}

.evidence-overview article:nth-child(4),
.delivery-status-board article:nth-child(4) {
  border-left-color: var(--accent-2);
}

.evidence-overview b,
.delivery-status-board b,
.customer-governance-strip b {
  text-wrap: balance;
}

.boundary-strip span,
.claim-badge,
.chip {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.boundary-strip span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  line-height: 1.25;
}

.review-panel-box,
.delivery-receipt-panel,
.delivery-readiness-head,
.customer-release-handoff,
.customer-acceptance-review,
.delivery-governance-panel,
.feedback-handoff-head,
.generated-decision-panel,
.source-lock-boundary {
  overflow-wrap: anywhere;
}

.result-cards,
.candidate-grid,
.evidence-card-grid,
.workflow-demo-steps,
.pillars,
.value-proof-grid,
.service-boundary-grid,
.delivery-checklist,
.feedback-handoff-grid,
.feedback-decision-grid,
.customer-review-handoff-grid,
.customer-release-handoff-grid,
.generated-candidate-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
}

.candidate,
.claim-card,
.generated-candidate-card,
.delivery-check,
.service-boundary-grid div,
.step-list div,
.matrix-list div,
.report-summary-grid article,
.report-deliverables article {
  min-width: 0;
  overflow-wrap: anywhere;
}

.candidate dl,
.claim-card dl,
.generated-candidate-card dl {
  display: grid;
  grid-template-columns: minmax(72px, .34fr) minmax(0, 1fr);
  gap: 6px 10px;
  margin: 0;
}

.candidate dt,
.claim-card dt,
.generated-candidate-card dt {
  color: var(--ink);
  font-size: 12px;
  font-weight: 850;
}

.candidate dd,
.claim-card dd,
.generated-candidate-card dd {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.perf {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.perf b,
.metric b {
  overflow-wrap: anywhere;
}

.report-cover,
.delivery-readiness-head,
.feedback-handoff-head {
  align-items: flex-start;
}

.report-cover > *,
.delivery-readiness-head > *,
.feedback-handoff-head > * {
  min-width: 0;
}

.page-visual {
  min-width: 0;
}

.page-visual img {
  max-width: 100%;
  height: auto;
}

.topnav a:focus-visible,
.rail a:focus-visible,
button:focus-visible,
.secondary-link:focus-visible,
.request-preset-card:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--customer-focus-ring);
  outline-offset: 2px;
}

@media (max-width: 900px) {
  .topbar {
    position: static;
  }

  .topnav a,
  .rail a {
    flex: 0 0 auto;
  }

  .customer-governance-strip {
    grid-template-columns: 1fr;
    margin-top: 0;
  }

  .button-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .evidence-overview,
  .delivery-status-board,
  .customer-governance-strip {
    gap: 8px;
  }

  .customer-governance-strip article,
  .evidence-overview article,
  .delivery-status-board article,
  .panel {
    padding: 12px;
  }

  .boundary-strip {
    gap: 6px;
  }

  .candidate dl,
  .claim-card dl,
  .generated-candidate-card dl,
  .perf {
    grid-template-columns: 1fr;
  }
}

@media print {
  .customer-governance-strip article,
  .evidence-overview article,
  .delivery-status-board article,
  .review-panel-box,
  .delivery-receipt-panel {
    background: #fff;
    box-shadow: none;
  }
}

/* Customer gate panel system: consistent evidence, review, and release states. */
:root {
  --customer-success-line: #0f766e;
  --customer-review-line: #b7791f;
  --customer-blocked-line: #b42318;
  --customer-info-line: #0e7490;
}

.delivery-governance-panel,
.customer-acceptance-review,
.customer-review-handoff,
.customer-release-handoff,
.customer-release-progress,
.sample-preview-gate,
.source-lock-boundary,
.constraint-hold {
  border-radius: var(--customer-card-radius, 8px);
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

.delivery-governance-panel,
.sample-preview-gate,
.source-lock-boundary {
  border-color: #f3dcad;
  border-left-color: var(--customer-review-line);
  background: var(--warn-bg, #fff7e6);
}

.customer-review-handoff,
.customer-release-handoff {
  border-color: #c8e8dc;
  border-left: 4px solid var(--customer-success-line);
  background: #f4fbf8;
}

.customer-acceptance-review {
  border-left: 4px solid var(--customer-info-line);
}

.customer-release-handoff-grid,
.customer-review-handoff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.customer-release-handoff-grid article,
.customer-review-handoff-grid article,
.customer-acceptance-review-card,
.customer-release-progress li,
.delivery-check {
  min-width: 0;
  overflow-wrap: anywhere;
}

.customer-release-handoff-grid article,
.customer-review-handoff-grid article {
  border: 1px solid var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
}

.customer-release-handoff-grid b,
.customer-review-handoff-grid b,
.customer-release-progress b {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  line-height: 1.3;
}

.customer-release-handoff-grid span,
.customer-release-handoff-grid li,
.customer-review-handoff-grid li,
.customer-release-progress li span,
.customer-acceptance-review-card p,
.customer-acceptance-review-card small {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
}

.customer-release-handoff-grid ul,
.customer-review-handoff-grid ul {
  margin: 0;
  padding-left: 18px;
}

.customer-release-progress ol {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.customer-release-progress li {
  min-height: 92px;
  border: 1px solid var(--line, #dce4e6);
  border-top: 4px solid var(--line-strong, #c7d3d5);
  border-radius: var(--customer-card-radius, 8px);
  padding: 10px;
  background: #fbfcfc;
}

.customer-release-progress li.done {
  border-top-color: var(--customer-success-line);
  background: var(--ok-bg, #e8f6f1);
}

.customer-release-progress li.current {
  border-top-color: var(--customer-review-line);
  background: var(--warn-bg, #fff7e6);
}

.customer-release-progress li.blocked {
  border-top-color: var(--customer-blocked-line);
  background: var(--bad-bg, #fff1f0);
}

.customer-release-progress li.locked {
  opacity: .88;
}

.evidence-gate-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.evidence-gate-strip span,
.boundary-strip span {
  max-width: 100%;
  overflow-wrap: anywhere;
}

/* Customer dynamic state surfaces: make generated panels scan and print consistently. */
.job-result.empty-state,
.placeholder,
.customer-data-state {
  display: grid;
  align-content: center;
  min-width: 0;
  min-height: 72px;
  border: 1px dashed var(--line-strong, #c7d3d5);
  border-left: 4px solid var(--customer-info-line, #0e7490);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface-soft, #f8fbfb);
  color: var(--muted, #607078);
  padding: 12px;
  overflow-wrap: anywhere;
}

.job-result.empty-state p,
.placeholder p,
.customer-data-state p {
  margin: 0;
}

.customer-data-state.error,
.constraint-hold {
  border-left-color: var(--customer-blocked-line, #b42318);
  background: var(--bad-bg, #fff1f0);
}

.report-preview,
.matrix-table,
.report-table {
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

.report-preview h3,
.report-preview h4,
.review-panel-box h3,
.delivery-receipt-panel h3 {
  overflow-wrap: anywhere;
}

.report-preview > * + *,
.review-panel-box > * + *,
.delivery-receipt-panel > * + * {
  margin-top: 10px;
}

.matrix-table table,
.report-table table {
  width: 100%;
}

.chip,
.claim-badge,
.customer-release-progress-head span {
  white-space: normal;
  text-align: center;
}

.customer-release-progress p,
.source-lock-boundary p,
.sample-preview-gate p,
.constraint-hold p {
  margin-block: 8px 0;
  color: #65440e;
  font-size: 12px;
  line-height: 1.45;
}

/* Customer status-band refinement: keep evidence, review, and release cards aligned. */
.customer-governance-strip article,
.evidence-overview article,
.delivery-status-board article {
  min-height: 100%;
}

.delivery-readiness-head,
.customer-release-progress-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 12px;
  align-items: start;
}

.delivery-readiness-head > div,
.customer-release-progress-head > div {
  min-width: 0;
}

.delivery-readiness-head .chip,
.customer-release-progress-head > span {
  justify-self: end;
  align-self: start;
}

.customer-review-handoff-grid,
.customer-release-handoff-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.feedback-handoff-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 12px;
  align-items: start;
  margin: 8px 0 10px;
  padding: 12px;
  border: 1px solid #f3dcad;
  border-left: 4px solid var(--customer-review-line, #b7791f);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--warn-bg, #fff7e6);
}

.feedback-handoff-head h4 {
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
}

.feedback-handoff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.feedback-handoff-grid article {
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

.feedback-handoff-grid b,
.feedback-handoff-grid span,
.feedback-handoff-grid small {
  display: block;
}

.feedback-handoff-grid span {
  margin: 5px 0;
  color: var(--ink, #162024);
  font-weight: 850;
}

.feedback-handoff-grid small {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.4;
}

.customer-release-progress ol {
  grid-template-columns: repeat(auto-fit, minmax(172px, 1fr));
}

.evidence-gate-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
}

.evidence-gate-strip span {
  justify-content: center;
  text-align: center;
}

@media (max-width: 900px) {
  .customer-release-progress ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .matrix-table,
  .report-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 620px) {
  .customer-release-handoff-grid,
  .customer-review-handoff-grid,
  .feedback-handoff-head,
  .customer-release-progress ol,
  .evidence-gate-strip {
    grid-template-columns: 1fr;
  }

  .delivery-readiness-head,
  .customer-release-progress-head {
    grid-template-columns: 1fr;
  }

  .delivery-readiness-head .chip,
  .customer-release-progress-head > span {
    justify-self: start;
  }

  .customer-release-progress li {
    min-height: 0;
  }

  .job-result.empty-state,
  .placeholder,
  .customer-data-state,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview {
    padding: 10px;
  }
}

@media print {
  .job-result.empty-state,
  .placeholder,
  .customer-data-state,
  .report-preview,
  .matrix-table,
  .report-table,
  .customer-review-handoff,
  .customer-release-handoff,
  .customer-release-progress,
  .delivery-governance-panel,
  .sample-preview-gate,
  .constraint-hold {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Cross-page customer hero alignment: reuse existing bundle screenshots without
   changing customer data or delivery gates. */
.customer-page-stage {
  display: grid;
  grid-template-columns: minmax(260px, .98fr) minmax(0, 1.02fr);
  gap: 10px;
  align-items: stretch;
}

.customer-page-preview {
  min-height: 100%;
}

.customer-page-preview img {
  height: 100%;
  min-height: 156px;
  max-height: 188px;
  object-fit: cover;
  object-position: top center;
}

.customer-page-stage .metrics-grid {
  align-self: stretch;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-page-stage .metric {
  display: grid;
  align-content: center;
  min-height: 0;
}

.customer-page-preview figcaption {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1280px) {
  .customer-page-stage {
    grid-template-columns: 1fr;
  }

  .customer-page-preview img {
    max-height: 170px;
  }
}

@media (max-width: 900px) {
  .customer-page-preview {
    display: none;
  }

  .customer-page-stage .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Generated customer results: keep candidate fit, evidence gate, and next-step
   decision checks together in the primary workflow surface. */
.generated-candidate-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.generated-candidate-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-review-line, #b7791f);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 12px;
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

.generated-candidate-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

.generated-candidate-head > div {
  min-width: 0;
}

.generated-candidate-head b {
  display: block;
  font-size: 14px;
  line-height: 1.35;
}

.generated-candidate-card p {
  margin: 0;
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
}

.generated-candidate-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.generated-candidate-metrics span {
  display: grid;
  gap: 4px;
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface-soft, #f8fbfb);
  padding: 8px;
}

.generated-candidate-metrics small {
  color: var(--muted, #607078);
  font-size: 11px;
  line-height: 1.2;
}

.generated-candidate-metrics strong {
  color: var(--ink, #162024);
  font-size: 13px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.generated-candidate-card .evidence-gate-strip {
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

.generated-candidate-card .customer-decision-checklist {
  display: grid;
  gap: 7px;
}

.generated-candidate-card .customer-decision-checklist div {
  border: 1px solid var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface-soft, #f8fbfb);
  padding: 8px;
}

.generated-candidate-card .customer-decision-checklist b,
.generated-candidate-card .customer-decision-checklist span {
  display: block;
}

.generated-candidate-card .customer-decision-checklist b {
  margin-bottom: 4px;
  font-size: 12px;
  line-height: 1.3;
}

.generated-candidate-card .customer-decision-checklist span {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.4;
}

@media (max-width: 620px) {
  .generated-candidate-head,
  .generated-candidate-metrics {
    grid-template-columns: 1fr;
  }

  .generated-candidate-head .chip {
    justify-self: start;
  }
}

/* Public customer trust surfaces: keep safety mode and review gates visible. */
.topbar {
  column-gap: 12px;
}

.top-status {
  justify-self: end;
  max-width: min(270px, 100%);
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

.top-status .status-dot {
  flex: 0 0 auto;
  box-shadow: 0 0 0 3px rgba(15, 118, 110, .12);
}

.customer-governance-strip article,
.source-lock-boundary,
.sample-preview-gate,
.delivery-governance-panel,
.customer-release-progress,
.customer-review-handoff,
.customer-release-handoff {
  border-left-width: 4px;
}

.customer-governance-strip article:nth-child(2) b,
.source-lock-boundary b,
.sample-preview-gate b {
  color: #7a4b09;
}

.customer-governance-strip article:nth-child(3) b,
.customer-release-handoff h4,
.customer-release-progress-head h4 {
  color: #0b5f74;
}

.delivery-checklist {
  align-items: stretch;
}

.delivery-check {
  display: grid;
  align-content: start;
  gap: 4px;
}

.delivery-check b {
  justify-self: start;
  border: 1px solid var(--line, #dce4e6);
  border-radius: 999px;
  padding: 3px 7px;
  background: var(--customer-surface-soft, #f8fbfb);
  line-height: 1.15;
}

.delivery-check.pass b {
  color: var(--accent, #0f766e);
  background: var(--ok-bg, #e8f6f1);
  border-color: #c8e8dc;
}

.delivery-check.blocked b {
  color: var(--danger, #b42318);
  background: var(--bad-bg, #fff1f0);
  border-color: #f1cbc6;
}

.matrix-table th,
.report-table th {
  position: sticky;
  top: 0;
  z-index: 1;
}

@media (max-width: 900px) {
  .topbar {
    align-items: start;
  }

  .topnav {
    width: 100%;
    padding-bottom: 2px;
  }

  .top-status {
    display: inline-flex;
    justify-self: start;
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  .top-status {
    font-size: 12px;
  }

  .customer-governance-strip b {
    font-size: 16px;
  }

  .delivery-checklist {
    grid-template-columns: 1fr;
  }
}

/* Customer design-system refinement: stable controls, anchor targets, and
   dense evidence tables across the three public pages. */
:root {
  --customer-anchor-offset: 88px;
}

#design,
#generated,
#reviewScopePanel,
#deliveryReceiptPanel,
#feedbackForm,
#candidates,
#evidence-chain,
#workflow-demo,
#procurement,
#report-loop,
#serviceBoundary,
#workflow {
  scroll-margin-top: var(--customer-anchor-offset);
}

/* Public customer page hierarchy: keep the safety state, evidence boundary,
   and next action visible before the dense workflow panels begin. */
.status-strip:not(.value-hero) {
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 14px;
  align-items: start;
  padding: 16px;
  margin-bottom: 12px;
}

.status-strip:not(.value-hero) > * {
  min-width: 0;
}

.status-strip h1 {
  text-wrap: balance;
}

.status-strip #missionText {
  max-width: 68ch;
}

.customer-governance-strip {
  align-items: stretch;
}

.customer-governance-strip article {
  position: relative;
  padding-block: 14px;
}

.customer-governance-strip article::after {
  content: "";
  position: absolute;
  inset: 12px 12px auto auto;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent, #0f766e);
  box-shadow: 0 0 0 4px rgba(15, 118, 110, .1);
}

.customer-governance-strip article:nth-child(2)::after {
  background: var(--warning, #b7791f);
  box-shadow: 0 0 0 4px rgba(183, 121, 31, .12);
}

.customer-governance-strip article:nth-child(3)::after {
  background: var(--accent-2, #0e7490);
  box-shadow: 0 0 0 4px rgba(14, 116, 144, .1);
}

.customer-governance-strip > article > span {
  padding-right: 18px;
}

.customer-governance-strip small {
  max-width: 58ch;
}

.topnav {
  scrollbar-width: thin;
}

@media (max-width: 900px) {
  .status-strip:not(.value-hero) {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .status-strip h1 {
    font-size: 22px;
  }
}

@media (max-width: 620px) {
  .customer-governance-strip article::after {
    inset-block-start: 14px;
  }

  .customer-governance-strip small {
    max-width: none;
  }
}

.topnav a,
.rail a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  -webkit-tap-highlight-color: transparent;
}

.topnav a {
  min-height: 40px;
}

.panel-head > div {
  min-width: 0;
}

.panel-head h2,
.panel-head h3,
.panel-head p {
  overflow-wrap: anywhere;
}

.panel-head > button,
.panel-head > .secondary-link {
  flex: 0 0 auto;
  max-width: min(260px, 100%);
}

.matrix-table,
.report-table {
  scrollbar-gutter: stable;
}

.matrix-table table,
.report-table table {
  min-width: 680px;
  table-layout: fixed;
}

.matrix-table th,
.matrix-table td,
.report-table th,
.report-table td {
  hyphens: auto;
}

.matrix-table th:first-child,
.matrix-table td:first-child {
  width: 104px;
}

@media (max-width: 900px) {
  :root {
    --customer-anchor-offset: 76px;
  }

  .panel-head > button,
  .panel-head > .secondary-link {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  .matrix-table table,
  .report-table table {
    min-width: 560px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* Customer access affordance: visible only on keyboard focus, shared by all
   public customer pages and independent of generated data bundles. */
.skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 60;
  max-width: calc(100vw - 20px);
  min-height: var(--customer-touch-target, 42px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-140%);
  border: 1px solid var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  color: var(--ink, #162024);
  box-shadow: var(--shadow, 0 12px 30px rgba(15, 23, 42, .07));
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
  text-decoration: none;
  transition: transform .16s ease;
}

.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 2px;
}

#mainContent:focus {
  outline: none;
}

#mainContent:focus-visible {
  outline: none;
}

/* Public customer design-system polish: shared state surfaces and accessible
   contrast across the customer workbench, evidence, and delivery pages. */
:root {
  --customer-hover-border: #b9cacc;
  --customer-hover-shadow: 0 8px 20px rgba(15, 23, 42, .06);
  --customer-state-ring: inset 0 0 0 1px rgba(15, 23, 42, .025);
}

.panel,
.metric,
.candidate,
.claim-card,
.generated-candidate-card,
.delivery-check,
.review-panel-box,
.delivery-receipt-panel,
.step-list div,
.evidence-steps div,
.matrix-list div,
.service-boundary-grid div,
.customer-governance-strip article,
.platform-map article {
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03)), var(--customer-state-ring);
}

.customer-governance-strip article,
.delivery-check,
.claim-card,
.generated-candidate-card,
.source-lock-boundary,
.delivery-governance-panel,
.sample-preview-gate {
  background-clip: padding-box;
}

.chip,
.claim-badge,
.boundary-strip span,
.evidence-gate-strip span {
  font-variant-numeric: tabular-nums;
}

.panel-head .chip,
.generated-candidate-head .chip,
.delivery-readiness-head .chip {
  max-width: min(220px, 100%);
}

.matrix-table,
.report-table {
  background:
    linear-gradient(to right, #fff 30%, rgba(255, 255, 255, 0)),
    linear-gradient(to right, rgba(255, 255, 255, 0), #fff 70%) 100% 0,
    linear-gradient(to right, rgba(15, 23, 42, .08), rgba(15, 23, 42, 0)),
    linear-gradient(to left, rgba(15, 23, 42, .08), rgba(15, 23, 42, 0)) 100% 0;
  background-attachment: local, local, scroll, scroll;
  background-repeat: no-repeat;
  background-size: 36px 100%, 36px 100%, 12px 100%, 12px 100%;
}

@media (hover: hover) and (pointer: fine) {
  .secondary-link:hover,
  button:not(:disabled):hover,
  .request-preset-card:hover,
  .customer-governance-strip article:hover,
  .platform-map article:hover,
  .candidate:hover,
  .generated-candidate-card:hover {
    border-color: var(--customer-hover-border);
    box-shadow: var(--customer-hover-shadow), var(--customer-state-ring);
  }
}

@media (forced-colors: active) {
  .brand-mark,
  .status-dot,
  .customer-governance-strip article::after {
    background: CanvasText;
    box-shadow: none;
  }

  .panel,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .customer-governance-strip article,
  .platform-map article,
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span {
    border-color: CanvasText;
    box-shadow: none;
  }

  .platform-preview,
  .platform-preview figcaption span {
    background: Canvas;
    color: CanvasText;
  }
}

@media (prefers-reduced-motion: reduce) {
  .skip-link,
  .panel,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .customer-governance-strip article,
  .platform-map article {
    transition: none;
  }
}

/* Public customer state-density refinement: align review, receipt, and
   release surfaces across the customer pages. */
:root {
  --customer-state-gap: 8px;
  --customer-state-soft: #fbfcfc;
  --customer-state-muted: var(--muted, #607078);
}

.request-review-gate,
.customer-research-review,
.customer-action-receipt,
.customer-review-release-summary,
.customer-release-handoff,
.customer-review-handoff,
.customer-acceptance-review,
.customer-release-progress,
.delivery-readiness-head,
.delivery-governance-panel,
.source-lock-boundary,
.sample-preview-gate,
.feedback-handoff-head {
  min-width: 0;
  overflow-wrap: anywhere;
}

.request-review-grid,
.customer-research-review-grid,
.customer-action-receipt-grid,
.customer-action-receipt-summary,
.customer-review-release-summary-grid,
.customer-review-handoff-grid,
.customer-release-handoff-grid,
.feedback-handoff-grid,
.report-send-gate,
.delivery-checklist {
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  align-items: stretch;
  gap: var(--customer-state-gap);
}

.request-review-grid article,
.customer-research-review-grid article,
.customer-action-receipt-grid article,
.customer-action-receipt-summary article,
.customer-review-release-summary-grid article,
.customer-review-handoff-grid article,
.customer-release-handoff-grid article,
.feedback-handoff-grid article,
.report-send-gate div,
.delivery-check {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  background: var(--customer-state-soft);
}

.request-review-grid b,
.customer-research-review-grid b,
.customer-action-receipt-grid b,
.customer-action-receipt-summary b,
.customer-review-release-summary-grid b,
.customer-review-handoff-grid b,
.customer-release-handoff-grid b,
.feedback-handoff-grid b,
.report-send-gate b,
.delivery-check b {
  color: var(--ink, #162024);
  line-height: 1.25;
}

.request-review-grid span,
.request-review-grid small,
.customer-research-review-grid span,
.customer-research-review-grid small,
.customer-action-receipt-grid span,
.customer-action-receipt-grid small,
.customer-action-receipt-summary span,
.customer-review-release-summary-grid span,
.customer-review-release-summary-checks li,
.customer-review-handoff-grid li,
.customer-release-handoff-grid li,
.customer-release-handoff-grid span,
.feedback-handoff-grid span,
.feedback-handoff-grid small,
.report-send-gate span,
.delivery-check p {
  color: var(--customer-state-muted);
  line-height: 1.45;
}

.request-review-head,
.customer-research-review-head,
.customer-action-receipt-head,
.customer-review-release-summary-head,
.customer-release-progress-head,
.delivery-readiness-head {
  min-width: 0;
  align-items: start;
}

.request-review-head span,
.customer-research-review-head span,
.customer-action-receipt-head span,
.customer-review-release-summary-head span,
.customer-release-progress-head span,
.delivery-readiness-head .chip {
  justify-self: end;
  max-width: min(220px, 100%);
  white-space: normal;
}

.boundary-strip {
  align-items: flex-start;
}

.boundary-strip span,
.evidence-gate-strip span {
  min-height: 30px;
  align-items: center;
}

@media (max-width: 620px) {
  .request-review-head,
  .customer-research-review-head,
  .customer-action-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head,
  .delivery-readiness-head {
    grid-template-columns: 1fr;
  }

  .request-review-head span,
  .customer-research-review-head span,
  .customer-action-receipt-head span,
  .customer-review-release-summary-head span,
  .customer-release-progress-head span,
  .delivery-readiness-head .chip {
    justify-self: start;
    margin-top: 8px;
  }
}

/* Public customer visual-system pass: make generated, downloaded, and static
   customer-safe surfaces share one control and status language. */
:root {
  --customer-control-border: #c7d3d5;
  --customer-control-bg: #ffffff;
  --customer-control-bg-hover: #f3f8f8;
  --customer-control-disabled-bg: #eef3f3;
  --customer-state-ok-bg: #e8f6f1;
  --customer-state-review-bg: #fff7e6;
  --customer-state-blocked-bg: #fff1f0;
}

input,
select,
textarea {
  min-width: 0;
  border-color: var(--customer-control-border);
  background: var(--customer-control-bg);
  line-height: 1.35;
}

input:hover,
select:hover,
textarea:hover {
  border-color: var(--customer-hover-border, #b9cacc);
  background: var(--customer-control-bg-hover);
}

input:disabled,
select:disabled,
textarea:disabled,
button:disabled {
  background: var(--customer-control-disabled-bg);
}

select {
  padding-right: 34px;
}

textarea {
  line-height: 1.5;
}

.primary-action,
.secondary-link,
button {
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
}

.primary-action {
  background: #11282d;
}

.secondary-link {
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

.review-panel-box,
.delivery-receipt-panel,
.report-preview,
.job-result,
.customer-data-state {
  border-left: 4px solid var(--customer-info-line, #0e7490);
}

.review-panel-box.placeholder,
.delivery-receipt-panel.placeholder,
.job-result.empty-state {
  border-style: dashed;
  border-left-style: solid;
}

.warning,
.source-lock-boundary,
.sample-preview-gate,
.delivery-governance-panel,
.request-review-grid article.blocked {
  background: var(--customer-state-review-bg);
}

.delivery-readiness-head.pass,
.delivery-check.pass,
.customer-review-handoff,
.customer-release-handoff,
.customer-action-receipt {
  background: var(--customer-state-ok-bg);
}

.delivery-readiness-head.blocked,
.delivery-check.blocked,
.customer-data-state.error,
.constraint-hold {
  background: var(--customer-state-blocked-bg);
}

.chip,
.claim-badge,
.boundary-strip span,
.evidence-gate-strip span,
.delivery-check b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.claim-badge,
.boundary-strip span,
.evidence-gate-strip span {
  text-align: center;
}

.candidate-grid,
.generated-candidate-grid,
.evidence-card-grid,
.workflow-demo-steps,
.matrix-list,
.service-boundary-grid,
.pillars,
.value-proof-grid {
  align-items: stretch;
}

.candidate,
.claim-card,
.generated-candidate-card,
.evidence-card-grid article,
.workflow-demo-steps article,
.pillars article,
.service-boundary-grid div,
.step-list div,
.evidence-steps div,
.matrix-list div {
  display: grid;
  align-content: start;
  gap: 8px;
}

.candidate p,
.claim-card p,
.generated-candidate-card p,
.evidence-card-grid article p,
.workflow-demo-steps article p,
.pillars article p,
.service-boundary-grid div p,
.step-list div p,
.evidence-steps div p,
.matrix-list div p {
  margin-block: 0;
}

.matrix-table table,
.report-table table {
  border-collapse: separate;
  border-spacing: 0;
}

.matrix-table th,
.matrix-table td,
.report-table th,
.report-table td {
  word-break: normal;
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  .topnav,
  .rail {
    scrollbar-gutter: stable;
  }

  .topnav a,
  .rail a {
    white-space: nowrap;
  }
}

@media (max-width: 620px) {
  .primary-action,
  .secondary-link,
  button {
    width: 100%;
  }

  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span {
    width: fit-content;
    max-width: 100%;
  }

  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .job-result,
  .customer-data-state {
    border-left-width: 3px;
  }
}

/* Public customer mobile shell refinement: keep packet status and route
   controls visible without changing customer data or release boundaries. */
.topbar {
  gap: 10px 14px;
}

.top-status {
  justify-self: end;
  max-width: 100%;
  min-width: 0;
}

.top-status span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .brand {
    width: fit-content;
  }

  .top-status {
    display: inline-flex;
    justify-self: start;
    width: fit-content;
    max-width: 100%;
    min-height: 34px;
    padding: 6px 9px;
    font-size: 12px;
  }

  .topnav,
  .rail {
    scroll-snap-type: x proximity;
  }

  .topnav a,
  .rail a {
    scroll-snap-align: start;
  }
}

@media (max-width: 620px) {
  .topbar {
    padding: 10px;
    gap: 7px;
  }

  .brand {
    font-size: 17px;
  }

  .top-status {
    max-width: calc(100vw - 20px);
  }

  .top-status span:last-child {
    max-width: 22ch;
  }

  .topnav a,
  .rail a {
    min-height: 38px;
    padding-inline: 10px;
  }
}

/* Public customer decision-surface refinement: make safety, evidence, and
   release states scan consistently across static and generated panels. */
:root {
  --customer-status-bar-width: 4px;
  --customer-row-min-height: 46px;
}

.customer-governance-strip article,
.source-lock-boundary,
.sample-preview-gate,
.delivery-governance-panel,
.request-review-gate,
.customer-research-review,
.customer-action-receipt,
.customer-evidence-safety-receipt,
.customer-workflow-continuity,
.customer-review-release-summary,
.customer-release-progress,
.customer-review-handoff,
.customer-release-handoff,
.customer-next-action-queue {
  isolation: isolate;
  border-left-width: var(--customer-status-bar-width);
}

.customer-governance-strip article > *,
.source-lock-boundary > *,
.sample-preview-gate > *,
.delivery-governance-panel > *,
.request-review-gate > *,
.customer-research-review > *,
.customer-action-receipt > *,
.customer-evidence-safety-receipt > *,
.customer-workflow-continuity > *,
.customer-review-release-summary > *,
.customer-release-progress > *,
.customer-review-handoff > *,
.customer-release-handoff > *,
.customer-next-action-queue > * {
  min-width: 0;
}

.delivery-check,
.request-review-grid article,
.customer-research-review-grid article,
.customer-action-receipt-grid article,
.customer-action-receipt-summary article,
.customer-review-release-summary-grid article,
.customer-evidence-safety-receipt-grid article,
.customer-evidence-safety-receipt-checks article,
.customer-workflow-continuity-grid article,
.customer-workflow-continuity-summary article,
.customer-next-action-grid article {
  min-height: var(--customer-row-min-height);
}

.customer-current-action {
  min-height: var(--customer-row-min-height);
}

.warning,
.evidence-card-boundary,
.source-lock-boundary p,
.sample-preview-gate p,
.delivery-governance-panel p,
.request-review-gate > p,
.customer-research-review > p,
.customer-action-receipt > p,
.customer-evidence-safety-receipt > p,
.customer-workflow-continuity > p,
.customer-review-release-summary > p,
.customer-release-progress p,
.customer-review-handoff p,
.customer-release-handoff p,
.customer-next-action-queue p {
  max-width: 72ch;
}

.matrix-table,
.report-table {
  border: 1px solid var(--line, #dce4e6);
  outline-offset: 2px;
}

.matrix-table:focus-within,
.report-table:focus-within {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
}

.matrix-table th,
.report-table th {
  background: var(--customer-surface-soft, #f8fbfb);
}

.matrix-table tbody tr:nth-child(even) td,
.report-table tbody tr:nth-child(even) td {
  background: #fbfcfc;
}

.topnav,
.rail,
.matrix-table,
.report-table {
  overscroll-behavior-x: contain;
}

@media (max-width: 620px) {
  .customer-governance-strip article,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .request-review-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-evidence-safety-receipt,
  .customer-workflow-continuity,
  .customer-review-release-summary,
  .customer-release-progress,
  .customer-review-handoff,
  .customer-release-handoff,
  .customer-next-action-queue {
    padding: 11px;
  }
}

/* Public customer status-badge refinement: generated review, download, and
   feedback surfaces use one visual language without changing data fields. */
:root {
  --customer-badge-ready-bg: #e8f6f1;
  --customer-badge-ready-fg: #0f766e;
  --customer-badge-wait-bg: #fff7e6;
  --customer-badge-wait-fg: #8a5a12;
  --customer-badge-stop-bg: #fff1f0;
  --customer-badge-stop-fg: #b42318;
}

.customer-action-receipt-head > span,
.customer-research-review-head > span,
.customer-workflow-continuity-head > span,
.customer-next-action-head > span,
.customer-evidence-safety-receipt-head > span,
.customer-review-release-summary-head > span,
.customer-release-progress-head > span,
.feedback-handoff-head .chip,
.report-hard-stop-head small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 30px;
  max-width: min(240px, 100%);
  border: 1px solid var(--line, #dce4e6);
  border-radius: 999px;
  background: var(--customer-badge-wait-bg);
  color: var(--customer-badge-wait-fg);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
  white-space: normal;
}

:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="ready"],
:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="submitted"],
:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="released"],
:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="download_ready"] {
  border-color: #c8e8dc;
  background: var(--customer-badge-ready-bg);
  color: var(--customer-badge-ready-fg);
}

:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="blocked"],
:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="locked"],
:where(
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head
) > span[data-status*="held"] {
  border-color: #f1cbc6;
  background: var(--customer-badge-stop-bg);
  color: var(--customer-badge-stop-fg);
}

.customer-action-receipt,
.customer-research-review,
.customer-workflow-continuity,
.customer-review-release-summary,
.customer-evidence-safety-receipt,
.customer-next-action-queue {
  display: grid;
  gap: 10px;
}

.customer-action-receipt > :last-child,
.customer-research-review > :last-child,
.customer-workflow-continuity > :last-child,
.customer-review-release-summary > :last-child,
.customer-evidence-safety-receipt > :last-child,
.customer-next-action-queue > :last-child,
.panel > :last-child,
.review-panel-box > :last-child,
.delivery-receipt-panel > :last-child,
.report-preview > :last-child {
  margin-bottom: 0;
}

.form-grid label,
.feedback-grid label,
.intake-panel > label {
  min-width: 0;
}

.feedback-grid button,
.panel-head > button,
.panel-head > .secondary-link {
  min-height: var(--customer-touch-target, 42px);
}

@media (max-width: 900px) {
  .customer-action-receipt-head,
  .customer-research-review-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-evidence-safety-receipt-head,
  .customer-review-release-summary-head,
  .customer-release-progress-head {
    gap: 8px;
  }
}

@media (max-width: 620px) {
  .customer-action-receipt-head > span,
  .customer-research-review-head > span,
  .customer-workflow-continuity-head > span,
  .customer-next-action-head > span,
  .customer-evidence-safety-receipt-head > span,
  .customer-review-release-summary-head > span,
  .customer-release-progress-head > span,
  .feedback-handoff-head .chip,
  .report-hard-stop-head small {
    max-width: 100%;
  }
}

/* Public customer guard-panel refinement: make generated review gates and
   request-change holds match the static safety cards. */
:root {
  --customer-guard-gap: 8px;
  --customer-guard-bg: #fbfcfc;
  --customer-guard-border: #dce4e6;
}

.customer-evidence-review-gate,
.report-hard-stop-receipt,
.customer-request-change-guard {
  display: grid;
  gap: var(--customer-guard-gap);
  min-width: 0;
  border: 1px solid var(--customer-guard-border);
  border-left: var(--customer-status-bar-width, 4px) solid var(--customer-review-line, #b7791f);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-state-review-bg, #fff7e6);
  padding: 12px;
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

.customer-request-change-guard.blocked {
  border-left-color: var(--customer-blocked-line, #b42318);
  background: var(--customer-state-blocked-bg, #fff1f0);
}

.customer-evidence-review-gate-head,
.report-hard-stop-head,
.customer-request-change-head,
.customer-next-action-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 12px;
  align-items: start;
}

.customer-evidence-review-gate-head > *,
.report-hard-stop-head > *,
.customer-request-change-head > *,
.customer-next-action-head > *,
.customer-research-review-next > *,
.customer-current-action > * {
  min-width: 0;
}

.customer-evidence-review-gate-head small,
.customer-request-change-head > span {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  max-width: min(240px, 100%);
  border: 1px solid #f3dcad;
  border-radius: 999px;
  background: var(--customer-badge-wait-bg, #fff7e6);
  color: var(--customer-badge-wait-fg, #8a5a12);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}

.customer-evidence-review-gate-head small.pass {
  border-color: #c8e8dc;
  background: var(--customer-badge-ready-bg, #e8f6f1);
  color: var(--customer-badge-ready-fg, #0f766e);
}

.customer-evidence-review-gate-head small.blocked,
.customer-request-change-head > span[data-status*="changed"] {
  border-color: #f1cbc6;
  background: var(--customer-badge-stop-bg, #fff1f0);
  color: var(--customer-badge-stop-fg, #b42318);
}

.customer-evidence-review-gate-grid,
.report-hard-stop-grid,
.customer-request-change-summary-grid,
.customer-request-change-grid,
.customer-next-action-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: var(--customer-guard-gap);
  align-items: stretch;
}

.customer-evidence-review-gate-grid article,
.report-hard-stop-grid article,
.customer-request-change-summary-grid article,
.customer-request-change-grid article,
.customer-next-action-grid article,
.customer-current-action,
.customer-research-review-next,
.customer-request-change-summary {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  min-height: var(--customer-row-min-height, 46px);
  border: 1px solid var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

.customer-evidence-review-gate-grid article.pass,
.customer-next-action-grid article[data-status*="ready"],
.customer-next-action-grid article[data-status*="download_ready"],
.customer-next-action-grid article[data-current="true"] {
  border-left: 4px solid var(--customer-success-line, #0f766e);
}

.customer-evidence-review-gate-grid article.blocked,
.customer-request-change-grid article[data-status*="changed"],
.customer-next-action-grid article[data-status*="locked"],
.customer-next-action-grid article[data-status*="blocked"] {
  border-left: 4px solid var(--customer-blocked-line, #b42318);
}

.customer-next-action-grid article[data-current="true"] {
  background: var(--customer-state-ok-bg, #e8f6f1);
}

.customer-research-review-next,
.customer-current-action,
.customer-request-change-summary {
  border-left: 4px solid var(--customer-info-line, #0e7490);
}

.customer-evidence-review-gate-grid b,
.report-hard-stop-grid b,
.customer-request-change-summary-grid b,
.customer-request-change-grid b,
.customer-next-action-grid b,
.customer-current-action b,
.customer-research-review-next b,
.customer-request-change-summary b {
  color: var(--ink, #162024);
  line-height: 1.25;
}

.customer-evidence-review-gate-grid span,
.customer-evidence-review-gate-grid small,
.report-hard-stop-grid span,
.customer-request-change-summary-grid span,
.customer-request-change-grid span,
.customer-request-change-grid small,
.customer-request-change-grid em,
.customer-next-action-grid span,
.customer-next-action-grid small,
.customer-current-action span,
.customer-current-action small,
.customer-current-action p,
.customer-research-review-next span,
.customer-research-review-next small,
.customer-request-change-summary span,
.customer-request-change-summary small {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
}

.customer-request-change-grid em {
  font-style: normal;
  font-weight: 850;
}

.customer-request-change-grid span {
  display: grid;
  gap: 2px;
}

.customer-request-change-grid span small {
  color: var(--ink, #162024);
  font-size: 11px;
  font-weight: 850;
}

.customer-request-change-guard > p,
.customer-evidence-review-gate > p,
.report-hard-stop-receipt > p {
  margin: 0;
  color: #65440e;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 620px) {
  .customer-evidence-review-gate,
  .report-hard-stop-receipt,
  .customer-request-change-guard {
    padding: 10px;
  }

  .customer-evidence-review-gate-head,
  .report-hard-stop-head,
  .customer-request-change-head,
  .customer-next-action-head {
    grid-template-columns: 1fr;
  }

  .customer-evidence-review-gate-head small,
  .customer-request-change-head > span {
    justify-self: start;
  }
}

/* Public customer design-system closure: one status vocabulary for evidence,
   review, download, and feedback surfaces without changing bundle data. */
:root {
  --customer-state-ready-line: #0f766e;
  --customer-state-review-line: #b7791f;
  --customer-state-blocked-line: #b42318;
  --customer-state-info-line: #0e7490;
  --customer-state-ready-bg: #e8f6f1;
  --customer-state-review-bg: #fff7e6;
  --customer-state-blocked-bg: #fff1f0;
  --customer-state-info-bg: #e9f8fb;
}

.customer-evidence-review-lanes,
.customer-evidence-safety-receipt-checks,
.customer-workflow-continuity-grid,
.customer-workflow-continuity-summary,
.customer-review-release-summary-checks,
.customer-request-change-grid,
.customer-next-action-grid,
.report-hard-stop-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr));
  gap: 8px;
  align-items: stretch;
}

.customer-evidence-review-lanes article,
.customer-evidence-safety-receipt-checks article,
.customer-workflow-continuity-grid article,
.customer-workflow-continuity-summary article,
.customer-review-release-summary-checks,
.customer-request-change-grid article,
.customer-next-action-grid article,
.report-hard-stop-grid article {
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-state-review-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

.customer-evidence-review-lanes article.allowed,
.customer-evidence-safety-receipt-checks article.pass,
.customer-workflow-continuity-grid article[data-status*="ready"],
.customer-workflow-continuity-grid article[data-status*="submitted"],
.customer-next-action-grid article[data-current="true"],
.customer-next-action-grid article[data-status*="download_ready"] {
  border-left-color: var(--customer-state-ready-line);
  background: var(--customer-state-ready-bg);
}

.customer-evidence-review-lanes article.blocked,
.customer-evidence-safety-receipt-checks article.blocked,
.customer-request-change-grid article[data-status*="changed"],
.customer-next-action-grid article[data-status*="locked"],
.customer-next-action-grid article[data-status*="blocked"],
.report-hard-stop-grid article {
  border-left-color: var(--customer-state-blocked-line);
  background: var(--customer-state-blocked-bg);
}

.customer-current-action,
.customer-research-review-next,
.customer-request-change-summary,
.customer-workflow-continuity-summary article,
.customer-review-release-summary-grid article {
  border-left-color: var(--customer-state-info-line);
}

.customer-evidence-review-lanes b,
.customer-evidence-safety-receipt-checks b,
.customer-workflow-continuity-grid b,
.customer-workflow-continuity-summary b,
.customer-review-release-summary-checks b,
.customer-request-change-grid b,
.customer-next-action-grid b,
.report-hard-stop-grid b {
  display: block;
  margin-bottom: 4px;
  color: var(--ink, #162024);
  font-size: 13px;
  line-height: 1.25;
}

.customer-evidence-review-lanes span,
.customer-evidence-review-lanes small,
.customer-evidence-review-lanes p,
.customer-evidence-safety-receipt-checks span,
.customer-evidence-safety-receipt-checks small,
.customer-workflow-continuity-grid span,
.customer-workflow-continuity-grid small,
.customer-workflow-continuity-summary span,
.customer-review-release-summary-checks li,
.customer-request-change-grid span,
.customer-request-change-grid small,
.customer-next-action-grid span,
.customer-next-action-grid small,
.report-hard-stop-grid span {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
}

.boundary-strip.blocked-claims span,
.report-hard-stop-receipt .boundary-strip span,
.customer-release-progress li.blocked small,
.customer-release-progress li.locked small {
  border-color: #f1cbc6;
  background: var(--customer-state-blocked-bg);
  color: var(--customer-state-blocked-line);
}

.customer-release-progress li.done small,
.customer-next-action-grid article[data-current="true"] small {
  border-color: #c8e8dc;
  background: var(--customer-state-ready-bg);
  color: var(--customer-state-ready-line);
}

.customer-release-progress li.current small,
.customer-release-progress li.locked small {
  white-space: normal;
}

.customer-release-progress ol,
.customer-evidence-review-lanes {
  grid-template-columns: repeat(auto-fit, minmax(min(172px, 100%), 1fr));
}

.customer-next-action-queue,
.report-hard-stop-receipt,
.customer-request-change-guard {
  scroll-margin-top: var(--customer-anchor-offset, 88px);
}

@media (max-width: 900px) {
  .customer-evidence-review-lanes,
  .customer-evidence-safety-receipt-checks,
  .customer-workflow-continuity-grid,
  .customer-workflow-continuity-summary,
  .customer-request-change-grid,
  .customer-next-action-grid,
  .report-hard-stop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .customer-evidence-review-lanes,
  .customer-evidence-safety-receipt-checks,
  .customer-workflow-continuity-grid,
  .customer-workflow-continuity-summary,
  .customer-review-release-summary-checks,
  .customer-request-change-grid,
  .customer-next-action-grid,
  .report-hard-stop-grid,
  .customer-release-progress ol {
    grid-template-columns: 1fr;
  }

  .customer-evidence-review-lanes article,
  .customer-evidence-safety-receipt-checks article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article,
  .customer-review-release-summary-checks,
  .customer-request-change-grid article,
  .customer-next-action-grid article,
  .report-hard-stop-grid article {
    padding: 9px;
  }
}

/* Public customer control-state closure: collapse empty live receipts and keep
   release/download actions visually gated until review proof is present. */
:root {
  --customer-disabled-bg: #eef2f3;
  --customer-disabled-ink: #6c7a80;
  --customer-disabled-border: #d6e0e2;
  --customer-live-region-min: 44px;
}

#customerCurrentStepBrief:empty,
#requestReviewGate:empty,
#customerEvidenceSafetyReceiptPanel:empty,
#feedbackResult:empty,
#deliveryFeedbackPreview:empty {
  display: none;
}

#customerCurrentStepBrief:not(:empty),
#requestReviewGate:not(:empty),
#customerEvidenceSafetyReceiptPanel:not(:empty),
#feedbackResult:not(:empty),
#deliveryFeedbackPreview:not(:empty) {
  min-height: var(--customer-live-region-min);
}

button:disabled,
#customerAcceptQuoteButton:disabled {
  border-color: var(--customer-disabled-border);
  background: var(--customer-disabled-bg);
  color: var(--customer-disabled-ink);
  box-shadow: none;
  cursor: not-allowed;
}

.button-row button,
.primary-action,
#customerAcceptQuoteButton,
.secondary-link {
  min-width: 0;
  overflow-wrap: anywhere;
}

.feedback-grid input,
.feedback-grid textarea,
.design-form input,
.design-form select,
.design-form textarea,
#designForm input,
#designForm select,
#designForm textarea {
  min-width: 0;
}

.feedback-grid input:focus-visible,
.feedback-grid textarea:focus-visible,
.design-form input:focus-visible,
.design-form select:focus-visible,
.design-form textarea:focus-visible,
#designForm input:focus-visible,
#designForm select:focus-visible,
#designForm textarea:focus-visible {
  background: #fff;
}

.job-result.empty-state,
.review-panel-box.placeholder,
.delivery-receipt-panel.placeholder {
  border-style: dashed;
  border-color: var(--line-strong, #c7d3d5);
  color: var(--muted, #607078);
}

.job-result.empty-state p,
.review-panel-box.placeholder,
.delivery-receipt-panel.placeholder {
  max-width: 64ch;
}

.matrix-table:focus-within,
.report-table:focus-within {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 2px;
}

@media (max-width: 620px) {
  .button-row {
    grid-template-columns: 1fr;
  }

  .feedback-grid input,
  .feedback-grid textarea,
  .design-form input,
  .design-form select,
  .design-form textarea,
  #designForm input,
  #designForm select,
  #designForm textarea {
    font-size: 16px;
  }
}

/* Public customer metric and intake polish: keep live platform metrics and
   generated intake controls stable on narrow screens. */
.metrics-grid {
  align-items: stretch;
}

.metric {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  overflow-wrap: anywhere;
}

.metric b,
.metric span {
  min-width: 0;
}

#designForm .form-grid {
  align-items: start;
}

#designForm label {
  min-width: 0;
}

#designForm input,
#designForm select,
#designForm textarea {
  max-width: 100%;
}

@media (max-width: 620px) {
  .metrics-grid {
    grid-template-columns: 1fr;
  }

  .metric {
    min-height: 0;
  }
}

/* Public customer status-badge pass: make customer-visible evidence, review,
   release, and next-action labels visually consistent across all pages. */
:root {
  --customer-badge-min-height: 30px;
}

.customer-governance-strip span,
.customer-release-progress-head > span,
.customer-review-release-summary-head > span,
.customer-workflow-continuity-head > span,
.customer-next-action-head > span,
.customer-action-receipt-head > span,
.customer-research-review-head > span,
.request-review-head > span,
.customer-request-change-head > span,
.report-hard-stop-head small,
.customer-release-proof-checklist-head small,
.customer-evidence-review-gate-head small,
.customer-current-step-brief-card small,
.customer-current-step-brief-card em,
.chip,
.claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span {
  min-width: 0;
  min-height: var(--customer-badge-min-height);
  align-items: center;
  justify-content: center;
  overflow-wrap: anywhere;
}

.customer-release-progress-head > span,
.customer-review-release-summary-head > span,
.customer-workflow-continuity-head > span,
.customer-next-action-head > span,
.customer-action-receipt-head > span,
.customer-research-review-head > span,
.request-review-head > span,
.customer-request-change-head > span,
.report-hard-stop-head small,
.customer-release-proof-checklist-head small,
.customer-evidence-review-gate-head small {
  display: inline-flex;
  border: 1px solid #f3dcad;
  border-radius: 999px;
  background: var(--customer-state-review-bg, #fff7e6);
  color: var(--customer-state-review-line, #b7791f);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}

:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="PASS"],
:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="ready"],
:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="submitted"],
:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="download_ready"] {
  border-color: #c8e8dc;
  background: var(--customer-state-ready-bg, #e8f6f1);
  color: var(--customer-state-ready-line, #0f766e);
}

:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="blocked"],
:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="locked"],
:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="held"],
:where(
  .customer-release-progress-head,
  .customer-review-release-summary-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-action-receipt-head,
  .customer-research-review-head,
  .request-review-head,
  .customer-request-change-head,
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-evidence-review-gate-head
) :is(span, small)[data-status*="changed"] {
  border-color: #f1cbc6;
  background: var(--customer-state-blocked-bg, #fff1f0);
  color: var(--customer-state-blocked-line, #b42318);
}

.boundary-strip.blocked-claims span,
.report-hard-stop-receipt .boundary-strip + .boundary-strip span,
.customer-request-change-guard > .boundary-strip span {
  border-color: #f1cbc6;
  background: var(--customer-state-blocked-bg, #fff1f0);
  color: var(--customer-state-blocked-line, #b42318);
}

.customer-governance-strip span,
.boundary-strip span,
.evidence-gate-strip span {
  text-align: center;
}

@media (max-width: 620px) {
  .customer-release-progress-head > span,
  .customer-review-release-summary-head > span,
  .customer-workflow-continuity-head > span,
  .customer-next-action-head > span,
  .customer-action-receipt-head > span,
  .customer-research-review-head > span,
  .request-review-head > span,
  .customer-request-change-head > span,
  .report-hard-stop-head small,
  .customer-release-proof-checklist-head small,
  .customer-evidence-review-gate-head small {
    justify-self: start;
    max-width: 100%;
  }
}

/* Public customer design-system refinement: shared component rhythm and
   customer-visible state styling across workstation, evidence, and delivery. */
body[data-page="workstation"],
body[data-page="evidence"],
body[data-page="delivery"] {
  --customer-section-space: 14px;
  --customer-card-pad: 14px;
  --customer-state-ready-bg: #e8f6f1;
  --customer-state-ready-line: #0f766e;
  --customer-state-review-bg: #fff7e6;
  --customer-state-review-line: #b7791f;
  --customer-state-blocked-bg: #fff1f0;
  --customer-state-blocked-line: #b42318;
  text-rendering: optimizeLegibility;
}

body[data-page="workstation"] .topbar,
body[data-page="evidence"] .topbar,
body[data-page="delivery"] .topbar {
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page="workstation"] :where(.status-strip, .panel, .customer-governance-strip article),
body[data-page="evidence"] :where(.status-strip, .panel, .customer-governance-strip article),
body[data-page="delivery"] :where(.status-strip, .panel, .customer-governance-strip article) {
  scroll-margin-top: 80px;
}

body[data-page="workstation"] :where(.panel, .metric, .candidate, .delivery-check, .review-panel-box, .delivery-receipt-panel, .step-list div, .matrix-list div, .service-boundary-grid div),
body[data-page="evidence"] :where(.panel, .metric, .candidate, .delivery-check, .review-panel-box, .delivery-receipt-panel, .step-list div, .matrix-list div, .service-boundary-grid div),
body[data-page="delivery"] :where(.panel, .metric, .candidate, .delivery-check, .review-panel-box, .delivery-receipt-panel, .step-list div, .matrix-list div, .service-boundary-grid div) {
  border-color: var(--line, #dce4e6);
  box-shadow: 0 1px 0 rgba(15, 23, 42, .025);
}

body[data-page="workstation"] :where(.panel, .metric, .candidate, .delivery-check, .review-panel-box, .delivery-receipt-panel, .step-list div, .matrix-list div, .service-boundary-grid div):focus-within,
body[data-page="evidence"] :where(.panel, .metric, .candidate, .delivery-check, .review-panel-box, .delivery-receipt-panel, .step-list div, .matrix-list div, .service-boundary-grid div):focus-within,
body[data-page="delivery"] :where(.panel, .metric, .candidate, .delivery-check, .review-panel-box, .delivery-receipt-panel, .step-list div, .matrix-list div, .service-boundary-grid div):focus-within {
  border-color: var(--accent-2, #0e7490);
}

.customer-governance-strip article {
  min-height: 118px;
  padding: var(--customer-card-pad);
}

.customer-governance-strip article:nth-child(1) {
  background:
    linear-gradient(90deg, rgba(15, 118, 110, .055), transparent 42%),
    var(--customer-surface, #fff);
}

.customer-governance-strip article:nth-child(2) {
  background:
    linear-gradient(90deg, rgba(183, 121, 31, .075), transparent 42%),
    var(--customer-surface, #fff);
}

.customer-governance-strip article:nth-child(3) {
  background:
    linear-gradient(90deg, rgba(14, 116, 144, .055), transparent 42%),
    var(--customer-surface, #fff);
}

.customer-governance-strip article > b,
.delivery-status-board article > b,
.evidence-overview article > b {
  line-height: 1.22;
}

.panel-head {
  min-width: 0;
}

.panel-head :where(.eyebrow, h2, .lede) {
  overflow-wrap: anywhere;
}

.status-strip :where(.eyebrow, h1, #missionText),
.panel :where(.eyebrow, h2, h3, .lede) {
  max-width: 76ch;
}

.status-strip .metrics-grid,
.customer-page-stage .metrics-grid {
  align-content: stretch;
}

.metric {
  display: grid;
  align-content: start;
  gap: 4px;
}

.metric span {
  display: block;
}

.rail a,
.topnav a {
  flex: 0 0 auto;
}

.topnav a:hover,
.rail a:hover,
button:hover,
.secondary-link:hover {
  filter: saturate(1.04);
}

.primary-action,
#customerAcceptQuoteButton,
.panel-head button {
  min-inline-size: min(100%, 11rem);
}

.job-result.empty-state,
.placeholder {
  color: var(--muted, #607078);
}

@media (hover: hover) and (pointer: fine) {
  .customer-governance-strip article,
  .metric,
  .panel {
    transition: border-color .14s ease, box-shadow .14s ease, transform .14s ease;
  }

  .customer-governance-strip article:hover,
  .metric:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(15, 23, 42, .06);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media (forced-colors: active) {
  .brand-mark,
  .status-dot,
  .customer-governance-strip article::after {
    forced-color-adjust: none;
    background: CanvasText;
  }

  .customer-governance-strip article,
  .panel,
  .metric,
  .candidate,
  .delivery-check {
    border-color: CanvasText;
  }
}

@media (max-width: 900px) {
  body[data-page="workstation"] :where(.status-strip, .panel, .customer-governance-strip article),
  body[data-page="evidence"] :where(.status-strip, .panel, .customer-governance-strip article),
  body[data-page="delivery"] :where(.status-strip, .panel, .customer-governance-strip article) {
    scroll-margin-top: 14px;
  }

  .customer-governance-strip article {
    min-height: 0;
  }

  .primary-action,
  #customerAcceptQuoteButton,
  .panel-head button,
  .secondary-link {
    width: 100%;
  }
}

@media (max-width: 620px) {
  body[data-page="workstation"],
  body[data-page="evidence"],
  body[data-page="delivery"] {
    --customer-section-space: 10px;
    --customer-card-pad: 12px;
  }

  .customer-governance-strip,
  .workbench,
  .grid-two,
  .delivery-layout {
    gap: var(--customer-section-space);
  }

  .panel-head {
    gap: 8px;
  }
}

/* Public customer next-step handoff: queue links land on a visible, focusable
   workflow target without changing packets, routes, or release gates. */
:where(#design, #generated, #reviewScopePanel, #downloadPanel, #feedbackForm, #candidates, #workflow-demo, #report-loop, #deliveryStatusBoard).customer-step-target {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 4px;
  box-shadow: 0 0 0 5px rgba(14, 116, 144, .08);
}

:where(#design, #generated, #reviewScopePanel, #downloadPanel, #feedbackForm, #candidates, #workflow-demo, #report-loop, #deliveryStatusBoard):focus-visible {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 4px;
}

/* Formal download wait checklist: customer-visible gates only. */
.customer-download-wait-checklist {
  margin: 12px 0;
  padding: 12px;
  border: 1px solid #f3dcad;
  border-left: 4px solid var(--customer-state-review-line, #b7791f);
  border-radius: var(--customer-card-radius, 8px);
  background: #fffaf0;
}

.customer-download-wait-checklist[data-status="PASS"] {
  border-color: #c8e8dc;
  border-left-color: var(--customer-state-ready-line, #0f766e);
  background: var(--customer-state-ready-bg, #e8f6f1);
}

.customer-download-wait-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.customer-download-wait-head b,
.customer-download-wait-head span,
.customer-download-wait-head small {
  display: block;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.customer-download-wait-head b {
  font-size: 13px;
}

.customer-download-wait-head span {
  margin-top: 4px;
  color: #65440e;
  font-size: 12px;
}

.customer-download-wait-head small {
  border: 1px solid #f3dcad;
  border-radius: 999px;
  background: #fff;
  padding: 5px 8px;
  color: #65440e;
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.customer-download-wait-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap: 8px;
}

.customer-download-wait-grid article {
  min-width: 0;
  border: 1px solid #f3dcad;
  border-left: 4px solid var(--customer-state-review-line, #b7791f);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 9px;
}

.customer-download-wait-grid article.pass {
  border-color: #c8e8dc;
  border-left-color: var(--customer-state-ready-line, #0f766e);
  background: var(--customer-state-ready-bg, #e8f6f1);
}

.customer-download-wait-grid b,
.customer-download-wait-grid span,
.customer-download-wait-grid small {
  display: block;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.customer-download-wait-grid b {
  font-size: 13px;
}

.customer-download-wait-grid span,
.customer-download-wait-grid small,
.customer-download-wait-checklist p {
  color: var(--muted, #607078);
  font-size: 12px;
}

.customer-download-wait-grid small {
  margin-top: 6px;
  color: #65440e;
  font-weight: 850;
}

.customer-download-wait-next {
  display: grid;
  grid-template-columns: minmax(96px, .45fr) 1fr auto;
  gap: 8px;
  align-items: center;
  margin-top: 10px;
  padding: 9px;
  border: 1px solid #f3dcad;
  border-radius: var(--customer-card-radius, 8px);
  background: rgba(255, 255, 255, .72);
}

.customer-download-wait-next b,
.customer-download-wait-next span,
.customer-download-wait-next small {
  display: block;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.customer-download-wait-next b {
  font-size: 12px;
}

.customer-download-wait-next span,
.customer-download-wait-next small {
  color: #65440e;
  font-size: 12px;
}

.customer-download-wait-checklist p {
  margin: 8px 0 0;
  line-height: 1.45;
}

@media (max-width: 620px) {
  .customer-download-wait-head {
    display: block;
  }

  .customer-download-wait-head small {
    display: inline-block;
    margin-top: 8px;
  }

  .customer-download-wait-grid,
  .customer-download-wait-next {
    grid-template-columns: 1fr;
  }
}

/* Customer research submit gate: make the accept action auditable from the
   customer's own page without exposing private workflow details. */
.customer-research-acceptance-gate {
  margin: 12px 0 0;
  padding: 12px;
  border: 1px solid #f3dcad;
  border-left: 4px solid var(--customer-state-review-line, #b7791f);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-state-review-bg, #fff7e6);
}

.customer-research-acceptance-gate[data-status="ready_to_submit_review"],
.customer-research-acceptance-gate[data-status="submitted_for_expert_review"] {
  border-color: #c8e8dc;
  border-left-color: var(--customer-state-ready-line, #0f766e);
  background: var(--customer-state-ready-bg, #e8f6f1);
}

.customer-research-acceptance-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.customer-research-acceptance-head h4 {
  margin: 0 0 6px;
  font-size: 14px;
  line-height: 1.25;
}

.customer-research-acceptance-head p,
.customer-research-acceptance-gate > p {
  margin: 0;
  color: #65440e;
  font-size: 12px;
  line-height: 1.45;
}

.customer-research-acceptance-head span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: var(--customer-badge-min-height, 30px);
  border: 1px solid #f3dcad;
  border-radius: 999px;
  background: #fff;
  color: var(--customer-state-review-line, #b7791f);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

.customer-research-acceptance-gate[data-status="ready_to_submit_review"] .customer-research-acceptance-head span,
.customer-research-acceptance-gate[data-status="submitted_for_expert_review"] .customer-research-acceptance-head span {
  border-color: #c8e8dc;
  color: var(--customer-state-ready-line, #0f766e);
}

.customer-research-acceptance-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(145px, 100%), 1fr));
  gap: 8px;
}

.customer-research-acceptance-grid article,
.customer-research-acceptance-next {
  min-width: 0;
  border: 1px solid #f3dcad;
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
}

.customer-research-acceptance-grid article.pass {
  border-left: 4px solid var(--customer-state-ready-line, #0f766e);
}

.customer-research-acceptance-grid article.blocked {
  border-left: 4px solid var(--customer-state-review-line, #b7791f);
}

.customer-research-acceptance-grid b,
.customer-research-acceptance-grid span,
.customer-research-acceptance-grid small,
.customer-research-acceptance-next b,
.customer-research-acceptance-next span,
.customer-research-acceptance-next small {
  display: block;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.customer-research-acceptance-grid b,
.customer-research-acceptance-next b {
  margin-bottom: 6px;
  font-size: 13px;
}

.customer-research-acceptance-grid span,
.customer-research-acceptance-grid small,
.customer-research-acceptance-next span,
.customer-research-acceptance-next small {
  color: var(--muted, #607078);
  font-size: 12px;
}

.customer-research-acceptance-grid small,
.customer-research-acceptance-next small {
  margin-top: 6px;
  color: #65440e;
  font-weight: 850;
}

.customer-research-acceptance-next {
  margin-top: 8px;
}

.customer-research-acceptance-gate .boundary-strip {
  margin-top: 8px;
}

.customer-research-acceptance-gate > p {
  margin-top: 10px;
}

.customer-current-action[data-status="waiting_customer_acknowledgement"],
.customer-next-action-grid article[data-status="waiting_customer_acknowledgement"],
.customer-resume-action-grid article[data-status="waiting_customer_acknowledgement"],
.customer-current-step-brief-card[data-status="waiting_customer_acknowledgement"] {
  border-left-color: var(--customer-state-review-line, #b7791f);
  background: var(--customer-state-review-bg, #fff7e6);
}

.customer-current-action[data-status="waiting_customer_acknowledgement"] p {
  color: #65440e;
}

/* Public customer service and progress cards: align sellable work packages,
   eval gates, and long-horizon status with the customer-safe state system. */
:root {
  --customer-card-number-size: 32px;
  --customer-service-min: minmax(min(210px, 100%), 1fr);
  --customer-progress-min: minmax(min(220px, 100%), 1fr);
}

.service-package-grid,
.eval-gate-list,
.customer-job-tracker {
  align-items: stretch;
}

.service-package-grid {
  grid-template-columns: repeat(auto-fit, var(--customer-service-min));
}

.eval-gate-list {
  grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr));
}

.customer-job-tracker {
  grid-template-columns: repeat(auto-fit, var(--customer-progress-min));
}

.service-package-card,
.eval-gate-list article,
.job-tracker-stage,
.materials-taste-model {
  min-width: 0;
  border-color: var(--line, #dce4e6);
  border-radius: var(--customer-card-radius, 8px);
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03)), var(--customer-state-ring, inset 0 0 0 1px rgba(15, 23, 42, .025));
  overflow-wrap: anywhere;
}

.service-package-card,
.job-tracker-stage {
  position: relative;
  align-content: start;
  border-left: 4px solid var(--customer-state-info-line, #0e7490);
  background: #fff;
}

.service-package-card:first-child {
  border-left-color: var(--customer-state-ready-line, #0f766e);
  background: linear-gradient(180deg, #fff, var(--customer-state-ready-bg, #e8f6f1));
}

.service-package-card > span,
.job-tracker-stage > span,
.eval-gate-list b {
  inline-size: var(--customer-card-number-size);
  block-size: var(--customer-card-number-size);
  display: inline-grid;
  place-items: center;
  border: 1px solid #c8e8dc;
  border-radius: 999px;
  background: var(--customer-state-ready-bg, #e8f6f1);
  color: var(--customer-state-ready-line, #0f766e);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.service-package-card h3,
.service-package-card p,
.service-package-card dl,
.service-package-card small,
.job-tracker-stage b,
.job-tracker-stage p,
.job-tracker-stage small,
.eval-gate-list span,
.materials-taste-model p {
  min-width: 0;
}

.service-package-card h3,
.job-tracker-stage b {
  line-height: 1.25;
}

.service-package-card p,
.service-package-card dd,
.service-package-card small,
.job-tracker-stage p,
.job-tracker-stage small,
.eval-gate-list span,
.materials-taste-model p {
  color: var(--muted, #607078);
  line-height: 1.45;
}

.service-package-card .secondary-link {
  align-self: end;
  margin-top: 2px;
}

.job-tracker-stage {
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 132px;
}

.job-tracker-stage small {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  min-height: var(--customer-badge-min-height, 30px);
  align-items: center;
  justify-content: center;
  border: 1px solid #f3dcad;
  border-radius: 999px;
  background: var(--customer-state-review-bg, #fff7e6);
  color: var(--customer-state-review-line, #b7791f);
  padding: 5px 9px;
  font-size: 11px;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}

.job-tracker-stage[data-status*="ready"] {
  border-left-color: var(--customer-state-ready-line, #0f766e);
  background: var(--customer-state-ready-bg, #e8f6f1);
}

.job-tracker-stage[data-status*="ready"] small {
  border-color: #c8e8dc;
  background: #fff;
  color: var(--customer-state-ready-line, #0f766e);
}

.job-tracker-stage[data-status*="locked"],
.job-tracker-stage[data-status*="review"] {
  border-left-color: var(--customer-state-review-line, #b7791f);
  background: var(--customer-state-review-bg, #fff7e6);
}

.eval-gate-list article {
  align-content: start;
  background: #fff;
}

.taste-check-grid span {
  min-height: var(--customer-badge-min-height, 30px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  color: var(--ink, #162024);
  text-align: center;
  overflow-wrap: anywhere;
}

@media (hover: hover) and (pointer: fine) {
  .service-package-card:hover,
  .job-tracker-stage:hover,
  .eval-gate-list article:hover,
  .taste-check-grid span:hover {
    border-color: var(--customer-hover-border, #b9cacc);
    box-shadow: var(--customer-hover-shadow, 0 8px 20px rgba(15, 23, 42, .06)), var(--customer-state-ring, inset 0 0 0 1px rgba(15, 23, 42, .025));
  }
}

@media (max-width: 620px) {
  .job-tracker-stage {
    min-height: 0;
  }

  .service-package-card,
  .job-tracker-stage,
  .eval-gate-list article {
    padding: 11px;
  }
}

/* Public customer language and state polish: keep visible progress, action,
   and safety labels customer-safe, aligned, and readable on narrow screens. */
:root {
  --customer-action-min: minmax(min(210px, 100%), 1fr);
  --customer-status-badge-bg: #f8fbfb;
}

.customer-current-action,
.customer-next-action-grid article,
.customer-workflow-continuity-summary article,
.customer-current-step-brief-card,
.customer-request-change-summary,
.customer-research-review-next,
.customer-feedback-review-next,
.customer-review-release-summary-grid article,
.customer-action-receipt-summary article {
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

.customer-next-action-grid,
.customer-workflow-continuity-summary,
.customer-review-release-summary-grid,
.customer-action-receipt-summary {
  grid-template-columns: repeat(auto-fit, var(--customer-action-min));
  align-items: stretch;
}

.customer-next-action-head span,
.customer-workflow-continuity-head span,
.customer-request-change-head span,
.customer-research-review-head span,
.customer-feedback-review-head small,
.customer-review-release-summary-head span,
.customer-action-receipt-head span,
.customer-current-step-brief-card small,
.customer-current-step-brief-card em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: var(--customer-badge-min-height, 30px);
  border: 1px solid var(--line, #dce4e6);
  border-radius: 999px;
  background: var(--customer-status-badge-bg);
  color: var(--muted, #607078);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}

.customer-current-action a,
.customer-next-action-grid a,
.customer-current-step-brief-card a {
  width: fit-content;
  max-width: 100%;
}

@media (max-width: 620px) {
  .customer-next-action-grid,
  .customer-workflow-continuity-summary,
  .customer-review-release-summary-grid,
  .customer-action-receipt-summary {
    grid-template-columns: 1fr;
  }

  .customer-current-action a,
  .customer-next-action-grid a,
  .customer-current-step-brief-card a {
    width: 100%;
  }
}

/* Public customer design-system closeout: stable page rhythm, controls,
   status cards, and handoff targets across the three customer pages. */
body[data-page="workstation"],
body[data-page="evidence"],
body[data-page="delivery"] {
  --customer-page-gutter: clamp(10px, 1.4vw, 20px);
  --customer-action-height: 44px;
  --customer-card-gap: clamp(8px, 1vw, 12px);
  --customer-target-ring: rgba(14, 116, 144, .22);
}

body[data-page="workstation"] .workspace,
body[data-page="evidence"] .workspace,
body[data-page="delivery"] .workspace {
  padding-inline: var(--customer-page-gutter);
}

body[data-page="workstation"] :where(button, .primary-action, .secondary-link),
body[data-page="evidence"] :where(button, .primary-action, .secondary-link),
body[data-page="delivery"] :where(button, .primary-action, .secondary-link) {
  min-height: var(--customer-action-height);
  border-radius: var(--customer-card-radius, 8px);
  line-height: 1.25;
  overflow-wrap: anywhere;
}

body[data-page="workstation"] :where(input, select, textarea),
body[data-page="evidence"] :where(input, select, textarea),
body[data-page="delivery"] :where(input, select, textarea) {
  min-height: var(--customer-action-height);
  border-radius: var(--customer-card-radius, 8px);
  line-height: 1.35;
}

body[data-page="workstation"] :where(button, .primary-action, .secondary-link, input, select, textarea):disabled,
body[data-page="evidence"] :where(button, .primary-action, .secondary-link, input, select, textarea):disabled,
body[data-page="delivery"] :where(button, .primary-action, .secondary-link, input, select, textarea):disabled {
  filter: grayscale(.12);
}

body[data-page="workstation"] .workspace :target,
body[data-page="evidence"] .workspace :target,
body[data-page="delivery"] .workspace :target {
  scroll-margin-top: var(--customer-anchor-offset, 88px);
}

body[data-page="workstation"] .workspace :target:is(.panel, .workbench, .review-panel-box, .delivery-receipt-panel, form),
body[data-page="evidence"] .workspace :target:is(.panel, form),
body[data-page="delivery"] .workspace :target:is(.panel, form) {
  outline: 3px solid var(--customer-target-ring);
  outline-offset: 4px;
}

body[data-page="workstation"] :where(.panel-head, .customer-research-acceptance-head, .customer-next-action-head, .customer-workflow-continuity-head),
body[data-page="evidence"] :where(.panel-head, .customer-evidence-safety-receipt-head, .customer-evidence-review-gate-head),
body[data-page="delivery"] :where(.panel-head, .report-hard-stop-head, .customer-release-progress-head) {
  column-gap: var(--customer-card-gap);
  row-gap: 8px;
}

body[data-page="workstation"] :where(.customer-current-action, .customer-research-review-next, .customer-current-step-brief-card),
body[data-page="evidence"] :where(.customer-evidence-review-gate, .customer-evidence-export-boundary),
body[data-page="delivery"] :where(.report-hard-stop-receipt, .sample-preview-gate) {
  max-width: 100%;
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

.topnav,
.rail {
  scroll-padding-inline: var(--customer-page-gutter, 12px);
}

.topnav a,
.rail a {
  scroll-snap-align: start;
}

@media (max-width: 900px) {
  body[data-page="workstation"] .workspace,
  body[data-page="evidence"] .workspace,
  body[data-page="delivery"] .workspace {
    padding-inline: var(--customer-page-gutter);
  }

  body[data-page="workstation"] .workspace :target,
  body[data-page="evidence"] .workspace :target,
  body[data-page="delivery"] .workspace :target {
    scroll-margin-top: 16px;
  }

  .topnav,
  .rail {
    scroll-snap-type: x proximity;
  }
}

@media (max-width: 620px) {
  body[data-page="workstation"] .workspace :target:is(.panel, .workbench, .review-panel-box, .delivery-receipt-panel, form),
  body[data-page="evidence"] .workspace :target:is(.panel, form),
  body[data-page="delivery"] .workspace :target:is(.panel, form) {
    outline-offset: 2px;
  }
}

/* Public customer state-band refinement: customer-facing generated receipts use
   one visual language for waiting, review, blocked, ready, and submitted states. */
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status] {
  border-left-width: 4px;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03)), inset 0 0 0 1px rgba(15, 23, 42, .02);
}

body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="ready"],
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="submitted"],
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="pass"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="ready"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="submitted"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="pass"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="ready"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="submitted"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="pass"] {
  border-left-color: var(--accent, #0f766e);
  background: var(--customer-state-ok-bg, #e8f6f1);
}

body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="wait"],
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="review"],
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="held"],
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="locked"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="wait"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="review"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="held"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="locked"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="wait"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="review"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="held"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="locked"] {
  border-left-color: var(--warning, #b7791f);
  background: var(--customer-state-review-bg, #fff7e6);
}

body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="block"],
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-current-step-brief-card,
  .customer-feedback-submission-receipt
)[data-status*="fail"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="block"],
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
)[data-status*="fail"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="block"],
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-progress,
  .customer-review-release-summary,
  .customer-feedback-submission-receipt
)[data-status*="fail"] {
  border-left-color: var(--danger, #b42318);
  background: var(--customer-state-blocked-bg, #fff1f0);
}

/* Customer design-system status states: keep all public gate receipts legible
   and conservative without changing generated customer packet data. */
body[data-page="workstation"] :where(
  .request-review-gate,
  .customer-research-acceptance-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard,
  .customer-feedback-review-gate,
  .customer-feedback-submission-receipt
),
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-export-boundary
),
body[data-page="delivery"] :where(
  .report-hard-stop-receipt,
  .sample-preview-gate,
  .customer-release-proof-checklist,
  .customer-download-wait-checklist,
  .customer-review-release-summary,
  .customer-feedback-review-gate,
  .customer-feedback-submission-receipt
) {
  container-type: inline-size;
}

body[data-page="workstation"] :where(
  .request-review-head,
  .customer-research-acceptance-head,
  .customer-research-review-head,
  .customer-action-receipt-head,
  .customer-workflow-continuity-head,
  .customer-request-change-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) > :first-child,
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-head,
  .customer-evidence-review-gate-head
) > :first-child,
body[data-page="delivery"] :where(
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-download-wait-head,
  .customer-review-release-summary-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) > :first-child {
  min-width: 0;
}

body[data-page="workstation"] :where(
  .request-review-head,
  .customer-research-acceptance-head,
  .customer-research-review-head,
  .customer-action-receipt-head,
  .customer-workflow-continuity-head,
  .customer-request-change-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) :where(span[data-status], small[data-status], > span, > small),
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-head,
  .customer-evidence-review-gate-head
) :where(span[data-status], small[data-status], > span, > small),
body[data-page="delivery"] :where(
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-download-wait-head,
  .customer-review-release-summary-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) :where(span[data-status], small[data-status], > span, > small) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  max-width: min(240px, 100%);
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}

.boundary-strip span,
.evidence-gate-strip span {
  border-radius: 999px;
  padding-inline: 9px;
  text-align: center;
}

.boundary-strip.blocked-claims span,
.report-hard-stop-receipt .boundary-strip + .boundary-strip span,
.customer-download-wait-checklist .boundary-strip.blocked-claims span {
  border-color: #f1cbc6;
  background: var(--customer-state-blocked-bg, #fff1f0);
  color: var(--customer-state-blocked-line, #b42318);
}

@container (max-width: 460px) {
  body[data-page="workstation"] :where(
    .request-review-head,
    .customer-research-acceptance-head,
    .customer-research-review-head,
    .customer-action-receipt-head,
    .customer-workflow-continuity-head,
    .customer-request-change-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ),
  body[data-page="evidence"] :where(
    .customer-evidence-safety-receipt-head,
    .customer-evidence-review-gate-head
  ),
  body[data-page="delivery"] :where(
    .report-hard-stop-head,
    .customer-release-proof-checklist-head,
    .customer-download-wait-head,
    .customer-review-release-summary-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page="workstation"] :where(
    .request-review-head,
    .customer-research-acceptance-head,
    .customer-research-review-head,
    .customer-action-receipt-head,
    .customer-workflow-continuity-head,
    .customer-request-change-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ) :where(span[data-status], small[data-status], > span, > small),
  body[data-page="evidence"] :where(
    .customer-evidence-safety-receipt-head,
    .customer-evidence-review-gate-head
  ) :where(span[data-status], small[data-status], > span, > small),
  body[data-page="delivery"] :where(
    .report-hard-stop-head,
    .customer-release-proof-checklist-head,
    .customer-download-wait-head,
    .customer-review-release-summary-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ) :where(span[data-status], small[data-status], > span, > small) {
    justify-self: start;
    max-width: 100%;
  }
}

/* Public customer density and readability refinement: keep customer-safe
   decision surfaces stable across mobile, tablet, print, and long labels. */
:root {
  --customer-readable-line: 1.5;
  --customer-panel-min-tap: 44px;
  --customer-safe-table-min: 640px;
}

body[data-page="workstation"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .job-result),
body[data-page="evidence"] :where(.panel, .candidate, .delivery-check, .customer-evidence-review-gate),
body[data-page="delivery"] :where(.panel, .report-preview, .customer-release-progress, .customer-download-wait-checklist) {
  contain: layout style;
}

body[data-page="workstation"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .job-result) :where(p, li, small, span, dd),
body[data-page="evidence"] :where(.panel, .candidate, .delivery-check, .customer-evidence-review-gate) :where(p, li, small, span, dd),
body[data-page="delivery"] :where(.panel, .report-preview, .customer-release-progress, .customer-download-wait-checklist) :where(p, li, small, span, dd) {
  line-height: var(--customer-readable-line);
}

.panel-head :where(button, .secondary-link),
.customer-step-jump,
.customer-next-action-head span,
.customer-release-progress-head > span,
.delivery-readiness-head .chip,
.customer-download-wait-head small,
.customer-release-proof-checklist-head small {
  min-height: 32px;
}

.customer-step-jump,
.panel-head :where(button, .secondary-link) {
  min-inline-size: var(--customer-panel-min-tap);
}

.customer-governance-strip article,
.platform-map article,
.metric,
.candidate,
.delivery-check,
.service-boundary-grid div,
.customer-download-wait-grid article,
.customer-release-proof-checklist-grid article,
.report-boundary-audit article {
  word-break: normal;
  overflow-wrap: anywhere;
}

.matrix-table,
.report-table,
.report-preview,
.review-panel-box,
.delivery-receipt-panel {
  overflow-x: auto;
  scrollbar-gutter: stable;
}

.matrix-table table,
.report-table table {
  min-width: min(var(--customer-safe-table-min), 100%);
}

.customer-governance-strip small,
.platform-map small,
.delivery-check span,
.candidate dd,
.service-boundary-grid span,
.service-boundary-grid small,
.report-preview small,
.review-panel-box small,
.delivery-receipt-panel small {
  text-wrap: pretty;
}

.customer-governance-strip article:focus-within,
.platform-map article:focus-within,
.candidate:focus-within,
.delivery-check:focus-within,
.customer-download-wait-grid article:focus-within,
.customer-release-proof-checklist-grid article:focus-within {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 2px;
}

@media (max-width: 900px) {
  .matrix-table table,
  .report-table table {
    min-width: var(--customer-safe-table-min);
  }

  .panel-head {
    flex-wrap: wrap;
  }

  .panel-head > :first-child {
    flex: 1 1 260px;
  }

  .panel-head > :last-child {
    flex: 0 1 100%;
  }

  .panel-head > :last-child:is(.chip, span) {
    width: fit-content;
  }
}

@media (max-width: 620px) {
  body[data-page="workstation"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .job-result),
  body[data-page="evidence"] :where(.panel, .candidate, .delivery-check, .customer-evidence-review-gate),
  body[data-page="delivery"] :where(.panel, .report-preview, .customer-release-progress, .customer-download-wait-checklist) {
    contain: layout;
  }

  .top-status {
    width: 100%;
    justify-content: center;
  }

  .rail {
    padding-inline: 10px;
  }

  .rail a {
    min-inline-size: 72px;
  }

  .customer-governance-strip article,
  .platform-map article,
  .candidate,
  .delivery-check,
  .customer-release-progress li,
  .customer-download-wait-grid article,
  .customer-release-proof-checklist-grid article {
    min-height: auto;
  }

  .customer-governance-strip > article > span,
  .eyebrow {
    font-size: 10px;
  }

  h1 {
    font-size: 24px;
  }

  h2 {
    font-size: 19px;
  }
}

@media print {
  body[data-page="workstation"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .job-result),
  body[data-page="evidence"] :where(.panel, .candidate, .delivery-check, .customer-evidence-review-gate),
  body[data-page="delivery"] :where(.panel, .report-preview, .customer-release-progress, .customer-download-wait-checklist) {
    contain: none;
  }

  .matrix-table,
  .report-table,
  .report-preview,
  .review-panel-box,
  .delivery-receipt-panel {
    overflow: visible;
  }
}

/* Public customer design-system pass: keep shell, state chips, and dense
   customer panels predictable across the customer pages. */
:root {
  --customer-ds-gap: 10px;
  --customer-ds-card-pad: 12px;
  --customer-ds-line: var(--line, #dce4e6);
  --customer-ds-soft: #fbfcfc;
  --customer-ds-radius: var(--customer-card-radius, 8px);
  --customer-ds-min-card: 220px;
}

body[data-page] .workspace {
  width: min(1520px, 100%);
}

:where(.topnav, .rail) {
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline proximity;
}

:where(.topnav a, .rail a) {
  scroll-snap-align: start;
}

:where(
  .panel,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .metric,
  .platform-map article,
  .customer-governance-strip article
) {
  border-color: var(--customer-ds-line);
  border-radius: var(--customer-ds-radius);
}

:where(
  .panel,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check
) > :first-child {
  margin-top: 0;
}

:where(.panel-head, .delivery-readiness-head, .customer-release-progress-head, .feedback-handoff-head) {
  min-width: 0;
}

:where(.panel-head, .delivery-readiness-head, .customer-release-progress-head, .feedback-handoff-head) > * {
  min-width: 0;
}

:where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span, .customer-step-jump) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  overflow-wrap: anywhere;
  text-align: center;
}

:where(.boundary-strip, .claim-badge-row, .evidence-gate-strip) {
  gap: 6px;
}

:where(.result-cards, .candidate-grid, .evidence-card-grid, .generated-candidate-grid, .delivery-checklist, .service-boundary-grid, .pillars, .workflow-demo-steps) {
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-ds-min-card), 100%), 1fr));
}

:where(.step-list div, .evidence-steps div, .matrix-list div, .service-boundary-grid div, .report-summary-grid article, .report-deliverables article) {
  min-width: 0;
  border-radius: var(--customer-ds-radius);
  overflow-wrap: anywhere;
}

:where(.delivery-check.pass, .customer-release-progress li.done, .customer-release-proof-checklist-grid article.pass) {
  background: var(--ok-bg, #e8f6f1);
}

:where(.delivery-check.blocked, .customer-release-progress li.blocked, .customer-data-state.error) {
  background: var(--bad-bg, #fff1f0);
}

:where(.delivery-check.wait, .customer-release-progress li.current, .source-lock-boundary, .sample-preview-gate) {
  background: var(--warn-bg, #fff7e6);
}

@media (max-width: 900px) {
  :root {
    --customer-ds-min-card: 200px;
  }

  :where(.topnav, .rail) {
    scroll-padding-inline: 12px;
  }

  :where(.panel-head, .delivery-readiness-head, .customer-release-progress-head, .feedback-handoff-head) {
    gap: var(--customer-ds-gap);
  }
}

@media (max-width: 620px) {
  :root {
    --customer-ds-card-pad: 10px;
    --customer-ds-min-card: 100%;
  }

  :where(
    .panel,
    .review-panel-box,
    .delivery-receipt-panel,
    .report-preview,
    .candidate,
    .claim-card,
    .generated-candidate-card,
    .delivery-check
  ) {
    padding: var(--customer-ds-card-pad);
  }

  :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
    width: auto;
    justify-content: flex-start;
    text-align: left;
  }
}

/* Public customer interface refinement: keep controls, scroll regions, and
   printed review surfaces consistent across the customer pages. */
body[data-page="workstation"],
body[data-page="evidence"],
body[data-page="delivery"] {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body[data-page="workstation"] :where(input, select, textarea),
body[data-page="evidence"] :where(input, select, textarea),
body[data-page="delivery"] :where(input, select, textarea) {
  accent-color: var(--accent, #0f766e);
  background-clip: padding-box;
}

body[data-page="workstation"] :where(input, textarea)::placeholder,
body[data-page="evidence"] :where(input, textarea)::placeholder,
body[data-page="delivery"] :where(input, textarea)::placeholder {
  color: color-mix(in srgb, var(--muted, #607078) 78%, #ffffff);
  opacity: 1;
}

@supports (field-sizing: content) {
  body[data-page="workstation"] textarea,
  body[data-page="evidence"] textarea,
  body[data-page="delivery"] textarea {
    field-sizing: content;
    min-block-size: calc(var(--customer-action-height, 44px) * 1.8);
  }
}

body[data-page="workstation"] :where(button, .primary-action, .secondary-link, .request-preset-card),
body[data-page="evidence"] :where(button, .primary-action, .secondary-link),
body[data-page="delivery"] :where(button, .primary-action, .secondary-link) {
  touch-action: manipulation;
  user-select: none;
}

body[data-page="workstation"] :where(.matrix-table, .report-table, .topnav, .rail),
body[data-page="evidence"] :where(.matrix-table, .report-table, .topnav, .rail),
body[data-page="delivery"] :where(.matrix-table, .report-table, .topnav, .rail) {
  scrollbar-color: var(--line-strong, #c7d3d5) transparent;
  scrollbar-width: thin;
}

body[data-page="workstation"] :where(input, select, textarea):user-invalid,
body[data-page="evidence"] :where(input, select, textarea):user-invalid,
body[data-page="delivery"] :where(input, select, textarea):user-invalid {
  border-color: var(--danger, #b42318);
  box-shadow: 0 0 0 3px rgba(180, 35, 24, .12);
}

@media (forced-colors: active) {
  body[data-page="workstation"] :where(button, .primary-action, .secondary-link, input, select, textarea),
  body[data-page="evidence"] :where(button, .primary-action, .secondary-link, input, select, textarea),
  body[data-page="delivery"] :where(button, .primary-action, .secondary-link, input, select, textarea) {
    border-color: CanvasText;
  }
}

@media print {
  body[data-page="workstation"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .report-preview, .customer-governance-strip article),
  body[data-page="evidence"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .report-preview, .customer-governance-strip article),
  body[data-page="delivery"] :where(.panel, .review-panel-box, .delivery-receipt-panel, .report-preview, .customer-governance-strip article) {
    print-color-adjust: exact;
  }
}

/* Public customer action-receipt refinement: normalize generated review,
   download, and feedback panels without changing customer packet data. */
:root {
  --customer-action-grid-min: 176px;
  --customer-action-status-max: 220px;
}

body[data-page="workstation"] :where(
  .request-review-head,
  .customer-research-acceptance-head,
  .customer-research-review-head,
  .customer-action-receipt-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-request-change-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
),
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-head,
  .customer-evidence-review-gate-head
),
body[data-page="delivery"] :where(
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-download-wait-head,
  .customer-review-release-summary-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, var(--customer-action-status-max));
  align-items: start;
}

body[data-page="workstation"] :where(
  .request-review-head,
  .customer-research-acceptance-head,
  .customer-research-review-head,
  .customer-action-receipt-head,
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .customer-request-change-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) > :last-child,
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-head,
  .customer-evidence-review-gate-head
) > :last-child,
body[data-page="delivery"] :where(
  .report-hard-stop-head,
  .customer-release-proof-checklist-head,
  .customer-download-wait-head,
  .customer-review-release-summary-head,
  .customer-feedback-review-head,
  .customer-feedback-submission-head
) > :last-child {
  justify-self: end;
  max-inline-size: 100%;
  white-space: normal;
}

body[data-page="workstation"] :where(
  .request-review-grid,
  .customer-research-acceptance-grid,
  .customer-research-review-grid,
  .customer-action-receipt-grid,
  .customer-action-receipt-summary,
  .customer-workflow-continuity-grid,
  .customer-workflow-continuity-summary,
  .customer-next-action-grid,
  .customer-request-change-grid,
  .customer-request-change-summary-grid,
  .customer-feedback-review-grid,
  .customer-feedback-submission-grid
),
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-safety-receipt-checks,
  .customer-evidence-redaction-audit,
  .customer-evidence-action-summary,
  .customer-evidence-review-gate-grid,
  .customer-evidence-copy-action-policy,
  .customer-evidence-review-lanes
),
body[data-page="delivery"] :where(
  .report-hard-stop-grid,
  .report-boundary-audit,
  .customer-release-proof-checklist-grid,
  .customer-download-wait-grid,
  .customer-review-release-summary-grid,
  .customer-feedback-review-grid,
  .customer-feedback-submission-grid
) {
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-action-grid-min), 100%), 1fr));
  align-items: stretch;
}

body[data-page="workstation"] :where(
  .request-review-grid article,
  .customer-research-acceptance-grid article,
  .customer-research-review-grid article,
  .customer-action-receipt-grid article,
  .customer-action-receipt-summary article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article,
  .customer-next-action-grid article,
  .customer-request-change-grid article,
  .customer-request-change-summary-grid article,
  .customer-feedback-review-grid article,
  .customer-feedback-submission-grid article,
  .customer-research-acceptance-next,
  .customer-research-review-next,
  .customer-feedback-review-next,
  .customer-feedback-submission-next
),
body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-grid article,
  .customer-evidence-safety-receipt-checks article,
  .customer-evidence-redaction-audit article,
  .customer-evidence-action-summary article,
  .customer-evidence-review-gate-grid article,
  .customer-evidence-copy-action-policy > div,
  .customer-evidence-review-lanes article
),
body[data-page="delivery"] :where(
  .report-hard-stop-grid article,
  .report-boundary-audit article,
  .customer-release-proof-checklist-grid article,
  .customer-download-wait-grid article,
  .customer-review-release-summary-grid article,
  .customer-feedback-review-grid article,
  .customer-feedback-submission-grid article,
  .customer-download-wait-next,
  .customer-feedback-review-next,
  .customer-feedback-submission-next
) {
  display: grid;
  align-content: start;
  gap: 5px;
}

.customer-current-action {
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.15fr) minmax(0, .9fr);
}

.customer-current-step-brief-card {
  grid-template-columns: minmax(0, 1fr) repeat(3, minmax(0, auto));
}

.customer-resume-checkpoint-card {
  scroll-margin-top: var(--customer-anchor-offset, 76px);
}

.customer-resume-current {
  grid-template-columns: minmax(0, 1fr) minmax(0, auto) minmax(110px, auto);
}

.customer-resume-action-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

@media (max-width: 760px) {
  :root {
    --customer-action-grid-min: 100%;
    --customer-action-status-max: 100%;
  }

  body[data-page="workstation"] :where(
    .request-review-head,
    .customer-research-acceptance-head,
    .customer-research-review-head,
    .customer-action-receipt-head,
    .customer-workflow-continuity-head,
    .customer-next-action-head,
    .customer-request-change-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ),
  body[data-page="evidence"] :where(
    .customer-evidence-safety-receipt-head,
    .customer-evidence-review-gate-head
  ),
  body[data-page="delivery"] :where(
    .report-hard-stop-head,
    .customer-release-proof-checklist-head,
    .customer-download-wait-head,
    .customer-review-release-summary-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ),
  .customer-current-action,
  .customer-current-step-brief-card,
  .customer-resume-checkpoint-head,
  .customer-resume-current,
  .customer-resume-counts {
    grid-template-columns: 1fr;
  }

  body[data-page="workstation"] :where(
    .request-review-head,
    .customer-research-acceptance-head,
    .customer-research-review-head,
    .customer-action-receipt-head,
    .customer-workflow-continuity-head,
    .customer-next-action-head,
    .customer-request-change-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ) > :last-child,
  body[data-page="evidence"] :where(
    .customer-evidence-safety-receipt-head,
    .customer-evidence-review-gate-head
  ) > :last-child,
  body[data-page="delivery"] :where(
    .report-hard-stop-head,
    .customer-release-proof-checklist-head,
    .customer-download-wait-head,
    .customer-review-release-summary-head,
    .customer-feedback-review-head,
    .customer-feedback-submission-head
  ) > :last-child {
    justify-self: start;
  }
}

@media print {
  :where(
    .request-review-gate,
    .customer-research-acceptance-gate,
    .customer-research-review,
    .customer-action-receipt,
    .customer-workflow-continuity,
    .customer-release-proof-checklist,
    .customer-download-wait-checklist,
    .customer-feedback-review-gate,
    .customer-feedback-submission-receipt,
    .customer-resume-checkpoint-card,
    .customer-evidence-safety-receipt,
    .customer-evidence-review-gate
  ) {
    break-inside: avoid;
  }
}

/* Public customer design-system polish. */
:root {
  --customer-focus-ring: rgba(14, 116, 144, .28);
  --customer-shell-max: 1480px;
  --customer-page-gap: 14px;
}

.workspace {
  width: min(var(--customer-shell-max), 100%);
}

.topbar {
  grid-template-columns: minmax(142px, 220px) minmax(0, 1fr) minmax(122px, auto);
}

.topnav {
  align-items: center;
}

.topnav a,
.rail a {
  border: 1px solid transparent;
}

.topnav a:hover,
.topnav a:focus-visible,
.rail a:hover,
.rail a:focus-visible {
  border-color: var(--line);
}

.top-status {
  justify-self: end;
  max-width: 100%;
}

.status-strip {
  box-shadow: var(--customer-status-shadow);
}

.status-strip:not(.value-hero) {
  gap: var(--customer-page-gap);
  align-items: stretch;
}

.status-strip:not(.value-hero) > div:first-child {
  display: grid;
  align-content: center;
  min-width: 0;
}

.status-strip:not(.value-hero) h1 {
  max-width: 19ch;
}

.customer-governance-strip,
.platform-map,
.grid-two,
.delivery-layout {
  gap: var(--customer-page-gap);
}

.panel,
.customer-governance-strip article,
.platform-map article,
.metric,
.candidate,
.claim-card,
.generated-candidate-card,
.delivery-check,
.review-panel-box,
.delivery-receipt-panel,
.report-preview,
.request-preset-card,
.service-package-card,
.job-tracker-stage {
  border-color: var(--line);
  box-shadow: var(--customer-status-shadow);
}

.panel-head {
  min-width: 0;
}

.panel-head > * {
  min-width: 0;
}

.panel-head .lede {
  max-width: 76ch;
}

.secondary-link,
button,
.primary-action {
  min-height: var(--customer-touch-target);
}

.secondary-link {
  background: var(--panel-soft);
}

.secondary-link:hover,
button:not(:disabled):hover,
.primary-action:not(:disabled):hover {
  filter: brightness(.98);
}

.metrics-grid {
  align-items: stretch;
}

.metric {
  display: grid;
  align-content: start;
}

.metric span,
.platform-map small,
.customer-governance-strip small {
  overflow-wrap: anywhere;
}

.matrix-table,
.report-table {
  scrollbar-width: thin;
}

.matrix-table:focus-within,
.report-table:focus-within,
.review-panel-box:focus-within,
.delivery-receipt-panel:focus-within,
.report-preview:focus-within {
  outline: 3px solid var(--customer-focus-ring);
  outline-offset: 2px;
}

@media (max-width: 900px) {
  .topbar {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .brand {
    max-width: 100%;
  }

  .topnav {
    width: 100%;
    padding-bottom: 2px;
  }

  .topnav a {
    min-width: max-content;
  }

  .status-strip:not(.value-hero) h1 {
    max-width: none;
  }

  .status-strip:not(.value-hero) .hero-stage {
    display: none;
  }
}

/* Public customer contrast refinement: preserve the same customer-safe content
   while making evidence, review, and blocked states readable without relying on
   subtle tinted fills. */
@media (prefers-contrast: more) {
  body[data-page="workstation"],
  body[data-page="evidence"],
  body[data-page="delivery"] {
    --customer-focus-ring: rgba(14, 116, 144, .42);
    --line: #9aadb2;
    --line-strong: #64767c;
    --muted: #425259;
  }

  .status-strip,
  .panel,
  .customer-governance-strip article,
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview {
    border-width: 2px;
    box-shadow: none;
  }

  .customer-governance-strip article,
  .platform-map article,
  .delivery-check,
  .claim-card,
  .generated-candidate-card,
  .customer-release-progress li {
    background: #fff;
  }

  .customer-governance-strip article,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .request-review-gate,
  .customer-research-review,
  .customer-action-receipt,
  .customer-release-progress li.current,
  .delivery-check.wait {
    border-left-width: 6px;
  }

  .customer-governance-strip article:first-child,
  .delivery-check.pass,
  .customer-release-progress li.done {
    border-left-color: var(--customer-state-ready-line, #0f766e);
  }

  .customer-governance-strip article:nth-child(2),
  .delivery-check.wait,
  .customer-release-progress li.current,
  .source-lock-boundary,
  .sample-preview-gate {
    border-left-color: var(--customer-state-review-line, #b7791f);
  }

  .delivery-check.blocked,
  .customer-release-progress li.blocked,
  .customer-data-state.error,
  .constraint-hold {
    border-left-color: var(--customer-state-blocked-line, #b42318);
  }

  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .top-status {
    border-width: 2px;
    background: #fff;
    color: var(--ink, #162024);
  }

  .primary-action,
  #customerAcceptQuoteButton,
  button,
  .secondary-link {
    border-width: 2px;
  }

  .secondary-link {
    border-color: var(--line-strong, #64767c);
  }
}

@media (forced-colors: active) {
  .status-strip,
  .panel,
  .customer-governance-strip article,
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .top-status {
    border-width: 2px;
    box-shadow: none;
  }

  .customer-governance-strip article,
  .platform-map article,
  .delivery-check,
  .customer-release-progress li,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel {
    background: Canvas;
    color: CanvasText;
  }

  .topnav a.active,
  .rail a.active,
  .topnav a[aria-current="page"],
  .rail a[aria-current="location"],
  .chip.ok,
  .claim-badge.screened,
  .claim-badge.evidence-gated,
  .claim-badge.units-checked {
    border-color: Highlight;
  }

  .chip.warn,
  .claim-badge.boundary,
  .claim-badge.row-evidence-needed,
  .claim-badge.screening-required,
  .claim-badge.validation-required,
  .source-lock-boundary,
  .sample-preview-gate {
    border-color: Mark;
  }

  .chip.bad,
  .claim-badge.no-guarantee,
  .claim-badge.no-customer-commitment,
  .delivery-check.blocked,
  .customer-release-progress li.blocked {
    border-color: CanvasText;
  }
}

/* Public customer matrix affordance: keep generated report and experiment
   tables scannable when long customer-safe values require horizontal scroll. */
:root {
  --customer-table-pin-bg: #ffffff;
  --customer-table-pin-shadow: 8px 0 12px rgba(15, 23, 42, .06);
  --customer-table-scroll-hint: linear-gradient(90deg, rgba(244, 246, 247, 0), rgba(244, 246, 247, .92));
}

.matrix-table,
.report-table {
  position: relative;
}

.matrix-table::after,
.report-table::after {
  content: "";
  position: sticky;
  right: 0;
  float: right;
  width: 18px;
  height: 1px;
  min-height: 100%;
  margin-left: -18px;
  background: var(--customer-table-scroll-hint);
  pointer-events: none;
}

.matrix-table th:first-child,
.matrix-table td:first-child,
.report-table th:first-child,
.report-table td:first-child {
  position: sticky;
  left: 0;
  z-index: 2;
  min-width: 112px;
  background: var(--customer-table-pin-bg);
  box-shadow: var(--customer-table-pin-shadow);
}

.matrix-table th:first-child,
.report-table th:first-child {
  z-index: 3;
  background: #f6f9f9;
}

.matrix-table tr:hover td,
.report-table tr:hover td {
  background: #f8fbfb;
}

.matrix-table tr:hover td:first-child,
.report-table tr:hover td:first-child {
  background: #ffffff;
}

@media (max-width: 620px) {
  .matrix-table th:first-child,
  .matrix-table td:first-child,
  .report-table th:first-child,
  .report-table td:first-child {
    min-width: 96px;
  }
}

@media (forced-colors: active), print {
  .matrix-table::after,
  .report-table::after {
    display: none;
  }

  .matrix-table th:first-child,
  .matrix-table td:first-child,
  .report-table th:first-child,
  .report-table td:first-child {
    position: static;
    min-width: 0;
    background: Canvas;
    box-shadow: none;
  }
}

/* Public customer visual-asset refinement: preserve reused product screenshots
   on tablet viewports while keeping the phone layout dense and non-overlapping. */
@media (min-width: 621px) and (max-width: 900px) {
  body[data-page="workstation"] .status-strip.value-hero {
    grid-template-columns: 1fr;
  }

  body[data-page="workstation"] .status-strip.value-hero .hero-stage {
    display: grid;
    grid-template-columns: minmax(260px, .95fr) minmax(280px, 1fr);
    align-items: stretch;
  }

  body[data-page="workstation"] .status-strip.value-hero .platform-preview {
    display: block;
  }

  body[data-page="workstation"] .status-strip.value-hero .structured-brief-preview {
    display: none;
  }

  body[data-page="evidence"] .status-strip:not(.value-hero) .hero-stage,
  body[data-page="delivery"] .status-strip:not(.value-hero) .hero-stage {
    display: grid;
    grid-template-columns: minmax(260px, .9fr) minmax(280px, 1fr);
    align-items: stretch;
  }

  body[data-page="evidence"] .customer-page-preview,
  body[data-page="delivery"] .customer-page-preview {
    display: block;
  }

  body[data-page] .status-strip .platform-preview img {
    max-height: 150px;
  }

  body[data-page] .status-strip .platform-preview figcaption span {
    min-width: 0;
    padding: 7px 5px;
    overflow-wrap: anywhere;
  }

  body[data-page] .status-strip .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body[data-page] .status-strip .platform-preview {
    display: none;
  }
}

/* Public customer generated-evidence refinement: make the Step 02 candidate
   cards, research review handoff, and delivery receipt scan as one customer-safe system. */
:root {
  --customer-generated-card-min: 276px;
  --customer-generated-card-gap: 10px;
  --customer-generated-subtle: #fbfcfc;
  --customer-generated-rule: #dce4e6;
}

body[data-page="workstation"] #jobResult:not(.empty-state) {
  display: grid;
  gap: 12px;
  align-items: start;
}

body[data-page="workstation"] .generated-candidate-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-generated-card-min), 100%), 1fr));
  align-items: stretch;
}

body[data-page="workstation"] .generated-candidate-card {
  align-content: start;
  gap: var(--customer-generated-card-gap);
}

body[data-page="workstation"] .generated-candidate-head {
  min-width: 0;
}

body[data-page="workstation"] .generated-candidate-head .chip {
  justify-self: end;
  max-width: 100%;
  white-space: normal;
}

body[data-page="workstation"] .generated-candidate-card dl {
  display: grid;
  grid-template-columns: minmax(76px, auto) minmax(0, 1fr);
  gap: 6px 10px;
  margin: 0;
  padding: 10px;
  border: 1px solid var(--customer-generated-rule);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-generated-subtle);
}

body[data-page="workstation"] .generated-candidate-card dt,
body[data-page="workstation"] .generated-candidate-card dd {
  margin: 0;
  min-width: 0;
  line-height: 1.42;
}

body[data-page="workstation"] .generated-candidate-card dt {
  color: var(--ink, #162024);
  font-size: 12px;
  font-weight: 850;
}

body[data-page="workstation"] .generated-candidate-card dd {
  color: var(--muted, #607078);
  font-size: 12px;
  overflow-wrap: anywhere;
}

body[data-page="workstation"] .generated-candidate-card .warning,
body[data-page="workstation"] .source-lock-boundary,
body[data-page="workstation"] .customer-action-receipt,
body[data-page="workstation"] .customer-research-review,
body[data-page="workstation"] .report-hard-stop-receipt {
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page="workstation"] :where(.review-panel-box, .delivery-receipt-panel, #orderPanel, #downloadPanel) {
  display: grid;
  gap: 10px;
  align-content: start;
}

body[data-page="workstation"] :where(.review-panel-box, .delivery-receipt-panel, #orderPanel, #downloadPanel) > * {
  margin-top: 0;
  margin-bottom: 0;
}

body[data-page="workstation"] :where(.review-panel-box, .delivery-receipt-panel) .result-cards,
body[data-page="workstation"] .delivery-checklist {
  grid-template-columns: repeat(auto-fit, minmax(min(168px, 100%), 1fr));
}

body[data-page="workstation"] .delivery-check {
  display: grid;
  align-content: start;
  gap: 5px;
}

body[data-page="workstation"] .delivery-check h4,
body[data-page="workstation"] .delivery-check p {
  margin: 0;
}

body[data-page="workstation"] .customer-action-receipt > p,
body[data-page="workstation"] .customer-research-review > p,
body[data-page="workstation"] .report-hard-stop-receipt > p {
  max-width: 84ch;
}

@media (max-width: 760px) {
  :root {
    --customer-generated-card-min: 100%;
  }

  body[data-page="workstation"] .generated-candidate-head,
  body[data-page="workstation"] .generated-candidate-card dl {
    grid-template-columns: 1fr;
  }

  body[data-page="workstation"] .generated-candidate-head .chip {
    justify-self: start;
  }
}

@media (forced-colors: active), print {
  body[data-page="workstation"] .generated-candidate-card dl {
    background: Canvas;
  }
}

/* Public customer shell consistency: final shared layer for navigation,
   actionable links, and live state panels across the three customer pages. */
:root {
  --customer-shell-active-bg: #ffffff;
  --customer-shell-hover-bg: #edf3f3;
  --customer-live-panel-pad: 12px;
  --customer-live-panel-gap: 8px;
}

body[data-page] :where(.topnav a, .rail a, .secondary-link, .customer-step-jump) {
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

body[data-page] :where(.topnav a.active, .topnav a[aria-current="page"], .rail a.active, .rail a[aria-current="location"]) {
  color: #073b3a;
  background: var(--customer-shell-active-bg);
  border-color: var(--line, #dce4e6);
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .025);
}

body[data-page] :where(.topnav a:hover, .rail a:hover, .secondary-link:hover, .customer-step-jump:hover) {
  background: var(--customer-shell-hover-bg);
}

body[data-page] :where(.customer-data-state, .job-result.empty-state, .review-panel-box.placeholder, .delivery-receipt-panel.placeholder) {
  display: grid;
  gap: var(--customer-live-panel-gap);
  align-content: center;
  min-height: 76px;
  padding: var(--customer-live-panel-pad);
}

body[data-page] :where(.customer-data-state, .job-result.empty-state, .review-panel-box.placeholder, .delivery-receipt-panel.placeholder) > :where(p, b, span, small) {
  max-width: 80ch;
}

body[data-page] :where(.boundary-strip span, .claim-badge, .chip, .evidence-gate-strip span, .customer-step-jump) {
  flex: 0 1 auto;
  min-width: min(100%, 7rem);
}

body[data-page] :where(.panel-head, .customer-resume-checkpoint-head, .customer-research-acceptance-head, .customer-research-review-head) > :last-child {
  max-width: 100%;
}

@media (max-width: 900px) {
  body[data-page] :where(.topnav, .rail) {
    -webkit-overflow-scrolling: touch;
  }

  body[data-page] .rail {
    box-shadow: 0 1px 0 rgba(15, 23, 42, .05);
  }
}

@media (max-width: 620px) {
  :root {
    --customer-live-panel-pad: 10px;
  }

  body[data-page] :where(.boundary-strip span, .claim-badge, .chip, .evidence-gate-strip span, .customer-step-jump) {
    min-width: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-page] :where(.topnav a, .rail a, .secondary-link, .customer-step-jump) {
    transition: none;
  }
}

/* Public customer shell refinement: keep safety, evidence, and release status
   visible and stable across generated customer pages. */
:root {
  --customer-status-pill-min: 6.5rem;
  --customer-state-dot: 6px;
  --customer-compact-card-pad: 11px;
}

body[data-page] .top-status {
  display: inline-flex;
  min-height: 34px;
  min-width: 0;
  padding-inline: 11px;
  color: #425259;
  line-height: 1.25;
}

body[data-page] .top-status .status-dot {
  flex: 0 0 auto;
}

body[data-page] .top-status span:last-child {
  white-space: normal;
}

body[data-page] :where(.topnav a, .rail a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body[data-page] :where(
  .topnav a.active,
  .topnav a[aria-current="page"],
  .rail a.active,
  .rail a[aria-current="location"]
) {
  font-weight: 900;
}

body[data-page] :where(
  .topnav a.active,
  .topnav a[aria-current="page"],
  .rail a.active,
  .rail a[aria-current="location"]
)::before {
  content: "";
  width: var(--customer-state-dot);
  height: var(--customer-state-dot);
  margin-right: 6px;
  border-radius: 999px;
  background: currentColor;
}

body[data-page] :where(.customer-governance-strip article, .platform-map article) {
  grid-template-rows: auto auto 1fr;
  align-content: start;
}

body[data-page] :where(.customer-governance-strip article > span, .platform-map span) {
  min-height: 15px;
}

body[data-page] :where(.customer-governance-strip small, .platform-map small) {
  max-width: 64ch;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  min-width: min(100%, var(--customer-status-pill-min));
  min-height: 28px;
  justify-content: center;
  text-align: center;
}

body[data-page] :where(.boundary-strip, .claim-badge-row, .evidence-gate-strip) {
  align-items: stretch;
}

@media (max-width: 900px) {
  body[data-page] .top-status {
    display: inline-flex;
    justify-self: start;
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.customer-governance-strip article, .platform-map article) {
    padding: var(--customer-compact-card-pad);
  }

  body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
    min-width: 0;
  }

  body[data-page] :where(
    .topnav a.active,
    .topnav a[aria-current="page"],
    .rail a.active,
    .rail a[aria-current="location"]
  )::before {
    margin-right: 5px;
  }
}

@media print {
  body[data-page] .top-status {
    display: none;
  }
}

/* Public customer action-state refinement: make review, preview, and locked
   actions visually distinct while preserving existing release gates. */
:root {
  --customer-action-ready: #0f766e;
  --customer-action-review: #b7791f;
  --customer-action-locked: #b42318;
  --customer-action-muted-bg: #f1f5f5;
}

body[data-page] :where(button, .primary-action, .secondary-link) {
  min-width: 0;
  border-color: var(--line-strong, #c7d3d5);
}

body[data-page] :where(.button-row, .customer-action-grid, .customer-next-action-grid) {
  align-items: stretch;
}

body[data-page] :where(.button-row, .customer-action-grid, .customer-next-action-grid) > :where(button, .primary-action, .secondary-link) {
  width: 100%;
  min-width: min(100%, 8rem);
}

body[data-page] :where(button:disabled, button[aria-disabled="true"], .secondary-link[aria-disabled="true"]) {
  color: #53646b;
  background: var(--customer-action-muted-bg);
  border-color: var(--line, #dce4e6);
  opacity: 1;
  cursor: not-allowed;
  filter: none;
  box-shadow: inset 4px 0 0 var(--customer-action-locked);
}

body[data-page] :where(.sample-preview-gate, .customer-download-wait-checklist, .customer-locked-preview-action) :where(button:not(:disabled), .secondary-link) {
  border-color: #f3dcad;
  background: #fffaf0;
  color: #65440e;
}

body[data-page] :where(.sample-preview-gate, .customer-download-wait-checklist, .customer-locked-preview-action) :where(button:not(:disabled), .secondary-link):focus-visible {
  outline-color: rgba(183, 121, 31, .32);
}

body[data-page] :where(#customerAcceptQuoteButton, .primary-action):not(:disabled) {
  border-color: var(--customer-action-ready);
}

body[data-page] :where(.panel-head) > :where(button, .secondary-link, .primary-action) {
  flex: 0 1 auto;
  max-width: min(100%, 18rem);
}

@media (max-width: 620px) {
  body[data-page] :where(.panel-head) > :where(button, .secondary-link, .primary-action) {
    width: 100%;
    max-width: none;
  }
}

@media (forced-colors: active), print {
  body[data-page] :where(button:disabled, button[aria-disabled="true"], .secondary-link[aria-disabled="true"]) {
    box-shadow: none;
  }
}

/* Public customer design-system refinement: stable cards, status chips, and
   action rows across the customer pages without changing release behavior. */
:root {
  --customer-card-grid-min: 18rem;
  --customer-card-flow-gap: 10px;
  --customer-status-chip-height: 30px;
  --customer-action-min: 9rem;
}

body[data-page] :where(
  .customer-governance-strip,
  .platform-map,
  .metrics-grid,
  .result-cards,
  .candidate-grid,
  .evidence-card-grid,
  .workflow-demo-steps,
  .pillars,
  .value-proof-grid,
  .service-boundary-grid,
  .delivery-checklist,
  .service-package-grid,
  .customer-job-tracker,
  .customer-release-handoff-grid,
  .customer-review-handoff-grid,
  .customer-resume-counts,
  .customer-resume-action-grid,
  .customer-next-action-grid
) {
  align-items: stretch;
}

body[data-page] :where(
  .customer-governance-strip article,
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .service-package-card,
  .job-tracker-stage,
  .customer-resume-counts article,
  .customer-resume-action-grid article,
  .customer-next-action-grid article,
  .customer-release-handoff-grid article,
  .customer-review-handoff-grid article
) {
  display: grid;
  align-content: start;
  gap: var(--customer-card-flow-gap);
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .metric b,
  .candidate h3,
  .claim-card h3,
  .generated-candidate-card h3,
  .delivery-check h4,
  .service-package-card h3,
  .job-tracker-stage b,
  .customer-resume-counts b,
  .customer-next-action-grid b
) {
  line-height: 1.22;
  text-wrap: balance;
}

body[data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .customer-feedback-submission-head small,
  .customer-feedback-review-head small,
  .customer-research-acknowledgement-trail-head small,
  .customer-research-submit-firebreak-head small
) {
  min-height: var(--customer-status-chip-height);
  padding-block: 6px;
  align-items: center;
}

body[data-page] :where(
  .panel-head > button,
  .panel-head > .secondary-link,
  .panel-head > .primary-action,
  .button-row > button,
  .button-row > .secondary-link,
  .customer-action-grid > button,
  .customer-action-grid > .secondary-link,
  .customer-next-action-grid > button,
  .customer-next-action-grid > .secondary-link
) {
  min-width: min(100%, var(--customer-action-min));
}

body[data-page] :where(.panel, .review-panel-box, .delivery-receipt-panel, .report-preview, .job-result) {
  min-width: 0;
}

body[data-page] :where(.panel > :last-child, .review-panel-box > :last-child, .delivery-receipt-panel > :last-child) {
  margin-bottom: 0;
}

@media (min-width: 901px) {
  body[data-page] :where(.delivery-checklist, .service-boundary-grid, .pillars, .value-proof-grid) {
    grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-card-grid-min), 100%), 1fr));
  }
}

@media (max-width: 620px) {
  :root {
    --customer-card-grid-min: 100%;
    --customer-action-min: 100%;
  }

  body[data-page] :where(
    .panel-head > button,
    .panel-head > .secondary-link,
    .panel-head > .primary-action
  ) {
    justify-self: stretch;
  }
}

@media (forced-colors: active), print {
  body[data-page] :where(
    .customer-governance-strip article,
    .platform-map article,
    .metric,
    .delivery-check,
    .service-package-card,
    .job-tracker-stage
  ) {
    box-shadow: none;
  }
}

/* Public customer state refinement: align safe, review, and blocked surfaces
   across evidence and delivery pages without changing release gates. */
:root {
  --customer-safe-line: #0f766e;
  --customer-review-line: #b7791f;
  --customer-blocked-line: #b42318;
  --customer-info-line: #0e7490;
  --customer-state-surface: #ffffff;
  --customer-review-surface: #fffaf0;
  --customer-safe-surface: #f4fbf8;
  --customer-blocked-surface: #fff1f0;
}

body[data-page] :where(
  .customer-governance-strip article,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .customer-research-submit-firebreak,
  .customer-research-acknowledgement,
  .customer-research-acknowledgement-trail,
  .report-hard-stop-receipt,
  .constraint-hold
) {
  --customer-state-line: var(--customer-info-line);
  position: relative;
  border-left: 4px solid var(--customer-state-line);
  background: var(--customer-state-surface);
}

body[data-page] :where(
  .customer-governance-strip article:first-child,
  .customer-review-handoff,
  .customer-release-handoff,
  .customer-evidence-copy-boundary,
  .customer-evidence-export-boundary,
  .customer-research-acknowledgement[data-status*="acknowledged"],
  .customer-research-acknowledgement-trail[data-status*="acknowledged"],
  .customer-research-submit-firebreak[data-status*="clear"],
  .customer-research-submit-firebreak[data-status*="submitted"]
) {
  --customer-state-line: var(--customer-safe-line);
  background: var(--customer-safe-surface);
}

body[data-page] :where(
  .customer-governance-strip article:nth-child(2),
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .customer-research-submit-firebreak,
  .customer-research-acknowledgement,
  .customer-research-acknowledgement-trail
) {
  --customer-state-line: var(--customer-review-line);
  background: var(--customer-review-surface);
}

body[data-page] :where(
  .report-hard-stop-receipt,
  .constraint-hold,
  .customer-data-state.error
) {
  --customer-state-line: var(--customer-blocked-line);
  background: var(--customer-blocked-surface);
}

body[data-page] :where(
  .customer-governance-strip article:last-child,
  .customer-current-step-brief,
  .customer-step-handoff-receipt,
  .customer-resume-checkpoint-card
) {
  --customer-state-line: var(--customer-info-line);
}

body[data-page] :where(
  .customer-governance-strip article,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .customer-research-submit-firebreak,
  .customer-research-acknowledgement,
  .customer-research-acknowledgement-trail,
  .report-hard-stop-receipt,
  .constraint-hold
)::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: inherit;
  background: var(--customer-state-line);
  pointer-events: none;
}

body[data-page] :where(
  .customer-governance-strip article,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .customer-research-submit-firebreak,
  .customer-research-acknowledgement,
  .customer-research-acknowledgement-trail,
  .report-hard-stop-receipt,
  .constraint-hold
) > * {
  position: relative;
  z-index: 1;
}

body[data-page] :where(
  .customer-governance-strip article,
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .delivery-check,
  .service-package-card,
  .job-tracker-stage
):focus-within {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 2px;
}

body[data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span
) {
  border-color: color-mix(in srgb, currentColor 24%, var(--line, #dce4e6));
}

body[data-page] :where(
  button:disabled,
  button[aria-disabled="true"],
  .secondary-link[aria-disabled="true"]
) {
  text-decoration: none;
  box-shadow: inset 4px 0 0 var(--customer-blocked-line);
}

@media (max-width: 620px) {
  body[data-page] :where(
    .customer-governance-strip article,
    .source-lock-boundary,
    .sample-preview-gate,
    .delivery-governance-panel,
    .customer-download-wait-checklist,
    .customer-research-submit-firebreak,
    .customer-research-acknowledgement,
    .customer-research-acknowledgement-trail,
    .report-hard-stop-receipt,
    .constraint-hold
  ) {
    border-left-width: 3px;
  }

  body[data-page] :where(
    .customer-governance-strip article,
    .source-lock-boundary,
    .sample-preview-gate,
    .delivery-governance-panel,
    .customer-download-wait-checklist,
    .customer-research-submit-firebreak,
    .customer-research-acknowledgement,
    .customer-research-acknowledgement-trail,
    .report-hard-stop-receipt,
    .constraint-hold
  )::before {
    width: 3px;
  }
}

@supports not (color: color-mix(in srgb, #000 50%, #fff)) {
  body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
    border-color: var(--line, #dce4e6);
  }
}

@media (forced-colors: active), print {
  body[data-page] :where(
    .customer-governance-strip article,
    .source-lock-boundary,
    .sample-preview-gate,
    .delivery-governance-panel,
    .customer-download-wait-checklist,
    .customer-research-submit-firebreak,
    .customer-research-acknowledgement,
    .customer-research-acknowledgement-trail,
    .report-hard-stop-receipt,
    .constraint-hold
  )::before {
    display: none;
  }
}

/* Public customer design-system refinement: unify paid work cards, progress
   cards, and decision checks with the same status grammar. */
:root {
  --customer-card-pad: 12px;
  --customer-card-gap: 8px;
  --customer-status-pill-bg: #f8fbfb;
  --customer-safe-pill-bg: #e8f6f1;
  --customer-review-pill-bg: #fff7e6;
  --customer-blocked-pill-bg: #fff1f0;
}

body[data-page] :where(
  .service-package-card,
  .eval-gate-list article,
  .job-tracker-stage,
  .delivery-check,
  .customer-current-action,
  .customer-next-action-grid article,
  .customer-resume-action-grid article,
  .report-hard-stop-grid article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article
) {
  display: grid;
  gap: var(--customer-card-gap);
  align-content: start;
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
  padding: var(--customer-card-pad);
  background: #fff;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] :where(
  .service-package-card,
  .job-tracker-stage,
  .delivery-check,
  .customer-current-action,
  .customer-next-action-grid article,
  .customer-resume-action-grid article,
  .report-hard-stop-grid article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article
) {
  border-left-width: 4px;
}

body[data-page] :where(
  .service-package-card b,
  .service-package-card h3,
  .eval-gate-list b,
  .job-tracker-stage b,
  .delivery-check h4,
  .customer-current-action b,
  .customer-next-action-grid b,
  .customer-resume-action-grid b,
  .report-hard-stop-grid b,
  .customer-workflow-continuity-grid b,
  .customer-workflow-continuity-summary b
) {
  margin: 0;
  color: var(--ink, #162024);
  font-size: 13px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .service-package-card p,
  .service-package-card dd,
  .service-package-card small,
  .eval-gate-list span,
  .job-tracker-stage p,
  .job-tracker-stage small,
  .delivery-check p,
  .customer-current-action span,
  .customer-current-action small,
  .customer-current-action p,
  .customer-next-action-grid span,
  .customer-next-action-grid small,
  .customer-resume-action-grid span,
  .customer-resume-action-grid small,
  .report-hard-stop-grid span,
  .customer-workflow-continuity-grid span,
  .customer-workflow-continuity-grid small,
  .customer-workflow-continuity-summary span
) {
  margin: 0;
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .service-package-card > span,
  .job-tracker-stage > span,
  .eval-gate-list b,
  .delivery-check b,
  .customer-workflow-continuity-head > span,
  .customer-next-action-head > span,
  .report-hard-stop-head small
) {
  min-width: 0;
  min-height: 28px;
  display: inline-grid;
  place-items: center;
  justify-self: start;
  border: 1px solid var(--line, #dce4e6);
  border-radius: 999px;
  background: var(--customer-status-pill-bg);
  color: var(--muted, #607078);
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
}

body[data-page] :where(
  .service-package-card:first-child > span,
  .job-tracker-stage[data-status*="ready"] > span,
  .delivery-check.pass b,
  .customer-current-action[data-status*="ready"] b,
  .customer-next-action-grid article[data-status*="ready"] b,
  .customer-next-action-grid article[data-status*="download_ready"] b,
  .customer-workflow-continuity-grid article[data-status*="ready"] b,
  .customer-workflow-continuity-grid article[data-status*="submitted"] b
) {
  border-color: #c8e8dc;
  background: var(--customer-safe-pill-bg);
  color: var(--accent, #0f766e);
}

body[data-page] :where(
  .job-tracker-stage[data-status*="review"] > span,
  .job-tracker-stage[data-status*="locked"] > span,
  .customer-current-action[data-status*="waiting"] b,
  .customer-next-action-grid article[data-status*="waiting"] b,
  .customer-next-action-grid article[data-status*="locked"] b
) {
  border-color: #f3dcad;
  background: var(--customer-review-pill-bg);
  color: var(--warning, #b7791f);
}

body[data-page] :where(
  .delivery-check.blocked b,
  .customer-next-action-grid article[data-status*="blocked"] b,
  .report-hard-stop-grid article b
) {
  border-color: #f1cbc6;
  background: var(--customer-blocked-pill-bg);
  color: var(--danger, #b42318);
}

body[data-page] :where(
  .service-package-card dl,
  .service-package-card dt,
  .service-package-card dd
) {
  min-width: 0;
}

body[data-page] .service-package-card dl {
  gap: 4px;
}

body[data-page] .service-package-card dt {
  color: var(--accent-2, #0e7490);
  font-size: 10px;
  line-height: 1.2;
}

body[data-page] .service-package-card .secondary-link {
  align-self: end;
  min-height: 40px;
}

body[data-page] :where(
  .service-package-grid,
  .eval-gate-list,
  .customer-job-tracker,
  .customer-next-action-grid,
  .customer-resume-action-grid,
  .report-hard-stop-grid,
  .customer-workflow-continuity-grid,
  .customer-workflow-continuity-summary
) {
  align-items: stretch;
}

body[data-page] :where(
  .customer-workflow-continuity-head,
  .customer-next-action-head,
  .report-hard-stop-head
) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

body[data-page] :where(
  .customer-workflow-continuity-head > *,
  .customer-next-action-head > *,
  .report-hard-stop-head > *
) {
  min-width: 0;
}

@media (max-width: 720px) {
  body[data-page] :where(
    .service-package-grid,
    .eval-gate-list,
    .customer-job-tracker,
    .customer-next-action-grid,
    .customer-resume-action-grid,
    .report-hard-stop-grid,
    .customer-workflow-continuity-grid,
    .customer-workflow-continuity-summary
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(
    .customer-workflow-continuity-head,
    .customer-next-action-head,
    .report-hard-stop-head
  ) {
    grid-template-columns: 1fr;
  }
}

@media print {
  body[data-page] :where(
    .service-package-card,
    .eval-gate-list article,
    .job-tracker-stage,
    .delivery-check,
    .customer-current-action,
    .customer-next-action-grid article,
    .customer-resume-action-grid article,
    .report-hard-stop-grid article,
    .customer-workflow-continuity-grid article,
    .customer-workflow-continuity-summary article
  ) {
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Customer hero metric refinement: keep live generated metrics legible beside
   reused screenshots without exposing any additional data surface. */
body[data-page] .status-strip .metrics-grid {
  align-self: stretch;
  margin: 0;
  gap: 8px;
}

body[data-page] .status-strip .metric {
  min-height: 74px;
  border-radius: var(--customer-card-radius, 8px);
  padding: 10px;
  background: var(--customer-surface, #fff);
}

body[data-page] .status-strip .metric b {
  font-size: clamp(17px, 2vw, 22px);
  line-height: 1.15;
  word-break: break-word;
}

body[data-page] .status-strip .metric span {
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.35;
}

body[data-page] .platform-preview {
  border-radius: var(--customer-card-radius, 8px);
  overflow: hidden;
}

body[data-page] .platform-preview figcaption {
  gap: 6px;
}

body[data-page] .platform-preview figcaption span {
  min-width: 0;
  border-radius: 6px;
  line-height: 1.25;
  text-align: center;
  overflow-wrap: anywhere;
}

@media (min-width: 901px) {
  body[data-page="evidence"] .customer-page-stage .metrics-grid,
  body[data-page="delivery"] .customer-page-stage .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  body[data-page] .status-strip .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page] .status-strip .metric {
    min-height: 68px;
  }
}

/* Generated customer home shell alignment. */
body:not([data-page]) {
  background: #eef4f4;
}

body:not([data-page]) .app-shell {
  grid-template-columns: 224px minmax(0, 1fr);
}

body:not([data-page]) .sidebar {
  background: #112226;
  color: #effafa;
  border-right: 1px solid rgba(255, 255, 255, .1);
}

body:not([data-page]) .mark {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: #0f766e;
  transform: rotate(45deg);
}

body:not([data-page]) .brand small,
body:not([data-page]) .local-note,
body:not([data-page]) nav a {
  color: rgba(239, 250, 250, .72);
}

body:not([data-page]) nav a {
  border-radius: var(--customer-card-radius, 8px);
}

body:not([data-page]) nav a.active,
body:not([data-page]) nav a:hover,
body:not([data-page]) nav a:focus-visible {
  background: #e6f5f2;
  color: #0b2427;
}

body:not([data-page]) .local-note {
  border-radius: var(--customer-card-radius, 8px);
}

body:not([data-page]) main {
  width: min(1480px, 100%);
  max-width: none;
  padding: clamp(16px, 2.2vw, 30px);
}

body:not([data-page]) .card,
body:not([data-page]) .hero-status,
body:not([data-page]) .metric,
body:not([data-page]) .job-panel,
body:not([data-page]) .workflow > div,
body:not([data-page]) .candidate {
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body:not([data-page]) .card {
  margin-bottom: var(--customer-section-gap, 12px);
  padding: clamp(16px, 2vw, 22px);
}

body:not([data-page]) .hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, .28fr);
  align-items: start;
  border-left: 4px solid #0f766e;
}

body:not([data-page]) .hero-status {
  min-width: 0;
  border-left: 4px solid #0f766e;
}

body:not([data-page]) .eyebrow {
  color: #0f766e;
  letter-spacing: .08em;
}

body:not([data-page]) h1 {
  max-width: 760px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.08;
}

body:not([data-page]) .lede {
  max-width: 820px;
  color: #5f7176;
}

body:not([data-page]) .metrics-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(170px, 100%), 1fr));
  gap: 10px;
  margin-bottom: var(--customer-section-gap, 12px);
}

body:not([data-page]) .metric {
  min-width: 0;
  min-height: 86px;
  border: 1px solid var(--line, rgba(31, 41, 55, .14));
  border-left: 4px solid #0f766e;
  padding: 13px;
}

body:not([data-page]) .metric b {
  font-size: 22px;
  line-height: 1.1;
}

body:not([data-page]) .metric span {
  color: #5f7176;
}

body:not([data-page]) .studio-grid {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(360px, 1fr);
  gap: 12px;
  align-items: start;
}

body:not([data-page]) .design-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body:not([data-page]) .design-form label {
  min-width: 0;
}

body:not([data-page]) input,
body:not([data-page]) select {
  border-radius: var(--customer-card-radius, 8px);
}

body:not([data-page]) button {
  border-radius: var(--customer-card-radius, 8px);
  min-height: var(--customer-touch-target, 44px);
  background: #102024;
}

body:not([data-page]) .job-panel {
  border: 1px solid var(--line, rgba(31, 41, 55, .14));
}

body:not([data-page]) .candidate-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
}

body:not([data-page]) .candidate {
  border-left: 4px solid #0f766e;
  min-width: 0;
}

body:not([data-page]) .workflow {
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
}

body:not([data-page]) .workflow > div {
  min-width: 0;
  border-left: 4px solid #b7791f;
  overflow-wrap: anywhere;
}

body:not([data-page]) :where(.hero, .studio-grid, .design-form, .candidate-grid, .workflow, .job-panel, .metric, .card) {
  min-width: 0;
}

@media (max-width: 960px) {
  body:not([data-page]) .app-shell {
    display: block;
  }

  body:not([data-page]) .sidebar {
    position: static;
    height: auto;
  }

  body:not([data-page]) nav {
    grid-template-columns: repeat(4, minmax(92px, 1fr));
    overflow-x: auto;
  }

  body:not([data-page]) .hero,
  body:not([data-page]) .studio-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  body:not([data-page]) main {
    padding: 12px;
  }

  body:not([data-page]) .sidebar {
    padding: 12px;
  }

  body:not([data-page]) nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not([data-page]) .design-form,
  body:not([data-page]) .metrics-grid {
    grid-template-columns: 1fr;
  }

  body:not([data-page]) h1 {
    font-size: 26px;
  }
}

/* Customer closeout: consistent dense review surfaces across generated pages. */
:where(
  .panel,
  .card,
  .metric,
  .candidate,
  .route-card,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .report-preview,
  .review-panel-box,
  .delivery-receipt-panel,
  .customer-governance-strip article,
  .customer-release-handoff-grid article,
  .customer-review-handoff-grid article,
  .customer-release-progress li
) {
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page] :where(.panel-head, .delivery-readiness-head, .customer-release-progress-head, .feedback-preview-head),
body:not([data-page]) :where(.section-head, .job-head, .cand-head) {
  gap: 10px 12px;
  min-width: 0;
}

body[data-page] :where(.panel-head > *, .delivery-readiness-head > *, .customer-release-progress-head > *, .feedback-preview-head > *),
body:not([data-page]) :where(.section-head > *, .job-head > *, .cand-head > *) {
  min-width: 0;
}

body[data-page] :where(.panel-head button, .panel-head .chip, .delivery-readiness-head .chip, .customer-release-progress-head > span),
body:not([data-page]) :where(.section-head button, .studio-status, .pill) {
  max-width: 100%;
  white-space: normal;
}

:where(.delivery-check.pass, .delivery-check.ready, .delivery-check.done, .delivery-check.ok) {
  border-left-color: var(--customer-success-line, #0f766e);
  background: #f5fbf8;
}

:where(.delivery-check.pending, .delivery-check.review, .delivery-check.warn, .delivery-check.hold) {
  border-left-color: var(--customer-review-line, #b7791f);
  background: #fffaf0;
}

:where(.delivery-check.blocked, .delivery-check.fail, .delivery-check.failed, .delivery-check.stop) {
  border-left-color: var(--customer-blocked-line, #b42318);
  background: #fff5f3;
}

:where(.matrix-table, .report-table, .topnav, .rail) {
  scrollbar-color: rgba(15, 118, 110, .45) transparent;
}

:where(.matrix-table, .report-table) :where(th, td) {
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  body[data-page] :where(.panel-head, .delivery-readiness-head, .customer-release-progress-head, .feedback-preview-head),
  body:not([data-page]) :where(.section-head, .job-head, .cand-head) {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body[data-page] :where(.panel-head button, .panel-head .chip, .delivery-readiness-head .chip, .customer-release-progress-head > span),
  body:not([data-page]) :where(.section-head button, .studio-status, .pill) {
    justify-self: start;
    width: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Image2 blueprint dark workstation skin. */
body[data-page] {
  --bg: #020608;
  --bg-2: #061114;
  --panel: rgba(9, 19, 24, .92);
  --panel-soft: rgba(12, 27, 34, .84);
  --ink: #edfafa;
  --muted: #9eb6bc;
  --line: rgba(124, 197, 200, .18);
  --line-strong: rgba(148, 231, 224, .34);
  --accent: #18d5c7;
  --accent-2: #e6a43a;
  --warning: #f0b34a;
  --danger: #ff756b;
  --ok-bg: rgba(24, 213, 199, .12);
  --warn-bg: rgba(230, 164, 58, .13);
  --bad-bg: rgba(255, 117, 107, .12);
  --customer-surface: rgba(8, 19, 24, .9);
  --customer-surface-soft: rgba(12, 29, 36, .86);
  --customer-status-shadow: 0 22px 58px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .04);
  --customer-card-radius: 14px;
  background: radial-gradient(circle at 18% -8%, rgba(24, 213, 199, .22), transparent 32rem), radial-gradient(circle at 90% 4%, rgba(230, 164, 58, .14), transparent 28rem), linear-gradient(135deg, #020608 0%, #071318 48%, #060b0d 100%) !important;
  color: var(--ink);
}

body[data-page]::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(148, 231, 224, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(148, 231, 224, .035) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.72), transparent 70%);
}

body[data-page] .topbar,
body[data-page] .rail {
  background: rgba(2, 8, 11, .86);
  border-color: rgba(148, 231, 224, .15);
}

body[data-page] .workspace {
  width: min(1680px, 100%);
  padding: clamp(14px, 1.8vw, 28px);
}

body[data-page] .status-strip.value-hero {
  grid-template-columns: minmax(420px, .78fr) minmax(620px, 1.22fr);
  min-height: 620px;
  background: radial-gradient(circle at 76% 8%, rgba(24, 213, 199, .18), transparent 24rem), linear-gradient(145deg, rgba(8, 20, 25, .96), rgba(3, 9, 12, .94));
  border: 1px solid rgba(148, 231, 224, .22);
  box-shadow: 0 36px 110px rgba(0, 0, 0, .48), inset 0 1px 0 rgba(255,255,255,.05);
}

body[data-page] .hero-copy h1 {
  color: #f4fffd;
  text-shadow: 0 0 34px rgba(24, 213, 199, .16);
}

body[data-page] .eyebrow { color: #6cf6ea; }

body[data-page] .lede,
body[data-page] #missionText,
body[data-page] p,
body[data-page] small,
body[data-page] span,
body[data-page] li,
body[data-page] dd,
body[data-page] td { color: var(--muted); }

body[data-page] h1,
body[data-page] h2,
body[data-page] h3,
body[data-page] h4,
body[data-page] b,
body[data-page] dt,
body[data-page] th,
body[data-page] label { color: var(--ink); }

body[data-page] .panel,
body[data-page] .card,
body[data-page] .metric,
body[data-page] .candidate,
body[data-page] .claim-card,
body[data-page] .generated-candidate-card,
body[data-page] .route-card,
body[data-page] .report-preview,
body[data-page] .review-panel-box,
body[data-page] .delivery-receipt-panel,
body[data-page] .structured-brief-preview,
body[data-page] .request-preset-card,
body[data-page] .platform-map article,
body[data-page] .workflow-demo-steps article,
body[data-page] .evidence-card-grid article,
body[data-page] .pillars article,
body[data-page] .result-cards article,
body[data-page] .step-list div,
body[data-page] .matrix-list div,
body[data-page] .service-boundary-grid div,
body[data-page] .demo-request,
body[data-page] .report-cover,
body[data-page] .report-summary-grid article,
body[data-page] .report-deliverables article,
body[data-page] .customer-governance-strip article,
body[data-page] .customer-evidence-card-gate > div,
body[data-page] .customer-evidence-card-gate > p,
body[data-page] .delivery-check,
body[data-page] .matrix-table,
body[data-page] .report-table,
body[data-page] .perf div {
  background: linear-gradient(180deg, rgba(11, 25, 31, .94), rgba(7, 15, 19, .92));
  border-color: rgba(148, 231, 224, .19);
  box-shadow: var(--customer-status-shadow);
}

body[data-page] .panel,
body[data-page] .card { border-radius: 20px; }

body[data-page] .platform-preview {
  border-color: rgba(148, 231, 224, .22);
  background: #020608;
  box-shadow: 0 34px 86px rgba(0,0,0,.62), 0 0 0 1px rgba(24,213,199,.08);
}

body[data-page] .platform-preview img {
  max-height: 420px;
  object-fit: cover;
  object-position: top center;
  opacity: .96;
}

body[data-page] .platform-preview figcaption { background: rgba(2, 8, 11, .94); }

body[data-page] .platform-preview figcaption span,
body[data-page] .chip,
body[data-page] .boundary-strip span,
body[data-page] .claim-badge,
body[data-page] .brief-preview-head span {
  background: rgba(24, 213, 199, .09);
  border-color: rgba(148, 231, 224, .24);
  color: #cffcf7;
}

body[data-page] .metric {
  min-height: 96px;
  border-top: 1px solid rgba(108, 246, 234, .4);
}

body[data-page] .metric b { color: #f3fffd; }

body[data-page] input,
body[data-page] select,
body[data-page] textarea {
  background: rgba(2, 8, 11, .72);
  border-color: rgba(148, 231, 224, .28);
  color: var(--ink);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

body[data-page] input::placeholder,
body[data-page] textarea::placeholder { color: rgba(158, 182, 188, .7); }

body[data-page] button,
body[data-page] .primary-action,
body[data-page] .secondary-link {
  border-color: rgba(148, 231, 224, .28);
  background: linear-gradient(135deg, rgba(24, 213, 199, .96), rgba(7, 88, 86, .96) 48%, rgba(230, 164, 58, .94));
  color: #021013;
  box-shadow: 0 18px 48px rgba(24, 213, 199, .18);
}

body[data-page] .secondary-link {
  background: rgba(12, 27, 34, .86);
  color: #dffdfa;
}

body[data-page] .topnav a.active,
body[data-page] .topnav a:hover,
body[data-page] .rail a.active,
body[data-page] .rail a:hover,
body[data-page] .topnav a[aria-current="page"],
body[data-page] .rail a[aria-current="location"] {
  background: rgba(24, 213, 199, .13);
  color: #effffc;
  box-shadow: inset 0 0 0 1px rgba(148,231,224,.24), 0 12px 34px rgba(0,0,0,.18);
}

body[data-page] th { background: rgba(13, 32, 39, .96); }

body[data-page] tr:last-child td,
body[data-page] td,
body[data-page] th { border-color: rgba(148, 231, 224, .13); }

body[data-page] .warning,
body[data-page] .brief-boundary,
body[data-page] .delivery-readiness-head,
body[data-page] .delivery-check.pending,
body[data-page] .delivery-check.review,
body[data-page] .delivery-check.warn,
body[data-page] .delivery-check.hold {
  background: rgba(230, 164, 58, .12);
  border-color: rgba(230, 164, 58, .28);
  color: #ffd89a;
}

body[data-page] .delivery-check.pass,
body[data-page] .delivery-check.ready,
body[data-page] .delivery-check.done,
body[data-page] .delivery-check.ok { background: rgba(24, 213, 199, .1); }

@media (max-width: 1180px) {
  body[data-page] .status-strip.value-hero {
    grid-template-columns: 1fr;
    min-height: 0;
  }
}

@media (max-width: 900px) {
  body[data-page] .status-strip.value-hero { padding: 18px; }
  body[data-page] .platform-preview img { max-height: 260px; }
}

@media (max-width: 620px) {
  body[data-page] .workspace { padding: 10px; }
  body[data-page] .hero-copy h1 { font-size: clamp(27px, 9vw, 34px); }
  body[data-page] .metrics-grid,
  body[data-page] .platform-map { grid-template-columns: 1fr; }
}

/* Customer control layer: one readable treatment for inputs and action states. */
body[data-page] {
  --customer-control-surface: rgba(2, 12, 16, .82);
  --customer-control-surface-hover: rgba(8, 28, 34, .94);
  --customer-control-surface-disabled: rgba(38, 54, 60, .72);
  --customer-control-ink: #f3fffd;
  --customer-control-muted: #9eb6bc;
  --customer-control-ring: rgba(108, 246, 234, .32);
}

body[data-page] :where(input, select, textarea) {
  color: var(--customer-control-ink);
  caret-color: var(--accent);
  background: var(--customer-control-surface);
  border-color: rgba(148, 231, 224, .32);
  color-scheme: dark;
}

body[data-page] :where(input, select, textarea):hover {
  background: var(--customer-control-surface-hover);
  border-color: rgba(148, 231, 224, .46);
}

body[data-page] :where(input, select, textarea):focus-visible {
  background: var(--customer-control-surface-hover);
  outline: 3px solid var(--customer-control-ring);
  outline-offset: 2px;
}

body[data-page] :where(input, textarea)::placeholder {
  color: var(--customer-control-muted);
  opacity: .82;
}

body[data-page] :where(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--accent);
}

body[data-page] :where(input[type="number"]) {
  font-variant-numeric: tabular-nums;
}

body[data-page] :where(button:disabled, .primary-action:disabled, #customerAcceptQuoteButton:disabled) {
  opacity: 1;
  cursor: not-allowed;
  background: var(--customer-control-surface-disabled);
  border-color: rgba(148, 231, 224, .18);
  color: rgba(237, 250, 250, .62);
  box-shadow: none;
  filter: none;
}

body[data-page] :where(button, .primary-action, .secondary-link) {
  min-inline-size: min(100%, 8.75rem);
}

@media print {
  body[data-page] :where(input, select, textarea, button, .primary-action, .secondary-link) {
    background: #fff !important;
    border-color: #64767c !important;
    color: #102024 !important;
    box-shadow: none !important;
  }
}

@media (forced-colors: active) {
  body[data-page] :where(input, select, textarea, button, .primary-action, .secondary-link) {
    forced-color-adjust: auto;
    border: 1px solid ButtonText;
  }
}

/* Customer design-system refinement: shared card, status, and responsive
   rules only; evidence gates and customer-safe data remain unchanged. */
body[data-page] {
  --customer-card-radius: 8px;
  --customer-panel-radius: 10px;
  --customer-grid-min-readable: 17rem;
  --customer-grid-min-compact: 13.5rem;
  --customer-state-safe-line: #18d5c7;
  --customer-state-review-line: #e6a43a;
  --customer-state-blocked-line: #ff756b;
  --customer-readable-surface: rgba(8, 20, 25, .96);
}

body[data-page] :where(
  .panel,
  .card,
  .status-strip,
  .customer-workflow-progress,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .demo-request,
  .matrix-table,
  .report-table
) {
  border-radius: var(--customer-panel-radius);
}

body[data-page] :where(
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .route-card,
  .request-preset-card,
  .service-package-card,
  .platform-map article,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .pillars article,
  .result-cards article,
  .step-list div,
  .matrix-list div,
  .service-boundary-grid div,
  .delivery-check,
  .customer-governance-strip article,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .perf div
) {
  border-radius: var(--customer-card-radius);
  min-width: 0;
}

body[data-page] :where(
  .platform-map,
  .result-cards,
  .candidate-grid,
  .evidence-card-grid,
  .generated-candidate-grid,
  .workflow-demo-steps,
  .pillars,
  .value-proof-grid,
  .service-boundary-grid,
  .delivery-checklist,
  .step-list,
  .evidence-steps,
  .matrix-list,
  .metrics-grid
) {
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-grid-min-readable), 100%), 1fr));
  align-items: stretch;
}

body[data-page] :where(.delivery-checklist, .metrics-grid, .result-cards) {
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-grid-min-compact), 100%), 1fr));
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span, .customer-step-jump) {
  border-radius: 999px;
  min-height: 30px;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .delivery-check.pass,
  .delivery-check.ready,
  .delivery-check.done,
  .delivery-check.ok,
  .claim-card.evidence-supported-candidate,
  .claim-card.evidence_supported_candidate
) {
  border-left-color: var(--customer-state-safe-line);
}

body[data-page] :where(
  .delivery-check.wait,
  .delivery-check.pending,
  .delivery-check.review,
  .delivery-check.warn,
  .delivery-check.hold,
  .source-lock-boundary,
  .sample-preview-gate,
  .claim-card.boundary-candidate-needs-row-lock,
  .claim-card.boundary_candidate_needs_row_lock,
  .claim-card.fallback-candidate,
  .claim-card.fallback_candidate
) {
  border-left-color: var(--customer-state-review-line);
}

body[data-page] :where(
  .delivery-check.blocked,
  .delivery-check.fail,
  .delivery-check.failed,
  .delivery-check.stop,
  .constraint-hold
) {
  border-left-color: var(--customer-state-blocked-line);
}

body[data-page] :where(.panel-head, .cand-head, .generated-candidate-head, .delivery-readiness-head) {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

body[data-page] :where(.panel-head > *, .cand-head > *, .generated-candidate-head > *, .delivery-readiness-head > *) {
  min-width: 0;
}

body[data-page] :where(.platform-preview, .customer-page-preview) {
  aspect-ratio: 16 / 9;
  background: var(--customer-readable-surface);
}

body[data-page] :where(.platform-preview img, .customer-page-preview img) {
  width: 100%;
  height: 100%;
}

/* Customer state bridge: keep legacy generated gate components on the
   same safe/review/blocked palette as the current public design system. */
body[data-page] {
  --green: var(--customer-state-safe-line, #18d5c7);
  --orange: var(--customer-state-review-line, #e6a43a);
  --red: var(--customer-state-blocked-line, #ff756b);
}

body[data-page] :where(
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .report-firebreak-details,
  .report-effective-gate,
  .report-action-denial,
  .report-firebreak-checks article
) {
  border-left-color: var(--orange);
}

body[data-page] :where(
  .customer-evidence-card-gate > div:first-child,
  .report-firebreak-details,
  .report-effective-gate,
  .report-action-denial,
  .report-firebreak-checks article.blocked
) {
  border-left-color: var(--red);
}

body[data-page] :where(
  .customer-evidence-card-gate > div:nth-child(2),
  .report-firebreak-checks article.pass
) {
  border-left-color: var(--green);
}

@media (max-width: 760px) {
  body[data-page] {
    --customer-grid-min-readable: 100%;
    --customer-grid-min-compact: 100%;
  }

  body[data-page] :where(.panel-head, .cand-head, .generated-candidate-head, .delivery-readiness-head) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > :last-child, .cand-head > :last-child, .generated-candidate-head > :last-child, .delivery-readiness-head > :last-child) {
    justify-self: start;
  }

  body[data-page] :where(.topnav, .rail) {
    gap: 6px;
  }
}

/* Public customer step-card compatibility: static pages and generated panels
   may use article or div children inside the same step containers. */
body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article {
  display: grid;
  align-content: start;
  gap: var(--customer-card-stack, 10px);
  min-width: 0;
  border: 1px solid var(--line, rgba(148, 231, 224, .19));
  border-left: 4px solid var(--customer-state-safe-line, var(--accent, #18d5c7));
  border-radius: var(--customer-card-radius, 8px);
  background: linear-gradient(180deg, rgba(11, 25, 31, .94), rgba(7, 15, 19, .92));
  padding: var(--customer-card-pad, 14px);
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article:nth-child(2n) {
  border-left-color: var(--customer-state-review-line, var(--accent-2, #e6a43a));
}

body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article:nth-child(3n) {
  border-left-color: var(--customer-state-blocked-line, var(--danger, #ff756b));
}

body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article > span {
  color: var(--accent, #18d5c7);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article b {
  display: block;
  color: var(--ink, #edfafa);
  font-size: 15px;
  line-height: 1.35;
}

body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article small,
body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article p {
  margin: 0;
  color: var(--muted, #9eb6bc);
  font-size: 12px;
  line-height: 1.45;
}

@media print {
  body[data-page] :where(.step-list, .evidence-steps, .matrix-list) > article {
    background: #fff !important;
    border-color: #dce4e6 !important;
    color: #102024 !important;
    box-shadow: none !important;
    break-inside: avoid;
  }
}

.noesis-lattice {
  display: grid;
  gap: 16px;
  border: 1px solid rgba(15, 118, 110, .18);
  background: linear-gradient(135deg, #ffffff 0%, #f5fbfb 100%);
}

.noesis-lattice-grid,
.noesis-image2-assets {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
  gap: 12px;
}

.noesis-lattice-card,
.noesis-image2-card {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--line);
  border-left: 4px solid var(--accent);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface);
  padding: 14px;
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow);
}

.noesis-lattice-card:nth-child(2),
.noesis-image2-card:nth-child(2) {
  border-left-color: var(--accent-2);
}

.noesis-lattice-card:nth-child(3),
.noesis-image2-card:nth-child(3) {
  border-left-color: var(--warning);
}

.noesis-lattice-card:nth-child(4),
.noesis-image2-card:nth-child(4) {
  border-left-color: var(--danger);
}

.noesis-lattice-card h3,
.noesis-image2-card h3 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.25;
}

.noesis-lattice-card p,
.noesis-image2-card p,
.noesis-lattice-card dd,
.noesis-image2-card dd {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.noesis-lattice-card dl,
.noesis-image2-card dl {
  display: grid;
  grid-template-columns: minmax(70px, .28fr) minmax(0, 1fr);
  gap: 6px 10px;
  margin: 0;
}

.noesis-lattice-card dt,
.noesis-image2-card dt {
  color: var(--ink);
  font-size: 12px;
  font-weight: 850;
}


/* Final image2 workstation fit: keep the blueprint visible and readable on fixed narrow previews. */
body[data-page="workstation"] .status-strip.value-hero {
  min-height: min(720px, calc(100vh - 96px));
}

body[data-page="workstation"] .status-strip.value-hero .hero-stage {
  display: grid;
  grid-template-rows: auto auto auto;
  gap: 14px;
}

body[data-page="workstation"] .status-strip.value-hero .platform-preview {
  display: block;
  min-height: clamp(220px, 44vw, 500px);
}

body[data-page="workstation"] .status-strip.value-hero .platform-preview img {
  max-height: none;
  min-height: clamp(220px, 44vw, 500px);
  object-fit: cover;
  object-position: top center;
}

body[data-page="workstation"] .status-strip.value-hero .metrics-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(128px, 100%), 1fr));
}

body[data-page="workstation"] .status-strip.value-hero .structured-brief-preview {
  max-height: none;
}

@media (max-width: 620px) {
  body[data-page="workstation"] .status-strip.value-hero {
    gap: 16px;
  }

  body[data-page="workstation"] .status-strip.value-hero .platform-preview {
    display: block;
    min-height: 220px;
  }

  body[data-page="workstation"] .status-strip.value-hero .platform-preview img {
    min-height: 220px;
  }

  body[data-page="workstation"] .status-strip.value-hero .platform-preview figcaption {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Public customer design-system addendum: shared rhythm for scan cards,
   headings, and mobile actions across the customer bundle. */
body[data-page] {
  --customer-readable-measure: 72ch;
  --customer-card-pad: clamp(12px, 1.1vw, 16px);
  --customer-card-stack: clamp(8px, 1vw, 12px);
  --customer-action-min: 44px;
}

body[data-page] :where(
  .panel-head,
  .customer-workflow-progress-head,
  .brief-preview-head,
  .delivery-readiness-head,
  .customer-release-progress-head,
  .feedback-handoff-head,
  .generated-candidate-head
) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--customer-card-stack);
  align-items: start;
}

body[data-page] :where(
  .panel-head > *,
  .customer-workflow-progress-head > *,
  .brief-preview-head > *,
  .delivery-readiness-head > *,
  .customer-release-progress-head > *,
  .feedback-handoff-head > *,
  .generated-candidate-head > *
) {
  min-width: 0;
}

body[data-page] :where(
  .panel-head p,
  .customer-workflow-progress-head p,
  .brief-preview-head p,
  #missionText,
  .lede
) {
  max-width: var(--customer-readable-measure);
}

body[data-page] :where(
  .customer-workflow-progress-steps a,
  .platform-map article,
  .customer-governance-strip article,
  .delivery-check,
  .claim-card,
  .generated-candidate-card,
  .request-preset-card,
  .metric
) {
  align-content: start;
  gap: var(--customer-card-stack);
  padding: var(--customer-card-pad);
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .topnav a,
  .rail a,
  input,
  select
) {
  min-height: var(--customer-action-min);
}

body[data-page] :where(
  h1,
  h2,
  h3,
  h4,
  p,
  small,
  li,
  dt,
  dd,
  label,
  button,
  .primary-action,
  .secondary-link,
  .chip,
  .claim-badge
) {
  overflow-wrap: anywhere;
}

body[data-page] :where(.topnav a, .rail a, .customer-workflow-progress-steps a) {
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

/* Commercial page alignment: reuse the shared customer preview and state-card
   grammar while keeping business scope separate from the research workflow. */
body[data-page="commercial"] .commercial-page-stage {
  grid-template-columns: minmax(280px, .95fr) minmax(0, 1.05fr);
}

body[data-page="commercial"] .commercial-page-preview img {
  object-position: center;
}

body[data-page="commercial"] .commercial-boundary-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--customer-card-stack);
  min-width: 0;
}

body[data-page="commercial"] .commercial-boundary-board article {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  border: 1px solid var(--line, rgba(148, 231, 224, .19));
  border-left: 4px solid var(--customer-state-review-line, var(--accent-2, #e6a43a));
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface, #fff);
  padding: var(--customer-card-pad);
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
  overflow-wrap: anywhere;
}

body[data-page="commercial"] .commercial-boundary-board article:nth-child(2) {
  border-left-color: var(--customer-state-safe-line, var(--accent, #18d5c7));
}

body[data-page="commercial"] .commercial-boundary-board article:nth-child(3) {
  border-left-color: var(--customer-state-blocked-line, var(--danger, #ff756b));
}

body[data-page="commercial"] .commercial-boundary-board span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-page="commercial"] .commercial-boundary-board b {
  color: var(--ink);
  font-size: 17px;
  line-height: 1.25;
}

body[data-page="commercial"] .commercial-boundary-board small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

@media (max-width: 760px) {
  body[data-page] :where(
    .panel-head,
    .customer-workflow-progress-head,
    .brief-preview-head,
    .delivery-readiness-head,
    .customer-release-progress-head,
    .feedback-handoff-head,
    .generated-candidate-head
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(
    .panel-head > :last-child,
    .customer-workflow-progress-head > :last-child,
    .brief-preview-head > :last-child,
    .delivery-readiness-head > :last-child,
    .customer-release-progress-head > :last-child,
    .feedback-handoff-head > :last-child,
    .generated-candidate-head > :last-child
  ) {
    justify-self: start;
    max-width: 100%;
  }

  body[data-page] :where(.topnav, .rail) {
    scroll-padding-inline: var(--customer-page-gutter, 12px);
  }

  body[data-page="commercial"] .commercial-boundary-board {
    grid-template-columns: 1fr;
  }
}

/* Customer design-system refinement: keep review states, dense navigation, and
   report matrices readable without changing customer bundle content. */
body[data-page] {
  --customer-state-neutral-bg: #f7fafb;
  --customer-state-ready-bg: #edf8f5;
  --customer-state-review-bg: #fff7e8;
  --customer-state-blocked-bg: #fff1ee;
  --customer-state-ready-line: #0f766e;
  --customer-state-review-line: #a35f08;
  --customer-state-blocked-line: #b42318;
}

body[data-page] :where(.topnav, .rail) {
  min-width: 0;
  scrollbar-width: thin;
}

body[data-page] :where(.topnav a, .rail a) {
  flex: 0 0 auto;
  white-space: nowrap;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .delivery-checklist .chip) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  max-width: 100%;
  min-height: 30px;
  line-height: 1.25;
  white-space: normal;
}

body[data-page] :where(.chip.info, .claim-badge.screened, .claim-badge.evidence-gated, .claim-badge.units-checked) {
  border-color: color-mix(in srgb, var(--customer-state-ready-line) 26%, transparent);
  background: var(--customer-state-ready-bg);
  color: var(--customer-state-ready-line);
}

body[data-page] :where(.chip.warn, .claim-badge.boundary, .claim-badge.screening-required, .claim-badge.validation-required) {
  border-color: color-mix(in srgb, var(--customer-state-review-line) 28%, transparent);
  background: var(--customer-state-review-bg);
  color: var(--customer-state-review-line);
}

body[data-page] :where(.claim-badge.no-guarantee, .claim-badge.no-customer-commitment, [data-status="blocked"]) {
  border-color: color-mix(in srgb, var(--customer-state-blocked-line) 26%, transparent);
  background: var(--customer-state-blocked-bg);
  color: var(--customer-state-blocked-line);
}

body[data-page] :where(
  .customer-governance-strip article,
  .platform-map article,
  .step-list > article,
  .step-list > div,
  .evidence-steps > article,
  .evidence-steps > div,
  .matrix-list > article,
  .matrix-list > div,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .evidence-card-grid article,
  .workflow-demo-steps article,
  .workflow-demo-steps div,
  .report-summary-grid article,
  .report-deliverables article
) {
  display: grid;
  align-content: start;
  min-width: 0;
}

body[data-page] :where(.matrix-table, .report-table) {
  border: 1px solid var(--lab-line, var(--line));
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  overflow: auto;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] :where(.matrix-table table, .report-table table) {
  width: 100%;
  min-width: min(760px, 100%);
  border-collapse: separate;
  border-spacing: 0;
}

body[data-page] :where(.matrix-table th, .report-table th) {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #eef6f6;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  vertical-align: top;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-page-stage, .commercial-page-stage, .hero-stage) {
  min-width: 0;
}

@media (max-width: 720px) {
  body[data-page] .workspace {
    padding-inline: 12px;
  }

  body[data-page] :where(.topnav, .rail) {
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  body[data-page] :where(.topnav a, .rail a) {
    scroll-snap-align: start;
  }

  body[data-page] :where(.customer-page-stage, .commercial-page-stage) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.delivery-checklist, .boundary-strip) {
    align-items: flex-start;
  }

  body[data-page] :where(.delivery-checklist .chip, .boundary-strip span) {
    width: 100%;
    justify-content: flex-start;
  }

  body[data-page] :where(.matrix-table table, .report-table table) {
    min-width: 640px;
  }
}

/* Public customer evidence-safety refinement: align generated review, copy,
   escalation, and handoff panels with the shared scan-card system. */
body[data-page="evidence"] {
  --customer-evidence-grid-min: 12rem;
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-copy-boundary,
  .customer-evidence-claim-escalation,
  .customer-evidence-review-firebreak,
  .customer-evidence-review-handoff
) {
  gap: var(--customer-card-stack, 10px);
  border-left-color: var(--customer-state-review-line, #a35f08);
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-safety-receipt-checks,
  .customer-evidence-review-gate-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-copy-action-policy,
  .customer-evidence-copy-next-action,
  .customer-evidence-escalation-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-evidence-action-summary
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-evidence-grid-min), 100%), 1fr));
  gap: 8px;
  align-items: stretch;
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-grid article,
  .customer-evidence-safety-receipt-checks article,
  .customer-evidence-review-gate-grid article,
  .customer-evidence-review-lanes article,
  .customer-evidence-copy-action-policy article,
  .customer-evidence-copy-next-action article,
  .customer-evidence-escalation-lanes article,
  .customer-evidence-review-handoff-lanes article,
  .customer-evidence-action-summary article,
  .customer-evidence-redaction-audit,
  .customer-evidence-review-handoff-summary
) {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-state-review-line, #a35f08);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-state-neutral-bg, #f7fafb);
  padding: 10px;
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-checks article.pass,
  .customer-evidence-review-gate-grid article.pass,
  .customer-evidence-review-lanes article.allowed,
  .customer-evidence-review-handoff-lanes article.pass,
  .customer-evidence-review-handoff-lanes article.allowed,
  .customer-evidence-escalation-lanes article.pass,
  .customer-evidence-escalation-lanes article.allowed,
  .customer-evidence-action-summary article.pass
) {
  border-left-color: var(--customer-state-ready-line, #0f766e);
  background: var(--customer-state-ready-bg, #edf8f5);
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-checks article.blocked,
  .customer-evidence-review-gate-grid article.blocked,
  .customer-evidence-review-lanes article.blocked,
  .customer-evidence-review-handoff-lanes article.blocked,
  .customer-evidence-escalation-lanes article.blocked,
  .customer-evidence-action-summary article.blocked
) {
  border-left-color: var(--customer-state-blocked-line, #b42318);
  background: var(--customer-state-blocked-bg, #fff1ee);
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-grid b,
  .customer-evidence-safety-receipt-checks b,
  .customer-evidence-review-gate-grid b,
  .customer-evidence-review-lanes b,
  .customer-evidence-copy-action-policy b,
  .customer-evidence-copy-next-action b,
  .customer-evidence-escalation-lanes b,
  .customer-evidence-review-handoff-lanes b,
  .customer-evidence-action-summary b,
  .customer-evidence-redaction-audit b,
  .customer-evidence-review-handoff-summary b
) {
  display: block;
  margin: 0 0 4px;
  font-size: clamp(12px, .95vw, 14px);
  line-height: 1.3;
}

body[data-page="evidence"] :where(
  .customer-evidence-safety-receipt-grid span,
  .customer-evidence-safety-receipt-checks span,
  .customer-evidence-review-gate-grid span,
  .customer-evidence-review-lanes span,
  .customer-evidence-review-lanes small,
  .customer-evidence-copy-action-policy span,
  .customer-evidence-copy-next-action span,
  .customer-evidence-escalation-lanes span,
  .customer-evidence-review-handoff-lanes span,
  .customer-evidence-action-summary span,
  .customer-evidence-redaction-audit span,
  .customer-evidence-review-handoff-summary span
) {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
}

@media (max-width: 620px) {
  body[data-page="evidence"] {
    --customer-evidence-grid-min: 100%;
  }
}

/* Customer design-system refinement: unify public review cards, tabular
   evidence surfaces, and action affordances without changing bundle data. */
body[data-page] {
  --customer-focus-outline: 3px solid rgba(14, 116, 144, .32);
  --customer-scan-card-gap: 9px;
  --customer-table-head-bg: #eef6f6;
}

body[data-page] :where(
  .customer-workflow-progress,
  .customer-value-platform,
  .customer-material-digestion-engine,
  .customer-product-gate,
  .customer-evidence-safety-receipt,
  .customer-evidence-review-gate,
  .customer-evidence-copy-boundary,
  .customer-evidence-claim-escalation,
  .customer-evidence-review-firebreak,
  .customer-evidence-review-handoff,
  .customer-research-review,
  .customer-research-acknowledgement,
  .customer-research-submit-firebreak,
  .customer-release-progress,
  .customer-review-handoff,
  .customer-release-handoff
) {
  display: grid;
  gap: var(--customer-scan-card-gap);
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-workflow-progress-steps,
  .brief-preview-grid,
  .customer-digestion-lanes,
  .customer-digestion-cards,
  .report-summary-grid,
  .report-deliverables,
  .result-cards,
  .candidate-grid,
  .evidence-card-grid,
  .workflow-demo-steps,
  .pillars,
  .value-proof-grid,
  .delivery-checklist
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: var(--customer-scan-card-gap);
  align-items: stretch;
}

body[data-page] :where(
  .customer-workflow-progress-steps > *,
  .brief-preview-grid > *,
  .customer-digestion-lanes > *,
  .customer-digestion-cards > *,
  .report-summary-grid > *,
  .report-deliverables > *,
  .result-cards > *,
  .candidate-grid > *,
  .evidence-card-grid > *,
  .workflow-demo-steps > *,
  .pillars > *,
  .value-proof-grid > *,
  .delivery-checklist > *
) {
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page] :where(.matrix-table, .report-table) {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

body[data-page] :where(.matrix-table th, .report-table th) {
  background: var(--customer-table-head-bg);
}

body[data-page] :where(
  a:focus-visible,
  button:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible,
  [tabindex]:focus-visible
) {
  outline: var(--customer-focus-outline);
  outline-offset: 2px;
}

body[data-page] :where(button, .primary-action, .secondary-link, .request-preset-card) {
  min-height: var(--customer-touch-target, 44px);
}

@media (max-width: 620px) {
  body[data-page] :where(.customer-workflow-progress-steps, .brief-preview-grid) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.matrix-table, .report-table) {
    margin-inline: -2px;
  }
}

@media print {
  body[data-page] :where(
    .customer-workflow-progress,
    .customer-value-platform,
    .customer-material-digestion-engine,
    .customer-product-gate,
    .customer-evidence-safety-receipt,
    .customer-evidence-review-gate,
    .customer-evidence-copy-boundary,
    .customer-evidence-claim-escalation,
    .customer-evidence-review-firebreak,
    .customer-evidence-review-handoff
  ) {
    background: #fff !important;
    box-shadow: none !important;
    break-inside: avoid;
  }
}

/* Public customer generated-card bridge: app.js emits value-card and
   candidate-card nodes, so map them onto the shared customer card system. */
body[data-page] .value-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: var(--customer-scan-card-gap, 9px);
  align-items: stretch;
}

body[data-page] :where(.value-card, .candidate-card) {
  display: grid;
  align-content: start;
  gap: var(--customer-card-stack, 10px);
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-state-ready-line, #0f766e);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface, #fff);
  padding: var(--customer-card-pad, 14px);
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] .candidate-card:nth-child(2n) {
  border-left-color: var(--customer-state-review-line, #a35f08);
}

body[data-page] .candidate-card:nth-child(3n) {
  border-left-color: var(--customer-state-blocked-line, #b42318);
}

body[data-page] :where(.value-card b, .candidate-card h3) {
  margin: 0;
  color: var(--ink, #162024);
  font-size: 15px;
  line-height: 1.3;
  text-wrap: balance;
}

body[data-page] :where(.value-card p, .candidate-card p) {
  margin: 0;
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.5;
}

body[data-page] .candidate-card .boundary-strip {
  margin-top: auto;
}

@media (max-width: 620px) {
  body[data-page] .value-grid {
    grid-template-columns: 1fr;
  }
}

/* Public customer hydration receipt bridge: aggregate data-load receipts use
   the same customer-safe scan-card language as evidence and delivery gates. */
body[data-page] .customer-data-hydration-receipt {
  display: grid;
  gap: var(--customer-scan-card-gap, 9px);
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-state-ready-line, #0f766e);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-state-ready-bg, #edf8f5);
  padding: var(--customer-card-pad, 14px);
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] .customer-data-hydration-receipt[data-status="WAIT"] {
  border-left-color: var(--customer-state-review-line, #a35f08);
  background: var(--customer-state-review-bg, #fff7e8);
}

body[data-page] .customer-data-hydration-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--customer-card-stack, 10px);
  align-items: start;
  margin: 0;
}

body[data-page] .customer-data-hydration-head > * {
  min-width: 0;
}

body[data-page] .customer-data-hydration-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(132px, 100%), 1fr));
  gap: 8px;
  align-items: stretch;
}

body[data-page] .customer-data-hydration-grid article {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-state-ready-line, #0f766e);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface, #fff);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] .customer-data-hydration-grid article:nth-child(3) {
  border-left-color: var(--customer-state-review-line, #a35f08);
}

body[data-page] .customer-data-hydration-grid b,
body[data-page] .customer-data-hydration-grid span,
body[data-page] .customer-data-hydration-receipt p {
  margin: 0;
  line-height: 1.45;
}

body[data-page] .customer-data-hydration-grid b {
  color: var(--ink, #162024);
  font-size: clamp(15px, 1.4vw, 18px);
}

body[data-page] .customer-data-hydration-grid span,
body[data-page] .customer-data-hydration-receipt p {
  color: var(--muted, #607078);
  font-size: 12px;
}

@media (max-width: 620px) {
  body[data-page] .customer-data-hydration-head {
    grid-template-columns: 1fr;
  }

  body[data-page] .customer-data-hydration-head .chip {
    justify-self: start;
  }
}

@media print {
  body[data-page] .customer-data-hydration-receipt,
  body[data-page] .customer-data-hydration-grid article {
    background: #fff !important;
    box-shadow: none !important;
    break-inside: avoid;
  }
}

/* Public customer final design-system pass: use higher-specificity selectors so
   the shared refinement layer remains active after the generated lab stylesheet. */
body[data-page][data-page] {
  --customer-final-bg: #eef4f4;
  --customer-final-panel: rgba(255, 255, 255, .97);
  --customer-final-panel-soft: #f8fbfb;
  --customer-final-line: rgba(76, 101, 107, .2);
  --customer-final-line-strong: rgba(76, 101, 107, .36);
  --customer-final-ink: #132428;
  --customer-final-muted: #52666c;
  --customer-final-safe: #0f766e;
  --customer-final-review: #a35f08;
  --customer-final-blocked: #b42318;
  --customer-final-info: #0e7490;
  --customer-final-shadow: 0 10px 30px rgba(29, 47, 53, .08);
  --customer-final-radius: 8px;
  --customer-final-gap: 12px;
  color: var(--customer-final-ink);
  background:
    linear-gradient(180deg, #f8fbfb 0, var(--customer-final-bg) 48%, #e7eeee 100%);
}

body[data-page][data-page] .topbar {
  grid-template-columns: minmax(150px, 210px) minmax(0, 1fr) minmax(150px, auto);
  gap: 10px;
  min-height: 62px;
  height: auto;
  padding: 10px 18px;
  background: rgba(252, 254, 254, .94);
  border-bottom: 1px solid var(--customer-final-line);
  color: var(--customer-final-ink);
  box-shadow: 0 6px 18px rgba(28, 44, 49, .06);
}

body[data-page][data-page] .brand,
body[data-page][data-page] .topnav,
body[data-page][data-page] .top-status {
  min-width: 0;
}

body[data-page][data-page] .topnav {
  justify-content: center;
  overflow-x: auto;
  scrollbar-width: thin;
}

body[data-page][data-page] .topnav a,
body[data-page][data-page] .rail a {
  min-height: 38px;
  border: 1px solid transparent;
  border-radius: var(--customer-final-radius);
  color: #435a60;
  line-height: 1.2;
  white-space: nowrap;
}

body[data-page][data-page] .topnav a.active,
body[data-page][data-page] .topnav a[aria-current="page"],
body[data-page][data-page] .rail a.active,
body[data-page][data-page] .rail a[aria-current="location"] {
  border-color: var(--customer-final-line);
  background: #e9f3f3;
  color: #0f3f42;
  box-shadow: inset 0 0 0 1px rgba(15, 118, 110, .06);
}

body[data-page][data-page] .top-status {
  justify-self: end;
  max-width: 100%;
  border-color: rgba(15, 118, 110, .18);
  background: #edf7f6;
  color: #24464a;
  box-shadow: none;
}

body[data-page][data-page] .status-dot {
  background: var(--customer-final-safe);
  box-shadow: 0 0 0 3px rgba(15, 118, 110, .12);
}

body[data-page][data-page] .layout {
  grid-template-columns: 108px minmax(0, 1fr);
}

body[data-page][data-page] .rail {
  padding: 14px 10px;
  background: rgba(248, 251, 251, .86);
  border-right: 1px solid var(--customer-final-line);
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, .7);
}

body[data-page][data-page] .workspace {
  width: min(1500px, 100%);
  padding: clamp(14px, 1.5vw, 24px);
}

body[data-page][data-page] :is(.status-strip, .value-hero) {
  gap: var(--customer-final-gap);
  border: 1px solid var(--customer-final-line);
  border-radius: 10px;
  background: linear-gradient(180deg, #ffffff, #f8fbfb);
  box-shadow: var(--customer-final-shadow);
}

body[data-page][data-page] .status-strip.value-hero {
  grid-template-columns: minmax(360px, .9fr) minmax(520px, 1.1fr);
  min-height: 0;
}

body[data-page][data-page] .status-strip:not(.value-hero) {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
}

body[data-page][data-page] :is(.panel, .card, .metric, .candidate, .claim-card, .generated-candidate-card, .delivery-check, .review-panel-box, .delivery-receipt-panel, .report-preview, .request-preset-card, .platform-map article, .customer-governance-strip article, .service-package-card, .job-tracker-stage) {
  border-color: var(--customer-final-line);
  border-radius: var(--customer-final-radius);
  background: var(--customer-final-panel);
  color: var(--customer-final-ink);
  box-shadow: var(--customer-final-shadow);
}

body[data-page][data-page] :is(.metric, .candidate, .claim-card, .generated-candidate-card, .delivery-check, .platform-map article, .customer-governance-strip article, .workflow-demo-steps article, .evidence-card-grid article, .step-list > article, .step-list > div, .matrix-list > article, .matrix-list > div) {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page][data-page] :is(.panel-head, .generated-candidate-head, .delivery-readiness-head, .customer-data-hydration-head) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}

body[data-page][data-page] :is(.panel-head, .generated-candidate-head, .delivery-readiness-head, .customer-data-hydration-head) > * {
  min-width: 0;
}

body[data-page][data-page] :is(.eyebrow) {
  color: var(--customer-final-safe);
  letter-spacing: .08em;
}

body[data-page][data-page] :is(h1, h2, h3, h4, b, dt, th, label) {
  color: var(--customer-final-ink);
  letter-spacing: 0;
}

body[data-page][data-page] :is(p, small, span, li, dd, td, .lede, #missionText) {
  color: var(--customer-final-muted);
}

body[data-page][data-page] .platform-preview {
  aspect-ratio: 16 / 9;
  border: 1px solid var(--customer-final-line);
  border-radius: var(--customer-final-radius);
  background: #0a1518;
  box-shadow: none;
}

body[data-page][data-page] .platform-preview img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: top center;
}

body[data-page][data-page] .platform-preview figcaption {
  background: rgba(248, 251, 251, .94);
}

body[data-page][data-page] .platform-preview figcaption span,
body[data-page][data-page] :is(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  min-width: 0;
  min-height: 30px;
  border: 1px solid var(--customer-final-line);
  border-radius: 999px;
  background: #f5f9f9;
  color: #42585e;
  line-height: 1.25;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page][data-page] :is(.chip.ok, .delivery-check.pass, .delivery-check.ready, .delivery-check.done) {
  border-color: rgba(15, 118, 110, .24);
  background: #edf8f5;
  color: var(--customer-final-safe);
}

body[data-page][data-page] :is(.chip.warn, .delivery-check.pending, .delivery-check.review, .delivery-check.warn, .delivery-check.hold, .source-lock-boundary, .sample-preview-gate, .customer-download-wait-checklist) {
  border-color: rgba(163, 95, 8, .26);
  background: #fff8ea;
  color: var(--customer-final-review);
}

body[data-page][data-page] :is(.chip.bad, .delivery-check.blocked, .delivery-check.fail, .constraint-hold, .report-hard-stop-receipt) {
  border-color: rgba(180, 35, 24, .24);
  background: #fff3f0;
  color: var(--customer-final-blocked);
}

body[data-page][data-page] :is(input, select, textarea) {
  min-height: 44px;
  border: 1px solid var(--customer-final-line-strong);
  border-radius: var(--customer-final-radius);
  background: #ffffff;
  color: var(--customer-final-ink);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
  color-scheme: light;
}

body[data-page][data-page] :is(input, select, textarea):focus-visible {
  border-color: var(--customer-final-info);
  outline: 3px solid rgba(14, 116, 144, .24);
  outline-offset: 2px;
}

body[data-page][data-page] :is(button, .primary-action, .secondary-link) {
  min-height: 44px;
  border-radius: var(--customer-final-radius);
  box-shadow: none;
}

body[data-page][data-page] :is(button, .primary-action):not(:disabled) {
  border-color: #12353a;
  background: #12353a;
  color: #ffffff;
}

body[data-page][data-page] .secondary-link {
  border-color: var(--customer-final-line);
  background: #ffffff;
  color: var(--customer-final-ink);
}

body[data-page][data-page] :is(button:disabled, .primary-action:disabled) {
  border-color: #d6e0e2;
  background: #eef3f3;
  color: #66787e;
}

body[data-page][data-page] :is(.matrix-table, .report-table) {
  border: 1px solid var(--customer-final-line);
  border-radius: var(--customer-final-radius);
  background: #ffffff;
  overflow: auto;
  scrollbar-width: thin;
}

body[data-page][data-page] :is(.matrix-table th, .report-table th) {
  background: #eef6f6;
  color: var(--customer-final-ink);
}

body[data-page][data-page] :is(.matrix-table td, .report-table td) {
  background: #ffffff;
  color: var(--customer-final-muted);
}

@media (max-width: 1180px) {
  body[data-page][data-page] .status-strip.value-hero,
  body[data-page][data-page] .status-strip:not(.value-hero) {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  body[data-page][data-page] .topbar,
  body[data-page][data-page] .layout {
    grid-template-columns: 1fr;
  }

  body[data-page][data-page] .topnav,
  body[data-page][data-page] .rail {
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  body[data-page][data-page] .rail {
    position: static;
    height: auto;
    flex-direction: row;
    border-right: 0;
    border-bottom: 1px solid var(--customer-final-line);
  }

  body[data-page][data-page] .top-status {
    justify-self: start;
  }

  body[data-page][data-page] :is(.panel-head, .generated-candidate-head, .delivery-readiness-head, .customer-data-hydration-head) {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  body[data-page][data-page] .workspace {
    padding: 10px;
  }

  body[data-page][data-page] .topbar {
    padding: 10px;
  }

  body[data-page][data-page] :is(.metrics-grid, .platform-map, .grid-two, .delivery-layout, .form-grid, .feedback-grid) {
    grid-template-columns: 1fr;
  }

  body[data-page][data-page] :is(button, .primary-action, .secondary-link) {
    width: 100%;
  }

  body[data-page][data-page] h1 {
    font-size: clamp(26px, 9vw, 34px);
  }
}

/* Final customer state accents: keep review gates scannable after the
   consolidated customer surface pass normalizes borders and backgrounds. */
body[data-page][data-page] :is(
  .delivery-check.pass,
  .delivery-check.ready,
  .delivery-check.done,
  .customer-data-hydration-receipt,
  .customer-data-hydration-grid article,
  .claim-card.evidence_supported_candidate
) {
  border-left-width: 4px;
  border-left-style: solid;
  border-left-color: var(--customer-final-safe);
}

body[data-page][data-page] :is(
  .delivery-check.pending,
  .delivery-check.review,
  .delivery-check.warn,
  .delivery-check.hold,
  .source-lock-boundary,
  .sample-preview-gate,
  .customer-download-wait-checklist,
  .customer-data-hydration-receipt[data-status="WAIT"],
  .customer-data-hydration-grid article:nth-child(3),
  .claim-card.boundary-candidate-needs-row-lock,
  .claim-card.boundary_candidate_needs_row_lock,
  .claim-card.fallback-candidate,
  .claim-card.fallback_candidate
) {
  border-left-width: 4px;
  border-left-style: solid;
  border-left-color: var(--customer-final-review);
}

body[data-page][data-page] :is(
  .delivery-check.blocked,
  .delivery-check.fail,
  .delivery-check.failed,
  .constraint-hold,
  .report-hard-stop-receipt,
  .report-action-denial,
  .report-firebreak-checks article.blocked
) {
  border-left-width: 4px;
  border-left-style: solid;
  border-left-color: var(--customer-final-blocked);
}

/* TiForge customer design system refinement. */
body[data-page] :where(.topnav, .rail) {
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

body[data-page] :where(.topnav a, .rail a) {
  flex: 0 0 auto;
  min-width: 44px;
  min-height: 44px;
  scroll-snap-align: start;
  white-space: nowrap;
}

body[data-page] :where(button, .primary-action, .secondary-link, .request-preset-card, .customer-step-jump) {
  min-height: 44px;
  touch-action: manipulation;
  overflow-wrap: anywhere;
}

body[data-page] :where(button, .primary-action, .secondary-link, .request-preset-card, .customer-step-jump):focus-visible {
  outline: 3px solid rgba(14, 116, 144, .28);
  outline-offset: 2px;
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav a, .rail a) {
    padding-inline: 12px;
  }

  body[data-page] :where(.panel-head) > :last-child {
    justify-self: stretch;
  }
}

/* Public customer interaction control: keep the same design language across
   navigation, workflow links, and review actions without changing bundle data. */
body[data-page] :where(.topnav a, .rail a, .secondary-link, .customer-step-jump, .customer-next-action-grid a) {
  transition: background-color .14s ease, border-color .14s ease, color .14s ease;
}

body[data-page] :where(.topnav a:hover, .rail a:hover, .secondary-link:hover, .customer-step-jump:hover, .customer-next-action-grid a:hover) {
  border-color: var(--customer-final-info, #0e7490);
  background: #eef7f7;
  color: var(--customer-final-ink, #132428);
}

body[data-page] :where(.customer-current-action, .customer-next-action-grid article[data-current="true"]) {
  border-left: 4px solid var(--customer-final-review, #a35f08);
  background: #fff8ea;
}

body[data-page] :where(.customer-next-action-grid article[data-status*="blocked"]) {
  border-left: 4px solid var(--customer-final-blocked, #b42318);
  background: #fff3f0;
}

@media (prefers-reduced-motion: reduce) {
  body[data-page] :where(.topnav a, .rail a, .secondary-link, .customer-step-jump, .customer-next-action-grid a) {
    transition: none;
  }
}

/* Public customer design-system pass: final surface rhythm for review screens. */
body[data-page] {
  --customer-rhythm-gap: 12px;
  --customer-rhythm-line: rgba(132, 161, 166, .32);
  --customer-rhythm-soft: #f7fbfb;
  --customer-rhythm-safe: #0f766e;
  --customer-rhythm-review: #a35f08;
  --customer-rhythm-blocked: #b42318;
}

body[data-page] :where(.panel-head, .customer-workflow-continuity-head, .customer-request-change-head, .delivery-readiness-head, .customer-step-handoff-head) {
  gap: var(--customer-rhythm-gap);
  min-width: 0;
}

body[data-page] :where(.panel-head > *, .customer-workflow-continuity-head > *, .customer-request-change-head > *, .delivery-readiness-head > *, .customer-step-handoff-head > *) {
  min-width: 0;
}

body[data-page] :where(
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .request-preset-card,
  .platform-map article,
  .customer-governance-strip article,
  .customer-current-action,
  .customer-next-action-grid article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article,
  .customer-step-handoff-grid article,
  .customer-request-change-grid article,
  .customer-request-change-summary-grid article
) {
  min-width: 0;
  border-radius: 8px;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .customer-current-action,
  .customer-next-action-grid article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article,
  .customer-step-handoff-grid article,
  .customer-request-change-grid article,
  .customer-request-change-summary-grid article
) > :where(b, h3, h4, span, small, p) {
  max-width: 100%;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-current-action,
  .customer-next-action-grid article[data-current="true"],
  .customer-workflow-continuity-grid article[data-status*="waiting"],
  .customer-workflow-continuity-grid article[data-status*="review"],
  .customer-step-handoff-receipt
) {
  border-left: 4px solid var(--customer-rhythm-review);
  background: #fff8ea;
}

body[data-page] :where(
  .customer-next-action-grid article[data-status*="ready"],
  .customer-next-action-grid article[data-status*="submitted"],
  .customer-workflow-continuity-grid article[data-status*="ready"],
  .customer-workflow-continuity-grid article[data-status*="submitted"],
  .customer-request-change-summary-grid article[data-status="aligned"]
) {
  border-left: 4px solid var(--customer-rhythm-safe);
  background: #eef8f5;
}

body[data-page] :where(
  .customer-next-action-grid article[data-status*="locked"],
  .customer-next-action-grid article[data-status*="blocked"],
  .customer-workflow-continuity-grid article[data-status*="locked"],
  .customer-workflow-continuity-grid article[data-status*="blocked"],
  .customer-request-change-summary-grid article[data-status*="changed"],
  .constraint-hold
) {
  border-left: 4px solid var(--customer-rhythm-blocked);
  background: #fff3f0;
}

body[data-page] :where(.customer-next-action-grid, .customer-workflow-continuity-grid, .customer-workflow-continuity-summary, .customer-step-handoff-grid, .customer-request-change-grid, .customer-request-change-summary-grid) {
  gap: var(--customer-rhythm-gap);
}

body[data-page] :where(.matrix-table, .report-table) {
  border: 1px solid var(--customer-rhythm-line);
  background:
    linear-gradient(90deg, rgba(247,251,251,.96), rgba(247,251,251,0) 18px) left / 24px 100% no-repeat,
    #fff;
}

body[data-page] :where(.matrix-table th, .report-table th) {
  border-bottom: 1px solid var(--customer-rhythm-line);
  background: #eef6f6;
}

body[data-page] :where(.matrix-table td, .report-table td) {
  border-bottom: 1px solid rgba(132, 161, 166, .16);
  vertical-align: top;
}

@media (max-width: 620px) {
  body[data-page] :where(.panel-head, .customer-workflow-continuity-head, .customer-request-change-head, .delivery-readiness-head, .customer-step-handoff-head) {
    display: grid;
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.customer-next-action-grid, .customer-workflow-continuity-grid, .customer-workflow-continuity-summary, .customer-step-handoff-grid, .customer-request-change-grid, .customer-request-change-summary-grid) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.top-status, .chip, .claim-badge, .boundary-strip span) {
    justify-content: center;
    width: 100%;
  }
}

/* Public customer action-gate refinement: align generated allowed, locked,
   and summary states with the shared customer review card system. */
body[data-page] :where(.customer-action-gate) {
  display: grid;
  gap: var(--customer-rhythm-gap, 12px);
  min-width: 0;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--customer-rhythm-line, rgba(132, 161, 166, .32));
}

body[data-page] :where(.customer-action-gate-head) {
  display: flex;
  justify-content: space-between;
  gap: var(--customer-rhythm-gap, 12px);
  align-items: flex-start;
  min-width: 0;
}

body[data-page] :where(.customer-action-gate-head > *) {
  min-width: 0;
}

body[data-page] :where(.customer-action-gate-grid, .customer-action-gate-locked, .customer-action-gate-summary) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr));
  gap: var(--customer-rhythm-gap, 12px);
  min-width: 0;
}

body[data-page] :where(.customer-action-gate-grid article, .customer-action-gate-locked article, .customer-action-gate-summary article) {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--customer-rhythm-line, rgba(132, 161, 166, .32));
  border-left: 4px solid var(--customer-rhythm-safe, #0f766e);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-action-gate-locked article, .customer-action-gate-summary article) {
  border-left-color: var(--customer-rhythm-blocked, #b42318);
  background: #fff3f0;
}

body[data-page] :where(.customer-action-gate-grid article[data-status*="current"], .customer-action-gate-grid article[data-status*="queued"]) {
  border-left-color: var(--customer-rhythm-review, #a35f08);
  background: #fff8ea;
}

body[data-page] :where(.customer-action-gate b, .customer-action-gate span, .customer-action-gate small, .customer-action-gate p) {
  max-width: 100%;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-action-gate b) {
  font-size: 14px;
  line-height: 1.3;
}

body[data-page] :where(.customer-action-gate span, .customer-action-gate small, .customer-action-gate p) {
  color: var(--muted, #63767c);
  font-size: 12px;
  line-height: 1.45;
}

body[data-page] :where(.customer-action-gate .customer-step-jump) {
  align-self: end;
  min-height: var(--customer-touch-target, 44px);
  border-radius: 8px;
}

@media (max-width: 620px) {
  body[data-page] :where(.customer-action-gate-head) {
    display: grid;
    grid-template-columns: 1fr;
  }
}

@media print {
  body[data-page] :where(.customer-action-gate-grid article, .customer-action-gate-locked article, .customer-action-gate-summary article) {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Public customer action-gate compatibility refinement: legacy and current
   action gate markup share one customer review card rhythm. */
body[data-page] .customer-action-gate > .step-list,
body[data-page] .customer-action-gate > .boundary-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr));
  gap: var(--customer-rhythm-gap, 12px);
  min-width: 0;
  align-items: stretch;
}

body[data-page] .customer-action-gate > .step-list > article,
body[data-page] .customer-action-gate > .boundary-strip > span {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  min-height: 54px;
  border: 1px solid var(--customer-rhythm-line, rgba(132, 161, 166, .32));
  border-left: 4px solid var(--customer-rhythm-review, #a35f08);
  border-radius: 8px;
  background: #fff8ea;
  padding: 12px;
  color: var(--customer-final-ink, #132428);
  text-align: left;
  overflow-wrap: anywhere;
}

body[data-page] .customer-action-gate > .boundary-strip > span {
  border-left-color: var(--customer-rhythm-blocked, #b42318);
  background: #fff3f0;
  color: var(--customer-rhythm-blocked, #b42318);
  justify-content: start;
}

body[data-page] .customer-action-gate > .step-list > article > :where(b, small, span, p),
body[data-page] .customer-action-gate > .boundary-strip > span {
  max-width: 100%;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

body[data-page] .customer-action-gate > .step-list > article > b {
  color: var(--customer-final-ink, #132428);
  font-size: 14px;
  line-height: 1.3;
}

body[data-page] .customer-action-gate > .step-list > article > small {
  color: var(--muted, #63767c);
  font-size: 12px;
}

body[data-page] .customer-action-gate .customer-step-jump {
  justify-self: start;
  width: fit-content;
  max-width: 100%;
  min-height: var(--customer-touch-target, 44px);
  border-radius: 8px;
}

body[data-page] .customer-step-locked {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: start;
  width: fit-content;
  max-width: 100%;
  min-height: var(--customer-touch-target, 44px);
  border: 1px solid rgba(180, 35, 24, .32);
  border-radius: 8px;
  background: #fff3f0;
  color: var(--customer-rhythm-blocked, #b42318);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
  padding: 8px 11px;
  overflow-wrap: anywhere;
}

@media (max-width: 620px) {
  body[data-page] .customer-action-gate > .step-list,
  body[data-page] .customer-action-gate > .boundary-strip {
    grid-template-columns: 1fr;
  }

  body[data-page] .customer-action-gate .customer-step-jump {
    width: 100%;
  }

  body[data-page] .customer-step-locked {
    width: 100%;
  }
}

@media print {
  body[data-page] .customer-action-gate > .step-list > article,
  body[data-page] .customer-action-gate > .boundary-strip > span {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Public customer evidence-state visual refinement. */
body[data-page] {
  --customer-state-safe: #0f766e;
  --customer-state-review: #a35f08;
  --customer-state-blocked: #b42318;
  --customer-state-line: rgba(132, 161, 166, .34);
  --customer-state-soft: #f7fbfb;
  --customer-state-safe-bg: #ecfbf7;
  --customer-state-review-bg: #fff8ea;
  --customer-state-blocked-bg: #fff3f0;
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .report-preview,
  .review-panel-box,
  .delivery-receipt-panel,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list > article,
  .matrix-list > article,
  .matrix-list > div
) {
  border-color: var(--customer-state-line);
  border-left: 4px solid var(--customer-state-review);
  border-radius: 8px;
  background: linear-gradient(180deg, #fff, var(--customer-state-soft));
}

body[data-page] :where(
  .claim-card.evidence_supported_candidate,
  .claim-badge.screened,
  .claim-badge.evidence-gated,
  .claim-badge.units-checked,
  .chip.ok,
  .report-firebreak-checks article.pass,
  .report-release-control-checks article.pass
) {
  border-color: rgba(15, 118, 110, .24);
  border-left-color: var(--customer-state-safe);
  background: var(--customer-state-safe-bg);
  color: var(--customer-state-safe);
}

body[data-page] :where(
  .claim-card.boundary_candidate_needs_row_lock,
  .claim-card.fallback_candidate,
  .claim-badge.boundary,
  .claim-badge.row-evidence-needed,
  .claim-badge.screening-required,
  .claim-badge.validation-required,
  .chip.warn,
  [data-status*="review"],
  [data-status*="draft"],
  [data-status*="wait"]
) {
  border-color: rgba(163, 95, 8, .24);
  border-left-color: var(--customer-state-review);
  background: var(--customer-state-review-bg);
  color: var(--customer-state-review);
}

body[data-page] :where(
  .claim-badge.no-guarantee,
  .claim-badge.no-customer-commitment,
  .chip.bad,
  [data-status*="blocked"],
  [data-status*="locked"],
  [aria-disabled="true"]
) {
  border-color: rgba(180, 35, 24, .24);
  border-left-color: var(--customer-state-blocked);
  background: var(--customer-state-blocked-bg);
  color: var(--customer-state-blocked);
}

body[data-page] :where(.claim-badge, .chip, .boundary-strip span, .evidence-gate-strip span) {
  min-height: 30px;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  line-height: 1.25;
}

body[data-page] :where(.boundary-strip, .claim-badge-row, .evidence-gate-strip) {
  align-items: stretch;
}

body[data-page] :where(.boundary-strip span, .evidence-gate-strip span) {
  justify-content: center;
  text-align: center;
}

body[data-page] :where(.panel-head .chip, .panel-head .claim-badge) {
  flex: 0 1 auto;
  max-width: min(100%, 320px);
}

@media (max-width: 620px) {
  body[data-page] :where(.panel-head .chip, .panel-head .claim-badge) {
    max-width: 100%;
  }

  body[data-page] :where(.boundary-strip span, .evidence-gate-strip span) {
    justify-content: flex-start;
    text-align: left;
  }
}

@media print {
  body[data-page] :where(.claim-badge, .chip, .boundary-strip span, .evidence-gate-strip span) {
    background: #fff;
    color: #111;
  }
}

/* Customer-safe design-system refinement: normalize visual style values and
   responsive fit without changing customer data or release gates. */
body[data-page] {
  --customer-safe-line: var(--customer-state-safe, #0f766e);
  --customer-review-line: var(--customer-state-review, #a35f08);
  --customer-blocked-line: var(--customer-state-blocked, #b42318);
  --green: var(--customer-safe-line);
  --orange: var(--customer-review-line);
  --red: var(--customer-blocked-line);
  --customer-readable-radius: 8px;
  --customer-readable-gap: 10px;
}

body[data-page] :where(
  .panel,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .platform-map article,
  .customer-governance-strip article
) {
  border-radius: var(--customer-readable-radius);
}

body[data-page] :where(
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .report-action-surface-grid article,
  .report-firebreak-checks article,
  .report-release-control-checks article,
  .router-priority-strip span
) {
  border-left-color: var(--customer-review-line);
}

body[data-page] :where(
  .customer-evidence-card-gate > div:nth-child(2),
  .report-action-surface-grid article.review,
  .report-firebreak-checks article.pass,
  .report-release-control-checks article.pass
) {
  border-left-color: var(--customer-safe-line);
}

body[data-page] :where(
  .customer-evidence-card-gate > div:first-child,
  .report-action-surface-grid article.blocked,
  .report-firebreak-checks article.blocked,
  .report-release-control-checks article.blocked,
  .report-firebreak-details,
  .report-effective-gate,
  .report-action-denial
) {
  border-left-color: var(--customer-blocked-line);
}

body[data-page] :where(
  .platform-map,
  .customer-governance-strip,
  .metrics-grid,
  .delivery-checklist,
  .candidate-grid,
  .generated-candidate-grid,
  .workflow-demo-steps,
  .evidence-card-grid,
  .step-list,
  .matrix-list
) {
  gap: var(--customer-readable-gap);
}

body[data-page] :where(
  .platform-map b,
  .customer-governance-strip b,
  .metric b,
  .candidate h3,
  .generated-candidate-card b,
  .delivery-check h4,
  .review-panel-box h3,
  .delivery-receipt-panel h3
) {
  line-height: 1.25;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .platform-map small,
  .customer-governance-strip small,
  .metric span,
  .candidate dd,
  .generated-candidate-card p,
  .delivery-check p,
  .review-panel-box,
  .delivery-receipt-panel
) {
  line-height: 1.45;
}

body[data-page] :where(.matrix-table, .report-table) {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

body[data-page] :where(.matrix-table table, .report-table table) {
  min-width: min(680px, calc(100vw - 32px));
}

body[data-page] :where(.panel-head > button, .panel-head > .secondary-link) {
  white-space: normal;
}

@media (max-width: 760px) {
  body[data-page] :where(
    .customer-governance-strip,
    .customer-evidence-card-gate,
    .generated-candidate-metrics,
    .perf,
    .customer-data-hydration-grid
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link) {
    width: 100%;
    max-width: 100%;
  }
}

@media print {
  body[data-page] :where(
    .panel,
    .metric,
    .candidate,
    .claim-card,
    .generated-candidate-card,
    .delivery-check,
    .review-panel-box,
    .delivery-receipt-panel,
    .report-preview,
    .platform-map article,
    .customer-governance-strip article
  ) {
    box-shadow: none;
    break-inside: avoid;
  }
}


/* Public customer mobile navigation refinement: keep wayfinding compact while
   preserving full-width touch targets for customer actions. */
body[data-page] :where(.topnav, .rail) {
  scrollbar-width: thin;
}

body[data-page] :where(.topnav a, .rail a) {
  flex: 0 0 auto;
  min-width: max-content;
  max-width: 12rem;
  min-height: var(--customer-touch-target, 44px);
  white-space: normal;
}

body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
  box-shadow: inset 0 0 0 1px rgba(15, 118, 110, .24);
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav, .rail) {
    display: flex;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  body[data-page] :where(.topnav a, .rail a) {
    width: auto;
    justify-content: center;
    text-align: center;
  }

  body[data-page] :where(.button-row, .customer-next-action-queue) > :where(button, .primary-action, .secondary-link, a) {
    width: 100%;
  }
}

/* Public customer state-system pass: normalize the scan rhythm for cards,
   gates, actions, and report tables without changing review boundaries. */
body[data-page] {
  --customer-state-pass: #0f766e;
  --customer-state-review: #9a5b06;
  --customer-state-block: #b42318;
  --customer-state-info: #0e7490;
  --customer-state-bg: #ffffff;
  --customer-state-soft: #f8fbfb;
  --customer-state-line: rgba(130, 164, 166, .34);
}

body[data-page] :where(
  .candidate-grid,
  .generated-candidate-grid,
  .evidence-card-grid,
  .workflow-demo-steps,
  .step-list,
  .matrix-list,
  .delivery-checklist,
  .customer-release-handoff-grid,
  .customer-review-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-summary,
  .customer-step-handoff-grid,
  .customer-target-summary
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 10px;
  align-items: stretch;
}

body[data-page] :where(
  .candidate-grid > *,
  .generated-candidate-grid > *,
  .evidence-card-grid > *,
  .workflow-demo-steps > *,
  .step-list > *,
  .matrix-list > *,
  .delivery-checklist > *,
  .customer-release-handoff-grid > *,
  .customer-review-handoff-grid > *,
  .customer-action-gate-grid > *,
  .customer-action-gate-summary > *,
  .customer-step-handoff-grid > *,
  .customer-target-summary > *
) {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  min-height: 88px;
  border: 1px solid var(--customer-state-line);
  border-left: 4px solid var(--customer-state-review);
  border-radius: 8px;
  background: var(--customer-state-bg);
  padding: 12px;
  overflow-wrap: anywhere;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page] :where(
  .candidate-grid > * b,
  .generated-candidate-grid > * b,
  .evidence-card-grid > * b,
  .workflow-demo-steps > * b,
  .step-list > * b,
  .matrix-list > * b,
  .delivery-checklist > * b,
  .customer-release-handoff-grid > * b,
  .customer-review-handoff-grid > * b,
  .customer-action-gate-grid > * b,
  .customer-action-gate-summary > * b,
  .customer-step-handoff-grid > * b,
  .customer-target-summary > * b
) {
  display: block;
  color: #102024;
  font-size: 14px;
  line-height: 1.3;
}

body[data-page] :where(
  .candidate-grid > * span,
  .candidate-grid > * small,
  .candidate-grid > * p,
  .generated-candidate-grid > * span,
  .generated-candidate-grid > * small,
  .generated-candidate-grid > * p,
  .evidence-card-grid > * span,
  .evidence-card-grid > * small,
  .evidence-card-grid > * p,
  .workflow-demo-steps > * span,
  .workflow-demo-steps > * small,
  .workflow-demo-steps > * p,
  .step-list > * span,
  .step-list > * small,
  .step-list > * p,
  .matrix-list > * span,
  .matrix-list > * small,
  .matrix-list > * p,
  .delivery-checklist > * span,
  .delivery-checklist > * small,
  .delivery-checklist > * p,
  .customer-release-handoff-grid > * span,
  .customer-release-handoff-grid > * small,
  .customer-review-handoff-grid > * span,
  .customer-review-handoff-grid > * small,
  .customer-action-gate-grid > * span,
  .customer-action-gate-grid > * small,
  .customer-action-gate-summary > * span,
  .customer-action-gate-summary > * small,
  .customer-step-handoff-grid > * span,
  .customer-step-handoff-grid > * small,
  .customer-target-summary > * span,
  .customer-target-summary > * small
) {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

body[data-page] :where(
  .candidate-grid > [data-status*="pass" i],
  .candidate-grid > .pass,
  .generated-candidate-grid > [data-status*="pass" i],
  .generated-candidate-grid > .pass,
  .evidence-card-grid > [data-status*="pass" i],
  .evidence-card-grid > .pass,
  .workflow-demo-steps > [data-status*="pass" i],
  .workflow-demo-steps > .pass,
  .step-list > [data-status*="pass" i],
  .step-list > .pass,
  .matrix-list > [data-status*="pass" i],
  .matrix-list > .pass,
  .delivery-checklist > [data-status*="pass" i],
  .delivery-checklist > .pass
) {
  border-left-color: var(--customer-state-pass);
}

body[data-page] :where(
  .candidate-grid > [data-status*="block" i],
  .candidate-grid > .blocked,
  .generated-candidate-grid > [data-status*="block" i],
  .generated-candidate-grid > .blocked,
  .evidence-card-grid > [data-status*="block" i],
  .evidence-card-grid > .blocked,
  .workflow-demo-steps > [data-status*="block" i],
  .workflow-demo-steps > .blocked,
  .step-list > [data-status*="block" i],
  .step-list > .blocked,
  .matrix-list > [data-status*="block" i],
  .matrix-list > .blocked,
  .delivery-checklist > [data-status*="block" i],
  .delivery-checklist > .blocked
) {
  border-left-color: var(--customer-state-block);
  background: #fffafa;
}

body[data-page] :where(.report-preview, .matrix-table, .report-table) {
  border: 1px solid var(--customer-state-line);
  border-radius: 8px;
  background: var(--customer-state-bg);
}

body[data-page] :where(.matrix-table, .report-table) {
  overflow-x: auto;
  scrollbar-gutter: stable;
}

body[data-page] :where(.matrix-table table, .report-table table) {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  table-layout: fixed;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  padding: 10px;
  vertical-align: top;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-step-jump, .customer-step-locked, .primary-action, .secondary-link, button) {
  min-height: 44px;
  max-width: 100%;
}

@media (max-width: 720px) {
  body[data-page] :where(
    .candidate-grid,
    .generated-candidate-grid,
    .evidence-card-grid,
    .workflow-demo-steps,
    .step-list,
    .matrix-list,
    .delivery-checklist,
    .customer-release-handoff-grid,
    .customer-review-handoff-grid,
    .customer-action-gate-grid,
    .customer-action-gate-summary,
    .customer-step-handoff-grid,
    .customer-target-summary
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.matrix-table table, .report-table table) {
    min-width: 560px;
  }
}

/* Customer-safe control and reading fit. */
body[data-page] {
  --customer-control-min-height: 44px;
  --customer-nav-min: 40px;
}

body[data-page] :where(
  .topnav a,
  .rail a,
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump
) {
  min-height: var(--customer-control-min-height);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

body[data-page] :where(.topnav a, .rail a, .customer-step-jump) {
  border-radius: var(--customer-readable-radius, 8px);
}

body[data-page] :where(.topnav, .rail) {
  scrollbar-width: thin;
}

body[data-page] :where(button:disabled, [aria-disabled="true"]) {
  border-color: rgba(180, 35, 24, .24);
  background: var(--customer-state-blocked-bg, #fff1f0);
  color: var(--customer-state-blocked, #b42318);
  box-shadow: none;
  opacity: .78;
}

body[data-page] :where(.panel-head, .panel-head > div, .panel-head > div > *) {
  min-width: 0;
  max-width: 100%;
}

body[data-page] :where(.panel-head h2, .panel-head h3, .hero-copy h1) {
  text-wrap: balance;
}

body[data-page] :where(.top-status) {
  max-width: min(32vw, 340px);
}

body[data-page] :where(
  .top-status,
  .chip,
  .claim-badge,
  .boundary-strip span,
  .platform-preview figcaption span,
  .customer-workflow-progress-steps b,
  .customer-workflow-progress-steps span,
  .customer-workflow-progress-steps small
) {
  overflow-wrap: anywhere;
  hyphens: auto;
}

body[data-page] :where(.customer-step-jump) {
  margin-top: 10px;
  padding: 9px 11px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  box-shadow: none;
}

body[data-page] :where(.customer-step-jump:hover, .customer-step-jump:focus-visible) {
  border-color: var(--customer-safe-line, #0f766e);
  background: var(--customer-state-safe-bg, #e8f6f1);
}

@media (max-width: 900px) {
  body[data-page] :where(.top-status) {
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav a, .rail a, .customer-step-jump) {
    min-height: var(--customer-nav-min);
    padding: 8px 10px;
  }
}

/* Customer design-system fit: final cascade layer for public review surfaces. */
body[data-page] {
  --customer-fit-gap: 10px;
  --customer-fit-gap-lg: 14px;
  --customer-fit-border: rgba(130, 164, 166, .34);
  --customer-fit-surface: rgba(255, 255, 255, .96);
  --customer-fit-soft: #f7fbfa;
}

body[data-page] :where(.panel, .status-strip, .review-panel-box, .delivery-receipt-panel, .report-preview) {
  border-color: var(--customer-fit-border);
}

body[data-page] :where(.panel, .metric, .platform-map article, .candidate, .claim-card, .generated-candidate-card, .delivery-check) {
  background: var(--customer-fit-surface);
}

body[data-page] :where(.panel-head) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--customer-fit-gap);
  align-items: start;
}

body[data-page] :where(.panel-head > div, .panel-head h2, .panel-head h3, .panel-head p) {
  min-width: 0;
}

body[data-page] :where(.panel-head .chip, .panel-head button, .panel-head .secondary-link) {
  justify-self: end;
}

body[data-page] :where(.form-grid, .feedback-grid) {
  gap: var(--customer-fit-gap);
}

body[data-page] :where(label) {
  min-width: 0;
}

body[data-page] :where(input, select, textarea) {
  border-radius: var(--customer-readable-radius, 8px);
  background: #fff;
}

body[data-page] :where(textarea) {
  line-height: 1.45;
}

body[data-page] :where(.timeline, .step-list, .matrix-list, .workflow-demo-steps, .evidence-card-grid, .delivery-checklist) {
  gap: var(--customer-fit-gap);
}

body[data-page] :where(.timeline li, .step-list > div, .matrix-list > div, .workflow-demo-steps article, .evidence-card-grid article) {
  min-width: 0;
  border-radius: var(--customer-readable-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-workflow-progress-steps a, .customer-next-action-grid article, .customer-action-grid article) {
  min-width: 0;
  border-radius: var(--customer-readable-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-workflow-progress-boundary span, .boundary-strip span, .evidence-gate-strip span, .claim-badge, .chip) {
  min-height: 28px;
  align-items: center;
}

body[data-page] :where(.metric, .delivery-check, .customer-workflow-progress-steps a) {
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] :where(.metric span, .delivery-check p, .timeline li, .step-list span, .matrix-list span) {
  color: var(--muted);
}

body[data-page] :where(.platform-preview, .structured-brief-preview, .request-preset-card) {
  border-radius: var(--customer-readable-radius, 8px);
}

body[data-page] :where(.platform-preview img) {
  aspect-ratio: 16 / 9;
  height: auto;
}

body[data-page="workstation"] :where(.status-strip.value-hero) {
  min-height: 0;
}

body[data-page="workstation"] :where(.status-strip.value-hero .hero-stage) {
  align-content: start;
}

body[data-page="workstation"] :where(.structured-brief-preview) {
  max-height: none;
}

@media (max-width: 900px) {
  body[data-page] :where(.panel-head) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head .chip, .panel-head button, .panel-head .secondary-link) {
    justify-self: start;
  }

  body[data-page] :where(.panel-head button, .panel-head .secondary-link) {
    width: 100%;
  }

  body[data-page] :where(.status-strip, .panel) {
    padding: 14px;
  }

  body[data-page] :where(.platform-preview img) {
    max-height: 220px;
  }
}

@media (max-width: 620px) {
  body[data-page] {
    --customer-fit-gap: 8px;
    --customer-fit-gap-lg: 10px;
  }

  body[data-page] :where(.metrics-grid, .brief-targets, .customer-workflow-progress-steps, .customer-evidence-card-gate) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.metric, .timeline li, .review-panel-box, .delivery-receipt-panel, .report-preview) {
    padding: 10px;
  }

  body[data-page] :where(.platform-preview figcaption) {
    grid-template-columns: 1fr 1fr;
  }
}

@media (forced-colors: active), print {
  body[data-page] :where(.panel, .metric, .platform-map article, .candidate, .claim-card, .generated-candidate-card, .delivery-check, .review-panel-box, .delivery-receipt-panel, .report-preview) {
    background: Canvas;
    color: CanvasText;
    border-color: CanvasText;
    box-shadow: none;
  }
}

/* Final public customer state system polish. */
body[data-page] {
  --customer-design-pass-line: var(--customer-success-line, var(--customer-state-safe-line, #0f766e));
  --customer-design-pass-bg: var(--customer-state-safe-bg, var(--ok-bg, #e8f6f1));
  --customer-design-review-line: var(--customer-review-line, #b7791f);
  --customer-design-review-bg: var(--warn-bg, #fff7e6);
  --customer-design-blocked-line: var(--customer-blocked-line, var(--customer-state-blocked-line, #b42318));
  --customer-design-blocked-bg: var(--customer-state-blocked-bg, var(--bad-bg, #fff1f0));
  --customer-design-card-border: var(--customer-fit-border, rgba(130, 164, 166, .34));
}

body[data-page] :where(
  .report-firebreak-checks,
  .report-release-control-checks,
  .report-action-surface-grid,
  .customer-evidence-action-manifest-lanes,
  .customer-evidence-action-summary,
  .customer-research-review-grid,
  .customer-research-acknowledgement-grid,
  .customer-research-submit-firebreak-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-next-action-grid,
  .customer-step-handoff-grid,
  .customer-workflow-continuity-summary
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 10px;
}

body[data-page] :where(
  .report-firebreak-checks article,
  .report-release-control-checks article,
  .report-action-surface-grid article,
  .customer-evidence-action-manifest-lanes article,
  .customer-evidence-action-summary article,
  .customer-research-review-grid article,
  .customer-research-acknowledgement-grid article,
  .customer-research-submit-firebreak-grid article,
  .customer-action-gate-grid article,
  .customer-action-gate-locked article,
  .customer-next-action-grid article,
  .customer-step-handoff-grid article,
  .customer-workflow-continuity-summary article
) {
  min-width: 0;
  border: 1px solid var(--customer-design-card-border);
  border-left: 4px solid var(--customer-design-review-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-fit-surface, #fff);
  padding: 10px 12px;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .report-firebreak-checks article.pass,
  .report-release-control-checks article.pass,
  .report-action-surface-grid article.pass,
  .customer-evidence-action-manifest-lanes article.pass,
  .customer-evidence-action-summary article.pass,
  .customer-research-review-grid article[data-status="pass"],
  .customer-action-gate-grid article[data-status="allowed"],
  .customer-next-action-grid article[data-current="true"]
) {
  border-left-color: var(--customer-design-pass-line);
  background: var(--customer-design-pass-bg);
}

body[data-page] :where(
  .report-firebreak-checks article.blocked,
  .report-release-control-checks article.blocked,
  .report-action-surface-grid article.blocked,
  .customer-evidence-action-manifest-lanes article.blocked,
  .customer-evidence-action-summary article.blocked,
  .customer-action-gate-locked article,
  .customer-next-action-grid article[data-status="blocked"],
  .customer-step-locked
) {
  border-left-color: var(--customer-design-blocked-line);
  background: var(--customer-design-blocked-bg);
}

body[data-page] :where(
  .customer-research-review-grid article[data-status="wait"],
  .customer-next-action-grid article[data-status="review"],
  .report-action-surface-grid article.review
) {
  border-left-color: var(--customer-design-review-line);
  background: var(--customer-design-review-bg);
}

body[data-page] :where(
  .report-firebreak-checks article b,
  .report-release-control-checks article b,
  .report-action-surface-grid article b,
  .customer-evidence-action-manifest-lanes article b,
  .customer-evidence-action-summary article b,
  .customer-research-review-grid article b,
  .customer-research-acknowledgement-grid article b,
  .customer-research-submit-firebreak-grid article b,
  .customer-action-gate-grid article b,
  .customer-action-gate-locked article b,
  .customer-next-action-grid article b,
  .customer-step-handoff-grid article b,
  .customer-workflow-continuity-summary article b
) {
  display: block;
  margin-bottom: 5px;
  color: var(--ink);
  line-height: 1.25;
}

body[data-page] :where(
  .report-firebreak-checks article span,
  .report-release-control-checks article span,
  .report-action-surface-grid article span,
  .customer-evidence-action-manifest-lanes article span,
  .customer-evidence-action-summary article span,
  .customer-research-review-grid article span,
  .customer-research-acknowledgement-grid article span,
  .customer-research-submit-firebreak-grid article span,
  .customer-action-gate-grid article span,
  .customer-action-gate-locked article span,
  .customer-next-action-grid article span,
  .customer-next-action-grid article small,
  .customer-step-handoff-grid article small,
  .customer-workflow-continuity-summary article span
) {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

body[data-page] :where(.customer-step-locked) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  max-width: 100%;
  margin-top: 8px;
  border: 1px solid rgba(180, 35, 24, .24);
  border-radius: var(--customer-card-radius, 8px);
  padding: 8px 10px;
  color: var(--customer-design-blocked-line);
  font-size: 12px;
  font-weight: 900;
  text-align: center;
  overflow-wrap: anywhere;
}

@media (max-width: 620px) {
  body[data-page] :where(
    .report-firebreak-checks,
    .report-release-control-checks,
    .report-action-surface-grid,
    .customer-evidence-action-manifest-lanes,
    .customer-evidence-action-summary,
    .customer-research-review-grid,
    .customer-research-acknowledgement-grid,
    .customer-research-submit-firebreak-grid,
    .customer-action-gate-grid,
    .customer-action-gate-locked,
    .customer-next-action-grid,
    .customer-step-handoff-grid,
    .customer-workflow-continuity-summary
  ) {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

/* Public customer design-system closure: keep final customer-facing controls,
   receipts, and evidence states readable in compact, keyboard, and print modes. */
body[data-page] {
  --customer-closure-info-line: #0e7490;
  --customer-closure-info-bg: #eef8fb;
  --customer-closure-safe-line: var(--customer-design-pass-line, #0f766e);
  --customer-closure-safe-bg: var(--customer-design-pass-bg, #e8f6f1);
  --customer-closure-review-line: var(--customer-design-review-line, #a35f08);
  --customer-closure-review-bg: var(--customer-design-review-bg, #fff7e6);
  --customer-closure-blocked-line: var(--customer-design-blocked-line, #b42318);
  --customer-closure-blocked-bg: var(--customer-design-blocked-bg, #fff1f0);
  --customer-closure-ring: 0 0 0 3px rgba(14, 116, 144, .22);
}

body[data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .platform-preview figcaption span
) {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  word-break: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(.chip.info, .claim-badge.info) {
  border-color: rgba(14, 116, 144, .28);
  background: var(--customer-closure-info-bg);
  color: var(--customer-closure-info-line);
}

body[data-page] :where(.chip.ok, .claim-badge.screened, .claim-badge.evidence-gated, .claim-badge.units-checked) {
  border-color: rgba(15, 118, 110, .28);
  background: var(--customer-closure-safe-bg);
  color: var(--customer-closure-safe-line);
}

body[data-page] :where(.chip.warn, .claim-badge.boundary, .claim-badge.validation-required, .claim-badge.row-evidence-needed) {
  border-color: rgba(163, 95, 8, .28);
  background: var(--customer-closure-review-bg);
  color: var(--customer-closure-review-line);
}

body[data-page] :where(.chip.bad, .claim-badge.no-guarantee, .claim-badge.no-customer-commitment, .customer-step-locked) {
  border-color: rgba(180, 35, 24, .28);
  background: var(--customer-closure-blocked-bg);
  color: var(--customer-closure-blocked-line);
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump,
  .request-preset-card,
  input,
  select,
  textarea
) {
  -webkit-tap-highlight-color: transparent;
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump
):not(:disabled):not([aria-disabled="true"]) {
  touch-action: manipulation;
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump,
  .request-preset-card,
  input,
  select,
  textarea,
  .topnav a,
  .rail a
):focus-visible {
  outline: 0;
  box-shadow: var(--customer-closure-ring);
}

body[data-page] :where(button:disabled, [aria-disabled="true"], .customer-step-locked) {
  cursor: not-allowed;
}

body[data-page] :where(.customer-step-locked) {
  border-style: solid;
}

body[data-page] :where(.panel-head > .chip, .panel-head > button, .panel-head > .secondary-link) {
  flex-shrink: 1;
}

@media (max-width: 760px) {
  body[data-page] :where(.topnav, .rail) {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body[data-page] :where(.topnav a, .rail a) {
    white-space: nowrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-page] *,
  body[data-page] *::before,
  body[data-page] *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media (forced-colors: active), print {
  body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span, .customer-step-locked) {
    border-color: CanvasText;
    background: Canvas;
    color: CanvasText;
  }
}

/* Public customer state closure: make review-only, evidence-ready, and blocked
   material states consistent without changing service copy or release gates. */
body[data-page] {
  --customer-review-safe-line: #0f766e;
  --customer-review-safe-bg: #eefaf6;
  --customer-review-wait-line: #a35f08;
  --customer-review-wait-bg: #fff7e8;
  --customer-review-stop-line: #b42318;
  --customer-review-stop-bg: #fff1ef;
  --customer-review-neutral-line: #0e7490;
  --customer-review-neutral-bg: #eff8fb;
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .evidence-card-grid article,
  .matrix-list article,
  .matrix-list div,
  .workflow-demo-steps article,
  .workflow-demo-steps div,
  .step-list article,
  .step-list div,
  .pillars > div,
  .value-proof-grid > div,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview
) {
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .delivery-check.pass,
  .delivery-check.ready,
  .delivery-check.done,
  .delivery-check.ok,
  .claim-card.evidence_supported_candidate,
  .report-firebreak-checks article.pass,
  .report-release-control-checks article.pass,
  .report-action-surface-grid article.pass,
  [data-status*="pass" i],
  [data-status*="ready" i],
  [data-state*="pass" i],
  [data-state*="ready" i]
) {
  border-left-color: var(--customer-review-safe-line);
  background: var(--customer-review-safe-bg);
}

body[data-page] :where(
  .delivery-check.pending,
  .delivery-check.review,
  .delivery-check.warn,
  .delivery-check.hold,
  .claim-card.boundary_candidate_needs_row_lock,
  .claim-card.fallback_candidate,
  .source-lock-boundary,
  .sample-preview-gate,
  .customer-download-wait-checklist,
  [data-status*="wait" i],
  [data-status*="review" i],
  [data-status*="hold" i],
  [data-state*="wait" i],
  [data-state*="review" i],
  [data-state*="hold" i]
) {
  border-left-color: var(--customer-review-wait-line);
  background: var(--customer-review-wait-bg);
}

body[data-page] :where(
  .delivery-check.blocked,
  .delivery-check.fail,
  .delivery-check.failed,
  .delivery-check.stop,
  .constraint-hold,
  .report-hard-stop-receipt,
  .report-firebreak-checks article.blocked,
  .report-release-control-checks article.blocked,
  .report-action-surface-grid article.blocked,
  [data-status*="blocked" i],
  [data-status*="fail" i],
  [data-state*="blocked" i],
  [data-state*="fail" i]
) {
  border-left-color: var(--customer-review-stop-line);
  background: var(--customer-review-stop-bg);
}

body[data-page] :where(.boundary-strip, .evidence-gate-strip, .claim-badge-row) {
  align-items: stretch;
}

body[data-page] :where(.boundary-strip span, .evidence-gate-strip span, .claim-badge, .chip) {
  min-height: 30px;
  align-items: center;
  line-height: 1.25;
}

body[data-page] :where(.panel-head) {
  min-width: 0;
}

body[data-page] :where(.panel-head > div) {
  min-width: 0;
}

body[data-page] :where(.panel-head h2, .panel-head .lede) {
  max-width: 100%;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .delivery-check b,
  .claim-card b,
  .generated-candidate-card b,
  .evidence-card-grid b,
  .matrix-list b,
  .workflow-demo-steps b,
  .step-list b
) {
  text-wrap: balance;
}

@media (max-width: 620px) {
  body[data-page] :where(.panel-head) {
    display: grid;
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .panel-head > .chip) {
    width: 100%;
    justify-self: stretch;
  }
}

@media (forced-colors: active), print {
  body[data-page] :where(
    .delivery-check,
    .claim-card,
    .generated-candidate-card,
    .source-lock-boundary,
    .sample-preview-gate,
    .report-hard-stop-receipt
  ) {
    border-color: CanvasText;
    background: Canvas;
    color: CanvasText;
  }
}

/* Public customer control refinement: keep live review actions, locked actions,
   and handoff receipts visually consistent across generated customer panels. */
body[data-page][data-page] {
  --customer-control-ready-line: var(--customer-review-safe-line, #0f766e);
  --customer-control-ready-bg: var(--customer-review-safe-bg, #eefaf6);
  --customer-control-wait-line: var(--customer-review-wait-line, #a35f08);
  --customer-control-wait-bg: var(--customer-review-wait-bg, #fff7e8);
  --customer-control-locked-line: var(--customer-review-stop-line, #b42318);
  --customer-control-locked-bg: var(--customer-review-stop-bg, #fff1ef);
}

body[data-page][data-page] :where(
  .customer-action-gate,
  .customer-step-handoff-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard
) {
  display: grid;
  gap: 12px;
  border-left-width: 5px;
}

body[data-page][data-page] :where(
  .customer-action-gate > .step-list,
  .customer-action-gate > .boundary-strip,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-step-handoff-grid,
  .customer-next-action-grid,
  .customer-workflow-continuity-grid,
  .customer-workflow-continuity-summary,
  .customer-request-change-grid,
  .customer-request-change-summary-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(176px, 100%), 1fr));
  gap: 8px;
  align-items: stretch;
}

body[data-page][data-page] :where(
  .customer-action-gate > .step-list > article,
  .customer-action-gate > .boundary-strip > span,
  .customer-action-gate-grid article,
  .customer-action-gate-locked article,
  .customer-action-gate-summary article,
  .customer-step-handoff-grid article,
  .customer-next-action-grid article,
  .customer-workflow-continuity-grid article,
  .customer-workflow-continuity-summary article,
  .customer-request-change-grid article,
  .customer-request-change-summary-grid article
) {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  min-height: 92px;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-control-wait-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-control-wait-bg);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page][data-page] :where(
  .customer-action-gate > .step-list > article,
  .customer-action-gate-grid article[data-status*="allowed" i],
  .customer-next-action-grid article[data-current="true"],
  .customer-next-action-grid article[data-status*="ready" i],
  .customer-workflow-continuity-grid article[data-status*="ready" i],
  .customer-request-change-summary-grid article[data-status="aligned"]
) {
  border-left-color: var(--customer-control-ready-line);
  background: var(--customer-control-ready-bg);
}

body[data-page][data-page] :where(
  .customer-action-gate > .boundary-strip > span,
  .customer-action-gate-locked article,
  .customer-next-action-grid article[data-status*="locked" i],
  .customer-next-action-grid article[data-status*="blocked" i],
  .customer-workflow-continuity-grid article[data-status*="locked" i],
  .customer-workflow-continuity-grid article[data-status*="blocked" i],
  .customer-request-change-summary-grid article[data-status*="changed" i],
  .customer-step-locked
) {
  border-left-color: var(--customer-control-locked-line);
  background: var(--customer-control-locked-bg);
}

body[data-page][data-page] :where(
  .customer-action-gate b,
  .customer-step-handoff-grid b,
  .customer-next-action-grid b,
  .customer-workflow-continuity-grid b,
  .customer-workflow-continuity-summary b,
  .customer-request-change-grid b,
  .customer-request-change-summary-grid b
) {
  color: var(--ink, #162024);
  font-size: 14px;
  line-height: 1.3;
  text-wrap: balance;
}

body[data-page][data-page] :where(
  .customer-action-gate span,
  .customer-action-gate small,
  .customer-action-gate p,
  .customer-step-handoff-grid small,
  .customer-next-action-grid span,
  .customer-next-action-grid small,
  .customer-workflow-continuity-grid span,
  .customer-workflow-continuity-grid small,
  .customer-workflow-continuity-summary span,
  .customer-request-change-grid span,
  .customer-request-change-grid small,
  .customer-request-change-summary-grid span
) {
  margin: 0;
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

body[data-page][data-page] :where(.customer-step-jump, .customer-step-locked) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--customer-touch-target, 44px);
  border: 1px solid currentColor;
  border-radius: var(--customer-card-radius, 8px);
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
}

@media (max-width: 620px) {
  body[data-page][data-page] :where(
    .customer-action-gate > .step-list,
    .customer-action-gate > .boundary-strip,
    .customer-action-gate-grid,
    .customer-action-gate-locked,
    .customer-action-gate-summary,
    .customer-step-handoff-grid,
    .customer-next-action-grid,
    .customer-workflow-continuity-grid,
    .customer-workflow-continuity-summary,
    .customer-request-change-grid,
    .customer-request-change-summary-grid
  ) {
    grid-template-columns: 1fr;
  }
}

/* Public customer shell refinement: one compact radius, stable page chrome, and
   predictable scan density across workbench, evidence, and report pages. */
body[data-page] {
  --customer-shell-radius: var(--customer-card-radius, 8px);
  --customer-shell-gap: 12px;
  --customer-shell-pad: 14px;
  --customer-shell-line: rgba(130, 164, 166, .36);
}

body[data-page] :where(
  .status-strip,
  .value-hero,
  .platform-preview,
  .platform-map article,
  .panel,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .customer-governance-strip article,
  .customer-workflow-progress,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .customer-action-gate,
  .customer-step-handoff-receipt,
  .customer-workflow-continuity,
  .customer-request-change-guard
) {
  border-radius: var(--customer-shell-radius);
}

body[data-page] :where(
  .workspace,
  .workbench,
  .grid-two,
  .delivery-layout,
  .platform-map,
  .customer-governance-strip,
  .customer-release-handoff-grid,
  .customer-review-handoff-grid,
  .delivery-checklist,
  .workflow-demo-steps,
  .evidence-card-grid,
  .matrix-list,
  .step-list,
  .pillars
) {
  gap: var(--customer-shell-gap);
}

body[data-page] .workspace {
  display: grid;
  gap: var(--customer-shell-gap);
}

body[data-page] :where(.panel, .status-strip.value-hero) {
  border-color: var(--customer-shell-line);
}

body[data-page] :where(.panel, .platform-map article, .metric) {
  box-shadow: 0 8px 24px rgba(15, 23, 42, .07);
}

body[data-page] :where(.panel-head) {
  gap: var(--customer-shell-gap);
  margin-bottom: var(--customer-shell-gap);
}

body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .primary-action) {
  min-height: var(--customer-touch-target, 44px);
  border-radius: var(--customer-shell-radius);
}

body[data-page] :where(input, select, textarea) {
  border-radius: var(--customer-shell-radius);
}

body[data-page] :where(.topnav a, .rail a) {
  min-height: 40px;
  border-radius: var(--customer-shell-radius);
}

body[data-page] .rail {
  gap: 8px;
}

@media (max-width: 900px) {
  body[data-page] .layout {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-page] .rail {
    position: sticky;
    top: 0;
    z-index: 16;
    flex-direction: row;
    height: auto;
    padding: 8px;
    overflow-x: auto;
    scrollbar-gutter: stable;
  }

  body[data-page] .rail a {
    flex: 0 0 auto;
    min-width: 96px;
    white-space: nowrap;
  }

  body[data-page] .workspace {
    padding: var(--customer-shell-gap);
  }

  body[data-page] :where(.status-strip.value-hero, .panel) {
    padding: var(--customer-shell-pad);
  }
}

@media (max-width: 620px) {
  body[data-page] {
    --customer-shell-gap: 10px;
    --customer-shell-pad: 12px;
  }

  body[data-page] :where(.topnav, .rail) {
    scrollbar-width: none;
  }

  body[data-page] .topnav::-webkit-scrollbar,
  body[data-page] .rail::-webkit-scrollbar {
    display: none;
  }

  body[data-page] .rail a {
    min-width: 84px;
  }
}

/* TiForge public customer shell navigation refinement. */
body[data-page] {
  --customer-nav-bg: rgba(251, 253, 253, .94);
  --customer-nav-active-bg: #e8f6f1;
  --customer-nav-active-line: #0f766e;
  --customer-nav-review-bg: #fff8ea;
  --customer-nav-blocked-bg: #fff3f0;
}

body[data-page] .topbar {
  gap: 12px;
}

body[data-page] .topnav {
  align-items: center;
  min-width: 0;
  overflow-x: auto;
  scroll-snap-type: x proximity;
}

body[data-page] :where(.topnav a, .rail a) {
  border: 1px solid transparent;
}

body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
  border-color: rgba(15, 118, 110, .28);
  background: var(--customer-nav-active-bg);
  color: #0b1d20;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .72);
}

body[data-page] .customer-workflow-progress {
  border-left: 4px solid var(--customer-nav-active-line);
  background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(244, 250, 249, .92));
}

body[data-page] .customer-workflow-progress :where(.workflow-demo-steps > article, .customer-action-gate > .step-list > article, .boundary-strip > span) {
  min-width: 0;
}

body[data-page] .customer-workflow-progress .workflow-demo-steps > article[data-status*="current"] {
  border-left-color: var(--warning, #a35f08);
  background: var(--customer-nav-review-bg);
}

body[data-page] .customer-workflow-progress .workflow-demo-steps > article[data-status*="blocked"] {
  border-left-color: var(--danger, #b42318);
  background: var(--customer-nav-blocked-bg);
}

@media (max-width: 900px) {
  body[data-page] .topbar {
    grid-template-columns: minmax(0, 1fr);
  }

  body[data-page] .topnav {
    width: 100%;
    justify-content: flex-start;
  }
}

@media (max-width: 620px) {
  body[data-page] .topnav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: visible;
  }

  body[data-page] .topnav a {
    min-width: 0;
    padding: 8px 6px;
    white-space: normal;
  }

  body[data-page] .rail {
    scroll-snap-type: x mandatory;
  }

  body[data-page] .customer-workflow-progress .workflow-demo-steps {
    grid-template-columns: 1fr;
  }
}

/* TiForge public customer evidence UI refinement. */
body[data-page] {
  --customer-evidence-ok: #0f766e;
  --customer-evidence-review: #a35f08;
  --customer-evidence-stop: #b42318;
  --customer-evidence-info: #0e7490;
  --customer-evidence-soft: #f8fbfb;
  --customer-evidence-line: rgba(130, 164, 166, .34);
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .workflow-demo-steps > article,
  .evidence-card-grid > article,
  .step-list > article,
  .step-list > div,
  .matrix-list > article,
  .matrix-list > div,
  .report-preview,
  .review-panel-box,
  .delivery-receipt-panel
) {
  border-color: var(--customer-evidence-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page] :where(.candidate, .claim-card, .generated-candidate-card) {
  border-left: 4px solid var(--customer-evidence-review);
  border-top-width: 1px;
}

body[data-page] :where(
  .candidate.good,
  .candidate.ok,
  .claim-card.evidence_supported_candidate,
  .generated-candidate-card.ready,
  .delivery-check.pass,
  .delivery-check.done,
  .delivery-check.ready,
  [data-status="pass"],
  [data-status="ready"],
  [data-status="done"]
) {
  border-left-color: var(--customer-evidence-ok);
  background: #f6fcfa;
}

body[data-page] :where(
  .candidate.mid,
  .claim-card.boundary_candidate_needs_row_lock,
  .claim-card.fallback_candidate,
  .delivery-check.pending,
  .delivery-check.review,
  .delivery-check.warn,
  [data-status="wait"],
  [data-status="pending"],
  [data-status="review"],
  [data-status="draft_requires_review"]
) {
  border-left-color: var(--customer-evidence-review);
  background: #fffaf0;
}

body[data-page] :where(
  .candidate.bad,
  .delivery-check.blocked,
  .delivery-check.fail,
  .constraint-hold,
  [data-status="blocked"],
  [data-status="fail"]
) {
  border-left-color: var(--customer-evidence-stop);
  background: #fff7f5;
}

body[data-page] :where(.candidate dl, .claim-card dl, .generated-candidate-card dl) {
  grid-template-columns: minmax(76px, .34fr) minmax(0, 1fr);
}

body[data-page] :where(.candidate dd, .claim-card dd, .generated-candidate-card dd, .delivery-check span, .delivery-check small) {
  overflow-wrap: anywhere;
}

body[data-page] :where(.timeline li, .job-result.empty-state, .placeholder) {
  border-radius: var(--customer-card-radius, 8px);
  border-color: var(--customer-evidence-line);
  background: var(--customer-evidence-soft);
}

body[data-page] :where(.timeline li)::before {
  background: var(--customer-evidence-info);
}

body[data-page] :where(.report-preview, .review-panel-box, .delivery-receipt-panel) {
  border-left: 4px solid var(--customer-evidence-review);
}

body[data-page] :where(.report-preview.pass, .review-panel-box.pass, .delivery-receipt-panel.pass) {
  border-left-color: var(--customer-evidence-ok);
}

body[data-page] :where(.report-preview.blocked, .review-panel-box.blocked, .delivery-receipt-panel.blocked) {
  border-left-color: var(--customer-evidence-stop);
}

body[data-page] :where(.matrix-table, .report-table) {
  border-color: var(--customer-evidence-line);
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(th) {
  color: #1f363b;
  background: #f3f8f8;
}

body[data-page] :where(button, .primary-action, .secondary-link, .customer-step-jump) {
  min-height: 44px;
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(input, select, textarea) {
  min-height: 44px;
  border-radius: var(--customer-card-radius, 8px);
  border-color: var(--customer-evidence-line);
}

body[data-page] :where(.topnav a, .rail a, button, .primary-action, .secondary-link, .customer-step-jump, input, select, textarea):focus-visible {
  outline: 3px solid rgba(14, 116, 144, .24);
  outline-offset: 2px;
}

@media (max-width: 620px) {
  body[data-page] :where(.candidate dl, .claim-card dl, .generated-candidate-card dl) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.candidate, .claim-card, .generated-candidate-card, .delivery-check) {
    padding: 12px;
  }

  body[data-page] :where(.timeline li) {
    padding-right: 10px;
  }
}

@media print {
  body[data-page] :where(
    .candidate,
    .claim-card,
    .generated-candidate-card,
    .delivery-check,
    .workflow-demo-steps > article,
    .evidence-card-grid > article,
    .report-preview,
    .review-panel-box,
    .delivery-receipt-panel
  ) {
    box-shadow: none;
    background: #fff;
  }
}

/* Public customer design-system state normalization. */
body[data-page] {
  --customer-public-ready-line: #0f766e;
  --customer-public-review-line: #a35f08;
  --customer-public-blocked-line: #b42318;
  --customer-public-ready-bg: #eefaf6;
  --customer-public-review-bg: #fff8ea;
  --customer-public-blocked-bg: #fff3f0;
  --green: var(--customer-public-ready-line);
  --orange: var(--customer-public-review-line);
  --red: var(--customer-public-blocked-line);
}

body[data-page] :where(.chip.ok, .claim-badge.screened, .claim-badge.evidence-gated, .claim-badge.units-checked) {
  border-color: rgba(15, 118, 110, .28);
  background: var(--customer-public-ready-bg);
  color: var(--customer-public-ready-line);
}

body[data-page] :where(.chip.warn, .claim-badge.boundary, .claim-badge.row-evidence-needed, .claim-badge.screening-required, .claim-badge.validation-required) {
  border-color: rgba(163, 95, 8, .3);
  background: var(--customer-public-review-bg);
  color: var(--customer-public-review-line);
}

body[data-page] :where(.chip.bad, .claim-badge.no-guarantee, .claim-badge.no-customer-commitment) {
  border-color: rgba(180, 35, 24, .26);
  background: var(--customer-public-blocked-bg);
  color: var(--customer-public-blocked-line);
}

body[data-page] :where(
  .delivery-check.pass,
  .customer-release-progress li.done,
  .customer-workflow-progress-steps a[data-status="complete"]
) {
  border-left-color: var(--customer-public-ready-line);
  background: var(--customer-public-ready-bg);
}

body[data-page] :where(
  .delivery-check.pending,
  .delivery-check.warn,
  .customer-release-progress li.current,
  .customer-workflow-progress-steps a[aria-current="step"]
) {
  border-left-color: var(--customer-public-review-line);
  background: var(--customer-public-review-bg);
}

body[data-page] :where(
  .delivery-check.blocked,
  .constraint-hold,
  .customer-release-progress li.blocked,
  .customer-workflow-progress-steps a[data-status="blocked"]
) {
  border-left-color: var(--customer-public-blocked-line);
  background: var(--customer-public-blocked-bg);
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .customer-workflow-progress-boundary span) {
  min-height: 28px;
  line-height: 1.25;
  white-space: normal;
}

/* TiForge public customer evidence-governed design system refinement. */
body[data-page] {
  --customer-governed-ready: #0f766e;
  --customer-governed-review: #a35f08;
  --customer-governed-locked: #b42318;
  --customer-governed-info: #0e7490;
  --customer-governed-line: rgba(130, 164, 166, .36);
  --customer-governed-ready-bg: #eefaf6;
  --customer-governed-review-bg: #fff8ea;
  --customer-governed-locked-bg: #fff3f0;
}

body[data-page] :where(
  .top-status,
  .customer-evidence-card-gate,
  .customer-action-gate,
  .customer-next-action-queue,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-release-progress,
  .customer-data-hydration-receipt
) {
  border-color: var(--customer-governed-line);
  border-left: 4px solid var(--customer-governed-review);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page] :where(.top-status, .customer-data-hydration-receipt[data-status="PASS"]) {
  border-left-color: var(--customer-governed-ready);
  background: var(--customer-governed-ready-bg);
}

body[data-page] :where(.source-lock-boundary, .sample-preview-gate, .delivery-governance-panel, .customer-release-progress li.current) {
  border-left-color: var(--customer-governed-review);
  background: var(--customer-governed-review-bg);
}

body[data-page] :where(.customer-release-progress li.blocked, .constraint-hold, .customer-download-wait-checklist, .report-hard-stop-receipt) {
  border-left-color: var(--customer-governed-locked);
  background: var(--customer-governed-locked-bg);
}

body[data-page] :where(.customer-governance-strip, .customer-evidence-card-gate, .delivery-checklist, .evidence-gate-strip, .boundary-strip) {
  gap: 8px;
}

body[data-page] :where(.boundary-strip span, .evidence-gate-strip span, .customer-workflow-progress-boundary span) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 30px;
  border: 1px solid var(--customer-governed-line);
  border-radius: 999px;
  background: #f8fbfb;
  color: #435a60;
  line-height: 1.25;
  text-align: center;
  overflow-wrap: anywhere;
}

body[data-page] :where(.boundary-strip span) {
  color: var(--customer-governed-review);
  background: var(--customer-governed-review-bg);
  border-color: rgba(163, 95, 8, .28);
}

body[data-page] :where(.boundary-strip.blocked-claims span, .report-hard-stop-receipt .boundary-strip span, .customer-download-wait-checklist span) {
  color: var(--customer-governed-locked);
  background: var(--customer-governed-locked-bg);
  border-color: rgba(180, 35, 24, .24);
}

body[data-page] :where(.matrix-table, .report-table) {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

body[data-page] :where(.matrix-table table, .report-table table) {
  width: 100%;
  min-width: 640px;
  table-layout: fixed;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  overflow-wrap: anywhere;
  vertical-align: top;
}

@media (max-width: 900px) {
  body[data-page] .top-status {
    display: inline-flex;
    justify-self: start;
    max-width: 100%;
  }

  body[data-page] :where(.customer-governance-strip, .customer-evidence-card-gate, .delivery-checklist) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.matrix-table table, .report-table table) {
    min-width: 560px;
  }
}

@media print {
  body[data-page] :where(
    .top-status,
    .customer-evidence-card-gate,
    .customer-action-gate,
    .customer-next-action-queue,
    .source-lock-boundary,
    .sample-preview-gate,
    .delivery-governance-panel,
    .customer-release-progress,
    .customer-data-hydration-receipt
  ) {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Public customer workflow control surface: keep current, queued, and locked
   review actions readable as one stable customer-facing system. */
body[data-page] {
  --customer-flow-line: rgba(130, 164, 166, .34);
  --customer-flow-ready-line: #0f766e;
  --customer-flow-review-line: #a35f08;
  --customer-flow-locked-line: #b42318;
  --customer-flow-ready-bg: #eefaf6;
  --customer-flow-review-bg: #fff8ea;
  --customer-flow-locked-bg: #fff3f0;
}

body[data-page] #customerWorkflowProgress {
  display: grid;
  gap: 12px;
  border-left: 5px solid var(--customer-flow-ready-line);
  background: linear-gradient(180deg, rgba(255, 255, 255, .97), rgba(247, 251, 251, .94));
}

body[data-page] #customerWorkflowProgress > .panel-head {
  margin-bottom: 0;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--customer-flow-line);
}

body[data-page] #customerWorkflowProgress > .workflow-demo-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(154px, 100%), 1fr));
  gap: 8px;
  align-items: stretch;
}

body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article,
body[data-page] #customerWorkflowProgress .customer-target-inventory .step-list > article,
body[data-page] #customerWorkflowProgress .customer-step-handoff-grid > article {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  border: 1px solid var(--customer-flow-line);
  border-left: 4px solid var(--customer-flow-review-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-flow-review-bg);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article {
  grid-template-rows: auto auto minmax(34px, 1fr) auto;
  min-height: 132px;
}

body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article.active,
body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article[data-status*="current" i],
body[data-page] #customerWorkflowProgress .customer-target-inventory .step-list > article[data-status*="known" i] {
  border-left-color: var(--customer-flow-ready-line);
  background: var(--customer-flow-ready-bg);
}

body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article[data-status*="blocked" i],
body[data-page] #customerWorkflowProgress .customer-step-locked,
body[data-page] #customerWorkflowProgress > .boundary-strip > span {
  border-left-color: var(--customer-flow-locked-line);
  background: var(--customer-flow-locked-bg);
}

body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article > span:first-child {
  width: fit-content;
  min-height: 24px;
  border: 1px solid var(--customer-flow-line);
  border-radius: 999px;
  background: #fff;
  color: #2f4a50;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
}

body[data-page] #customerWorkflowProgress :where(
  .workflow-demo-steps > article > b,
  .customer-next-action-queue > b,
  .customer-target-inventory b,
  .customer-step-handoff-grid b
) {
  color: var(--ink, #162024);
  font-size: 14px;
  line-height: 1.28;
  text-wrap: balance;
}

body[data-page] #customerWorkflowProgress :where(
  .workflow-demo-steps > article > small,
  .customer-next-action-queue > span,
  .customer-next-action-queue > small,
  .customer-target-inventory small,
  .customer-step-handoff-grid small
) {
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.42;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-step-jump,
body[data-page] #customerWorkflowProgress .customer-step-locked {
  width: 100%;
  margin-top: auto;
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] #customerWorkflowProgress .customer-next-action-queue,
body[data-page] #customerWorkflowProgress .customer-next-handoff-preview,
body[data-page] #customerWorkflowProgress .customer-target-inventory,
body[data-page] #customerWorkflowProgress .customer-step-handoff-receipt {
  margin: 0;
  border: 1px solid var(--customer-flow-line);
  border-left: 4px solid var(--customer-flow-review-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 12px;
}

body[data-page] #customerWorkflowProgress .customer-next-handoff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
  gap: 8px;
}

body[data-page] #customerWorkflowProgress .customer-next-handoff-grid > article {
  min-width: 0;
  border: 1px solid var(--customer-flow-line);
  border-left: 4px solid var(--customer-flow-ready-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-flow-ready-bg);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-next-handoff-grid b,
body[data-page] #customerWorkflowProgress .customer-next-handoff-grid small {
  display: block;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-next-handoff-grid b {
  color: var(--ink, #162024);
  font-size: 14px;
  line-height: 1.28;
}

body[data-page] #customerWorkflowProgress .customer-next-handoff-grid small {
  margin-top: 5px;
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.42;
}

body[data-page] #customerWorkflowProgress .customer-next-action-queue {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 5px 12px;
  align-items: start;
}

body[data-page] #customerWorkflowProgress .customer-next-action-queue > span {
  grid-column: 1 / -1;
}

body[data-page] #customerWorkflowProgress .customer-next-action-queue > small {
  justify-self: end;
  border: 1px solid var(--customer-flow-line);
  border-radius: 999px;
  background: var(--customer-flow-review-bg);
  color: var(--customer-flow-review-line);
  padding: 5px 9px;
  text-align: center;
}

body[data-page] #customerWorkflowProgress > .boundary-strip,
body[data-page] #customerWorkflowProgress .customer-target-summary,
body[data-page] #customerWorkflowProgress .customer-target-inventory .step-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(170px, 100%), 1fr));
  gap: 8px;
}

body[data-page] #customerWorkflowProgress .customer-target-summary {
  margin: 0 0 8px;
}

body[data-page] #customerWorkflowProgress .customer-target-summary > article,
body[data-page] #customerWorkflowProgress .customer-step-anchor-verification {
  border-left-color: var(--customer-flow-ready-line);
  background: var(--customer-flow-ready-bg);
}

body[data-page] #customerWorkflowProgress .customer-target-summary > article {
  min-width: 0;
  border: 1px solid var(--customer-flow-line);
  border-left: 4px solid var(--customer-flow-ready-line);
  border-radius: var(--customer-card-radius, 8px);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress > .boundary-strip > span {
  min-height: 40px;
  border-radius: var(--customer-card-radius, 8px);
  justify-content: start;
  text-align: left;
}

body[data-page] #customerWorkflowProgress .customer-step-handoff-slot {
  min-width: 0;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-export {
  margin: 0;
  border: 1px solid var(--customer-flow-line);
  border-left: 4px solid var(--customer-flow-ready-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 12px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
  gap: 8px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-grid > article {
  min-width: 0;
  border: 1px solid var(--customer-flow-line);
  border-left: 4px solid var(--customer-flow-ready-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-flow-ready-bg);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-json-box {
  margin-top: 10px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-json {
  max-height: 220px;
  overflow: auto;
  border: 1px solid var(--customer-flow-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #f8fbfb;
  padding: 10px;
  color: var(--ink, #162024);
  font-size: 12px;
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-copy-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 10px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-receipt-copy-row > span {
  border: 1px solid var(--customer-flow-line);
  border-radius: 999px;
  background: var(--customer-flow-review-bg);
  color: var(--customer-flow-review-line);
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 800;
}

@media (max-width: 620px) {
  body[data-page] #customerWorkflowProgress > .workflow-demo-steps,
  body[data-page] #customerWorkflowProgress > .boundary-strip,
  body[data-page] #customerWorkflowProgress .customer-target-summary,
  body[data-page] #customerWorkflowProgress .customer-target-inventory .step-list,
  body[data-page] #customerWorkflowProgress .customer-next-handoff-grid,
  body[data-page] #customerWorkflowProgress .customer-workflow-receipt-grid,
  body[data-page] #customerWorkflowProgress .customer-next-action-queue {
    grid-template-columns: 1fr;
  }

  body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article {
    min-height: 0;
  }

  body[data-page] #customerWorkflowProgress .customer-next-action-queue > small {
    justify-self: stretch;
  }

  body[data-page] #customerWorkflowProgress .customer-workflow-receipt-copy-row > * {
    width: 100%;
  }
}

@media print {
  body[data-page] #customerWorkflowProgress,
  body[data-page] #customerWorkflowProgress > .workflow-demo-steps > article,
  body[data-page] #customerWorkflowProgress .customer-next-action-queue,
  body[data-page] #customerWorkflowProgress .customer-next-handoff-preview,
  body[data-page] #customerWorkflowProgress .customer-target-inventory,
  body[data-page] #customerWorkflowProgress .customer-step-handoff-receipt,
  body[data-page] #customerWorkflowProgress .customer-workflow-receipt-export {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Final customer-safe state polish: normalize public design-system fit and status styling. */
body[data-page] {
  --customer-public-safe-line: #0f766e;
  --customer-public-review-line: #a35f08;
  --customer-public-locked-line: #b42318;
  --customer-public-info-line: #0e7490;
  --customer-public-safe-bg: #eefaf6;
  --customer-public-review-bg: #fff8ea;
  --customer-public-locked-bg: #fff3f0;
  --customer-public-info-bg: #eef9fb;
}

body[data-page] :where(
  .customer-evidence-card-gate,
  .customer-governance-strip,
  .delivery-checklist,
  .feedback-decision-grid,
  .customer-review-handoff-grid,
  .customer-release-handoff-grid,
  .customer-action-grid,
  .customer-next-action-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 10px;
  align-items: stretch;
}

body[data-page] :where(
  .customer-evidence-card-gate > *,
  .customer-governance-strip article,
  .delivery-check,
  .feedback-decision-grid article,
  .customer-review-handoff-grid article,
  .customer-release-handoff-grid article,
  .customer-action-grid > *,
  .customer-next-action-grid > *
) {
  min-width: 0;
  border-left-width: 4px;
  border-left-style: solid;
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page] :where(
  .customer-evidence-card-gate > *,
  .delivery-check.pending,
  .delivery-check.wait,
  .delivery-check.warn,
  .delivery-check.review,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-release-progress li.current
) {
  border-left-color: var(--customer-public-review-line);
  background: var(--customer-public-review-bg);
}

body[data-page] :where(
  .customer-evidence-card-gate > :nth-child(2),
  .delivery-check.pass,
  .customer-review-handoff,
  .customer-release-handoff,
  .customer-release-progress li.done
) {
  border-left-color: var(--customer-public-safe-line);
  background: var(--customer-public-safe-bg);
}

body[data-page] :where(
  .customer-evidence-card-gate > :first-child,
  .delivery-check.blocked,
  .constraint-hold,
  .customer-download-wait-checklist,
  .customer-release-progress li.blocked,
  .report-hard-stop-receipt
) {
  border-left-color: var(--customer-public-locked-line);
  background: var(--customer-public-locked-bg);
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  max-width: 100%;
  min-height: 28px;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(.button-row, .customer-action-grid, .customer-next-action-grid) > :where(button, a, .secondary-link, .primary-action) {
  width: 100%;
  min-height: 44px;
}

@media (max-width: 620px) {
  body[data-page] :where(.panel-head, .delivery-readiness-head, .customer-release-progress-head, .feedback-handoff-head) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > .chip, .panel-head > button, .panel-head > .secondary-link) {
    justify-self: stretch;
  }
}

/* Customer public state alias guard: keep generated review lane cards on the
   same readable safe, review, and locked status system. */
body[data-page] {
  --customer-public-ready-line: var(--customer-public-safe-line, #0f766e);
  --customer-public-blocked-line: var(--customer-public-locked-line, #b42318);
  --customer-public-ready-bg: var(--customer-public-safe-bg, #eefaf6);
  --customer-public-blocked-bg: var(--customer-public-locked-bg, #fff3f0);
  --green: var(--customer-public-safe-line, #0f766e);
  --orange: var(--customer-public-review-line, #a35f08);
  --red: var(--customer-public-locked-line, #b42318);
}

body[data-page] :where(
  .customer-evidence-action-summary-lanes,
  .customer-evidence-action-manifest-lanes,
  .customer-evidence-human-review-prereqs,
  .customer-evidence-review-lanes,
  .customer-evidence-readback-policy-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-evidence-escalation-lanes
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr));
  gap: 8px;
  align-items: stretch;
}

body[data-page] :where(
  .customer-evidence-action-summary-lanes article,
  .customer-evidence-action-manifest-lanes article,
  .customer-evidence-human-review-prereqs article,
  .customer-evidence-review-lanes article,
  .customer-evidence-readback-policy-lanes article,
  .customer-evidence-action-lock-lanes article,
  .customer-evidence-review-handoff-lanes article,
  .customer-evidence-escalation-lanes article
) {
  min-width: 0;
  border: 1px solid var(--line, rgba(130, 164, 166, .34));
  border-left: 4px solid var(--customer-public-review-line, #a35f08);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-public-review-bg, #fff8ea);
  padding: 10px;
  overflow-wrap: anywhere;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page] :where(
  .customer-evidence-action-summary-lanes article.pass,
  .customer-evidence-action-manifest-lanes article.pass,
  .customer-evidence-human-review-prereqs article.pass,
  .customer-evidence-review-lanes article.pass,
  .customer-evidence-review-lanes article.allowed,
  .customer-evidence-readback-policy-lanes article.pass,
  .customer-evidence-readback-policy-lanes article.allowed,
  .customer-evidence-action-lock-lanes article.pass,
  .customer-evidence-review-handoff-lanes article.pass,
  .customer-evidence-review-handoff-lanes article.allowed,
  .customer-evidence-escalation-lanes article.pass,
  .customer-evidence-escalation-lanes article.allowed
) {
  border-left-color: var(--customer-public-safe-line, #0f766e);
  background: var(--customer-public-safe-bg, #eefaf6);
}

body[data-page] :where(
  .customer-evidence-action-summary-lanes article.blocked,
  .customer-evidence-action-manifest-lanes article.blocked,
  .customer-evidence-human-review-prereqs article.blocked,
  .customer-evidence-review-lanes article.blocked,
  .customer-evidence-readback-policy-lanes article.blocked,
  .customer-evidence-action-lock-lanes article.blocked,
  .customer-evidence-review-handoff-lanes article.blocked,
  .customer-evidence-escalation-lanes article.blocked
) {
  border-left-color: var(--customer-public-locked-line, #b42318);
  background: var(--customer-public-locked-bg, #fff3f0);
}

/* Public customer finish pass: keep dense review surfaces consistent and
   resilient when generated labels, metrics, or tables become long. */
body[data-page] {
  --customer-finish-line: rgba(130, 164, 166, .34);
  --customer-finish-shadow: 0 1px 0 rgba(15, 23, 42, .03);
  --customer-finish-ready: #0f766e;
  --customer-finish-review: #a35f08;
  --customer-finish-locked: #b42318;
  --customer-finish-info: #0e7490;
  --customer-finish-ready-bg: #eefaf6;
  --customer-finish-review-bg: #fff8ea;
  --customer-finish-locked-bg: #fff3f0;
  --customer-finish-info-bg: #eef9fb;
}

body[data-page] :where(
  .panel,
  .status-strip.value-hero,
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .delivery-check,
  .customer-governance-strip article
) {
  min-width: 0;
  border-color: var(--customer-finish-line);
  border-radius: var(--customer-card-radius, 8px);
  box-shadow: var(--customer-finish-shadow);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .delivery-check,
  .customer-governance-strip article
) {
  border-left: 4px solid var(--customer-finish-review);
  background: #fff;
}

body[data-page] :where(
  .delivery-check.pass,
  .delivery-check.ready,
  .delivery-check.done,
  .customer-release-progress li.done,
  .customer-review-handoff,
  .customer-release-handoff,
  .customer-data-hydration-receipt[data-status="PASS"],
  .customer-workflow-progress-steps a[data-status="complete"]
) {
  border-left-color: var(--customer-finish-ready);
  background: var(--customer-finish-ready-bg);
}

body[data-page] :where(
  .delivery-check.blocked,
  .delivery-check.fail,
  .constraint-hold,
  .report-hard-stop-receipt,
  .customer-download-wait-checklist,
  .customer-release-progress li.blocked,
  .customer-workflow-progress-steps a[data-status="blocked"]
) {
  border-left-color: var(--customer-finish-locked);
  background: var(--customer-finish-locked-bg);
}

body[data-page] :where(
  .delivery-check.pending,
  .delivery-check.warn,
  .delivery-check.review,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-release-progress li.current,
  .customer-workflow-progress-steps a[aria-current="step"]
) {
  border-left-color: var(--customer-finish-review);
  background: var(--customer-finish-review-bg);
}

body[data-page] :where(.panel-head, .cand-head, .generated-candidate-head, .delivery-readiness-head) {
  align-items: start;
}

body[data-page] :where(.panel-head > *, .cand-head > *, .generated-candidate-head > *, .delivery-readiness-head > *) {
  min-width: 0;
}

body[data-page] :where(h1, h2, h3, h4, .metric b, .candidate b, .claim-card b, .generated-candidate-card b) {
  overflow-wrap: anywhere;
  text-wrap: balance;
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump,
  .customer-step-locked,
  input,
  select,
  textarea
) {
  min-height: var(--customer-touch-target, 44px);
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(button:disabled, [aria-disabled="true"], .customer-step-locked) {
  cursor: not-allowed;
  filter: saturate(.78);
}

body[data-page] :where(
  .topnav a:focus-visible,
  .rail a:focus-visible,
  button:focus-visible,
  .primary-action:focus-visible,
  .secondary-link:focus-visible,
  .customer-step-jump:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible
) {
  outline: 3px solid rgba(14, 116, 144, .28);
  outline-offset: 2px;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  max-width: 100%;
  min-width: 0;
  min-height: 30px;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(.matrix-table, .report-table) {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

body[data-page] :where(.matrix-table table, .report-table table) {
  min-width: min(680px, 100vw);
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  overflow-wrap: anywhere;
  word-break: normal;
}

body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
  border-color: rgba(15, 118, 110, .32);
  background: var(--customer-finish-ready-bg);
  color: #0b1f22;
}

@media (max-width: 760px) {
  body[data-page] :where(.panel-head, .cand-head, .generated-candidate-head, .delivery-readiness-head) {
    display: grid;
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .panel-head > .chip) {
    justify-self: stretch;
    width: 100%;
  }

  body[data-page] :where(.topnav a, .rail a) {
    min-height: 44px;
  }
}

@media print {
  body[data-page] :where(
    .panel,
    .status-strip.value-hero,
    .platform-map article,
    .metric,
    .candidate,
    .claim-card,
    .generated-candidate-card,
    .review-panel-box,
    .delivery-receipt-panel,
    .report-preview,
    .delivery-check
  ) {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}
/* Public customer final component normalization: stable scan rhythm, text
   spacing, and state color inheritance across generated review panels. */
body[data-page] {
  --customer-final-radius: 8px;
  --customer-final-line: rgba(130, 164, 166, .34);
  --customer-final-safe: #0f766e;
  --customer-final-review: #a35f08;
  --customer-final-blocked: #b42318;
  --customer-final-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page],
body[data-page] :where(*, *::before, *::after) {
  letter-spacing: 0;
}

body[data-page] :where(
  .panel,
  .status-strip.value-hero,
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .delivery-check,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .matrix-list article,
  .step-list article,
  .customer-governance-strip article,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .customer-workflow-progress > .workflow-demo-steps > article,
  .customer-next-action-queue,
  .customer-target-summary > article,
  .customer-target-inventory,
  .customer-step-handoff-receipt
) {
  min-width: 0;
  border-color: var(--customer-final-line);
  border-radius: var(--customer-final-radius);
  box-shadow: var(--customer-final-shadow);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .topnav a,
  .rail a,
  button,
  .primary-action,
  .secondary-link,
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .customer-step-jump,
  .customer-step-locked,
  input,
  select,
  textarea
) {
  border-radius: var(--customer-final-radius);
  letter-spacing: 0;
}

body[data-page] :where(
  .customer-workflow-progress,
  .review-panel-box,
  .delivery-receipt-panel,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .delivery-check,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .matrix-list article,
  .step-list article
) {
  border-left: 4px solid var(--customer-final-review);
}

body[data-page] :where(
  [data-status*="pass" i],
  [data-status*="ready" i],
  [data-status*="complete" i],
  .pass,
  .ready,
  .done,
  .allowed,
  .customer-step-anchor-verification
) {
  border-left-color: var(--customer-final-safe);
}

body[data-page] .customer-target-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  margin: 0 0 8px;
}

body[data-page] :where(
  [data-status*="blocked" i],
  [data-status*="locked" i],
  [data-status*="fail" i],
  .blocked,
  .locked,
  .fail,
  .denied
) {
  border-left-color: var(--customer-final-blocked);
}

body[data-page] :where(
  [data-status*="current" i],
  [data-status*="wait" i],
  [data-status*="review" i],
  .current,
  .pending,
  .review,
  .warn
) {
  border-left-color: var(--customer-final-review);
}

body[data-page] :where(.customer-step-jump, .secondary-link, button, .primary-action) {
  min-height: var(--customer-touch-target, 44px);
  align-items: center;
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav, .rail, .button-row, .customer-next-action-queue) {
    gap: 6px;
  }

  body[data-page] :where(.topnav a, .rail a, button, .primary-action, .secondary-link, .customer-step-jump) {
    width: 100%;
    justify-content: center;
    white-space: normal;
  }
}

/* Customer-safe design-system finish: visual-only state aliases keep review,
   evidence, and blocked-release boundaries legible without changing data. */
body[data-page] {
  --customer-safe-line: #0f766e;
  --customer-review-line: #a35f08;
  --customer-blocked-line: #b42318;
  --customer-info-line: #0e7490;
  --customer-surface-line: rgba(87, 116, 122, .26);
  --customer-quiet-surface: #fbfdfd;
  --green: var(--customer-safe-line);
  --orange: var(--customer-review-line);
  --red: var(--customer-blocked-line);
}

body[data-page] :where(.topbar, .rail) {
  border-color: var(--customer-surface-line);
}

body[data-page] :where(.topnav, .rail) {
  gap: 6px;
}

body[data-page] :where(.topnav a, .rail a) {
  border: 1px solid transparent;
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
  border-color: rgba(15, 118, 110, .32);
  background: #edf6f5;
  color: #092f31;
}

body[data-page] :where(.panel-head) {
  min-width: 0;
}

body[data-page] :where(.panel-head .chip, .panel-head button, .panel-head .secondary-link) {
  justify-self: end;
}

body[data-page] :where(.customer-governance-strip, .platform-map, .metrics-grid, .customer-evidence-card-gate) {
  align-items: stretch;
}

body[data-page] :where(.customer-governance-strip article, .platform-map article, .metric) {
  display: grid;
  align-content: start;
}

body[data-page] :where(
  .customer-governance-strip article,
  .platform-map article,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .delivery-check,
  .claim-card,
  .generated-candidate-card
) {
  background: var(--customer-quiet-surface);
  border-color: var(--customer-surface-line);
}

body[data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .delivery-check b
) {
  border-color: var(--customer-surface-line);
  box-shadow: none;
}

body[data-page] :where(.chip.ok, .claim-badge.screened, .claim-badge.evidence-gated, .claim-badge.units-checked) {
  color: var(--customer-safe-line);
  background: #eaf7f3;
}

body[data-page] :where(.chip.warn, .claim-badge.boundary, .claim-badge.row-evidence-needed, .claim-badge.screening-required, .claim-badge.validation-required) {
  color: var(--customer-review-line);
  background: #fff7e8;
}

body[data-page] :where(.chip.bad, .claim-badge.no-guarantee, .claim-badge.no-customer-commitment) {
  color: var(--customer-blocked-line);
  background: #fff1ef;
}

body[data-page] :where(.customer-evidence-safety-receipt, .source-lock-boundary, .sample-preview-gate, .delivery-governance-panel) {
  border-left-color: var(--customer-review-line);
}

body[data-page] :where(.customer-evidence-safety-receipt[data-source-lock-admission="0/30"]) {
  background:
    linear-gradient(180deg, rgba(255, 247, 232, .86), rgba(255, 255, 255, .96));
}

body[data-page] :where(
  input,
  select,
  textarea,
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump,
  .customer-step-locked
) {
  border-color: var(--customer-surface-line);
}

body[data-page] :where(button:disabled, .customer-step-locked, [aria-disabled="true"]) {
  opacity: .64;
}

body[data-page] :where(.platform-preview img, .page-visual img) {
  background: #eef4f4;
}

@media (max-width: 900px) {
  body[data-page] :where(.topbar) {
    gap: 8px;
  }

  body[data-page] :where(.brand, .top-status) {
    max-width: 100%;
  }

  body[data-page] :where(.panel-head .chip, .panel-head button, .panel-head .secondary-link) {
    justify-self: stretch;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.metrics-grid, .customer-evidence-card-gate) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel, .status-strip.value-hero, .customer-governance-strip article, .platform-map article) {
    padding-inline: 12px;
  }

  body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
    justify-content: center;
    text-align: center;
  }
}

@media (forced-colors: active) {
  body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
    border: 1px solid ButtonText;
  }
}

/* Customer refinement terminal guard: preserve generated gates while aligning
   public status colors and compact navigation at final cascade priority. */
body[data-page] {
  --green: var(--customer-final-safe, #0f766e);
  --orange: var(--customer-final-review, #a35f08);
  --red: var(--customer-final-blocked, #b42318);
  --customer-public-safe-line: var(--customer-final-safe, #0f766e);
  --customer-public-review-line: var(--customer-final-review, #a35f08);
  --customer-public-locked-line: var(--customer-final-blocked, #b42318);
  --customer-state-ready-line: var(--customer-final-safe, #0f766e);
  --customer-state-review-line: var(--customer-final-review, #a35f08);
  --customer-state-blocked-line: var(--customer-final-blocked, #b42318);
}

body[data-page] :where(.topnav a, .rail a) {
  flex: 0 0 auto;
  min-height: var(--customer-touch-target, 44px);
  line-height: 1.2;
  text-align: center;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  align-items: center;
  min-height: 30px;
  line-height: 1.25;
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav a, .rail a) {
    width: auto;
    min-width: max-content;
  }

  body[data-page] :where(button, .primary-action, .secondary-link, .customer-step-jump) {
    width: 100%;
  }
}

/* Public customer design-system refinement: visual-only pass for review, ready,
   and locked customer surfaces. */
body[data-page] {
  --customer-refined-safe: #0b6f68;
  --customer-refined-review: #9b5a06;
  --customer-refined-locked: #a92f22;
  --customer-refined-info: #0b7285;
  --customer-refined-line: rgba(74, 105, 110, .28);
  --customer-refined-soft: #f9fcfc;
  --customer-refined-safe-bg: #eaf7f3;
  --customer-refined-review-bg: #fff8ea;
  --customer-refined-locked-bg: #fff2ef;
}

body[data-page] :where(.skip-link:focus, .skip-link:focus-visible) {
  position: fixed;
  inset: 12px auto auto 12px;
  z-index: 60;
  width: auto;
  height: auto;
  clip: auto;
  padding: 10px 12px;
  border: 2px solid var(--customer-refined-info);
  border-radius: 8px;
  background: #fff;
  color: #081f24;
  box-shadow: 0 18px 46px rgba(8, 31, 36, .22);
}

body[data-page] :where(
  a:focus-visible,
  button:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible,
  [tabindex]:focus-visible
) {
  outline: 3px solid rgba(11, 114, 133, .24);
  outline-offset: 2px;
}

body[data-page] :where(
  .panel,
  .status-strip.value-hero,
  .platform-map article,
  .metric,
  .generated-candidate-card,
  .candidate,
  .claim-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .customer-step-handoff-grid article,
  .customer-target-inventory-grid article,
  .customer-action-gate article
) {
  border-color: var(--customer-refined-line);
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(
  .generated-candidate-card,
  .candidate,
  .claim-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list div,
  .step-list article,
  .matrix-list div,
  .matrix-list article,
  .customer-step-handoff-grid article,
  .customer-target-inventory-grid article,
  .customer-action-gate article
) {
  min-width: 0;
  overflow-wrap: anywhere;
  background: var(--customer-refined-soft);
}

body[data-page] :where(
  [data-status*="pass" i],
  [data-status*="ready" i],
  [data-status*="complete" i],
  .pass,
  .ready,
  .done,
  .allowed
) {
  border-left-color: var(--customer-refined-safe);
}

body[data-page] :where(
  [data-status*="current" i],
  [data-status*="wait" i],
  [data-status*="review" i],
  .current,
  .pending,
  .review,
  .warn
) {
  border-left-color: var(--customer-refined-review);
}

body[data-page] :where(
  [data-status*="blocked" i],
  [data-status*="locked" i],
  [data-status*="fail" i],
  .blocked,
  .locked,
  .fail,
  .denied
) {
  border-left-color: var(--customer-refined-locked);
}

body[data-page] :where(
  .delivery-check.pass,
  .customer-action-gate .pass,
  .customer-step-anchor-verification,
  .customer-evidence-review-lanes article.pass,
  .customer-evidence-review-handoff-lanes article.pass
) {
  background: var(--customer-refined-safe-bg);
}

body[data-page] :where(
  .delivery-check.pending,
  .delivery-check.wait,
  .delivery-check.warn,
  .delivery-check.review,
  .customer-action-gate .review,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-evidence-safety-receipt[data-source-lock-admission="0/30"]
) {
  background: var(--customer-refined-review-bg);
}

body[data-page] :where(
  .delivery-check.blocked,
  .delivery-check.fail,
  .customer-action-gate .blocked,
  .customer-step-locked,
  .customer-evidence-review-lanes article.blocked,
  .customer-evidence-review-handoff-lanes article.blocked
) {
  background: var(--customer-refined-locked-bg);
}

body[data-page] :where(.topnav, .rail) {
  scrollbar-width: thin;
  scrollbar-color: rgba(234, 255, 251, .42) transparent;
}

body[data-page] :where(.topnav a, .rail a, .chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .panel-head > .chip) {
  max-width: min(100%, 320px);
}

body[data-page] :where(.platform-preview figcaption span) {
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page] :where(.report-preview, .table-wrap, pre) {
  overflow-x: auto;
}

@media (max-width: 900px) {
  body[data-page] :where(.topbar) {
    align-items: stretch;
  }

  body[data-page] :where(.brand, .top-status) {
    justify-self: stretch;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .panel-head > .chip) {
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav, .rail) {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(92px, 1fr);
    overflow-x: auto;
  }

  body[data-page] :where(.topnav a, .rail a) {
    min-width: 0;
  }

  body[data-page] :where(.platform-preview figcaption) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (forced-colors: active) {
  body[data-page] :where(
    .panel,
    .status-strip.value-hero,
    .delivery-check,
    .generated-candidate-card,
    .candidate,
    .claim-card
  ) {
    border-color: CanvasText;
  }
}

/* Public customer review-gate affordances. */
body[data-page] {
  --customer-review-control-bg: #f7fbfb;
  --customer-review-control-line: rgba(79, 111, 116, .34);
  --customer-review-disabled-bg: #f4f6f6;
  --customer-review-disabled-ink: #6d7f84;
}

body[data-page] :where(label) {
  min-width: 0;
}

body[data-page] :where(input, select, textarea) {
  border-radius: var(--customer-card-radius, 8px);
  border-color: var(--customer-review-control-line);
  background: var(--customer-review-control-bg);
}

body[data-page] :where(input, select, textarea)::placeholder {
  color: #7a8a8f;
}

body[data-page] :where(button:disabled, button[aria-disabled="true"], .customer-step-locked, [data-control-state="locked_until_review_release"]) {
  border-color: rgba(169, 47, 34, .28);
  background: var(--customer-review-disabled-bg);
  color: var(--customer-review-disabled-ink);
  box-shadow: none;
}

body[data-page] :where(button:disabled, button[aria-disabled="true"]) {
  opacity: 1;
}

body[data-page] :where(.customer-step-locked, [data-control-state="locked_until_review_release"]) {
  display: inline-grid;
  place-items: center;
  min-height: var(--customer-touch-target, 44px);
  padding: 10px 12px;
  border: 1px solid rgba(169, 47, 34, .28);
  border-left: 4px solid var(--customer-refined-locked, #a92f22);
  border-radius: var(--customer-card-radius, 8px);
  line-height: 1.25;
  text-align: center;
}

body[data-page] :where(.review-panel-box.placeholder, .delivery-receipt-panel.placeholder, .job-result.empty-state) {
  border-left-color: var(--customer-refined-review, #9b5a06);
  background: var(--customer-refined-review-bg, #fff8ea);
}

body[data-page] :where(.form-grid, .feedback-grid) {
  align-items: end;
}

body[data-page] :where(.form-grid label, .feedback-grid label) {
  align-self: stretch;
}

body[data-page] :where(.form-grid input, .form-grid select, .feedback-grid input, .feedback-grid select) {
  height: 100%;
}

@media (max-width: 620px) {
  body[data-page] :where(.customer-step-locked, [data-control-state="locked_until_review_release"]) {
    width: 100%;
  }
}

/* Public customer design-system refinement: final customer-safe scan rhythm for
   generated review panels, status cards, and compact mobile controls. */
body[data-page] {
  --customer-scan-gap: 10px;
  --customer-scan-min: min(220px, 100%);
  --customer-scan-pad: 12px;
  --customer-scan-safe: var(--customer-refined-safe, #0b6f68);
  --customer-scan-review: var(--customer-refined-review, #9b5a06);
  --customer-scan-locked: var(--customer-refined-locked, #a92f22);
  --customer-scan-line: var(--customer-refined-line, rgba(74, 105, 110, .28));
}

body[data-page] :where(
  .customer-governance-strip,
  .customer-evidence-card-gate,
  .delivery-checklist,
  .feedback-handoff-grid,
  .feedback-decision-grid,
  .customer-review-handoff-grid,
  .customer-release-handoff-grid,
  #customerWorkflowProgress > .workflow-demo-steps,
  #customerWorkflowProgress .customer-target-summary,
  #customerWorkflowProgress .customer-target-inventory .step-list,
  .customer-action-gate .step-list
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--customer-scan-min), 1fr));
  gap: var(--customer-scan-gap);
}

body[data-page] :where(
  .customer-governance-strip article,
  .customer-evidence-card-gate > *,
  .delivery-check,
  .customer-review-handoff-grid article,
  .customer-release-handoff-grid article,
  #customerWorkflowProgress > .workflow-demo-steps > article,
  #customerWorkflowProgress .customer-target-summary > article,
  #customerWorkflowProgress .customer-target-inventory article,
  .customer-action-gate .step-list > article
) {
  min-width: 0;
  padding: var(--customer-scan-pad);
  border: 1px solid var(--customer-scan-line);
  border-left: 4px solid var(--customer-scan-review);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-governance-strip article:first-child,
  .delivery-check.pass,
  .customer-review-handoff-grid article,
  .customer-release-handoff-grid article,
  #customerWorkflowProgress [data-status*="current" i],
  #customerWorkflowProgress [data-status*="known" i],
  .customer-action-gate .allowed
) {
  border-left-color: var(--customer-scan-safe);
}

body[data-page] :where(
  .delivery-check.blocked,
  .delivery-check.fail,
  #customerWorkflowProgress [data-status*="blocked" i],
  #customerWorkflowProgress [data-control-state="locked_until_review_release"],
  .customer-action-gate .blocked
) {
  border-left-color: var(--customer-scan-locked);
}

body[data-page] :where(
  .customer-governance-strip b,
  .customer-evidence-card-gate b,
  .delivery-check h4,
  #customerWorkflowProgress b,
  .customer-action-gate b
) {
  display: block;
  line-height: 1.25;
  text-wrap: balance;
}

body[data-page] :where(
  .customer-governance-strip small,
  .customer-evidence-card-gate span,
  .delivery-check p,
  #customerWorkflowProgress small,
  #customerWorkflowProgress span,
  .customer-action-gate small
) {
  line-height: 1.45;
}

body[data-page] :where(.customer-step-jump, .customer-action-gate button, #customerWorkflowProgress button) {
  min-height: var(--customer-touch-target, 44px);
  max-width: 100%;
}

@media (max-width: 620px) {
  body[data-page] :where(
    .customer-governance-strip,
    .customer-evidence-card-gate,
    .delivery-checklist,
    #customerWorkflowProgress > .workflow-demo-steps,
    #customerWorkflowProgress .customer-target-summary,
    .customer-action-gate .step-list
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(
    .customer-step-jump,
    .customer-action-gate button,
    #customerWorkflowProgress button,
    .panel-head > button,
    .panel-head > .secondary-link
  ) {
    width: 100%;
  }
}

/* Public customer design-system final pass: shared rhythm and readable gates. */
:root {
  --customer-refined-gap: 12px;
  --customer-refined-radius: 8px;
  --customer-refined-line: rgba(74, 105, 110, .3);
  --customer-refined-panel-bg: rgba(255, 255, 255, .94);
  --customer-refined-soft-bg: #f7fbfb;
  --customer-refined-shadow: 0 10px 26px rgba(7, 17, 19, .08);
  --customer-refined-safe: #0b6f68;
  --customer-refined-review: #99600f;
  --customer-refined-blocked: #a03327;
}

body[data-page] :where(.panel, .metric, .candidate, .claim-card, .generated-candidate-card, .delivery-check, .review-panel-box, .delivery-receipt-panel, .report-preview, .request-preset-card, .platform-map article) {
  border-radius: var(--customer-refined-radius);
  border-color: var(--customer-refined-line);
  box-shadow: var(--customer-refined-shadow);
}

body[data-page] :where(.panel, .review-panel-box, .delivery-receipt-panel, .report-preview) {
  background: var(--customer-refined-panel-bg);
}

body[data-page] :where(.platform-map, .metrics-grid, .result-cards, .candidate-grid, .evidence-card-grid, .workflow-demo-steps, .pillars, .value-proof-grid, .delivery-checklist, .step-list, .matrix-list) {
  gap: var(--customer-refined-gap);
}

body[data-page] :where(.metric, .platform-map article, .delivery-check, .candidate, .claim-card, .generated-candidate-card, .step-list > div, .matrix-list > div) {
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page] :where(.metric b, .platform-map b, .candidate h3, .claim-card h3, .generated-candidate-card h3, .delivery-check h4, .review-panel-box h3, .delivery-receipt-panel h3) {
  letter-spacing: 0;
  line-height: 1.22;
  text-wrap: balance;
}

body[data-page] :where(.metric span, .platform-map small, .candidate small, .claim-badge, .delivery-check p, .step-list span, .matrix-list span, .review-panel-box p, .delivery-receipt-panel p) {
  line-height: 1.45;
}

body[data-page] :where(.boundary-strip span, .claim-badge, .chip) {
  border-radius: 999px;
  min-height: 30px;
  align-items: center;
}

body[data-page] :where(.delivery-check.pass, .customer-governance-strip article:first-child, .customer-release-progress li.done) {
  border-left-color: var(--customer-refined-safe);
}

body[data-page] :where(.delivery-check.blocked, .customer-release-progress li.blocked, .constraint-hold) {
  border-left-color: var(--customer-refined-blocked);
}

body[data-page] :where(.delivery-readiness-head, .feedback-handoff-head, .sample-preview-gate, .source-lock-boundary) {
  border-radius: var(--customer-refined-radius);
  border-left-color: var(--customer-refined-review);
}

body[data-page] :where(button, .primary-action, .secondary-link, input, select, textarea) {
  border-radius: var(--customer-refined-radius);
}

body[data-page] :where(button, .primary-action, .secondary-link) {
  min-height: var(--customer-touch-target, 44px);
  padding-inline: 14px;
}

body[data-page] :where(input, select) {
  min-height: var(--customer-touch-target, 44px);
}

body[data-page] :where(.hero-stage, .platform-preview, .structured-brief-preview) {
  min-width: 0;
}

body[data-page] :where(.platform-preview) {
  border-radius: var(--customer-refined-radius);
  background: #102024;
}

body[data-page] :where(.platform-preview img) {
  aspect-ratio: 16 / 9;
  max-height: 300px;
  object-fit: cover;
  object-position: top center;
}

body[data-page] :where(.platform-preview figcaption) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body[data-page] :where(.platform-preview figcaption span) {
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.25;
}

@media (max-width: 900px) {
  body[data-page] :where(.metrics-grid, .platform-map, .grid-two, .delivery-layout) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-page] :where(.status-strip.value-hero) {
    gap: 16px;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.metrics-grid, .platform-map, .grid-two, .delivery-layout, .form-grid, .feedback-grid, .customer-release-progress ol) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head, .report-cover, .delivery-readiness-head, .feedback-handoff-head, .customer-release-progress-head) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .report-cover button, .report-cover .secondary-link) {
    width: 100%;
  }

  body[data-page] :where(.platform-preview img) {
    max-height: 190px;
  }

  body[data-page] :where(.platform-preview figcaption) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Customer design-system closure: consistent controls, grids, and review surfaces. */
:root {
  --customer-ds-radius: 8px;
  --customer-ds-hit: 44px;
  --customer-ds-gap: 12px;
  --customer-ds-line: rgba(74, 105, 110, .32);
  --customer-ds-focus: rgba(15, 118, 110, .28);
  --customer-ds-muted-bg: #f8fbfb;
  --customer-ds-safe: #0b6f68;
  --customer-ds-review: #99600f;
  --customer-ds-blocked: #a03327;
}

body[data-page] :where(.topnav, .rail) {
  scrollbar-width: thin;
  scroll-snap-type: x proximity;
}

body[data-page] :where(.topnav a, .rail a) {
  scroll-snap-align: start;
  min-height: var(--customer-ds-hit);
  border-radius: var(--customer-ds-radius);
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  input,
  select,
  textarea,
  .request-preset-card,
  .customer-step-jump
):focus-visible {
  outline: 3px solid var(--customer-ds-focus);
  outline-offset: 2px;
}

body[data-page] :where(button:disabled, .primary-action[aria-disabled="true"]) {
  background: #e4ecec;
  border-color: var(--customer-ds-line);
  color: #6b7d82;
  box-shadow: none;
}

body[data-page] :where(.panel-head) {
  min-width: 0;
}

body[data-page] :where(.panel-head > div, .panel-head > h2, .panel-head > p) {
  min-width: 0;
}

body[data-page] :where(
  h1,
  h2,
  h3,
  .panel-head h2,
  .review-panel-box h3,
  .delivery-receipt-panel h3
) {
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-governance-strip,
  .customer-evidence-card-gate,
  .delivery-checklist,
  .evidence-card-grid,
  .workflow-demo-steps,
  .matrix-list,
  .step-list,
  .pillars,
  .value-proof-grid
) {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}

body[data-page] :where(
  .customer-governance-strip article,
  .customer-evidence-card-gate > div,
  .customer-evidence-card-gate > p,
  .delivery-check,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .matrix-list > article,
  .step-list > article,
  .step-list > div
) {
  border-radius: var(--customer-ds-radius);
  border-color: var(--customer-ds-line);
  background: #fff;
}

body[data-page] :where(.delivery-check.pass, .customer-governance-strip article:first-child) {
  border-left-color: var(--customer-ds-safe);
}

body[data-page] :where(.delivery-check.blocked, .delivery-check.fail) {
  border-left-color: var(--customer-ds-blocked);
}

body[data-page] :where(.customer-governance-strip article:nth-child(2), .customer-evidence-card-gate > p) {
  border-left-color: var(--customer-ds-review);
}

body[data-page] :where(.matrix-table, .report-table) {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  min-width: 0;
  padding: 10px 12px;
  border-bottom: 1px solid var(--customer-ds-line);
  line-height: 1.45;
  overflow-wrap: anywhere;
  vertical-align: top;
}

body[data-page] :where(.matrix-table th, .report-table th) {
  background: var(--customer-ds-muted-bg);
  color: #314047;
  font-size: 12px;
  font-weight: 900;
  text-align: left;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  justify-content: center;
  text-align: center;
}

@media (max-width: 900px) {
  body[data-page] :where(.topbar) {
    grid-template-columns: minmax(0, auto) minmax(0, 1fr);
  }

  body[data-page] :where(.top-status) {
    grid-column: 1 / -1;
    justify-self: start;
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.topnav, .rail) {
    gap: 8px;
    padding-bottom: 4px;
  }

  body[data-page] :where(.topnav a, .rail a) {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, button.primary-action) {
    width: 100%;
  }

  body[data-page] :where(.matrix-table, .report-table) {
    min-width: 620px;
  }
}

/* Customer public design-system refinement: keep evidence and review states legible. */
:root {
  --customer-public-review-surface: #fff8ea;
  --customer-public-locked-surface: #fff3f0;
  --customer-public-safe-surface: #eefaf6;
  --customer-public-state-line: rgba(74, 105, 110, .3);
}

body[data-page] :where(
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .customer-research-submit-firebreak,
  .report-hard-stop-receipt
) {
  border-color: var(--customer-public-state-line);
  border-left: 4px solid var(--customer-ds-review, #99600f);
  border-radius: var(--customer-ds-radius, 8px);
  background: var(--customer-public-review-surface);
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-download-wait-checklist,
  .report-hard-stop-receipt,
  .customer-step-locked,
  [data-control-state="locked_until_review_release"],
  [aria-disabled="true"]
) {
  border-color: rgba(160, 51, 39, .3);
  border-left-color: var(--customer-ds-blocked, #a03327);
  background: var(--customer-public-locked-surface);
}

body[data-page] :where(
  .delivery-check.pass,
  .report-release-control-checks article.pass,
  .customer-evidence-action-summary-lanes article.pass
) {
  border-left-color: var(--customer-ds-safe, #0b6f68);
  background: var(--customer-public-safe-surface);
}

body[data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .customer-workflow-progress-boundary span
) {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(.panel, .review-panel-box, .delivery-receipt-panel, .report-preview) > :last-child {
  margin-bottom: 0;
}

@media (max-width: 620px) {
  body[data-page] :where(
    .source-lock-boundary,
    .sample-preview-gate,
    .delivery-governance-panel,
    .customer-download-wait-checklist,
    .customer-research-submit-firebreak,
    .report-hard-stop-receipt
  ) {
    padding: 12px;
  }
}

/* Public customer design-system completion: final cascade for plain, stable pages. */
:root {
  --customer-ds-page-bg: #f4f7f7;
  --customer-ds-panel-bg: #ffffff;
  --customer-ds-panel-soft: #f8fbfb;
  --customer-ds-text: #102024;
  --customer-ds-muted: #5d7076;
}

body[data-page][data-page] {
  background: var(--customer-ds-page-bg) !important;
  color: var(--customer-ds-text);
  font-size: 15px;
}

body[data-page][data-page] :where(.workspace) {
  width: min(1360px, 100%);
  padding: 22px;
}

body[data-page][data-page] :is(h1, h2, h3, h4, p, span, small, b, label, button, a) {
  letter-spacing: 0;
}

body[data-page][data-page] .hero-copy h1,
body[data-page][data-page] h1 {
  max-width: 760px;
  font-size: 46px;
  line-height: 1.05;
  letter-spacing: 0;
}

body[data-page][data-page] :where(h2) {
  font-size: 24px;
  line-height: 1.18;
}

body[data-page][data-page] :where(.panel-head h2, .review-panel-box h3, .delivery-receipt-panel h3) {
  font-size: 20px;
  line-height: 1.25;
}

body[data-page][data-page] :where(.lede, #missionText) {
  color: var(--customer-ds-muted);
  font-size: 15px;
  line-height: 1.55;
}

body[data-page][data-page] :where(.eyebrow) {
  letter-spacing: 0;
}

body[data-page][data-page] :where(.status-strip.value-hero) {
  grid-template-columns: minmax(0, .96fr) minmax(420px, 1.04fr);
  gap: 18px;
  margin-bottom: 18px;
  border-radius: var(--customer-ds-radius, 8px);
  background: var(--customer-ds-panel-bg);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
}

body[data-page][data-page] :where(
  .panel,
  .platform-preview,
  .structured-brief-preview,
  .request-preset-card,
  .metric,
  .platform-map article,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .report-hard-stop-receipt
) {
  border-radius: var(--customer-ds-radius, 8px);
}

body[data-page][data-page] :where(.panel, .platform-map article, .metric) {
  box-shadow: 0 8px 22px rgba(15, 23, 42, .07);
}

body[data-page][data-page] :where(button, .primary-action, .secondary-link, input, select, textarea) {
  border-radius: var(--customer-ds-radius, 8px);
}

body[data-page][data-page] :where(.metrics-grid) {
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

body[data-page][data-page] :where(.metric) {
  min-height: 78px;
  background: var(--customer-ds-panel-soft);
}

body[data-page][data-page] :where(.metric b) {
  font-size: 21px;
}

body[data-page][data-page] :where(.platform-map) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body[data-page][data-page] :where(.platform-map article) {
  min-height: 112px;
  background: var(--customer-ds-panel-bg);
}

body[data-page][data-page] .platform-map article::before {
  background: var(--customer-ds-safe, #0b6f68);
}

@media (max-width: 1100px) {
  body[data-page][data-page] :where(.status-strip.value-hero) {
    grid-template-columns: 1fr;
  }

  body[data-page][data-page] :where(.platform-map) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body[data-page][data-page] :where(.workspace) {
    padding: 14px;
  }

  body[data-page][data-page] .hero-copy h1,
  body[data-page][data-page] h1 {
    font-size: 31px;
    line-height: 1.08;
  }

  body[data-page][data-page] :where(.status-strip.value-hero, .panel) {
    padding: 14px;
  }

  body[data-page][data-page] :where(.platform-map) {
    grid-template-columns: 1fr;
  }
}

/* Public customer decision-layout normalization: final customer cascade for
   compact pages, 8px surfaces, and stable evidence review grids. */
body[data-page][data-page][data-page] {
  --customer-card-radius: 8px;
  --customer-ds-radius: 8px;
  --customer-final-radius: 8px;
  --customer-readable-radius: 8px;
  --customer-panel-radius: 8px;
  --customer-layout-gap: 12px;
}

body[data-page][data-page][data-page] :where(
  .status-strip.value-hero,
  .panel,
  .platform-preview,
  .structured-brief-preview,
  .request-preset-card,
  .metric,
  .platform-map article,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-download-wait-checklist,
  .report-hard-stop-receipt,
  .customer-action-gate,
  .customer-next-action-queue,
  .customer-target-inventory,
  .customer-step-handoff-receipt,
  .customer-next-handoff-preview,
  .customer-resume-checkpoint,
  .customer-data-hydration-receipt
) {
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .06);
}

body[data-page][data-page][data-page] :where(.status-strip.value-hero) {
  min-height: auto;
  align-items: start;
  padding: clamp(16px, 2vw, 22px);
}

body[data-page][data-page][data-page] :where(.workbench, .grid-two, .delivery-layout) {
  gap: var(--customer-layout-gap);
}

body[data-page][data-page][data-page] :where(
  .customer-governance-strip,
  .delivery-checklist,
  .evidence-card-grid,
  .workflow-demo-steps,
  .matrix-list,
  .step-list,
  .pillars,
  .value-proof-grid,
  .customer-step-handoff-grid,
  .customer-next-handoff-grid,
  .customer-resume-checkpoint-grid,
  .customer-data-hydration-grid,
  .customer-target-summary
) {
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 10px;
}

body[data-page][data-page][data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span,
  .topnav a,
  .rail a,
  button,
  .primary-action,
  .secondary-link,
  input,
  select,
  textarea
) {
  border-radius: 8px;
}

body[data-page][data-page][data-page] :where(.panel-head, .cand-head, .report-cover, .brief-preview-head) {
  gap: 10px;
}

body[data-page][data-page][data-page] :where(.hero-copy::after) {
  border-radius: 8px;
}

@media (max-width: 900px) {
  body[data-page][data-page][data-page] :where(.workbench, .grid-two, .delivery-layout) {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  body[data-page][data-page][data-page] :where(.workspace) {
    padding: 12px;
  }

  body[data-page][data-page][data-page] :where(.panel, .status-strip.value-hero) {
    padding: 12px;
  }
}

/* Public customer scan-state refinement: visual-only addendum for consistent
   evidence, review, and locked states across generated customer pages. */
body[data-page][data-page][data-page][data-page] {
  --customer-state-safe: #0b6f68;
  --customer-state-review: #a35f08;
  --customer-state-locked: #b42318;
  --customer-state-safe-bg: #f0fbf8;
  --customer-state-review-bg: #fff8ea;
  --customer-state-locked-bg: #fff3f0;
  --customer-state-line: rgba(132, 161, 166, .34);
}

body[data-page][data-page][data-page][data-page] :where(
  .delivery-check.pass,
  .chip.ok,
  .claim-badge.screened,
  .claim-badge.evidence-gated,
  .claim-badge.units-checked,
  .customer-next-action-grid article[data-current="true"],
  .customer-workflow-continuity-grid article[data-status*="ready"],
  .customer-step-handoff-grid article[data-status*="ready"]
) {
  border-color: rgba(11, 111, 104, .26);
  border-left-color: var(--customer-state-safe);
  background: var(--customer-state-safe-bg);
  color: var(--customer-state-safe);
}

body[data-page][data-page][data-page][data-page] :where(
  .delivery-check,
  .chip.warn,
  .claim-badge.boundary,
  .claim-badge.row-evidence-needed,
  .claim-badge.screening-required,
  .claim-badge.validation-required,
  .source-lock-boundary,
  .sample-preview-gate,
  .delivery-governance-panel,
  .customer-release-progress li.current,
  .customer-action-gate,
  .customer-next-action-queue
) {
  border-color: rgba(163, 95, 8, .28);
  border-left-color: var(--customer-state-review);
  background: var(--customer-state-review-bg);
}

body[data-page][data-page][data-page][data-page] :where(
  .delivery-check.blocked,
  .chip.bad,
  .claim-badge.no-guarantee,
  .claim-badge.no-customer-commitment,
  .constraint-hold,
  .customer-step-locked,
  .customer-next-action-grid article[data-status*="locked"],
  .customer-next-action-grid article[data-status*="blocked"],
  .customer-workflow-continuity-grid article[data-status*="blocked"],
  button:disabled,
  [aria-disabled="true"]
) {
  border-color: rgba(180, 35, 24, .24);
  border-left-color: var(--customer-state-locked);
  background: var(--customer-state-locked-bg);
}

body[data-page][data-page][data-page][data-page] :where(
  .delivery-check,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .evidence-card-grid > article,
  .workflow-demo-steps > article,
  .customer-step-handoff-grid > article,
  .customer-next-handoff-grid > article,
  .customer-resume-checkpoint-grid > article,
  .customer-target-inventory-grid > article,
  .customer-data-hydration-grid > article
) {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  min-height: 0;
  border-radius: 8px;
  overflow-wrap: anywhere;
}

body[data-page][data-page][data-page][data-page] :where(
  .boundary-strip,
  .evidence-gate-strip,
  .claim-badge-row
) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body[data-page][data-page][data-page][data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .evidence-gate-strip span
) {
  min-height: 28px;
  max-width: 100%;
  padding: 5px 8px;
  border-radius: 999px;
  line-height: 1.25;
  white-space: normal;
  text-align: center;
  overflow-wrap: anywhere;
}

body[data-page][data-page][data-page][data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump
) {
  min-height: 44px;
  padding-inline: 12px;
  border-radius: 8px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

body[data-page][data-page][data-page][data-page] :where(
  .panel-head,
  .delivery-readiness-head,
  .customer-release-progress-head,
  .feedback-handoff-head,
  .generated-candidate-head,
  .cand-head
) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
}

body[data-page][data-page][data-page][data-page] :where(
  .panel-head > *,
  .delivery-readiness-head > *,
  .customer-release-progress-head > *,
  .feedback-handoff-head > *,
  .generated-candidate-head > *,
  .cand-head > *
) {
  min-width: 0;
}

body[data-page][data-page][data-page][data-page] :where(
  .panel-head > button,
  .panel-head > .secondary-link,
  .panel-head > .chip,
  .delivery-readiness-head > .chip,
  .generated-candidate-head > .chip
) {
  justify-self: end;
}

body[data-page][data-page][data-page][data-page] :where(
  .matrix-table,
  .report-table
) {
  max-width: 100%;
  overflow-x: auto;
  border-radius: 8px;
  -webkit-overflow-scrolling: touch;
}

body[data-page][data-page][data-page][data-page] :where(th, td) {
  min-width: 112px;
  overflow-wrap: anywhere;
}

body[data-page][data-page][data-page][data-page] :where(
  .topnav a,
  .rail a,
  button,
  .primary-action,
  .secondary-link,
  .request-preset-card,
  input,
  select,
  textarea
):focus-visible {
  outline: 3px solid rgba(14, 116, 144, .32);
  outline-offset: 2px;
}

@media (max-width: 760px) {
  body[data-page][data-page][data-page][data-page] :where(
    .panel-head,
    .delivery-readiness-head,
    .customer-release-progress-head,
    .feedback-handoff-head,
    .generated-candidate-head,
    .cand-head
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page][data-page][data-page][data-page] :where(
    .panel-head > button,
    .panel-head > .secondary-link,
    .panel-head > .chip,
    .delivery-readiness-head > .chip,
    .generated-candidate-head > .chip
  ) {
    justify-self: stretch;
  }
}

@media (max-width: 620px) {
  body[data-page][data-page][data-page][data-page] :where(
    .customer-governance-strip,
    .delivery-checklist,
    .evidence-card-grid,
    .workflow-demo-steps,
    .matrix-list,
    .step-list,
    .pillars,
    .value-proof-grid,
    .customer-step-handoff-grid,
    .customer-next-handoff-grid,
    .customer-resume-checkpoint-grid,
    .customer-data-hydration-grid,
    .customer-target-inventory-grid
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page][data-page][data-page][data-page] :where(
    .panel,
    .review-panel-box,
    .delivery-receipt-panel,
    .report-preview,
    .delivery-check,
    .candidate,
    .claim-card,
    .generated-candidate-card
  ) {
    padding: 10px;
  }

  body[data-page][data-page][data-page][data-page] :where(
    button,
    .primary-action,
    .secondary-link,
    .customer-step-jump
  ) {
    width: 100%;
  }
}

@media print {
  body[data-page][data-page][data-page][data-page] :where(
    .panel,
    .delivery-check,
    .candidate,
    .claim-card,
    .generated-candidate-card,
    .review-panel-box,
    .delivery-receipt-panel,
    .report-preview,
    .source-lock-boundary,
    .sample-preview-gate,
    .delivery-governance-panel
  ) {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Customer action gate refinement: generated review steps and locked actions
   use the same visual language across workbench, evidence, and report pages. */
body[data-page] :where(
  .customer-action-gate,
  .customer-workflow-continuity,
  .customer-step-handoff-receipt
) {
  display: grid;
  gap: 12px;
  min-width: 0;
}

body[data-page] :where(
  .customer-action-gate-head,
  .customer-workflow-continuity-head,
  .customer-step-handoff-head,
  .customer-next-action-head
) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  min-width: 0;
}

body[data-page] :where(
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-next-action-grid,
  .customer-workflow-continuity-summary,
  .customer-step-handoff-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr));
  gap: 8px;
  min-width: 0;
}

body[data-page] :where(
  .customer-action-gate-grid article,
  .customer-action-gate-locked article,
  .customer-action-gate-summary article,
  .customer-current-action,
  .customer-next-action-grid article,
  .customer-workflow-continuity-summary article,
  .customer-step-handoff-grid article
) {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--customer-info-line, #0e7490);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-surface, #fff);
  padding: 10px;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-action-gate-grid article[data-status*="current"],
  .customer-next-action-grid article[data-current="true"],
  .customer-current-action
) {
  border-left-color: var(--customer-review-line, #b7791f);
  background: var(--warn-bg, #fff7e6);
}

body[data-page] :where(
  .customer-action-gate-locked article,
  .customer-next-action-grid article[data-status*="blocked"],
  .customer-step-locked
) {
  border-color: rgba(180, 35, 24, .22);
  border-left-color: var(--customer-blocked-line, #b42318);
  background: var(--bad-bg, #fff1f0);
}

body[data-page] :where(
  .customer-step-jump,
  .customer-step-locked
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  max-width: 100%;
  border-radius: var(--customer-card-radius, 8px);
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-step-jump) {
  border: 1px solid rgba(15, 118, 110, .24);
  background: #eefaf4;
  color: #0b5f55;
}

body[data-page] :where(.customer-step-locked) {
  cursor: not-allowed;
  color: var(--customer-blocked-line, #b42318);
}

body[data-page] :where(
  .customer-action-gate-grid b,
  .customer-action-gate-locked b,
  .customer-action-gate-summary b,
  .customer-current-action b,
  .customer-next-action-grid b,
  .customer-workflow-route-readback-grid b,
  .customer-workflow-continuity-summary b,
  .customer-step-handoff-grid b
) {
  color: var(--ink, #162024);
  font-size: 13px;
  line-height: 1.3;
}

body[data-page] :where(
  .customer-action-gate-grid span,
  .customer-action-gate-locked span,
  .customer-action-gate-summary span,
  .customer-current-action p,
  .customer-next-action-grid span,
  .customer-next-action-grid small,
  .customer-workflow-route-readback-grid span,
  .customer-workflow-route-readback-grid small,
  .customer-workflow-continuity-summary span,
  .customer-step-handoff-grid span
) {
  margin: 0;
  color: var(--muted, #607078);
  font-size: 12px;
  line-height: 1.45;
}

@media (max-width: 760px) {
  body[data-page] :where(
    .customer-action-gate-head,
    .customer-workflow-continuity-head,
    .customer-step-handoff-head,
    .customer-next-action-head
  ) {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(
    .customer-action-gate-grid,
    .customer-action-gate-locked,
    .customer-action-gate-summary,
    .customer-next-action-grid,
    .customer-workflow-route-readback-grid,
    .customer-workflow-continuity-summary,
    .customer-step-handoff-grid
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.customer-step-jump, .customer-step-locked) {
    width: 100%;
  }
}

/* Customer skip-target refinement: the keyboard bypass lands on the shared
   customer workspace landmark, not an interior status card. */
body[data-page] #mainContent {
  scroll-margin-top: calc(var(--customer-anchor-offset, 88px) + 8px);
}

body[data-page] #mainContent:focus {
  outline: none;
}

body[data-page] #mainContent:focus-visible {
  outline: none;
}

/* Final customer design-system surface normalization. */
body[data-page][data-page][data-page][data-page][data-page] :where(.topbar) {
  border-bottom: 1px solid var(--lab-line, var(--line));
}

body[data-page][data-page][data-page][data-page][data-page] :where(.rail) {
  border-right: 1px solid var(--lab-line, var(--line));
}

body[data-page][data-page][data-page][data-page][data-page] :where(
  .brand-mark,
  .topnav a,
  .top-status,
  .rail a,
  .platform-preview,
  .platform-preview img,
  .metric,
  .candidate,
  .result-cards article,
  .pillars article,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list article,
  .matrix-list article,
  .platform-map article,
  .boundary-strip span,
  input,
  select,
  textarea,
  button,
  .primary-action,
  .secondary-link,
  .chip,
  pre,
  .composition span
) {
  border-radius: 7px;
}

body[data-page][data-page][data-page][data-page][data-page] :where(.status-strip, .value-hero, .panel, .card) {
  border: 1px solid var(--lab-line, var(--line));
  border-radius: 8px;
}

body[data-page][data-page][data-page][data-page][data-page] :where(.candidate) {
  border-top: 3px solid var(--lab-accent, var(--accent));
}

body[data-page][data-page][data-page][data-page][data-page] :where(.top-status, button, .primary-action) {
  border-color: var(--lab-line, var(--line));
}

@media (max-width: 900px) {
  body[data-page][data-page][data-page][data-page][data-page] :where(.rail) {
    border-right: 0;
    border-bottom: 1px solid var(--lab-line, var(--line));
  }
}

body[data-page] #customerWorkflowProgress .customer-workflow-route-readback {
  margin: 12px 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--accent-2, #0e7490);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 12px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-route-readback .panel-head {
  margin-bottom: 10px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-route-readback-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
  gap: 8px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-route-readback-grid > article {
  min-width: 0;
  border: 1px solid var(--line, #dce4e6);
  border-left: 4px solid var(--accent, #0f766e);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--ok-bg, #e8f6f1);
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-workflow-route-readback-grid > article:nth-last-child(-n+4) {
  border-left-color: var(--customer-blocked-line, #b42318);
  background: var(--bad-bg, #fff1f0);
}

body[data-page] #customerWorkflowProgress .customer-workflow-route-readback-grid b,
body[data-page] #customerWorkflowProgress .customer-workflow-route-readback-grid small {
  display: block;
}

/* Public customer design-system guardrail: visual-only fit and state rhythm. */
:root {
  --customer-readable-line-height: 1.45;
  --customer-panel-fit-pad: clamp(12px, 1.1vw, 16px);
  --customer-panel-fit-gap: clamp(8px, .9vw, 12px);
  --customer-fit-safe-line: #0f766e;
  --customer-fit-review-line: #a35f08;
  --customer-fit-blocked-line: #b42318;
  --customer-fit-info-line: #0e7490;
}

body[data-page] :where(
  .panel,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .customer-governance-strip article,
  .platform-map article,
  .delivery-check,
  .claim-card,
  .candidate,
  .generated-candidate-card,
  .request-preset-card
) {
  min-width: 0;
  padding: var(--customer-panel-fit-pad);
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .panel-head,
  .delivery-readiness-head,
  .feedback-handoff-head,
  .customer-action-gate-head,
  .customer-next-action-head,
  .customer-step-handoff-head
) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, auto);
  gap: var(--customer-panel-fit-gap);
  align-items: start;
}

body[data-page] :where(
  .panel-head > *,
  .delivery-readiness-head > *,
  .feedback-handoff-head > *,
  .customer-action-gate-head > *,
  .customer-next-action-head > *,
  .customer-step-handoff-head > *,
  .hero-copy,
  .hero-stage,
  .platform-preview,
  .metric
) {
  min-width: 0;
}

body[data-page] :where(
  .chip,
  .claim-badge,
  .boundary-strip span,
  .top-status
) {
  min-height: 30px;
  max-width: 100%;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-governance-strip,
  .platform-map,
  .metrics-grid,
  .result-cards,
  .candidate-grid,
  .evidence-card-grid,
  .workflow-demo-steps,
  .delivery-checklist,
  .pillars,
  .matrix-list,
  .service-boundary-grid
) {
  gap: var(--customer-panel-fit-gap);
}

body[data-page] :where(
  .delivery-check.pass,
  [data-status*="ready"],
  [data-status*="safe"],
  [data-status*="verified"]
) {
  border-left-color: var(--customer-fit-safe-line);
}

body[data-page] :where(
  [data-status*="review"],
  [data-state*="review"],
  [data-release-effect="false"]
) {
  border-left-color: var(--customer-fit-review-line);
}

body[data-page] :where(
  [data-status*="blocked"],
  [data-status*="locked"],
  [aria-disabled="true"],
  button:disabled
) {
  border-left-color: var(--customer-fit-blocked-line);
}

body[data-page] :where(button, .primary-action, .secondary-link, input, select, textarea):focus-visible {
  outline: 3px solid var(--customer-focus-ring, rgba(14, 116, 144, .24));
  outline-offset: 2px;
}

@media (max-width: 900px) {
  body[data-page] :where(
    .panel-head,
    .delivery-readiness-head,
    .feedback-handoff-head,
    .customer-action-gate-head,
    .customer-next-action-head,
    .customer-step-handoff-head
  ) {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.workspace) {
    padding-inline: 12px;
  }

  body[data-page] :where(.metrics-grid, .platform-map) {
    grid-template-columns: 1fr;
  }
}

/* Customer review-state polish: visual-only refinement for public surfaces. */
:root {
  --customer-review-safe-bg: #f3fbf8;
  --customer-review-wait-bg: #fff8e8;
  --customer-review-hold-bg: #fff1ee;
  --customer-review-info-bg: #f2fbfc;
}

body[data-page] :where(
  .customer-workflow-progress,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .customer-evidence-safety-receipt,
  .customer-evidence-card-gate > *,
  .delivery-check
) {
  border-left-width: 4px;
  border-left-style: solid;
  border-left-color: var(--customer-fit-info-line, #0e7490);
  background: var(--customer-review-info-bg);
}

body[data-page] :where(
  .job-result.empty-state,
  .placeholder,
  .review-panel-box.placeholder,
  .delivery-receipt-panel.placeholder,
  .chip.warn
) {
  border-color: #f3dcad;
  border-left-color: var(--customer-fit-review-line, #a35f08);
  background: var(--customer-review-wait-bg);
}

body[data-page] :where(
  .chip.ok,
  .delivery-check.pass,
  .customer-release-progress li.done
) {
  border-left-color: var(--customer-fit-safe-line, #0f766e);
  background: var(--customer-review-safe-bg);
}

body[data-page] :where(
  .chip.bad,
  .delivery-check.blocked,
  .customer-release-progress li.blocked,
  button:disabled
) {
  border-left-color: var(--customer-fit-blocked-line, #b42318);
  background: var(--customer-review-hold-bg);
}

body[data-page] :where(button:disabled) {
  color: var(--customer-fit-blocked-line, #b42318);
  border-color: #f1cbc6;
  box-shadow: none;
}

body[data-page] :where(
  .customer-workflow-progress-boundary,
  .boundary-strip,
  .claim-badge-row,
  .composition
) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body[data-page] :where(
  .customer-workflow-progress-boundary span,
  .boundary-strip span,
  .claim-badge,
  .composition span
) {
  flex: 0 1 auto;
  min-width: min(100%, 88px);
  justify-content: center;
  text-align: center;
}

body[data-page] :where(
  #design,
  #generated,
  #reviewPanel,
  #feedbackForm,
  #candidates,
  #evidence-chain,
  #workflow-demo,
  #decision-packet,
  #report-loop
) {
  scroll-margin-top: 88px;
}

@media (max-width: 620px) {
  body[data-page] :where(
    .customer-workflow-progress-boundary span,
    .boundary-strip span,
    .claim-badge,
    .composition span
  ) {
    flex: 1 1 min(100%, 140px);
  }
}

/* Customer boundary-panel refinement: keep standalone review/service notices
   visually aligned with the generated customer card system. */
body[data-page] :where(.service-scope-boundary-panel, .review-boundary-panel) {
  width: min(1360px, calc(100% - 44px));
  margin: 0 auto 12px;
  display: grid;
  gap: 6px;
  min-height: 64px;
  border-left: 4px solid var(--customer-fit-review-line, #a35f08);
  background: var(--customer-review-wait-bg, #fff8e8);
  color: #59420d;
  font-size: 13px;
  line-height: var(--customer-readable-line-height, 1.45);
}

body[data-page] :where(.review-boundary-panel) {
  border-left-color: var(--customer-fit-blocked-line, #b42318);
  background: var(--customer-review-hold-bg, #fff1ee);
  color: #6b241b;
}

body[data-page] :where(.service-scope-boundary-panel, .review-boundary-panel)::before {
  content: "Review boundary";
  color: var(--ink, #102024);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
}

body[data-page] :where(.service-scope-boundary-panel)::before {
  content: "Service scope";
}

@media (max-width: 900px) {
  body[data-page] :where(.service-scope-boundary-panel, .review-boundary-panel) {
    width: calc(100% - 24px);
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.service-scope-boundary-panel, .review-boundary-panel) {
    width: calc(100% - 24px);
    padding: 12px;
  }
}

/* Customer interaction affordance refinement: visual-only navigation and
   locked-action states for the public review workflow. */
body[data-page] {
  --customer-action-focus: rgba(14, 116, 144, .28);
  --customer-current-bg: #eef9f7;
  --customer-current-line: #0b6f68;
  --customer-locked-bg: #f5f7f7;
  --customer-locked-ink: #677b80;
}

body[data-page] :where(.topnav a, .rail a) {
  position: relative;
  border: 1px solid transparent;
  color: rgba(234, 255, 251, .76);
  overflow-wrap: anywhere;
}

body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
  border-color: rgba(15, 118, 110, .32);
  background: var(--customer-current-bg);
  color: #062f31;
  box-shadow: inset 0 -3px 0 var(--customer-current-line);
}

body[data-page] :where(.rail a[aria-current="location"]) {
  box-shadow: inset 4px 0 0 var(--customer-current-line);
}

body[data-page] :where(button:disabled, [aria-disabled="true"], .customer-step-locked) {
  border-color: rgba(177, 59, 46, .22);
  background: var(--customer-locked-bg);
  color: var(--customer-locked-ink);
  cursor: not-allowed;
  box-shadow: none;
}

body[data-page] :where(button:disabled, [aria-disabled="true"], .customer-step-locked) * {
  color: inherit;
}

body[data-page] :where(
  .topnav a,
  .rail a,
  button,
  .primary-action,
  .secondary-link,
  .customer-step-jump,
  .request-preset-card
):focus-visible {
  outline: 3px solid var(--customer-action-focus);
  outline-offset: 3px;
}

@media (max-width: 900px) {
  body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
    box-shadow: inset 0 -3px 0 var(--customer-current-line);
  }
}

@media (forced-colors: active) {
  body[data-page] :where(.topnav a[aria-current="page"], .rail a[aria-current="location"]) {
    border-color: Highlight;
    color: CanvasText;
  }

  body[data-page] :where(button:disabled, [aria-disabled="true"], .customer-step-locked) {
    border-color: GrayText;
    color: GrayText;
  }
}

/* Public customer design-system refinement: tighter rhythm, calmer surfaces,
   and consistent review-state affordances across the customer bundle. */
body[data-page] {
  --customer-page-max: 1440px;
  --customer-panel-pad: clamp(14px, 1.8vw, 20px);
  --customer-panel-gap: 12px;
  --customer-control-radius: 8px;
  --customer-panel-shadow: 0 1px 0 rgba(15, 23, 42, .04), 0 18px 42px rgba(15, 23, 42, .08);
  background: linear-gradient(135deg, #071113 0%, #0b171b 54%, #14201d 100%);
}

body[data-page] :where(h1, h2, h3, h4, .eyebrow) {
  letter-spacing: 0;
}

body[data-page] :where(.workspace) {
  width: min(var(--customer-page-max), 100%);
}

body[data-page] :where(
  .panel,
  .status-strip,
  .value-hero,
  .platform-map article,
  .metric,
  .structured-brief-preview,
  .platform-preview,
  .request-preset-card,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .matrix-table,
  .report-table,
  .service-scope-boundary-panel,
  .review-boundary-panel
) {
  border-radius: var(--customer-card-radius, 8px);
  box-shadow: var(--customer-panel-shadow);
}

body[data-page] :where(.panel) {
  padding: var(--customer-panel-pad);
}

body[data-page] :where(.grid-two, .delivery-layout, .workbench, .platform-map) {
  gap: var(--customer-panel-gap);
}

body[data-page] :where(.status-strip.value-hero) {
  min-height: 0;
  align-items: stretch;
}

body[data-page] :where(.hero-copy) {
  display: grid;
  align-content: start;
}

body[data-page] :where(.hero-copy h1) {
  max-width: 760px;
  text-wrap: balance;
}

body[data-page] :where(.hero-copy::after) {
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(.platform-preview img) {
  min-height: 180px;
  background: #102024;
}

body[data-page] :where(.metric) {
  display: grid;
  align-content: center;
  min-height: 76px;
}

body[data-page] :where(.metric b) {
  font-size: clamp(17px, 1.45vw, 22px);
  line-height: 1.15;
}

body[data-page] :where(.metric span, .platform-map small, .panel p, .review-panel-box, .delivery-receipt-panel) {
  line-height: 1.48;
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  input,
  select,
  textarea,
  .chip,
  .claim-badge,
  .composition span,
  .boundary-strip span
) {
  border-radius: var(--customer-control-radius, 8px);
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .composition span) {
  min-height: 28px;
  padding-inline: 8px;
}

body[data-page] :where(.panel-head) {
  align-items: start;
}

body[data-page] :where(.panel-head > div) {
  min-width: 0;
}

body[data-page] :where(.panel-head h2, .panel-head p, .cand-head, .generated-candidate-head) {
  overflow-wrap: anywhere;
}

body[data-page] :where(.delivery-check, .customer-governance-strip article, .evidence-overview article, .delivery-status-board article) {
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] :where(.delivery-check.pass, .chip.ok) {
  color: #0b5f58;
}

body[data-page] :where(.delivery-check.blocked, .chip.bad) {
  color: #7a241d;
}

body[data-page] :where(.request-preset-card, .customer-step-jump, .secondary-link, button) {
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

body[data-page] :where(.request-preset-card:hover, .customer-step-jump:hover, .secondary-link:hover, button:not(:disabled):hover) {
  transform: translateY(-1px);
}

@media (max-width: 1280px) {
  body[data-page] :where(.status-strip.value-hero) {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  body[data-page] :where(.topbar) {
    gap: 10px;
  }

  body[data-page] :where(.topnav) {
    scrollbar-width: thin;
  }

  body[data-page] :where(.workspace) {
    padding: 12px;
  }

  body[data-page] :where(.panel-head) {
    gap: 10px;
  }

  body[data-page] :where(.metrics-grid) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body[data-page] {
    --customer-panel-pad: 12px;
  }

  body[data-page] :where(.status-strip.value-hero) {
    padding: 14px;
  }

  body[data-page] :where(.hero-copy h1) {
    font-size: 28px;
    line-height: 1.08;
  }

  body[data-page] :where(.platform-preview img) {
    min-height: 136px;
  }

  body[data-page] :where(.metrics-grid, .customer-page-stage .metrics-grid) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.metric) {
    min-height: 0;
  }
}
#customerWorkflowProgress .customer-workflow-next-review-packet{margin-top:10px;border:1px solid var(--customer-flow-line,rgba(130,164,166,.34));border-left:4px solid var(--customer-flow-review-line,#a35f08);border-radius:8px;background:var(--customer-flow-review-bg,#fff8ea);padding:12px}#customerWorkflowProgress .customer-workflow-next-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:8px}#customerWorkflowProgress .customer-workflow-next-review-grid>article{min-width:0;border:1px solid var(--customer-flow-line,rgba(130,164,166,.34));border-left:4px solid var(--customer-flow-ready-line,#0f766e);border-radius:8px;background:var(--customer-flow-ready-bg,#eefaf6);padding:10px;overflow-wrap:anywhere}#customerWorkflowProgress .customer-workflow-next-review-grid>article:nth-last-child(-n+3){border-left-color:var(--customer-flow-locked-line,#b42318);background:var(--customer-flow-locked-bg,#fff3f0)}@media(max-width:620px){#customerWorkflowProgress .customer-workflow-next-review-grid{grid-template-columns:1fr}}@media print{#customerWorkflowProgress .customer-workflow-next-review-packet{background:#fff;box-shadow:none;break-inside:avoid}}

/* Customer review density refinement: keep generated review cards readable. */
body[data-page] {
  --customer-review-card-gap: 8px;
  --customer-review-card-min: 168px;
  --customer-review-ready-bg: #f2fbf8;
  --customer-review-wait-bg: #fff8e8;
  --customer-review-lock-bg: #fff3f0;
  --customer-review-ready-line: #0f766e;
  --customer-review-wait-line: #a35f08;
  --customer-review-lock-line: #b42318;
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-review-card-min), 100%), 1fr));
  gap: var(--customer-review-card-gap);
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span) {
  min-width: 0;
  border: 1px solid var(--line);
  border-left: 4px solid var(--customer-review-ready-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-review-ready-bg);
  padding: 10px;
  overflow-wrap: anywhere;
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span)[data-status*="wait" i],
body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span)[data-status*="current" i],
body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span).review {
  border-left-color: var(--customer-review-wait-line);
  background: var(--customer-review-wait-bg);
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span)[data-status*="block" i],
body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span)[data-control-state*="locked" i],
body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) > :where(article, span).blocked {
  border-left-color: var(--customer-review-lock-line);
  background: var(--customer-review-lock-bg);
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) :where(b, span, small, p) {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) :where(b) {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 1.25;
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-route-readback-grid,
  .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid,
  .customer-step-handoff-grid,
  .customer-target-summary,
  .customer-next-handoff-grid,
  .customer-action-gate-grid,
  .customer-action-gate-locked,
  .customer-action-gate-summary,
  .customer-evidence-safety-receipt-grid,
  .customer-evidence-review-lanes,
  .customer-evidence-action-lock-lanes,
  .customer-evidence-review-handoff-lanes,
  .customer-material-review-submission-grid
) :where(span, small, p) {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.42;
}

body[data-page] :where(.customer-action-gate, .customer-workflow-route-readback, .customer-workflow-receipt-export) {
  border-radius: var(--customer-card-radius, 8px);
}

@media (max-width: 620px) {
  body[data-page] {
    --customer-review-card-min: 100%;
  }

  body[data-page] :where(.customer-action-gate, .customer-workflow-route-readback, .customer-workflow-receipt-export) {
    padding: 12px;
  }
}

@media print {
  body[data-page] :where(
    .customer-workflow-summary-grid,
    .customer-workflow-route-readback-grid,
    .customer-workflow-receipt-grid,
    .customer-workflow-next-review-grid,
    .customer-step-handoff-grid,
    .customer-target-summary,
    .customer-next-handoff-grid,
    .customer-action-gate-grid,
    .customer-action-gate-locked,
    .customer-action-gate-summary,
    .customer-evidence-safety-receipt-grid,
    .customer-evidence-review-lanes,
    .customer-evidence-action-lock-lanes,
    .customer-evidence-review-handoff-lanes,
    .customer-material-review-submission-grid
  ) > :where(article, span) {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

body[data-page] .customer-material-review-submission-receipt {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--customer-review-wait-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 12px;
}

body[data-page] .customer-material-review-submission-receipt .panel-head {
  margin-bottom: 0;
}

body[data-page] .customer-material-review-submission-grid > article:nth-last-child(-n+4),
body[data-page] .customer-material-review-submission-receipt .boundary-strip > span {
  border-left-color: var(--customer-review-lock-line);
  background: var(--customer-review-lock-bg);
}

body[data-page] .customer-material-review-submission-receipt .boundary-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: 8px;
}

body[data-page] .customer-material-review-submission-receipt .review-receipt-next {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

/* Public customer route-shell refinement: stable spacing, anchor jumps, and dense responsive cards. */
body[data-page] {
  --customer-shell-gutter: clamp(12px, 2vw, 26px);
  --customer-route-card-min: min(210px, 100%);
  --customer-route-card-gap: 10px;
  --customer-anchor-offset: 88px;
  --customer-scrollbar-track: rgba(130, 164, 166, .16);
  --customer-scrollbar-thumb: rgba(15, 118, 110, .55);
}

body[data-page] :where(#mainContent, section[id], aside[id], article[id], form[id]) {
  scroll-margin-top: var(--customer-anchor-offset);
}

body[data-page] :where(.workspace.customer-compact-shell) {
  padding-inline: var(--customer-shell-gutter);
}

body[data-page] :where(.topnav, .rail, .matrix-table, .report-table, .table-wrap) {
  scrollbar-color: var(--customer-scrollbar-thumb) var(--customer-scrollbar-track);
}

body[data-page] :where(.topnav, .rail)::-webkit-scrollbar,
body[data-page] :where(.matrix-table, .report-table, .table-wrap)::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

body[data-page] :where(.topnav, .rail)::-webkit-scrollbar-track,
body[data-page] :where(.matrix-table, .report-table, .table-wrap)::-webkit-scrollbar-track {
  background: var(--customer-scrollbar-track);
  border-radius: 999px;
}

body[data-page] :where(.topnav, .rail)::-webkit-scrollbar-thumb,
body[data-page] :where(.matrix-table, .report-table, .table-wrap)::-webkit-scrollbar-thumb {
  background: var(--customer-scrollbar-thumb);
  border-radius: 999px;
}

body[data-page] :where(.platform-map, .metrics-grid, .result-cards, .candidate-grid, .evidence-card-grid, .workflow-demo-steps, .pillars, .value-proof-grid, .delivery-checklist, .step-list, .matrix-list, .customer-governance-strip, .customer-evidence-card-gate) {
  gap: var(--customer-route-card-gap);
}

body[data-page] :where(.platform-map, .metrics-grid, .result-cards, .candidate-grid, .evidence-card-grid, .workflow-demo-steps, .pillars, .value-proof-grid, .delivery-checklist) {
  grid-template-columns: repeat(auto-fit, minmax(var(--customer-route-card-min), 1fr));
}

body[data-page] :where(.platform-map article, .metric, .candidate, .claim-card, .generated-candidate-card, .delivery-check, .workflow-demo-steps article, .pillars article, .evidence-card-grid article, .request-preset-card) {
  min-height: 0;
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(.platform-preview, .structured-brief-preview, .report-preview, .review-panel-box, .delivery-receipt-panel) {
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(.platform-preview figcaption span, .topnav a, .rail a, button, .primary-action, .secondary-link, .chip, .claim-badge, .boundary-strip span) {
  overflow-wrap: anywhere;
}

body[data-page] :where(.hero-copy h1, .panel-head h2, .platform-map b, .metric b, .candidate h3, .generated-candidate-card h3) {
  text-wrap: balance;
}

@media (max-width: 900px) {
  body[data-page] {
    --customer-anchor-offset: 118px;
  }

  body[data-page] :where(.rail) {
    top: 0;
  }

  body[data-page] :where(.rail a) {
    min-width: max-content;
    padding-inline: 12px;
  }

  body[data-page] :where(.platform-preview figcaption) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body[data-page] {
    --customer-route-card-min: 100%;
    --customer-anchor-offset: 136px;
  }

  body[data-page] :where(.topnav a, .rail a) {
    min-height: 40px;
    white-space: nowrap;
  }

  body[data-page] :where(.platform-preview figcaption span) {
    padding-block: 8px;
  }
}

/* Public customer design-system fit pass: stable customer route shell,
   readable status rows, and consistent review action density. */
body[data-page] {
  --customer-route-shell-gap: 12px;
  --customer-route-soft-line: rgba(74, 105, 110, .3);
  --customer-route-ready-line: #0b6f68;
  --customer-route-review-line: #99600f;
  --customer-route-hold-line: #a03327;
  --customer-route-ready-bg: #f1fbf8;
  --customer-route-review-bg: #fff8ea;
  --customer-route-hold-bg: #fff3f0;
}

body[data-page] :where(.layout) {
  grid-template-columns: minmax(84px, 96px) minmax(0, 1fr);
}

body[data-page] :where(.workspace.customer-compact-shell) {
  display: grid;
  gap: var(--customer-route-shell-gap);
}

body[data-page] :where(
  .status-strip.value-hero,
  .workbench,
  .grid-two,
  .delivery-layout,
  .platform-map
) {
  margin-bottom: 0;
}

body[data-page] :where(.status-strip.value-hero) {
  grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr);
  gap: var(--customer-route-shell-gap);
}

body[data-page] :where(.workbench) {
  grid-template-columns: minmax(260px, .72fr) minmax(360px, 1fr) minmax(280px, .82fr);
  gap: var(--customer-route-shell-gap);
}

body[data-page] :where(.panel-head) {
  min-width: 0;
}

body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .panel-head > .chip) {
  flex: 0 1 auto;
  max-width: min(260px, 100%);
}

body[data-page] :where(
  .request-preset-grid,
  .customer-workflow-progress-steps,
  #customerWorkflowProgress > .workflow-demo-steps,
  #customerWorkflowProgress .customer-next-handoff-grid,
  #customerWorkflowProgress .customer-workflow-receipt-grid,
  .customer-workflow-next-review-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: 8px;
}

body[data-page] :where(
  .request-preset-card,
  #customerWorkflowProgress > .workflow-demo-steps > article,
  #customerWorkflowProgress .customer-next-handoff-grid > article,
  #customerWorkflowProgress .customer-workflow-receipt-grid > article,
  .customer-workflow-next-review-grid > article,
  .review-panel-box,
  .delivery-receipt-panel
) {
  min-width: 0;
  border-color: var(--customer-route-soft-line);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  #customerWorkflowProgress [data-status*="current" i],
  #customerWorkflowProgress [data-status*="known" i],
  #customerWorkflowProgress .customer-next-handoff-grid > article,
  #customerWorkflowProgress .customer-workflow-receipt-grid > article
) {
  border-left-color: var(--customer-route-ready-line);
  background: var(--customer-route-ready-bg);
}

body[data-page] :where(
  .review-panel-box.placeholder,
  .delivery-receipt-panel.placeholder,
  #customerWorkflowProgress .customer-next-action-queue,
  .customer-workflow-next-review-packet
) {
  border-left-color: var(--customer-route-review-line);
  background: var(--customer-route-review-bg);
}

body[data-page] :where(
  #customerWorkflowProgress [data-status*="blocked" i],
  #customerWorkflowProgress [data-control-state="locked_until_review_release"],
  #customerWorkflowProgress .customer-step-locked
) {
  border-left-color: var(--customer-route-hold-line);
  background: var(--customer-route-hold-bg);
}

body[data-page] :where(
  .request-preset-card b,
  #customerWorkflowProgress b,
  .review-panel-box b,
  .delivery-receipt-panel b
) {
  max-width: 100%;
  line-height: 1.24;
  text-wrap: balance;
}

body[data-page] :where(
  .request-preset-card small,
  #customerWorkflowProgress small,
  #customerWorkflowProgress span,
  .review-panel-box,
  .delivery-receipt-panel
) {
  line-height: 1.45;
}

body[data-page] :where(.customer-step-jump, .customer-step-locked, #customerWorkflowProgress button) {
  width: 100%;
  min-height: var(--customer-touch-target, 44px);
}

@media (max-width: 1280px) {
  body[data-page] :where(.status-strip.value-hero, .workbench) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.delivery-panel) {
    position: static;
  }
}

@media (max-width: 900px) {
  body[data-page] :where(.layout) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.rail) {
    position: static;
    height: auto;
    flex-direction: row;
    overflow-x: auto;
  }

  body[data-page] :where(.topbar) {
    grid-template-columns: minmax(100px, auto) minmax(0, 1fr);
  }

  body[data-page] :where(.top-status) {
    grid-column: 1 / -1;
    justify-self: stretch;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.topbar) {
    padding-inline: 12px;
  }

  body[data-page] :where(.topnav) {
    justify-content: start;
    overflow-x: auto;
  }

  body[data-page] :where(.panel-head) {
    display: grid;
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > button, .panel-head > .secondary-link, .panel-head > .chip) {
    max-width: none;
    width: 100%;
  }
}

/* Public customer design-system refinement: stable customer review cards,
   action controls, and readback grids across the existing pages. */
body[data-page] {
  --customer-card-radius: 8px;
  --customer-readback-gap: 8px;
  --customer-readback-card-min: 172px;
  --customer-readback-padding: 10px;
  --customer-action-min-height: 44px;
  --customer-copy-line-height: 1.45;
}

body[data-page] :where(
  .panel,
  .status-strip.value-hero,
  .platform-preview,
  .platform-map article,
  .request-preset-card,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .customer-workflow-summary,
  .customer-next-handoff-preview,
  .customer-resume-checkpoint,
  .customer-workflow-receipt-export,
  .customer-target-inventory,
  .customer-step-handoff-receipt,
  .report-publication-boundary-readback,
  .report-delivery-decision-readback
) {
  border-radius: var(--customer-card-radius);
}

body[data-page] :where(
  button,
  .primary-action,
  .secondary-link,
  .request-preset-card,
  .customer-step-jump,
  .customer-step-locked,
  .customer-workflow-receipt-copy
) {
  min-height: var(--customer-action-min-height);
  border-radius: var(--customer-card-radius);
}

body[data-page] :where(
  .customer-target-summary,
  .customer-target-inventory-grid,
  .customer-next-handoff-grid,
  .customer-workflow-summary-grid,
  .customer-workflow-receipt-grid,
  .customer-resume-checkpoint-grid,
  .customer-step-handoff-grid,
  .report-publication-boundary-grid,
  .report-delivery-decision-grid,
  .report-decision-no-go-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--customer-readback-card-min), 100%), 1fr));
  gap: var(--customer-readback-gap);
}

body[data-page] :where(
  .customer-target-summary,
  .customer-target-inventory-grid,
  .customer-next-handoff-grid,
  .customer-workflow-summary-grid,
  .customer-workflow-receipt-grid,
  .customer-resume-checkpoint-grid,
  .customer-step-handoff-grid,
  .report-publication-boundary-grid,
  .report-delivery-decision-grid,
  .report-decision-no-go-grid
) > :where(article, div) {
  min-width: 0;
  border-radius: var(--customer-card-radius);
  padding: var(--customer-readback-padding);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-target-summary,
  .customer-target-inventory-grid,
  .customer-next-handoff-grid,
  .customer-workflow-summary-grid,
  .customer-workflow-receipt-grid,
  .customer-resume-checkpoint-grid,
  .customer-step-handoff-grid,
  .report-publication-boundary-grid,
  .report-delivery-decision-grid,
  .report-decision-no-go-grid,
  .report-delivery-decision-controls,
  .report-publication-boundary-checks
) :where(b, span, small) {
  max-width: 100%;
  line-height: var(--customer-copy-line-height);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-workflow-receipt-json,
  .customer-workflow-receipt-json-box,
  .report-delivery-decision-controls,
  .report-publication-boundary-checks
) {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-workflow-receipt-json) {
  white-space: pre-wrap;
  word-break: break-word;
}

body[data-page] :where(
  .report-delivery-decision-controls,
  .report-publication-boundary-checks
) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body[data-page] :where(
  .report-delivery-decision-controls span,
  .report-publication-boundary-checks span
) {
  border: 1px solid var(--line, #dce4e6);
  border-radius: 999px;
  padding: 6px 9px;
  background: #fbfcfc;
  color: var(--customer-state-muted, #607078);
  font-size: 12px;
  font-weight: 800;
}

body[data-page] :where(
  .customer-workflow-summary,
  .customer-workflow-interaction-progress,
  .customer-next-handoff-preview,
  .customer-resume-checkpoint,
  .customer-workflow-receipt-export,
  .customer-target-inventory,
  .customer-step-handoff-receipt,
  .report-publication-boundary-readback,
  .report-delivery-decision-readback
) {
  box-shadow: var(--customer-status-shadow, 0 1px 0 rgba(15, 23, 42, .03));
}

body[data-page] #customerWorkflowProgress .customer-workflow-interaction-progress {
  margin: 12px 0;
  border: 1px solid var(--customer-flow-line, #dce4e6);
  border-left: 4px solid var(--customer-flow-ready-line, #0f766e);
  border-radius: 8px;
  background: var(--customer-flow-ready-bg, #eefaf6);
  padding: 12px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-interaction-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
  gap: 8px;
}

body[data-page] #customerWorkflowProgress .customer-workflow-interaction-grid > article {
  min-width: 0;
  border: 1px solid var(--customer-flow-line, #dce4e6);
  border-left: 4px solid var(--customer-flow-ready-line, #0f766e);
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-workflow-interaction-grid > article:nth-last-child(-n+2) {
  border-left-color: var(--customer-flow-locked-line, #b42318);
  background: var(--customer-flow-locked-bg, #fff3f0);
}

body[data-page] #customerWorkflowProgress :where(.customer-workflow-interaction-grid b, .customer-workflow-interaction-grid small, .customer-workflow-interaction-next) {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body[data-page] #customerWorkflowProgress .customer-workflow-interaction-next {
  margin: 10px 0 0;
  color: var(--customer-state-muted, #607078);
  font-size: 13px;
  line-height: 1.45;
}

@media (max-width: 760px) {
  body[data-page] :where(.workspace.customer-compact-shell) {
    padding: 12px;
  }

  body[data-page] :where(.status-strip.value-hero, .panel) {
    padding: 14px;
  }

  body[data-page] :where(h1) {
    font-size: 34px;
    line-height: 1.08;
  }

  body[data-page] :where(.customer-workflow-receipt-json) {
    max-height: 240px;
    overflow: auto;
  }
}

/* Public customer workbench refinement: compact controls and evidence grids. */
body[data-page] {
  --customer-control-border: rgba(85, 116, 122, .28);
  --customer-control-bg: #fbfdfd;
  --customer-state-ready: #0f766e;
  --customer-state-review: #9a620f;
  --customer-state-blocked: #a03327;
  --customer-state-ready-bg: #effaf6;
  --customer-state-review-bg: #fff8ea;
  --customer-state-blocked-bg: #fff3f0;
  --customer-focus-outline: rgba(14, 116, 144, .3);
}

body[data-page] :where(.form-grid, .feedback-grid, .perf, .metrics-grid) {
  min-width: 0;
}

body[data-page] :where(label, .form-grid label, .feedback-grid label) {
  min-width: 0;
  line-height: 1.35;
}

body[data-page] :where(input, select, textarea) {
  border-color: var(--customer-control-border);
  background: var(--customer-control-bg);
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(input, select, textarea)::placeholder {
  color: #728388;
}

body[data-page] :where(.primary-action, button, .secondary-link, .customer-step-jump, .customer-workflow-receipt-copy) {
  min-width: 0;
  min-height: var(--customer-touch-target, 44px);
  border-radius: var(--customer-card-radius, 8px);
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .composition span) {
  border-radius: 999px;
  line-height: 1.25;
}

body[data-page] :where(
  .job-result,
  .result-cards article,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list article,
  .step-list div,
  .matrix-list article,
  .matrix-list div,
  .delivery-check,
  .report-deliverables article,
  .report-summary-grid article
) {
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list article,
  .matrix-list article,
  .delivery-check
) {
  border-left: 4px solid var(--customer-state-review);
}

body[data-page] :where(.pass, .ready, .allowed, [data-status*="pass" i], [data-status*="ready" i], [data-status*="known" i]) {
  border-left-color: var(--customer-state-ready);
}

body[data-page] :where(.blocked, .locked, .denied, [data-status*="blocked" i], [data-control-state*="locked" i]) {
  border-left-color: var(--customer-state-blocked);
}

body[data-page] :where(.review, .pending, .current, .warn, [data-status*="review" i], [data-status*="current" i], [data-status*="wait" i]) {
  border-left-color: var(--customer-state-review);
}

body[data-page] :where(.customer-action-gate-grid, .customer-action-gate-locked, .customer-action-gate-summary, .customer-workflow-interaction-grid, .customer-workflow-route-readback-grid) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: 8px;
}

body[data-page] :where(.customer-action-gate-grid article, .customer-action-gate-locked article, .customer-action-gate-summary article, .customer-workflow-interaction-grid article, .customer-workflow-route-readback-grid article) {
  min-width: 0;
  border: 1px solid var(--customer-control-border);
  border-left: 4px solid var(--customer-state-review);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-action-gate-locked article, .customer-action-gate-summary article:nth-last-child(-n+3)) {
  border-left-color: var(--customer-state-blocked);
  background: var(--customer-state-blocked-bg);
}

body[data-page] :where(.customer-action-gate-grid article, .customer-workflow-interaction-grid article, .customer-workflow-route-readback-grid article) {
  background: var(--customer-state-review-bg);
}

body[data-page] :where(.customer-action-gate-grid article[data-status*="queued" i], .customer-workflow-route-readback-grid article[data-route-mode*="review" i]) {
  border-left-color: var(--customer-state-ready);
  background: var(--customer-state-ready-bg);
}

body[data-page] :where(.matrix-table, .report-table) {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

body[data-page] :where(.matrix-table table, .report-table table) {
  width: 100%;
  min-width: 620px;
  table-layout: fixed;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 760px) {
  body[data-page] :where(.form-grid, .feedback-grid, .perf, .metrics-grid) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head) {
    align-items: stretch;
  }

  body[data-page] :where(.matrix-table table, .report-table table) {
    min-width: 520px;
  }
}

/* Public customer design-system completion: scan-first cards and controls. */
body[data-page] {
  --customer-ds-surface: #ffffff;
  --customer-ds-soft: #f6faf9;
  --customer-ds-line: rgba(69, 95, 100, .28);
  --customer-ds-ink: #122529;
  --customer-ds-muted: #526a70;
  --customer-ds-ready: #0f766e;
  --customer-ds-review: #9a620f;
  --customer-ds-blocked: #a03327;
  --customer-ds-info: #0e7490;
  --customer-ds-gap: 12px;
}

body[data-page] :where(
  .panel,
  .status-strip.value-hero,
  .platform-map article,
  .metric,
  .request-preset-card,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list > article,
  .step-list > div,
  .matrix-list > article,
  .matrix-list > div,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview
) {
  border-color: var(--customer-ds-line);
  border-radius: var(--customer-card-radius, 8px);
  background-color: var(--customer-ds-surface);
  box-shadow: 0 1px 0 rgba(15, 23, 42, .035);
}

body[data-page] :where(.panel, .status-strip.value-hero) {
  padding: clamp(14px, 2vw, 20px);
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list > article,
  .step-list > div,
  .matrix-list > article,
  .matrix-list > div,
  .delivery-check
) {
  display: grid;
  align-content: start;
  gap: 8px;
  min-block-size: 100%;
}

body[data-page] :where(
  .platform-map,
  .metrics-grid,
  .result-cards,
  .candidate-grid,
  .evidence-card-grid,
  .workflow-demo-steps,
  .pillars,
  .value-proof-grid,
  .delivery-checklist,
  .customer-governance-strip,
  .customer-evidence-card-gate,
  .generated-candidate-grid
) {
  gap: var(--customer-ds-gap);
}

body[data-page] :where(h1, h2, h3, h4, p, li, dt, dd, span, small, b, strong) {
  overflow-wrap: anywhere;
}

body[data-page] :where(p, li, dd, small, .lede, .metric span, .candidate dd, .claim-card dd, .generated-candidate-card dd) {
  color: var(--customer-ds-muted);
}

body[data-page] :where(.panel-head) {
  gap: 10px;
}

body[data-page] :where(.panel-head .chip, .panel-head button, .panel-head .secondary-link) {
  align-self: start;
}

body[data-page] :where(button, .primary-action, .secondary-link, .customer-step-jump, .customer-workflow-receipt-copy) {
  border-color: var(--customer-ds-line);
  background-clip: padding-box;
}

body[data-page] :where(button:not(:disabled):hover, .primary-action:hover, .secondary-link:hover, .customer-step-jump:hover) {
  border-color: rgba(14, 116, 144, .42);
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding-block: 5px;
  text-align: center;
}

body[data-page] :where(.chip.info, .customer-data-state, .job-result.empty-state) {
  border-left-color: var(--customer-ds-info);
}

body[data-page] :where(.chip.ok, .pass, .ready, [data-status*="pass" i], [data-status*="ready" i]) {
  border-left-color: var(--customer-ds-ready);
}

body[data-page] :where(.chip.warn, .review, .pending, .current, [data-status*="review" i], [data-status*="current" i]) {
  border-left-color: var(--customer-ds-review);
}

body[data-page] :where(.chip.bad, .blocked, .locked, [data-status*="blocked" i], [data-control-state*="locked" i]) {
  border-left-color: var(--customer-ds-blocked);
}

body[data-page] :where(.matrix-table, .report-table, .customer-workflow-receipt-json) {
  border: 1px solid var(--customer-ds-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-ds-soft);
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  padding: 10px;
}

body[data-page] :where(.skip-link:focus, .skip-link:focus-visible) {
  background: var(--customer-ds-surface);
  color: var(--customer-ds-ink);
}

@media (max-width: 760px) {
  body[data-page] :where(.panel, .status-strip.value-hero) {
    padding: 12px;
  }

  body[data-page] :where(.panel-head) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > :last-child) {
    justify-self: stretch;
    width: 100%;
    max-width: none;
  }

  body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .evidence-gate-strip span) {
    width: 100%;
  }
}

@media print {
  body[data-page] :where(.panel, .status-strip.value-hero, .platform-map article, .metric, .report-preview) {
    background: #fff;
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Public customer visual fit refinement. */
body[data-page] {
  --customer-fit-gap: 12px;
  --customer-fit-line: rgba(85, 116, 122, .28);
  --customer-fit-ready: #0f766e;
  --customer-fit-review: #9a620f;
  --customer-fit-blocked: #a03327;
  --customer-fit-soft: #f8fbfb;
}

body[data-page] :where(
  #design,
  #generated,
  #reviewPanel,
  #feedbackForm,
  #candidates,
  #workflow-demo,
  #decision-packet,
  #report-loop,
  #workflow,
  .panel,
  .platform-map article
) {
  scroll-margin-top: 84px;
}

body[data-page] :where(.customer-workflow-progress:empty, .delivery-status-board:empty, .customer-governance-strip:empty) {
  min-height: 0;
  margin: 0;
  border: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

body[data-page] :where(.panel-head) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}

body[data-page] :where(.panel-head > *) {
  min-width: 0;
}

body[data-page] :where(.panel-head > :last-child) {
  justify-self: end;
  max-width: min(280px, 100%);
}

body[data-page] :where(.panel-head > button:last-child, .panel-head > .secondary-link:last-child) {
  width: auto;
}

body[data-page] :where(.boundary-strip, .evidence-gate-strip, .claim-badge-row, .delivery-checklist) {
  align-items: stretch;
}

body[data-page] :where(.boundary-strip span, .evidence-gate-strip span, .claim-badge) {
  min-height: 32px;
  justify-content: center;
  text-align: center;
}

body[data-page] :where(.candidate dl, .claim-card dl, .generated-candidate-card dl, .report-summary-grid, .report-deliverables) {
  min-width: 0;
}

body[data-page] :where(.candidate dt, .claim-card dt, .generated-candidate-card dt) {
  color: #203338;
}

body[data-page] :where(.candidate dd, .claim-card dd, .generated-candidate-card dd, .report-preview p, .delivery-receipt-panel p, .review-panel-box p) {
  color: #53686e;
}

body[data-page] :where(.request-preset-card.active, .topnav a[aria-current="page"], .rail a[aria-current="location"]) {
  border-color: rgba(15, 118, 110, .32);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .72);
}

body[data-page] :where(button:disabled, .customer-step-locked, [data-control-state*="locked" i]) {
  border-color: rgba(160, 51, 39, .32);
}

body[data-page] :where(.matrix-table, .report-table, .customer-workflow-receipt-json) {
  max-width: 100%;
  overflow: auto;
  scrollbar-gutter: stable;
}

body[data-page] :where(.matrix-table, .report-table) {
  border: 1px solid var(--customer-fit-line);
  border-radius: var(--customer-card-radius, 8px);
  background: var(--customer-fit-soft);
}

body[data-page] :where(.matrix-table table, .report-table table) {
  border-collapse: collapse;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  vertical-align: top;
}

@media (max-width: 900px) {
  body[data-page] :where(.panel-head) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head > :last-child) {
    justify-self: start;
    max-width: 100%;
  }

  body[data-page] :where(.panel-head > button:last-child, .panel-head > .secondary-link:last-child) {
    width: 100%;
  }
}

@media (max-width: 620px) {
  body[data-page] :where(.rail) {
    grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
  }

  body[data-page] :where(.boundary-strip span, .evidence-gate-strip span, .claim-badge) {
    width: 100%;
  }
}

/* Customer-safe design-system tuning. */
body[data-page] {
  --customer-design-safe: #0f766e;
  --customer-design-review: #9a620f;
  --customer-design-blocked: #a03327;
  --customer-design-line: rgba(85, 116, 122, .3);
  --customer-design-surface: #fff;
  --customer-design-soft: #f7fbfb;
  --customer-design-focus: rgba(14, 116, 144, .34);
}

body[data-page] :where(.workspace.customer-compact-shell) {
  container-type: inline-size;
}

body[data-page] :where(.panel, .status-strip.value-hero, .platform-map article, .metric) {
  border-color: var(--customer-design-line);
}

body[data-page] :where(
  .platform-map article,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list > article,
  .step-list > div,
  .matrix-list > article,
  .matrix-list > div,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel
) {
  background: var(--customer-design-surface);
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

body[data-page] :where(.platform-map article, .metric) {
  min-height: 0;
}

body[data-page] :where(.platform-map b, .metric b, .candidate h3, .generated-candidate-card h3) {
  overflow-wrap: anywhere;
  text-wrap: balance;
}

body[data-page] :where(.platform-map small, .metric span, .claim-badge, .chip, .delivery-check p) {
  overflow-wrap: anywhere;
}

body[data-page] :where(.chip.warn, .claim-badge.boundary, .claim-badge.validation-required, .delivery-check.pending, .delivery-check.review) {
  border-color: rgba(154, 98, 15, .32);
  color: var(--customer-design-review);
  background: #fff8ea;
}

body[data-page] :where(.chip.ok, .claim-badge.screened, .claim-badge.evidence-gated, .delivery-check.pass, .delivery-check.ready) {
  border-color: rgba(15, 118, 110, .28);
  color: var(--customer-design-safe);
  background: #effaf6;
}

body[data-page] :where(.chip.bad, .claim-badge.no-guarantee, .delivery-check.blocked, .customer-step-locked) {
  border-color: rgba(160, 51, 39, .28);
  color: var(--customer-design-blocked);
  background: #fff3f0;
}

body[data-page] :where(a, button, .primary-action, .secondary-link, input, select, textarea, .request-preset-card):focus-visible {
  outline: 3px solid var(--customer-design-focus);
  outline-offset: 3px;
}

body[data-page] :where(.topnav a, .rail a, button, .primary-action, .secondary-link) {
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

@container (max-width: 760px) {
  body[data-page] :where(.platform-map, .metrics-grid, .customer-governance-strip, .customer-evidence-card-gate) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.platform-map article, .metric) {
    padding: 12px;
  }
}

@media (max-width: 620px) {
  body[data-page] .layout {
    grid-template-columns: 1fr;
  }

  body[data-page] .rail {
    position: static;
    height: auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    padding: 8px 12px;
    border-right: 0;
    border-bottom: 1px solid rgba(193, 225, 224, .18);
  }

  body[data-page] .rail a {
    min-width: 0;
    min-height: 40px;
    padding: 7px 6px;
    border-radius: 8px;
    font-size: 12px;
  }
}

/* Public customer gated-action affordance: visible lock state without changing release behavior. */
body[data-page] {
  --customer-gated-action-bg: #fff3f0;
  --customer-gated-action-ink: #7a2e25;
  --customer-gated-action-line: rgba(160, 51, 39, .38);
  --customer-gated-action-shadow: inset 4px 0 0 var(--customer-state-blocked, #a03327);
}

body[data-page] :where(button:disabled, .customer-step-locked, [aria-disabled="true"], [data-control-state*="locked" i]) {
  opacity: 1;
  color: var(--customer-gated-action-ink);
  background: var(--customer-gated-action-bg);
  border-color: var(--customer-gated-action-line);
  box-shadow: var(--customer-gated-action-shadow);
  cursor: not-allowed;
}

body[data-page] :where(button:disabled, .customer-step-locked, [aria-disabled="true"], [data-control-state*="locked" i]) :where(b, span, small) {
  color: inherit;
}

body[data-page] :where(.customer-step-locked, [aria-disabled="true"]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--customer-touch-target, 44px);
  padding: 10px 12px;
  text-align: center;
}

/* Public customer review-surface normalization: compact, readable, and gated. */
body[data-page] {
  --customer-review-surface: #ffffff;
  --customer-review-line: rgba(85, 116, 122, .3);
  --customer-review-ready: #0f766e;
  --customer-review-wait: #9a620f;
  --customer-review-blocked: #a03327;
  --customer-review-ready-bg: #f0faf6;
  --customer-review-wait-bg: #fff8ea;
  --customer-review-blocked-bg: #fff3f0;
  --customer-review-gap: 10px;
}

body[data-page] :where(
  .customer-workflow-progress,
  .customer-action-gate,
  .customer-step-handoff-receipt,
  .customer-workflow-receipt-export,
  .customer-workflow-summary,
  .customer-next-handoff-preview,
  .customer-resume-checkpoint,
  .customer-evidence-safety-receipt,
  .customer-material-review-submission-receipt,
  .report-publication-boundary-readback,
  .report-delivery-decision-readback
) {
  border-left: 4px solid var(--customer-review-wait);
  background: var(--customer-review-surface);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-workflow-progress[data-status*="pass" i],
  .customer-step-handoff-receipt[data-status*="pass" i],
  .customer-workflow-receipt-export[data-status*="pass" i],
  .customer-material-review-submission-receipt[data-status*="pass" i]
) {
  border-left-color: var(--customer-review-ready);
}

body[data-page] :where(
  .customer-workflow-progress[data-status*="block" i],
  .customer-step-handoff-receipt[data-status*="block" i],
  .customer-workflow-receipt-export[data-status*="block" i],
  .report-delivery-decision-readback[data-formal-delivery-decision*="NO_GO" i]
) {
  border-left-color: var(--customer-review-blocked);
  background: var(--customer-review-blocked-bg);
}

body[data-page] :where(
  .customer-workflow-summary-grid,
  .customer-workflow-receipt-grid,
  .customer-step-handoff-grid,
  .customer-next-handoff-grid,
  .customer-resume-checkpoint-grid,
  .customer-action-gate .step-list,
  .report-publication-boundary-grid,
  .report-delivery-decision-grid,
  .report-decision-no-go-grid,
  .customer-material-review-submission-grid
) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(168px, 100%), 1fr));
  gap: var(--customer-review-gap);
}

body[data-page] :where(
  .customer-workflow-summary-grid article,
  .customer-workflow-receipt-grid article,
  .customer-step-handoff-grid article,
  .customer-next-handoff-grid article,
  .customer-resume-checkpoint-grid article,
  .customer-action-gate .step-list article,
  .report-publication-boundary-grid article,
  .report-delivery-decision-grid article,
  .report-decision-no-go-grid article,
  .customer-material-review-submission-grid article
) {
  min-width: 0;
  border: 1px solid var(--customer-review-line);
  border-left: 4px solid var(--customer-review-wait);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .customer-action-gate .step-list article:has(.customer-step-jump),
  .customer-workflow-receipt-grid article:nth-last-child(n+3)
) {
  border-left-color: var(--customer-review-ready);
  background: var(--customer-review-ready-bg);
}

body[data-page] :where(
  .customer-action-gate .boundary-strip span,
  .customer-step-locked,
  .report-decision-no-go-grid article,
  .customer-workflow-receipt-grid article:nth-last-child(-n+3)
) {
  border-left-color: var(--customer-review-blocked);
  background: var(--customer-review-blocked-bg);
}

body[data-page] :where(.customer-step-jump, .customer-step-locked) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  max-width: 100%;
  border: 1px solid var(--customer-review-line);
  border-radius: var(--customer-card-radius, 8px);
  padding: 7px 10px;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-step-jump) {
  color: #073b3a;
  background: var(--customer-review-ready-bg);
}

body[data-page] :where(.customer-step-locked) {
  color: var(--customer-review-blocked);
  cursor: not-allowed;
}

body[data-page] :where(.customer-workflow-receipt-json-box) {
  margin-top: var(--customer-review-gap);
  border: 1px solid var(--customer-review-line);
  border-radius: var(--customer-card-radius, 8px);
  background: #fbfdfd;
}

body[data-page] :where(.customer-workflow-receipt-json-box summary) {
  min-height: 40px;
  padding: 10px 12px;
  cursor: pointer;
  font-weight: 850;
}

body[data-page] :where(.customer-workflow-receipt-json) {
  max-height: 240px;
  margin: 0;
  border-top: 1px solid var(--customer-review-line);
  border-radius: 0 0 var(--customer-card-radius, 8px) var(--customer-card-radius, 8px);
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
}

body[data-page] :where(.customer-workflow-receipt-copy-row) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: var(--customer-review-gap);
}

body[data-page] :where(.customer-workflow-receipt-copy-row > span) {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

@media (max-width: 620px) {
  body[data-page] :where(
    .customer-workflow-summary-grid,
    .customer-workflow-receipt-grid,
    .customer-step-handoff-grid,
    .customer-next-handoff-grid,
    .customer-resume-checkpoint-grid,
    .customer-action-gate .step-list,
    .report-publication-boundary-grid,
    .report-delivery-decision-grid,
    .report-decision-no-go-grid,
    .customer-material-review-submission-grid
  ) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.customer-step-jump, .customer-step-locked, .customer-workflow-receipt-copy) {
    width: 100%;
  }
}

/* Public customer design-system completion: stable route rhythm and fit. */
body[data-page] {
  --customer-route-gap: 14px;
  --customer-route-card-radius: 8px;
  --customer-route-line: rgba(85, 116, 122, .26);
  --customer-route-focus: rgba(14, 116, 144, .34);
}

body[data-page] :where(h1, h2, h3, h4, .eyebrow, button, a, label) {
  letter-spacing: 0;
}

body[data-page] :where(.workspace.customer-compact-shell) {
  display: grid;
  gap: var(--customer-route-gap);
  padding: 22px;
}

body[data-page] :where(.status-strip.value-hero) {
  grid-template-columns: minmax(0, .96fr) minmax(320px, .84fr);
  gap: 16px;
  align-items: start;
  margin-bottom: 0;
}

body[data-page] :where(.hero-copy, .hero-stage, .panel-head > div) {
  min-width: 0;
}

body[data-page] :where(.hero-copy h1) {
  max-width: 16ch;
  font-size: 52px;
  line-height: 1.02;
}

body[data-page] :where(.platform-preview) {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  aspect-ratio: 16 / 10;
  border-radius: var(--customer-route-card-radius);
}

body[data-page] :where(.platform-preview img) {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: top center;
}

body[data-page] :where(
  .panel,
  .status-strip.value-hero,
  .metric,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .platform-map article,
  .delivery-check,
  .review-panel-box,
  .delivery-receipt-panel,
  .report-preview,
  .request-preset-card
) {
  border-radius: var(--customer-route-card-radius);
}

body[data-page] :where(
  .platform-map,
  .metrics-grid,
  .result-cards,
  .candidate-grid,
  .evidence-card-grid,
  .workflow-demo-steps,
  .pillars,
  .value-proof-grid,
  .delivery-checklist,
  .customer-governance-strip,
  .customer-evidence-card-gate
) {
  gap: var(--customer-route-gap);
}

body[data-page] :where(.metrics-grid) {
  grid-template-columns: repeat(auto-fit, minmax(min(130px, 100%), 1fr));
}

body[data-page] :where(.metric) {
  min-height: 78px;
  padding: 12px;
}

body[data-page] :where(.metric b) {
  font-size: 20px;
}

body[data-page] :where(.panel-head) {
  align-items: flex-start;
}

body[data-page] :where(.panel-head button, .panel-head .secondary-link) {
  flex: 0 1 min(260px, 100%);
}

body[data-page] :where(a, button, input, select, textarea, .request-preset-card):focus-visible {
  outline: 3px solid var(--customer-route-focus);
  outline-offset: 2px;
}

@media (max-width: 1180px) {
  body[data-page] :where(.status-strip.value-hero) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.hero-copy h1) {
    max-width: 19ch;
    font-size: 44px;
  }

  body[data-page] :where(.platform-preview) {
    aspect-ratio: 16 / 8;
  }
}

@media (max-width: 760px) {
  body[data-page] :where(.workspace.customer-compact-shell) {
    padding: 12px;
  }

  body[data-page] :where(.hero-copy h1) {
    max-width: 100%;
    font-size: 32px;
    line-height: 1.08;
  }

  body[data-page] :where(.platform-preview) {
    aspect-ratio: 4 / 3;
  }

  body[data-page] :where(.panel-head button, .panel-head .secondary-link) {
    width: 100%;
    max-width: 100%;
  }
}

/* Public customer workbench refinement: compact controls and evidence grids. */
body[data-page] {
  --customer-control-border: rgba(85, 116, 122, .28);
  --customer-control-bg: #fbfdfd;
  --customer-state-ready: #0f766e;
  --customer-state-review: #9a620f;
  --customer-state-blocked: #a03327;
  --customer-state-ready-bg: #effaf6;
  --customer-state-review-bg: #fff8ea;
  --customer-state-blocked-bg: #fff3f0;
  --customer-focus-outline: rgba(14, 116, 144, .3);
}

body[data-page] :where(.form-grid, .feedback-grid, .perf, .metrics-grid) {
  min-width: 0;
}

body[data-page] :where(label, .form-grid label, .feedback-grid label) {
  min-width: 0;
  line-height: 1.35;
}

body[data-page] :where(input, select, textarea) {
  border-color: var(--customer-control-border);
  background: var(--customer-control-bg);
  border-radius: var(--customer-card-radius, 8px);
}

body[data-page] :where(input, select, textarea)::placeholder {
  color: #728388;
}

body[data-page] :where(.primary-action, button, .secondary-link, .customer-step-jump, .customer-workflow-receipt-copy) {
  min-width: 0;
  min-height: var(--customer-touch-target, 44px);
  border-radius: var(--customer-card-radius, 8px);
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-page] :where(.chip, .claim-badge, .boundary-strip span, .composition span) {
  border-radius: 999px;
  line-height: 1.25;
}

body[data-page] :where(
  .job-result,
  .result-cards article,
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list article,
  .step-list div,
  .matrix-list article,
  .matrix-list div,
  .delivery-check,
  .report-deliverables article,
  .report-summary-grid article
) {
  min-width: 0;
  border-radius: var(--customer-card-radius, 8px);
  overflow-wrap: anywhere;
}

body[data-page] :where(
  .candidate,
  .claim-card,
  .generated-candidate-card,
  .workflow-demo-steps article,
  .evidence-card-grid article,
  .step-list article,
  .matrix-list article,
  .delivery-check
) {
  border-left: 4px solid var(--customer-state-review);
}

body[data-page] :where(.pass, .ready, .allowed, [data-status*="pass" i], [data-status*="ready" i], [data-status*="known" i]) {
  border-left-color: var(--customer-state-ready);
}

body[data-page] :where(.blocked, .locked, .denied, [data-status*="blocked" i], [data-control-state*="locked" i]) {
  border-left-color: var(--customer-state-blocked);
}

body[data-page] :where(.review, .pending, .current, .warn, [data-status*="review" i], [data-status*="current" i], [data-status*="wait" i]) {
  border-left-color: var(--customer-state-review);
}

body[data-page] :where(.customer-action-gate-grid, .customer-action-gate-locked, .customer-action-gate-summary, .customer-workflow-interaction-grid, .customer-workflow-route-readback-grid) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: 8px;
}

body[data-page] :where(.customer-action-gate-grid article, .customer-action-gate-locked article, .customer-action-gate-summary article, .customer-workflow-interaction-grid article, .customer-workflow-route-readback-grid article) {
  min-width: 0;
  border: 1px solid var(--customer-control-border);
  border-left: 4px solid var(--customer-state-review);
  border-radius: var(--customer-card-radius, 8px);
  background: #fff;
  padding: 10px;
  overflow-wrap: anywhere;
}

body[data-page] :where(.customer-action-gate-locked article, .customer-action-gate-summary article:nth-last-child(-n+3)) {
  border-left-color: var(--customer-state-blocked);
  background: var(--customer-state-blocked-bg);
}

body[data-page] :where(.customer-action-gate-grid article, .customer-workflow-interaction-grid article, .customer-workflow-route-readback-grid article) {
  background: var(--customer-state-review-bg);
}

body[data-page] :where(.customer-action-gate-grid article[data-status*="queued" i], .customer-workflow-route-readback-grid article[data-route-mode*="review" i]) {
  border-left-color: var(--customer-state-ready);
  background: var(--customer-state-ready-bg);
}

body[data-page] :where(.matrix-table, .report-table) {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

body[data-page] :where(.matrix-table table, .report-table table) {
  width: 100%;
  min-width: 620px;
  table-layout: fixed;
}

body[data-page] :where(.matrix-table th, .matrix-table td, .report-table th, .report-table td) {
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 760px) {
  body[data-page] :where(.form-grid, .feedback-grid, .perf, .metrics-grid) {
    grid-template-columns: 1fr;
  }

  body[data-page] :where(.panel-head) {
    align-items: stretch;
  }

  body[data-page] :where(.matrix-table table, .report-table table) {
    min-width: 520px;
  }
}
