:root {
  color-scheme: light;
  --obs-paper: #f3f0e7;
  --obs-paper-raised: #f8f5ed;
  --obs-paper-deep: #e8e3d8;
  --obs-ink: #1e292b;
  --obs-ink-soft: #596162;
  --obs-rule: #777b76;
  --obs-rule-soft: rgba(55, 63, 62, 0.24);
  --obs-grid: rgba(51, 83, 79, 0.055);
  --obs-teal: #087580;
  --obs-teal-dark: #075560;
  --obs-orange: #c64d13;
  --obs-cobalt: #2456c4;
  --obs-red: #b52720;
  --obs-focus: #f0a92f;
  --obs-event-compute: #087580;
  --obs-event-collective: #2456c4;
  --obs-event-checkpoint: #6952a3;
  --obs-event-failure: #b52720;
  --obs-event-recovery: #c64d13;
  --obs-event-power: #7b6620;
  --obs-gutter: 20px;
  --obs-header-height: 52px;
  --font-reading: "IBM Plex Sans", Arial, sans-serif;
  --font-value: "IBM Plex Mono", Consolas, monospace;
  --font-identity: "Pixelify Sans", "IBM Plex Mono", monospace;
}

* {
  box-sizing: border-box;
}

html {
  min-width: 320px;
  max-width: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-width: 320px;
  max-width: 100%;
  overflow-x: clip;
  background: var(--obs-paper);
  color: var(--obs-ink);
  font-family: var(--font-reading);
  font-size: 15px;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
}

body::before {
  position: fixed;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.34;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M24 0H0V24' fill='none' stroke='%23075560' stroke-opacity='.07' stroke-width='.55'/%3E%3C/svg%3E");
}

button,
select,
input {
  color: inherit;
  font: inherit;
}

button,
select {
  border: 1px solid var(--obs-rule);
  border-radius: 0;
  background: var(--obs-paper-raised);
}

button {
  cursor: pointer;
}

a {
  color: inherit;
}

svg {
  display: block;
}

h1,
h2,
h3,
h4,
p,
ol,
ul,
dl,
dd,
figure {
  margin-top: 0;
}

h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

button:focus-visible,
select:focus-visible,
input:focus-visible,
a:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--obs-focus);
  outline-offset: 2px;
}

.skip-link {
  position: fixed;
  z-index: 100;
  left: 12px;
  top: 8px;
  padding: 8px 12px;
  transform: translateY(-160%);
  background: var(--obs-ink);
  color: var(--obs-paper-raised);
  font: 600 0.8rem var(--font-value);
}

.skip-link:focus {
  transform: translateY(0);
}

.visually-hidden,
.sr-status {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.control-label {
  display: block;
  margin: 0 0 7px;
  color: var(--obs-ink-soft);
  font: 700 0.72rem/1.2 var(--font-value);
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.obs-header {
  position: sticky;
  z-index: 40;
  top: 0;
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto minmax(280px, 360px) auto;
  align-items: stretch;
  min-height: var(--obs-header-height);
  border-bottom: 1px solid var(--obs-rule);
  background: rgba(243, 240, 231, 0.97);
}

.obs-identity {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 0 var(--obs-gutter);
  text-decoration: none;
}

.obs-wordmark {
  color: var(--obs-teal-dark);
  font: 600 1.68rem/1 var(--font-identity);
  letter-spacing: 0.02em;
}

.obs-product {
  overflow: hidden;
  font: 500 0.85rem var(--font-value);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.obs-nav {
  display: flex;
  align-items: stretch;
  height: var(--obs-header-height);
}

.obs-nav a {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 22px;
  font: 500 0.86rem var(--font-value);
  text-decoration: none;
}

.obs-nav a:hover {
  color: var(--obs-teal-dark);
}

.obs-nav a.is-current::after {
  position: absolute;
  right: 18px;
  bottom: -1px;
  left: 18px;
  height: 2px;
  content: "";
  background: var(--obs-teal);
}

.experiment-picker {
  position: relative;
  display: flex;
  align-items: stretch;
  border-left: 1px solid var(--obs-rule-soft);
}

.experiment-picker select {
  width: 100%;
  min-height: var(--obs-header-height);
  padding: 0 42px 0 20px;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  font: 600 0.82rem var(--font-value);
}

.experiment-picker svg {
  position: absolute;
  right: 18px;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.5;
  pointer-events: none;
}

.share-state {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: var(--obs-header-height);
  padding: 0 20px;
  border: 0;
  border-left: 1px solid var(--obs-rule-soft);
  border-radius: 0;
  background: transparent;
  font: 500 0.82rem var(--font-value);
}

.share-state:hover {
  color: var(--obs-teal-dark);
  background: var(--obs-paper-deep);
}

.share-state svg {
  width: 20px;
  height: 20px;
  fill: var(--obs-paper);
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.5;
}

main {
  max-width: 1920px;
  margin: 0 auto;
  border-right: 1px solid var(--obs-rule-soft);
  border-left: 1px solid var(--obs-rule-soft);
}

.question-band {
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  gap: 28px;
  padding: 24px var(--obs-gutter) 22px;
  border-bottom: 1px solid var(--obs-rule);
}

.depth-cluster {
  align-self: start;
  padding-top: 3px;
}

.depth-control {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
}

.depth-control button {
  min-height: 34px;
  padding: 6px 12px;
  font: 600 0.78rem var(--font-value);
  text-align: left;
}

.depth-control button[aria-pressed="true"] {
  border-color: var(--obs-teal);
  background: var(--obs-teal);
  color: var(--obs-paper-raised);
}

.question-copy {
  text-align: center;
}

.experiment-kicker {
  margin-bottom: 6px;
  color: var(--obs-ink-soft);
  font: 600 0.75rem var(--font-value);
  letter-spacing: 0.03em;
}

.experiment-kicker span {
  margin-right: 8px;
  color: var(--obs-teal-dark);
}

.question-copy h1 {
  max-width: 1160px;
  margin: 0 auto 7px;
  font-size: clamp(2rem, 3vw, 3.25rem);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.04;
}

.stage-boundary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 auto 5px;
  color: var(--obs-ink-soft);
  font: 500 0.8rem var(--font-value);
}

.stage-mark {
  width: 12px;
  height: 12px;
  border: 1.5px dashed var(--obs-red);
  transform: rotate(45deg);
}

.stage-boundary strong {
  color: var(--obs-red);
  font-weight: 700;
  text-transform: uppercase;
}

.plain-answer {
  max-width: 1020px;
  margin: 0 auto 4px;
  color: var(--obs-teal-dark);
  font: 500 0.92rem/1.45 var(--font-value);
}

.artifact-state {
  margin: 0;
  color: var(--obs-ink-soft);
  font: 0.72rem var(--font-value);
}

body[data-data-state="missing"] .artifact-state,
body[data-data-state="invalid"] .artifact-state {
  color: var(--obs-red);
}

.research-band {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr) minmax(330px, 376px);
  min-height: 650px;
  border-bottom: 1px solid var(--obs-rule);
}

.research-band.inspector-hidden {
  grid-template-columns: 200px minmax(0, 1fr);
}

.evidence-inspector.is-hidden {
  display: none;
}

.causal-reading,
.evidence-inspector {
  background: rgba(248, 245, 237, 0.44);
}

.causal-reading {
  padding: 18px 14px;
  border-right: 1px solid var(--obs-rule);
}

.causal-reading h2,
.evidence-key h3 {
  margin-bottom: 13px;
  font: 700 0.71rem var(--font-value);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.causal-reading > ol {
  position: relative;
  display: grid;
  gap: 14px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.causal-reading > ol::before {
  position: absolute;
  top: 14px;
  bottom: 18px;
  left: 14px;
  width: 1px;
  content: "";
  background: var(--obs-rule);
}

.causal-reading > ol li {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
}

.causal-reading > ol li > span,
.resolve-list li > span {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border: 1.5px solid var(--obs-teal);
  border-radius: 50%;
  background: var(--obs-paper);
  color: var(--obs-teal-dark);
  font: 600 0.8rem var(--font-value);
}

.causal-reading > ol p {
  margin: 2px 0 0;
  font: 0.78rem/1.32 var(--font-value);
}

.causal-reading > ol strong {
  display: block;
  font-weight: 500;
}

.causal-reading > ol small {
  display: block;
  margin-top: 4px;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.35 var(--font-reading);
}

body[data-depth="freshman"] .causal-reading > ol small {
  display: none;
}

.evidence-key {
  padding-top: 18px;
  margin-top: 20px;
  border-top: 1px solid var(--obs-rule-soft);
}

.evidence-key ul {
  display: grid;
  gap: 9px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.evidence-key li {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.3 var(--font-value);
}

.evidence-key b {
  display: block;
  color: var(--obs-ink);
  font-weight: 600;
  text-transform: uppercase;
}

.evidence-glyph {
  position: relative;
  display: inline-block;
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
}

.evidence-glyph--observed {
  border: 1.5px solid var(--obs-cobalt);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6'%3E%3Cpath d='M-1 5 5-1M1 7 7 1' stroke='%232456c4' stroke-width='1'/%3E%3C/svg%3E");
}

.evidence-glyph--modeled {
  border: 1.5px solid var(--obs-teal);
  border-radius: 50%;
}

.evidence-glyph--assumed {
  border: 1.5px dashed var(--obs-orange);
  border-radius: 50%;
}

.evidence-glyph--prior {
  background: var(--obs-cobalt);
  clip-path: polygon(25% 4%, 75% 4%, 100% 50%, 75% 96%, 25% 96%, 0 50%);
}

.evidence-glyph--prior::after {
  position: absolute;
  inset: 2px;
  content: "";
  background: var(--obs-paper-raised);
  clip-path: inherit;
}

.evidence-glyph--unmeasured {
  width: 14px;
  height: 14px;
  margin: 2px;
  border: 1.5px dashed var(--obs-red);
  transform: rotate(45deg);
}

.research-core {
  min-width: 0;
  background: rgba(243, 240, 231, 0.68);
}

.section-line-heading,
.band-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
}

.section-line-heading h2,
.section-line-heading h3 {
  margin: 0;
  font: 700 0.72rem var(--font-value);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.section-line-heading > span {
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
  text-align: right;
}

.site-field {
  padding: 14px 18px 11px;
  border-bottom: 1px solid var(--obs-rule-soft);
}

.site-viewport {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-color: var(--obs-teal) var(--obs-paper-deep);
  scrollbar-width: thin;
}

.site-rail {
  display: grid;
  grid-template-columns: minmax(168px, 1fr) minmax(130px, 0.72fr) minmax(168px, 1fr) minmax(130px, 0.72fr) minmax(168px, 1fr);
  align-items: center;
  min-width: 780px;
  max-width: 1040px;
  min-height: 146px;
  margin: 8px auto 0;
}

.site-button,
.wan-link-button {
  min-width: 0;
  background: transparent;
}

.site-button {
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 116px;
  padding: 12px;
  border: 1px solid var(--obs-rule);
  border-radius: 0;
  text-align: left;
  transition: border-color 150ms ease, background-color 150ms ease;
}

.site-button:hover,
.site-button.is-selected {
  border-color: var(--obs-orange);
  background: var(--obs-paper-raised);
}

.site-button.is-selected {
  border-width: 2px;
  padding: 11px;
}

.site-button svg {
  width: 58px;
  height: 68px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.35;
}

.site-button .site-name {
  display: block;
  font: 700 0.86rem var(--font-value);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.site-button .site-fact,
.site-button .site-power {
  display: block;
  margin-top: 4px;
  font: 0.72rem/1.35 var(--font-value);
}

.site-button .site-power {
  color: var(--obs-ink-soft);
}

.site-button .evidence-tag {
  margin-top: 8px;
}

.wan-link-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 84px;
  padding: 8px 5px;
  border: 0;
  border-radius: 0;
  text-align: center;
}

.wan-link-button::before,
.wan-link-button::after {
  position: absolute;
  top: 48%;
  content: "";
}

.wan-link-button::before {
  right: 5px;
  left: 5px;
  border-top: 1.5px solid var(--obs-teal-dark);
}

.wan-link-button::after {
  right: 5px;
  width: 7px;
  height: 7px;
  border-top: 1.5px solid var(--obs-teal-dark);
  border-right: 1.5px solid var(--obs-teal-dark);
  transform: translateY(-3px) rotate(45deg);
}

.wan-link-button:hover span,
.wan-link-button.is-selected span {
  color: var(--obs-orange);
}

.wan-link-button span {
  position: relative;
  z-index: 1;
  padding: 3px 8px;
  background: var(--obs-paper);
  font: 600 0.7rem/1.35 var(--font-value);
}

.wan-link-button small {
  display: block;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  font-weight: 500;
  text-transform: uppercase;
}

.site-position {
  position: relative;
  display: none;
  justify-content: center;
  gap: 28px;
  width: 118px;
  padding-top: 9px;
  margin: 0 auto;
}

.site-position::before {
  position: absolute;
  top: 12px;
  right: 19px;
  left: 19px;
  height: 1px;
  content: "";
  background: var(--obs-rule);
}

.site-position span {
  position: relative;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--obs-rule-soft);
}

.site-position span::after {
  position: absolute;
  top: 9px;
  left: 50%;
  content: attr(data-label);
  transform: translateX(-50%);
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
}

.site-position span.is-active {
  background: var(--obs-orange);
}

.causal-field {
  padding: 12px 18px 14px;
}

.causal-svg-wrap {
  width: 100%;
  min-height: 454px;
  margin-top: 6px;
}

.causal-svg {
  width: 100%;
  height: 454px;
  overflow: visible;
}

.causal-svg .causal-edge {
  fill: none;
  stroke: var(--obs-rule);
  stroke-width: 1.4;
}

.causal-svg .causal-edge.is-selected {
  stroke: var(--obs-orange);
  stroke-width: 2;
}

.causal-svg .edge-label {
  fill: var(--obs-ink-soft);
  font: 11px var(--font-value);
  text-anchor: middle;
}

.causal-svg .node-frame {
  fill: rgba(248, 245, 237, 0.85);
  stroke-width: 1.4;
  rx: 6;
}

.causal-svg .node--modeled .node-frame {
  stroke: var(--obs-teal);
}

.causal-svg .node--assumed .node-frame {
  stroke: var(--obs-orange);
  stroke-dasharray: 6 4;
}

.causal-svg .node--prior .node-frame {
  stroke: var(--obs-cobalt);
  stroke-dasharray: 6 3;
}

.causal-svg .node--unmeasured .node-frame {
  stroke: var(--obs-red);
  stroke-dasharray: 7 4;
}

.causal-svg .node--observed .node-frame {
  stroke: var(--obs-cobalt);
}

.causal-svg .causal-node {
  cursor: pointer;
}

.causal-svg .causal-node.is-selected .node-frame {
  stroke: var(--obs-orange);
  stroke-width: 2.5;
}

.causal-svg .causal-node:focus .node-frame {
  stroke: var(--obs-focus);
  stroke-width: 3;
}

.causal-svg .node-title {
  fill: var(--obs-ink);
  font: 600 13px var(--font-value);
}

.causal-svg .node-evidence {
  font: 700 11px var(--font-value);
  letter-spacing: 0.05em;
}

.causal-svg .node--modeled .node-evidence { fill: var(--obs-teal-dark); }
.causal-svg .node--assumed .node-evidence { fill: var(--obs-orange); }
.causal-svg .node--prior .node-evidence { fill: var(--obs-cobalt); }
.causal-svg .node--unmeasured .node-evidence { fill: var(--obs-red); }
.causal-svg .node--observed .node-evidence { fill: var(--obs-cobalt); }

.causal-svg .node-detail {
  fill: var(--obs-ink-soft);
  font: 11px var(--font-reading);
}

.causal-svg .glyph-outline {
  fill: var(--obs-paper-raised);
  stroke-width: 1.6;
}

.causal-svg .node--modeled .glyph-outline { stroke: var(--obs-teal); }
.causal-svg .node--assumed .glyph-outline { stroke: var(--obs-orange); stroke-dasharray: 3 2; }
.causal-svg .node--prior .glyph-outline { stroke: var(--obs-cobalt); }
.causal-svg .node--unmeasured .glyph-outline { stroke: var(--obs-red); stroke-dasharray: 3 2; }
.causal-svg .node--observed .glyph-outline { stroke: var(--obs-cobalt); }

.structured-fallback {
  margin-top: 8px;
  border-top: 1px solid var(--obs-rule-soft);
  font-size: 0.78rem;
}

.structured-fallback summary {
  padding: 8px 0;
  color: var(--obs-ink-soft);
  cursor: pointer;
  font: 600 0.7rem var(--font-value);
}

.structured-fallback ol,
.structured-fallback ul {
  margin-bottom: 12px;
}

.structured-fallback li {
  margin-bottom: 6px;
}

.causal-fallback-button {
  padding: 2px 4px;
  border: 0;
  background: transparent;
  color: var(--obs-teal-dark);
  font: 600 0.72rem var(--font-value);
  text-align: left;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.structured-fallback p,
.structured-fallback small {
  margin: 4px 0;
  color: var(--obs-ink-soft);
  font-size: 0.72rem;
}

.evidence-inspector {
  min-width: 0;
  border-left: 1px solid var(--obs-rule);
}

.sheet-handle {
  display: none;
}

.inspector-header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 10px;
  padding: 17px 18px 14px;
  border-bottom: 1px solid var(--obs-rule);
}

.inspector-header h2 {
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--obs-orange);
  font: 600 1.04rem/1.25 var(--font-value);
}

.icon-button {
  display: grid;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  padding: 7px;
  place-items: center;
  border: 0;
  background: transparent;
}

.icon-button:hover {
  background: var(--obs-paper-deep);
}

.icon-button svg,
.evidence-lock svg,
.raw-trace svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.5;
}

.inspector-body {
  padding: 0 18px 20px;
}

.inspector-loading {
  padding: 18px 0;
  color: var(--obs-ink-soft);
  font: 0.78rem var(--font-value);
}

.inspector-lead {
  padding: 16px 0 14px;
  border-bottom: 1px solid var(--obs-rule-soft);
}

.inspector-value {
  margin: 0 0 3px;
  font: 600 2.05rem/1 var(--font-value);
  letter-spacing: 0;
}

.evidence-tag {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--obs-ink-soft);
  font: 700 0.7rem/1.25 var(--font-value);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.evidence-tag[data-evidence="observed"] { color: var(--obs-cobalt); }
.evidence-tag[data-evidence="modeled"] { color: var(--obs-teal-dark); }
.evidence-tag[data-evidence="assumed"] { color: var(--obs-orange); }
.evidence-tag[data-evidence="prior"] { color: var(--obs-cobalt); }
.evidence-tag[data-evidence="unmeasured"] { color: var(--obs-red); }

.inspector-section {
  padding: 14px 0;
  border-bottom: 1px solid var(--obs-rule-soft);
}

.inspector-section:last-child {
  border-bottom: 0;
}

.inspector-section h3,
.source-observations h3,
.residual-panel h3,
.decision-ledger h3 {
  margin-bottom: 8px;
  font: 600 0.88rem var(--font-value);
}

.inspector-section h3 {
  color: var(--obs-orange);
}

.inspector-section p,
.inspector-section li {
  font-size: 0.82rem;
  line-height: 1.52;
}

.inspector-section p:last-child,
.inspector-section ul:last-child,
.inspector-section dl:last-child {
  margin-bottom: 0;
}

.inspector-facts {
  display: grid;
  grid-template-columns: minmax(86px, 0.6fr) minmax(0, 1.4fr);
  gap: 7px 10px;
  margin: 0;
  font: 0.76rem/1.4 var(--font-value);
}

.inspector-facts dt {
  font-weight: 600;
}

.inspector-facts dd {
  overflow-wrap: anywhere;
}

.inspector-code {
  padding: 8px;
  overflow-wrap: anywhere;
  border: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper-deep);
  font: 0.7rem/1.5 var(--font-value);
}

.source-id-row {
  display: flex;
  align-items: start;
  gap: 8px;
  margin-top: 8px;
}

.source-id-row > div {
  min-width: 0;
}

.source-id-row code {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
  font: 0.7rem/1.45 var(--font-value);
}

.source-id-row a {
  display: inline-block;
  margin-top: 3px;
  color: var(--obs-cobalt);
}

.copy-source {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  padding: 5px;
}

.timeline-band,
.semantic-consistency-v1-band,
.recovery-v2-band,
.learning-v1-band,
.equal-work-v1-band,
.checkpoint-power-v1-band,
.checkpoint-energy-v2-band,
.comparison-band,
.evidence-lab {
  padding: 16px var(--obs-gutter);
  border-bottom: 1px solid var(--obs-rule);
}

.recovery-v2-band {
  background: rgba(248, 245, 237, 0.56);
}

.learning-v1-band {
  background:
    linear-gradient(90deg, rgba(8, 117, 128, 0.08), transparent 36%) top / 100% 3px no-repeat,
    rgba(248, 245, 237, 0.82);
}

.equal-work-v1-band {
  border-top: 3px solid var(--obs-red);
  background: rgba(248, 245, 237, 0.96);
}

.equal-work-v1-header output {
  max-width: min(54ch, 50vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.equal-work-insight {
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(320px, 1fr);
  gap: clamp(22px, 4vw, 64px);
  align-items: end;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid var(--obs-ink);
  border-left: 7px solid var(--obs-red);
  background: var(--obs-ink);
  color: var(--obs-paper-raised);
}

.equal-work-eyebrow {
  margin: 0 0 8px;
  color: #afd7d3;
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.equal-work-insight h3 {
  max-width: 22ch;
  margin: 0;
  font-size: clamp(1.55rem, 3.1vw, 2.7rem);
  line-height: 1.03;
}

.equal-work-insight > p {
  max-width: 65ch;
  margin: 0;
  color: #dce3df;
  font-size: 0.92rem;
  line-height: 1.62;
}

.equal-work-depth-copy {
  max-width: 88ch;
  padding: 15px 0 17px;
  color: var(--obs-ink-soft);
  font-size: 0.88rem;
  line-height: 1.58;
}

.equal-work-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .equal-work-depth-copy .depth-freshman,
body[data-depth="full_trace"] .equal-work-depth-copy .depth-freshman,
body[data-depth="full_trace"] .equal-work-depth-copy .depth-researcher {
  display: none;
}

.equal-work-freshman-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.equal-work-plain-card {
  min-width: 0;
  padding: clamp(15px, 2vw, 22px);
  border-top: 5px solid var(--obs-teal);
}

.equal-work-plain-card + .equal-work-plain-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.equal-work-plain-card[data-state="fail"] {
  border-top-color: var(--obs-red);
  background: rgba(181, 39, 32, 0.07);
}

.equal-work-plain-kicker,
.equal-work-plain-body {
  margin: 0;
}

.equal-work-plain-kicker {
  color: var(--obs-ink-soft);
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.equal-work-plain-value {
  display: block;
  margin: 13px 0 2px;
  color: var(--obs-teal-dark);
  font: 700 clamp(1.35rem, 2.3vw, 2.1rem)/1 var(--font-value);
}

.equal-work-plain-card[data-state="fail"] .equal-work-plain-value {
  color: var(--obs-red);
}

.equal-work-plain-card h3 {
  margin: 4px 0 10px;
  font-size: 0.82rem;
  line-height: 1.3;
}

.equal-work-plain-body {
  color: var(--obs-ink-soft);
  font-size: 0.72rem;
  line-height: 1.5;
}

.equal-work-policy-section,
.equal-work-effects,
.equal-work-gates {
  padding: 15px 16px 16px;
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.equal-work-effects,
.equal-work-gates {
  border-top: 0;
}

.equal-work-section-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.equal-work-section-header h3,
.equal-work-clue h3,
.equal-work-boundary h3 {
  margin: 0;
  font: 700 0.77rem/1.3 var(--font-value);
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.equal-work-section-header > span {
  max-width: 42ch;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.35 var(--font-value);
  text-align: right;
}

.equal-work-policy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.equal-work-policy-card {
  --equal-policy-color: var(--obs-orange);
  min-width: 0;
  padding: 14px;
  border-top: 4px solid var(--equal-policy-color);
}

.equal-work-policy-card[data-policy="adaptive"] {
  --equal-policy-color: var(--obs-teal);
  border-left: 1px solid var(--obs-rule-soft);
}

.equal-work-policy-card > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.equal-work-policy-card h4 {
  margin: 0;
  color: var(--equal-policy-color);
  font: 700 0.75rem/1.3 var(--font-value);
  text-transform: uppercase;
}

.equal-work-policy-card > header span {
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
  text-transform: uppercase;
}

.equal-work-policy-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.equal-work-metric {
  min-width: 0;
  padding: 9px;
  border: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper);
}

.equal-work-metric dt,
.equal-work-metric dd,
.equal-work-metric small {
  font-family: var(--font-value);
}

.equal-work-metric dt {
  min-height: 2.4em;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.25;
  text-transform: uppercase;
}

.equal-work-metric dd {
  margin: 7px 0 2px;
  overflow-wrap: anywhere;
  font-size: clamp(0.7rem, 1.1vw, 0.91rem);
  font-weight: 700;
  line-height: 1.2;
}

.equal-work-metric small {
  display: block;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
}

.equal-work-effect-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.equal-work-effect-card {
  min-width: 0;
  padding: 13px 14px 15px;
  border-top: 4px solid var(--obs-teal);
  background: rgba(8, 117, 128, 0.035);
}

.equal-work-effect-card + .equal-work-effect-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.equal-work-effect-card[data-passed="false"] {
  border-top-color: var(--obs-red);
  background: rgba(181, 39, 32, 0.085);
}

.equal-work-effect-card > header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 8px;
}

.equal-work-effect-card h4 {
  margin: 0;
  font: 700 0.7rem/1.35 var(--font-value);
  text-transform: uppercase;
}

.equal-work-effect-status {
  flex: 0 0 auto;
  padding: 2px 5px;
  border: 1px solid currentColor;
  color: var(--obs-teal-dark);
  font: 700 0.7rem var(--font-value);
}

.equal-work-effect-card[data-passed="false"] .equal-work-effect-status {
  color: var(--obs-red);
}

.equal-work-effect-value {
  display: block;
  margin-top: 18px;
  color: var(--obs-teal-dark);
  font: 700 clamp(1.05rem, 1.8vw, 1.55rem)/1.1 var(--font-value);
}

.equal-work-effect-card[data-passed="false"] .equal-work-effect-value {
  color: var(--obs-red);
}

.equal-work-effect-interval,
.equal-work-effect-bound {
  margin: 7px 0 0;
  font-family: var(--font-value);
  font-size: 0.7rem;
  line-height: 1.45;
}

.equal-work-effect-interval {
  color: var(--obs-ink);
}

.equal-work-effect-bound {
  padding-top: 7px;
  border-top: 1px solid var(--obs-rule-soft);
  color: var(--obs-ink-soft);
}

.equal-work-clue,
.equal-work-boundary {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 11px;
  padding: 14px 16px;
  border: 1px solid var(--obs-rule);
  border-top: 0;
}

.equal-work-clue {
  background: rgba(123, 102, 32, 0.075);
}

.equal-work-clue > span {
  display: grid;
  width: 22px;
  height: 22px;
  place-items: center;
  border: 1px solid var(--obs-event-power);
  border-radius: 50%;
  color: var(--obs-event-power);
  font: 700 0.72rem var(--font-value);
}

.equal-work-clue p,
.equal-work-boundary p {
  max-width: 110ch;
  margin: 5px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.74rem;
  line-height: 1.55;
}

.equal-work-gate-strip {
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.equal-work-gate {
  min-width: 0;
  padding: 9px;
  border-left: 1px solid var(--obs-rule-soft);
  background: rgba(8, 117, 128, 0.055);
}

.equal-work-gate:first-child {
  border-left: 0;
}

.equal-work-gate[data-passed="false"] {
  grid-column: span 2;
  border-top: 4px solid var(--obs-red);
  background: rgba(181, 39, 32, 0.11);
}

.equal-work-gate-state,
.equal-work-gate-label {
  display: block;
  font-family: var(--font-value);
}

.equal-work-gate-state {
  color: var(--obs-teal-dark);
  font-size: 0.7rem;
  font-weight: 700;
}

.equal-work-gate[data-passed="false"] .equal-work-gate-state {
  color: var(--obs-red);
  font-size: 0.76rem;
}

.equal-work-gate-label {
  margin-top: 4px;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.35;
}

.equal-work-boundary {
  background: rgba(8, 117, 128, 0.045);
}

.equal-work-trace {
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: var(--obs-paper-raised);
}

.equal-work-trace details + details {
  border-top: 1px solid var(--obs-rule-soft);
}

.equal-work-trace summary {
  padding: 10px 14px;
  font: 700 0.7rem var(--font-value);
  cursor: pointer;
}

.equal-work-table-scroll {
  max-width: 100%;
  padding: 0 14px 14px;
  overflow-x: auto;
}

.equal-work-trace-table {
  width: 100%;
  min-width: 880px;
  border-collapse: collapse;
  font: 0.7rem/1.4 var(--font-value);
}

.equal-work-trace-table th,
.equal-work-trace-table td {
  padding: 6px 8px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
  vertical-align: top;
}

.equal-work-trace-table th {
  background: var(--obs-paper-deep);
}

.equal-work-hash {
  overflow-wrap: anywhere;
}

.equal-work-bridge {
  padding: 0 14px 15px;
}

.equal-work-bridge-boundary {
  margin: 0;
  padding: 12px;
  border-left: 4px solid var(--obs-orange);
  background: rgba(198, 77, 19, 0.07);
  font-weight: 700;
}

.equal-work-bridge-class {
  margin: 10px 0 0;
  overflow-wrap: anywhere;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.equal-work-bridge-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.equal-work-bridge-columns section {
  padding: 12px;
  border: 1px solid var(--obs-rule-soft);
}

.equal-work-bridge-columns h4 {
  margin: 0;
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.equal-work-bridge-columns ul {
  padding-left: 18px;
  margin: 8px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
}

.equal-work-trace pre {
  max-height: 420px;
  padding: 12px 14px;
  margin: 0;
  overflow: auto;
  border-top: 1px solid var(--obs-rule-soft);
  background: var(--obs-ink);
  color: #e5ece8;
  font: 0.7rem/1.55 var(--font-value);
}

.checkpoint-power-v1-band {
  border-top: 3px solid var(--obs-event-power);
  background: rgba(248, 245, 237, 0.98);
}

.checkpoint-power-v1-header output {
  max-width: min(54ch, 50vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.checkpoint-power-insight {
  display: grid;
  grid-template-columns: minmax(300px, 0.82fr) minmax(320px, 1fr);
  gap: clamp(22px, 4vw, 64px);
  align-items: end;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid var(--obs-ink);
  border-left: 7px solid var(--obs-event-power);
  background: var(--obs-ink);
  color: var(--obs-paper-raised);
}

.checkpoint-power-eyebrow {
  margin: 0 0 8px;
  color: #e2d48c;
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.checkpoint-power-insight h3 {
  max-width: 23ch;
  margin: 0;
  font-size: clamp(1.55rem, 3.1vw, 2.7rem);
  line-height: 1.03;
}

.checkpoint-power-insight > div:last-child {
  display: grid;
  gap: 12px;
}

.checkpoint-power-insight > div:last-child p {
  max-width: 68ch;
  margin: 0;
  color: #dce3df;
  font-size: 0.92rem;
  line-height: 1.62;
}

.checkpoint-power-insight > div:last-child strong {
  padding-top: 10px;
  border-top: 1px solid rgba(248, 245, 237, 0.28);
  color: #f0d87b;
  font: 700 0.72rem/1.5 var(--font-value);
}

.checkpoint-power-depth-copy {
  max-width: 92ch;
  padding: 15px 0 17px;
  color: var(--obs-ink-soft);
  font-size: 0.88rem;
  line-height: 1.58;
}

.checkpoint-power-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .checkpoint-power-depth-copy .depth-freshman,
body[data-depth="full_trace"] .checkpoint-power-depth-copy .depth-freshman,
body[data-depth="full_trace"] .checkpoint-power-depth-copy .depth-researcher {
  display: none;
}

.checkpoint-power-freshman-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.checkpoint-power-plain-card {
  min-width: 0;
  padding: clamp(15px, 2vw, 22px);
  border-top: 5px solid var(--obs-teal);
}

.checkpoint-power-plain-card + .checkpoint-power-plain-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-plain-card[data-state="neutral"] {
  border-top-color: var(--obs-event-power);
}

.checkpoint-power-plain-card[data-state="fail"] {
  border-top-color: var(--obs-red);
  background: rgba(181, 39, 32, 0.075);
}

.checkpoint-power-plain-label,
.checkpoint-power-plain-detail {
  margin: 0;
}

.checkpoint-power-plain-label {
  color: var(--obs-ink-soft);
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.checkpoint-power-plain-value {
  display: block;
  margin: 15px 0 8px;
  color: var(--obs-teal-dark);
  font: 700 clamp(1.35rem, 2.4vw, 2.15rem)/1 var(--font-value);
}

.checkpoint-power-plain-card[data-state="neutral"] .checkpoint-power-plain-value {
  color: var(--obs-event-power);
}

.checkpoint-power-plain-card[data-state="fail"] .checkpoint-power-plain-value {
  color: var(--obs-red);
}

.checkpoint-power-plain-detail {
  color: var(--obs-ink-soft);
  font-size: 0.71rem;
  line-height: 1.5;
}

.checkpoint-power-validity,
.checkpoint-power-arms,
.checkpoint-power-controls,
.checkpoint-power-contrasts {
  padding: 15px 16px 16px;
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.checkpoint-power-arms,
.checkpoint-power-controls,
.checkpoint-power-contrasts {
  border-top: 0;
}

.checkpoint-power-section-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.checkpoint-power-section-header h3,
.checkpoint-power-redirect h3,
.checkpoint-power-boundary h3 {
  margin: 0;
  font: 700 0.77rem/1.3 var(--font-value);
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.checkpoint-power-section-header > span {
  max-width: 44ch;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.35 var(--font-value);
  text-align: right;
}

.checkpoint-power-validity-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.8fr);
  border: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-invalidators {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.checkpoint-power-invalidator {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 7px 10px;
  align-content: start;
  min-width: 0;
  padding: 14px;
  border-top: 5px solid var(--obs-red);
  background: rgba(181, 39, 32, 0.08);
}

.checkpoint-power-invalidator + .checkpoint-power-invalidator {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-invalidator-number {
  display: grid;
  grid-row: 1 / 3;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid var(--obs-red);
  border-radius: 50%;
  color: var(--obs-red);
  font: 700 0.7rem var(--font-value);
}

.checkpoint-power-invalidator div {
  overflow-wrap: anywhere;
  font: 700 0.7rem/1.4 var(--font-value);
}

.checkpoint-power-invalidator strong {
  color: var(--obs-red);
  font: 700 0.7rem var(--font-value);
}

.checkpoint-power-logger {
  padding: 14px;
  border-left: 1px solid var(--obs-rule-soft);
  background: rgba(123, 102, 32, 0.055);
}

.checkpoint-power-logger > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.checkpoint-power-logger h4 {
  margin: 0;
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.checkpoint-power-boundary-badge,
.checkpoint-power-inadmissible {
  display: inline-block;
  padding: 3px 6px;
  border: 1px solid currentColor;
  color: var(--obs-red);
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.04em;
}

.checkpoint-power-poll-comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 13px;
}

.checkpoint-power-poll-comparison > div {
  padding: 9px;
  border: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper);
}

.checkpoint-power-poll-comparison span,
.checkpoint-power-poll-comparison strong {
  display: block;
  font-family: var(--font-value);
}

.checkpoint-power-poll-comparison span {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  text-transform: uppercase;
}

.checkpoint-power-poll-comparison strong {
  margin-top: 5px;
  font-size: 1rem;
}

.checkpoint-power-logger > p {
  margin: 10px 0 0;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.checkpoint-power-arm-grid,
.checkpoint-power-control-grid,
.checkpoint-power-contrast-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-arm-card,
.checkpoint-power-control-card,
.checkpoint-power-contrast-card {
  min-width: 0;
  padding: 12px;
}

.checkpoint-power-arm-card + .checkpoint-power-arm-card,
.checkpoint-power-control-card + .checkpoint-power-control-card,
.checkpoint-power-contrast-card + .checkpoint-power-contrast-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-arm-card {
  --checkpoint-arm-color: var(--obs-orange);
  border-top: 4px solid var(--checkpoint-arm-color);
}

.checkpoint-power-arm-card[data-arm="B"],
.checkpoint-power-arm-card[data-arm="D"] {
  --checkpoint-arm-color: var(--obs-cobalt);
}

.checkpoint-power-arm-card[data-arm="C"],
.checkpoint-power-arm-card[data-arm="D"] {
  background: rgba(8, 117, 128, 0.035);
}

.checkpoint-power-arm-card > header {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 2px 8px;
  align-items: center;
}

.checkpoint-power-arm-code {
  display: grid;
  grid-row: 1 / 3;
  width: 28px;
  height: 28px;
  place-items: center;
  background: var(--checkpoint-arm-color);
  color: white;
  font: 700 0.72rem var(--font-value);
}

.checkpoint-power-arm-card > header div {
  font: 700 0.7rem/1.35 var(--font-value);
  text-transform: uppercase;
}

.checkpoint-power-arm-card > header strong {
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
}

.checkpoint-power-arm-metrics {
  margin: 10px 0 0;
}

.checkpoint-power-arm-metrics > div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 0;
  border-top: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-arm-metrics dt,
.checkpoint-power-arm-metrics dd {
  margin: 0;
  font: 0.7rem/1.4 var(--font-value);
}

.checkpoint-power-arm-metrics dt {
  color: var(--obs-ink-soft);
}

.checkpoint-power-arm-metrics dd {
  max-width: 58%;
  overflow-wrap: anywhere;
  font-weight: 700;
  text-align: right;
}

.checkpoint-power-arm-metrics > div:last-child dd {
  color: var(--obs-red);
}

.checkpoint-power-control-card h4,
.checkpoint-power-contrast-card h4 {
  margin: 0;
  font: 700 0.7rem/1.4 var(--font-value);
  text-transform: uppercase;
}

.checkpoint-power-control-card ul {
  padding: 0;
  margin: 9px 0 0;
  list-style: none;
}

.checkpoint-power-control-card li {
  padding: 4px 0;
  border-top: 1px solid var(--obs-rule-soft);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
}

.checkpoint-power-control-card li strong {
  color: var(--obs-teal-dark);
}

.checkpoint-power-contrast-warning {
  padding: 10px 12px;
  border: 1px solid var(--obs-red);
  border-bottom: 0;
  background: rgba(181, 39, 32, 0.09);
  color: var(--obs-red);
  font: 0.7rem/1.5 var(--font-value);
}

.checkpoint-power-contrast-card {
  border-top: 4px solid var(--obs-red);
  background: rgba(181, 39, 32, 0.035);
}

.checkpoint-power-contrast-card h4 {
  margin-top: 9px;
}

.checkpoint-power-contrast-value {
  display: block;
  margin-top: 14px;
  overflow-wrap: anywhere;
  font: 700 clamp(0.9rem, 1.4vw, 1.2rem)/1.2 var(--font-value);
}

.checkpoint-power-contrast-card p {
  margin: 8px 0 0;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.checkpoint-power-redirect,
.checkpoint-power-boundary {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 14px;
  padding: 15px 16px;
  border: 1px solid var(--obs-rule);
  border-top: 0;
}

.checkpoint-power-redirect {
  background: rgba(36, 86, 196, 0.055);
}

.checkpoint-power-redirect > span {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  border: 1px solid var(--obs-cobalt);
  color: var(--obs-cobalt);
  font: 700 0.72rem var(--font-value);
}

.checkpoint-power-redirect > div > p:not(.control-label) {
  max-width: 100ch;
  margin: 6px 0 0;
  font-size: 0.76rem;
}

.checkpoint-power-redirect-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.checkpoint-power-redirect-grid > div {
  padding: 11px;
  border: 1px solid var(--obs-rule-soft);
  background: rgba(248, 245, 237, 0.66);
}

.checkpoint-power-redirect-grid strong {
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.checkpoint-power-redirect-grid ul {
  padding-left: 18px;
  margin: 7px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
}

.checkpoint-power-boundary {
  grid-template-columns: 20px minmax(0, 1fr);
  background: rgba(8, 117, 128, 0.045);
}

.checkpoint-power-boundary p {
  max-width: 112ch;
  margin: 5px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.74rem;
  line-height: 1.55;
}

.checkpoint-power-trace {
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: var(--obs-paper-raised);
}

.checkpoint-power-run-selector {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper-deep);
}

.checkpoint-power-run-selector label {
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.checkpoint-power-run-selector select {
  width: min(620px, 62vw);
  min-height: 34px;
  padding: 5px 28px 5px 8px;
  font: 0.7rem var(--font-value);
}

.checkpoint-power-trace details + details {
  border-top: 1px solid var(--obs-rule-soft);
}

.checkpoint-power-trace summary {
  padding: 10px 14px;
  font: 700 0.7rem var(--font-value);
  cursor: pointer;
}

.checkpoint-power-trace-warning {
  margin: 0 14px 10px;
  padding: 9px 10px;
  border-left: 4px solid var(--obs-red);
  background: rgba(181, 39, 32, 0.07);
  color: var(--obs-red);
  font: 0.7rem/1.5 var(--font-value);
}

.checkpoint-power-table-scroll {
  max-width: 100%;
  padding: 0 14px 14px;
  overflow-x: auto;
}

.checkpoint-power-trace-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  font: 0.7rem/1.4 var(--font-value);
}

.checkpoint-power-ledger-table,
.checkpoint-power-points-table {
  min-width: 1260px;
}

.checkpoint-power-trace-table th,
.checkpoint-power-trace-table td {
  padding: 6px 8px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
  vertical-align: top;
}

.checkpoint-power-trace-table th {
  background: var(--obs-paper-deep);
}

.checkpoint-power-inadmissible-cell {
  color: var(--obs-red);
}

.checkpoint-power-hash {
  max-width: 220px;
  overflow-wrap: anywhere;
}

.checkpoint-power-trace pre {
  max-height: 440px;
  padding: 12px 14px;
  margin: 0;
  overflow: auto;
  border-top: 1px solid var(--obs-rule-soft);
  background: var(--obs-ink);
  color: #e5ece8;
  font: 0.7rem/1.55 var(--font-value);
}

.checkpoint-power-raw-panel > p {
  margin: 0 14px 10px;
  overflow-wrap: anywhere;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.checkpoint-power-raw-panel > p:first-child {
  padding: 9px 10px;
  border-left: 4px solid var(--obs-event-power);
  background: rgba(123, 102, 32, 0.07);
  color: var(--obs-ink);
}

.checkpoint-energy-v2-band {
  border-top: 3px solid var(--obs-teal);
  background: rgba(248, 245, 237, 0.99);
}

.checkpoint-energy-v2-header output {
  max-width: min(54ch, 50vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.checkpoint-energy-insight {
  display: grid;
  grid-template-columns: minmax(300px, 0.82fr) minmax(320px, 1fr);
  gap: clamp(22px, 4vw, 64px);
  align-items: end;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid var(--obs-ink);
  border-left: 7px solid var(--obs-teal);
  background: var(--obs-ink);
  color: var(--obs-paper-raised);
}

.checkpoint-energy-eyebrow {
  margin: 0 0 8px;
  color: #9bd2d1;
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.checkpoint-energy-insight h3 {
  max-width: 23ch;
  margin: 0;
  font-size: clamp(1.55rem, 3.1vw, 2.7rem);
  line-height: 1.03;
}

.checkpoint-energy-insight > div:last-child {
  display: grid;
  gap: 12px;
}

.checkpoint-energy-insight > div:last-child p {
  max-width: 68ch;
  margin: 0;
  color: #dce3df;
  font-size: 0.92rem;
  line-height: 1.62;
}

.checkpoint-energy-insight > div:last-child strong {
  padding-top: 10px;
  border-top: 1px solid rgba(248, 245, 237, 0.28);
  color: #a9ded8;
  font: 700 0.72rem/1.5 var(--font-value);
}

.checkpoint-energy-depth-copy {
  max-width: 92ch;
  padding: 15px 0 17px;
  color: var(--obs-ink-soft);
  font-size: 0.88rem;
  line-height: 1.58;
}

.checkpoint-energy-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .checkpoint-energy-depth-copy .depth-freshman,
body[data-depth="full_trace"] .checkpoint-energy-depth-copy .depth-freshman,
body[data-depth="full_trace"] .checkpoint-energy-depth-copy .depth-researcher {
  display: none;
}

.checkpoint-energy-freshman-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.checkpoint-energy-plain-card {
  min-width: 0;
  padding: clamp(15px, 2vw, 22px);
  border-top: 5px solid var(--obs-teal);
  background: rgba(8, 117, 128, 0.035);
}

.checkpoint-energy-plain-card + .checkpoint-energy-plain-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-plain-label,
.checkpoint-energy-plain-detail {
  margin: 0;
}

.checkpoint-energy-plain-label {
  color: var(--obs-ink-soft);
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.checkpoint-energy-plain-value {
  display: block;
  margin: 15px 0 8px;
  color: var(--obs-teal-dark);
  font: 700 clamp(1.3rem, 2.2vw, 2rem)/1 var(--font-value);
}

.checkpoint-energy-plain-detail {
  color: var(--obs-ink-soft);
  font-size: 0.71rem;
  line-height: 1.5;
}

.checkpoint-energy-validity,
.checkpoint-energy-effects,
.checkpoint-energy-phase-support,
.checkpoint-energy-gates {
  padding: 15px 16px 16px;
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.checkpoint-energy-effects,
.checkpoint-energy-phase-support,
.checkpoint-energy-gates {
  border-top: 0;
}

.checkpoint-energy-section-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.checkpoint-energy-section-header h3,
.checkpoint-energy-boundary h3 {
  margin: 0;
  font: 700 0.77rem/1.3 var(--font-value);
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.checkpoint-energy-section-header > span {
  max-width: 44ch;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.35 var(--font-value);
  text-align: right;
}

.checkpoint-energy-validity-grid,
.checkpoint-energy-support-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-validity-card,
.checkpoint-energy-support-card {
  min-width: 0;
  padding: 13px;
  border-top: 4px solid var(--obs-teal);
  background: rgba(8, 117, 128, 0.035);
}

.checkpoint-energy-validity-card + .checkpoint-energy-validity-card,
.checkpoint-energy-support-card + .checkpoint-energy-support-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-validity-card[data-primary="true"] {
  background: rgba(8, 117, 128, 0.1);
}

.checkpoint-energy-validity-card p,
.checkpoint-energy-support-card p,
.checkpoint-energy-validity-card small,
.checkpoint-energy-support-card small {
  margin: 0;
  color: var(--obs-ink-soft);
  font-family: var(--font-value);
}

.checkpoint-energy-validity-card p,
.checkpoint-energy-support-card p {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.checkpoint-energy-validity-card strong,
.checkpoint-energy-support-card strong {
  display: block;
  margin: 14px 0 6px;
  overflow-wrap: anywhere;
  color: var(--obs-teal-dark);
  font: 700 clamp(0.9rem, 1.55vw, 1.3rem)/1.15 var(--font-value);
}

.checkpoint-energy-validity-card small,
.checkpoint-energy-support-card small {
  display: block;
  font-size: 0.7rem;
  line-height: 1.45;
}

.checkpoint-energy-effect-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-effect-card {
  min-width: 0;
  padding: 16px;
  border-top: 5px solid var(--obs-teal);
  background: rgba(8, 117, 128, 0.055);
}

.checkpoint-energy-effect-card + .checkpoint-energy-effect-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-effect-card[data-status="sensitivity-·-inconclusive"] {
  border-top-color: var(--obs-event-power);
  background: rgba(123, 102, 32, 0.055);
}

.checkpoint-energy-effect-card[data-status="sensitivity-·-inconclusive"]
  .checkpoint-energy-effect-status,
.checkpoint-energy-effect-card[data-status="sensitivity-·-inconclusive"]
  .checkpoint-energy-effect-value {
  color: var(--obs-event-power);
}

.checkpoint-energy-effect-status {
  display: inline-block;
  padding: 3px 6px;
  border: 1px solid currentColor;
  color: var(--obs-teal-dark);
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.04em;
}

.checkpoint-energy-effect-card h4 {
  margin: 10px 0 0;
  font: 700 0.7rem/1.35 var(--font-value);
  text-transform: uppercase;
}

.checkpoint-energy-effect-value {
  display: block;
  margin: 18px 0 0;
  overflow-wrap: anywhere;
  color: var(--obs-teal-dark);
  font: 700 clamp(1rem, 1.7vw, 1.45rem)/1.2 var(--font-value);
}

.checkpoint-energy-effect-interval,
.checkpoint-energy-effect-meaning {
  margin: 8px 0 0;
  font-family: var(--font-value);
  font-size: 0.7rem;
  line-height: 1.5;
}

.checkpoint-energy-effect-interval {
  padding-top: 8px;
  border-top: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-effect-meaning {
  color: var(--obs-ink-soft);
}

.checkpoint-energy-exploratory {
  margin-top: 12px;
  border: 1px solid var(--obs-event-power);
  background: rgba(123, 102, 32, 0.055);
}

.checkpoint-energy-exploratory > header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-bottom: 1px solid rgba(123, 102, 32, 0.32);
}

.checkpoint-energy-exploratory-badge {
  flex: 0 0 auto;
  padding: 3px 6px;
  border: 1px solid currentColor;
  color: var(--obs-event-power);
  font: 700 0.7rem var(--font-value);
}

.checkpoint-energy-exploratory > header p {
  margin: 0;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.45 var(--font-value);
}

.checkpoint-energy-exploratory-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.checkpoint-energy-exploratory-grid section {
  padding: 12px;
}

.checkpoint-energy-exploratory-grid section + section {
  border-left: 1px solid rgba(123, 102, 32, 0.32);
}

.checkpoint-energy-exploratory-grid h4 {
  margin: 0;
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.checkpoint-energy-exploratory-grid ul {
  padding: 0;
  margin: 8px 0 0;
  list-style: none;
}

.checkpoint-energy-exploratory-grid li {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 5px 0;
  border-top: 1px solid rgba(123, 102, 32, 0.2);
  font: 0.7rem/1.4 var(--font-value);
}

.checkpoint-energy-exploratory-grid li span {
  color: var(--obs-ink-soft);
}

.checkpoint-energy-gate-groups {
  display: grid;
  gap: 12px;
}

.checkpoint-energy-gate-groups > div {
  border: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-gate-groups h4 {
  margin: 0;
  padding: 8px 10px;
  border-bottom: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper-deep);
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.checkpoint-energy-gate-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
}

.checkpoint-energy-gate {
  min-width: 0;
  padding: 9px;
  border-left: 1px solid var(--obs-rule-soft);
  background: rgba(8, 117, 128, 0.06);
}

.checkpoint-energy-gate:first-child {
  border-left: 0;
}

.checkpoint-energy-gate-state,
.checkpoint-energy-gate-label {
  display: block;
  font-family: var(--font-value);
}

.checkpoint-energy-gate-state {
  color: var(--obs-teal-dark);
  font-size: 0.7rem;
  font-weight: 700;
}

.checkpoint-energy-gate-label {
  margin-top: 4px;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.35;
}

.checkpoint-energy-boundary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 11px;
  padding: 14px 16px;
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: rgba(8, 117, 128, 0.045);
}

.checkpoint-energy-boundary p {
  max-width: 112ch;
  margin: 5px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.74rem;
  line-height: 1.55;
}

.checkpoint-energy-boundary p + p {
  padding-top: 7px;
  border-top: 1px solid var(--obs-rule-soft);
  font-family: var(--font-value);
  font-size: 0.7rem;
}

.checkpoint-energy-trace {
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: var(--obs-paper-raised);
}

.checkpoint-energy-run-selector {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper-deep);
}

.checkpoint-energy-run-selector label {
  font: 700 0.7rem var(--font-value);
  text-transform: uppercase;
}

.checkpoint-energy-run-selector select {
  width: min(620px, 62vw);
  min-height: 34px;
  padding: 5px 28px 5px 8px;
  font: 0.7rem var(--font-value);
}

.checkpoint-energy-trace details + details {
  border-top: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-trace summary {
  padding: 10px 14px;
  font: 700 0.7rem var(--font-value);
  cursor: pointer;
}

.checkpoint-energy-counter-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 14px 12px;
  border: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-counter-summary > div {
  min-width: 0;
  padding: 9px;
  background: rgba(8, 117, 128, 0.045);
}

.checkpoint-energy-counter-summary > div + div {
  border-left: 1px solid var(--obs-rule-soft);
}

.checkpoint-energy-counter-summary span,
.checkpoint-energy-counter-summary strong {
  display: block;
  font-family: var(--font-value);
}

.checkpoint-energy-counter-summary span {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  text-transform: uppercase;
}

.checkpoint-energy-counter-summary strong {
  margin-top: 5px;
  overflow-wrap: anywhere;
  font-size: 0.7rem;
}

.checkpoint-energy-table-scroll {
  max-width: 100%;
  padding: 0 14px 14px;
  overflow-x: auto;
}

.checkpoint-energy-trace-table {
  width: 100%;
  min-width: 980px;
  border-collapse: collapse;
  font: 0.7rem/1.4 var(--font-value);
}

.checkpoint-energy-ledger-table,
.checkpoint-energy-points-table {
  min-width: 1260px;
}

.checkpoint-energy-trace-table th,
.checkpoint-energy-trace-table td {
  padding: 6px 8px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
  vertical-align: top;
}

.checkpoint-energy-trace-table th {
  background: var(--obs-paper-deep);
}

.checkpoint-energy-trace-table tr[data-evidence-class^="exploratory"] td:nth-child(2) {
  color: var(--obs-event-power);
  font-weight: 700;
}

.checkpoint-energy-hash {
  max-width: 220px;
  overflow-wrap: anywhere;
}

.checkpoint-energy-trace pre {
  max-height: 440px;
  padding: 12px 14px;
  margin: 0;
  overflow: auto;
  border-top: 1px solid var(--obs-rule-soft);
  background: var(--obs-ink);
  color: #e5ece8;
  font: 0.7rem/1.55 var(--font-value);
}

.checkpoint-energy-raw-panel > p {
  margin: 0 14px 10px;
  overflow-wrap: anywhere;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.checkpoint-energy-raw-panel > p:first-child {
  padding: 9px 10px;
  border-left: 4px solid var(--obs-teal);
  background: rgba(8, 117, 128, 0.07);
  color: var(--obs-ink);
}

.checkpoint-energy-points-table tr[data-counter-update="true"] {
  background: rgba(8, 117, 128, 0.08);
}

.checkpoint-energy-points-table tr[data-counter-update="true"] td:nth-child(5) {
  color: var(--obs-teal-dark);
  font-weight: 700;
}

.learning-v1-header output {
  max-width: min(50ch, 48vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.learning-insight {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(300px, 1fr);
  gap: clamp(20px, 4vw, 64px);
  align-items: end;
  padding: clamp(18px, 3vw, 30px);
  border: 1px solid var(--obs-ink);
  background: var(--obs-ink);
  color: var(--obs-paper-raised);
}

.learning-eyebrow {
  margin: 0 0 8px;
  color: #9bd2d1;
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.learning-insight h3 {
  max-width: 18ch;
  margin: 0;
  font-size: clamp(1.45rem, 3vw, 2.55rem);
  line-height: 1.03;
}

.learning-insight > p {
  max-width: 62ch;
  margin: 0;
  color: #d9dedb;
  font-size: 0.92rem;
  line-height: 1.6;
}

.learning-depth-copy {
  max-width: 80ch;
  padding: 13px 0 15px;
  color: var(--obs-ink-soft);
  font-size: 0.87rem;
  line-height: 1.55;
}

.learning-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .learning-depth-copy .depth-freshman,
body[data-depth="full_trace"] .learning-depth-copy .depth-freshman,
body[data-depth="full_trace"] .learning-depth-copy .depth-researcher {
  display: none;
}

.learning-policy-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.learning-policy-card {
  --learning-arm-color: var(--obs-cobalt);
  min-width: 0;
  padding: 15px 16px 17px;
  border-top: 4px solid var(--learning-arm-color);
}

.learning-policy-card + .learning-policy-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.learning-policy-card[data-arm="fixed_interrupted"] { --learning-arm-color: var(--obs-orange); }
.learning-policy-card[data-arm="adaptive_interrupted"] { --learning-arm-color: var(--obs-teal); }

.learning-policy-card > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 13px;
}

.learning-policy-card h3 {
  margin: 0;
  color: var(--learning-arm-color);
  font: 700 0.77rem/1.3 var(--font-value);
  text-transform: uppercase;
}

.learning-arm-role {
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

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

.learning-primary-metric {
  min-width: 0;
  padding: 9px;
  border: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper);
}

.learning-primary-metric dt,
.learning-primary-metric small,
.learning-supporting-metrics dt,
.learning-supporting-metrics dd {
  font-family: var(--font-value);
}

.learning-primary-metric dt {
  min-height: 2.5em;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.25;
  text-transform: uppercase;
}

.learning-primary-metric dd {
  margin: 6px 0 2px;
  overflow-wrap: anywhere;
  font: 700 clamp(0.7rem, 1.15vw, 0.95rem)/1.15 var(--font-value);
}

.learning-primary-metric small {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
}

.learning-supporting-metrics {
  display: grid;
  grid-template-columns: repeat(3, auto 1fr);
  gap: 4px 7px;
  margin: 12px 0 0;
  padding-top: 10px;
  border-top: 1px solid var(--obs-rule-soft);
}

.learning-supporting-metrics dt,
.learning-supporting-metrics dd {
  margin: 0;
  font-size: 0.7rem;
}

.learning-supporting-metrics dt {
  color: var(--obs-ink-soft);
}

.learning-supporting-metrics dd {
  font-weight: 700;
}

.learning-visual-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(0, 0.82fr);
  margin-top: 14px;
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.learning-figure {
  min-width: 0;
  padding: 15px 16px 14px;
}

.learning-figure + .learning-figure {
  border-left: 1px solid var(--obs-rule-soft);
}

.learning-figure > header,
.learning-gates > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.learning-figure h3,
.learning-gates h3,
.learning-boundary h3 {
  margin: 0;
  font: 700 0.76rem/1.25 var(--font-value);
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.learning-figure > header > span,
.learning-gates > header > span {
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
  text-align: right;
}

.learning-svg-scroll {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-color: var(--obs-teal) var(--obs-paper-deep);
  scrollbar-width: thin;
}

.learning-curves-svg,
.learning-paired-svg {
  width: 100%;
  min-width: 620px;
  height: auto;
  background:
    linear-gradient(var(--obs-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--obs-grid) 1px, transparent 1px);
  background-size: 24px 24px;
}

.learning-paired-svg {
  min-width: 620px;
}

.learning-curves-svg text,
.learning-paired-svg text {
  fill: var(--obs-ink);
  font-family: var(--font-value);
}

.learning-axis,
.learning-gridline,
.learning-effect-track {
  stroke: var(--obs-rule);
  stroke-width: 1;
}

.learning-gridline,
.learning-effect-track {
  stroke: var(--obs-rule-soft);
}

.learning-axis-label,
.learning-axis-title,
.learning-target-label,
.learning-effect-label,
.learning-effect-value,
.learning-effect-direction,
.learning-chart-empty {
  font-size: 11px;
}

.learning-axis-title,
.learning-target-label,
.learning-effect-direction {
  font-weight: 700;
  letter-spacing: 0.04em;
}

.learning-target-line {
  stroke: var(--obs-red);
  stroke-width: 1.5;
  stroke-dasharray: 5 4;
}

.learning-target-label {
  fill: var(--obs-red) !important;
}

.learning-curve,
.learning-label-leader {
  fill: none;
  stroke: var(--learning-curve-color, var(--obs-cobalt));
}

.learning-curve {
  stroke-width: 2.6;
}

.learning-label-leader {
  stroke-width: 1;
  stroke-dasharray: 2 2;
}

.learning-curve-point {
  fill: var(--learning-curve-color, var(--obs-cobalt));
  stroke: var(--obs-paper-raised);
  stroke-width: 1;
}

.learning-curve-label {
  fill: var(--learning-curve-color, var(--obs-cobalt)) !important;
  font: 700 11px var(--font-value);
}

.learning-curve[data-arm="fixed_interrupted"],
.learning-label-leader[data-arm="fixed_interrupted"],
.learning-curve-point[data-arm="fixed_interrupted"],
.learning-curve-label[data-arm="fixed_interrupted"] { --learning-curve-color: var(--obs-orange); }

.learning-curve[data-arm="adaptive_interrupted"],
.learning-label-leader[data-arm="adaptive_interrupted"],
.learning-curve-point[data-arm="adaptive_interrupted"],
.learning-curve-label[data-arm="adaptive_interrupted"] { --learning-curve-color: var(--obs-teal); }

.learning-direct-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 10px 0 0;
  margin: 0;
  border-top: 1px solid var(--obs-rule-soft);
  list-style: none;
}

.learning-direct-values li {
  --learning-arm-color: var(--obs-cobalt);
  display: grid;
  gap: 2px;
  padding-left: 8px;
  border-left: 3px solid var(--learning-arm-color);
  font: 0.7rem/1.35 var(--font-value);
}

.learning-direct-values li[data-arm="fixed_interrupted"] { --learning-arm-color: var(--obs-orange); }
.learning-direct-values li[data-arm="adaptive_interrupted"] { --learning-arm-color: var(--obs-teal); }

.learning-direct-values strong {
  font-size: 0.7rem;
}

.learning-zero-line {
  stroke: var(--obs-ink);
  stroke-width: 1.4;
}

.learning-effect-point {
  fill: var(--obs-teal);
  stroke: var(--obs-paper-raised);
  stroke-width: 2;
}

.learning-interval-line,
.learning-interval-cap {
  stroke: var(--obs-orange);
  stroke-width: 3;
}

.learning-interval-cap {
  stroke-width: 1.5;
}

.learning-interval-median {
  fill: var(--obs-orange);
}

.learning-paired-summary {
  margin: 9px 0 0;
  padding-top: 9px;
  border-top: 1px solid var(--obs-rule-soft);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.learning-gates {
  padding: 14px 16px 16px;
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: var(--obs-paper-raised);
}

.learning-gate-strip {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.learning-gate {
  min-width: 0;
  padding: 8px;
  background: rgba(181, 39, 32, 0.055);
}

.learning-gate + .learning-gate {
  border-left: 1px solid var(--obs-rule-soft);
}

.learning-gate[data-passed="true"] {
  background: rgba(8, 117, 128, 0.075);
}

.learning-gate-state,
.learning-gate-label {
  display: block;
  font-family: var(--font-value);
}

.learning-gate-state {
  color: var(--obs-red);
  font-size: 0.7rem;
  font-weight: 700;
}

.learning-gate[data-passed="true"] .learning-gate-state {
  color: var(--obs-teal-dark);
}

.learning-gate-label {
  margin-top: 4px;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.35;
}

.learning-boundary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  padding: 14px 16px;
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: rgba(8, 117, 128, 0.045);
}

.learning-boundary p {
  max-width: 100ch;
  margin: 5px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.75rem;
}

.learning-trace {
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: var(--obs-paper-raised);
}

.learning-trace details + details {
  border-top: 1px solid var(--obs-rule-soft);
}

.learning-trace summary {
  padding: 10px 14px;
  font: 700 0.7rem var(--font-value);
  cursor: pointer;
}

.learning-table-scroll {
  max-width: 100%;
  padding: 0 14px 14px;
  overflow-x: auto;
}

.learning-trace-table {
  width: 100%;
  min-width: 660px;
  border-collapse: collapse;
  font: 0.7rem var(--font-value);
}

.learning-trace-table th,
.learning-trace-table td {
  padding: 6px 8px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
}

.learning-trace-table th {
  background: var(--obs-paper-deep);
}

.learning-trace pre {
  max-height: 360px;
  padding: 12px 14px;
  margin: 0;
  overflow: auto;
  border-top: 1px solid var(--obs-rule-soft);
  background: var(--obs-ink);
  color: #e5ece8;
  font: 0.7rem/1.55 var(--font-value);
}

.recovery-v2-header output {
  max-width: min(46ch, 48vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.recovery-depth-copy {
  max-width: 74ch;
  margin: -2px 0 14px;
  color: var(--obs-ink-soft);
  font-size: 0.88rem;
  line-height: 1.55;
}

.recovery-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .recovery-depth-copy .depth-freshman,
body[data-depth="full_trace"] .recovery-depth-copy .depth-freshman,
body[data-depth="full_trace"] .recovery-depth-copy .depth-researcher {
  display: none;
}

.recovery-timeline-well {
  min-width: 0;
  overflow-x: auto;
  border: 1px solid var(--obs-rule);
  background:
    linear-gradient(var(--obs-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--obs-grid) 1px, transparent 1px),
    var(--obs-paper-raised);
  background-size: 24px 24px;
  scrollbar-color: var(--obs-teal) var(--obs-paper-deep);
  scrollbar-width: thin;
}

.recovery-timeline-svg {
  width: 100%;
  min-width: 820px;
  height: auto;
}

.recovery-timeline-svg text {
  fill: var(--obs-ink);
  font-family: var(--font-value);
}

.recovery-timeline-svg .recovery-axis,
.recovery-timeline-svg .recovery-track,
.recovery-timeline-svg .recovery-gridline {
  stroke: var(--obs-rule);
  stroke-width: 1;
}

.recovery-timeline-svg .recovery-gridline {
  stroke: var(--obs-rule-soft);
}

.recovery-timeline-svg .recovery-policy-label {
  font-size: 12px;
  font-weight: 700;
}

.recovery-timeline-svg .recovery-policy-label[data-policy-role="candidate"] {
  fill: var(--obs-teal);
}

.recovery-timeline-svg .recovery-policy-label[data-policy-role="oracle_comparator"] {
  fill: var(--obs-event-checkpoint);
}

.recovery-timeline-svg .recovery-tick,
.recovery-timeline-svg .recovery-event-label,
.recovery-timeline-svg .recovery-event-id {
  font-size: 11px;
}

.recovery-timeline-svg .recovery-event-id {
  fill: var(--obs-ink-soft);
}

.recovery-timeline-svg .recovery-event {
  stroke-width: 1.25;
}

.recovery-timeline-svg .recovery-event[data-role="failure"] {
  fill: rgba(181, 39, 32, 0.18);
  stroke: var(--obs-red);
}

.recovery-timeline-svg .recovery-event[data-role="checkpoint_restore"],
.recovery-timeline-svg .recovery-event[data-role="state_transfer"] {
  fill: rgba(105, 82, 163, 0.2);
  stroke: var(--obs-event-checkpoint);
}

.recovery-timeline-svg .recovery-event[data-role="replay"],
.recovery-timeline-svg .recovery-event[data-role="resynchronize"] {
  fill: rgba(198, 77, 19, 0.17);
  stroke: var(--obs-orange);
}

.recovery-timeline-svg .recovery-event[data-role="preemption"] {
  fill: var(--obs-red);
  stroke: var(--obs-paper-raised);
  stroke-width: 2;
}

.recovery-timeline-svg .recovery-event[data-role="membership_rejoin"],
.recovery-timeline-svg .recovery-event[data-role="durable_progress_recovery"] {
  fill: var(--obs-teal);
  stroke: var(--obs-paper-raised);
  stroke-width: 2;
}

.recovery-timeline-svg .recovery-debt-bracket {
  fill: none;
  stroke: var(--obs-orange);
  stroke-width: 1.5;
}

.recovery-timeline-svg .recovery-debt-label {
  fill: var(--obs-orange);
  font-size: 11px;
  font-weight: 700;
}

.recovery-role-key {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  padding: 9px 0 11px;
  margin: 0;
  border-bottom: 1px solid var(--obs-rule-soft);
  list-style: none;
  font: 0.7rem var(--font-value);
  text-transform: uppercase;
}

.recovery-role-key li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.recovery-role-key span {
  width: 22px;
  height: 9px;
  border: 1px solid currentColor;
}

.recovery-role-key [data-recovery-role="failure"] { color: var(--obs-red); background: rgba(181, 39, 32, 0.18); }
.recovery-role-key [data-recovery-role="preemption"] { width: 9px; background: var(--obs-red); }
.recovery-role-key [data-recovery-role="checkpoint_restore"] { color: var(--obs-event-checkpoint); background: rgba(105, 82, 163, 0.2); }
.recovery-role-key [data-recovery-role="replay"] { color: var(--obs-orange); background: rgba(198, 77, 19, 0.17); }
.recovery-role-key [data-recovery-role="membership_rejoin"] { width: 9px; background: var(--obs-teal); }

.recovery-mechanics-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  border: 1px solid var(--obs-rule);
  border-top: 0;
}

.recovery-measure,
.recovery-learning-boundary {
  min-width: 0;
  padding: 14px 16px 16px;
}

.recovery-measure:nth-child(odd) {
  border-right: 1px solid var(--obs-rule-soft);
}

.recovery-measure:nth-child(-n + 2) {
  border-bottom: 1px solid var(--obs-rule-soft);
}

.recovery-measure-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.recovery-measure-heading h3,
.recovery-learning-boundary h3 {
  margin: 0;
  font: 700 0.76rem var(--font-value);
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.recovery-measure-heading span {
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
  text-align: right;
}

.recovery-policy-measure {
  display: grid;
  grid-template-columns: minmax(148px, 0.42fr) minmax(160px, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}

.recovery-policy-measure:first-child {
  margin-top: 0;
}

.recovery-measure-label,
.recovery-measure-value,
.recovery-stack-legend,
.recovery-completion-note {
  font-family: var(--font-value);
}

.recovery-measure-label {
  display: grid;
  gap: 2px;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.2;
}

.recovery-measure-label small {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.recovery-policy-measure[data-policy-role="candidate"] .recovery-measure-label {
  color: var(--obs-teal);
}

.recovery-policy-measure[data-policy-role="oracle_comparator"] .recovery-measure-label {
  color: var(--obs-event-checkpoint);
}

.recovery-measure-value {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  text-align: right;
  white-space: nowrap;
}

.recovery-stack {
  position: relative;
  display: flex;
  min-height: 18px;
  overflow: hidden;
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-deep);
}

.recovery-stack-segment {
  min-width: 0;
  height: 16px;
}

.recovery-stack-segment[data-work="retained"] { background: var(--obs-teal); }
.recovery-stack-segment[data-work="lost"] {
  background: repeating-linear-gradient(135deg, rgba(181, 39, 32, 0.78) 0 4px, rgba(181, 39, 32, 0.28) 4px 8px);
}

.recovery-replay-marker {
  position: absolute;
  top: 3px;
  bottom: 3px;
  border: 1px solid var(--obs-orange);
  pointer-events: none;
}

.recovery-byte-segment[data-byte-class="completed_collective_link_bytes"] { background: var(--obs-cobalt); }
.recovery-byte-segment[data-byte-class="aborted_collective_link_bytes"] { background: var(--obs-red); }
.recovery-byte-segment[data-byte-class="remote_checkpoint_replication_link_bytes"] { background: var(--obs-event-checkpoint); }
.recovery-byte-segment[data-byte-class="remote_checkpoint_restore_link_bytes"] { background: #8c74bd; }
.recovery-byte-segment[data-byte-class="recovery_state_redistribution_link_bytes"] { background: var(--obs-orange); }
.recovery-byte-segment[data-byte-class="planned_state_migration_link_bytes"] { background: var(--obs-teal); }

.recovery-stack-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  grid-column: 2 / -1;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
}

.recovery-stack-legend span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.recovery-stack-legend i {
  width: 8px;
  height: 8px;
  background: var(--legend-color, var(--obs-rule));
}

.recovery-completion-ruler {
  position: relative;
  min-height: 102px;
  padding: 6px 0 0;
}

.recovery-completion-axis {
  position: absolute;
  right: 0;
  bottom: 14px;
  left: 0;
  height: 1px;
  background: var(--obs-rule);
}

.recovery-completion-policy {
  position: relative;
  display: grid;
  grid-template-columns: minmax(108px, 0.32fr) minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 13px;
}

.recovery-completion-track {
  position: relative;
  height: 14px;
  background: linear-gradient(90deg, var(--obs-rule-soft), var(--obs-rule-soft)) center / 100% 1px no-repeat;
}

.recovery-completion-mark {
  position: absolute;
  top: 1px;
  width: 3px;
  height: 12px;
  transform: translateX(-1px);
  background: var(--obs-teal);
}

.recovery-learning-boundary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  align-content: start;
  border-top: 1px solid var(--obs-rule-soft);
  background: rgba(181, 39, 32, 0.035);
}

.recovery-learning-boundary p {
  max-width: 66ch;
  margin: 6px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.78rem;
}

.recovery-timeline-fallback {
  border-top: 0;
}

/* The fallback table's min-content beats a phone viewport; scroll it inside
   its own container instead of clipping at the right edge. */
.recovery-timeline-fallback > div {
  min-width: 0;
  overflow-x: auto;
}

.recovery-timeline-table {
  width: 100%;
  margin-top: 8px;
  border-collapse: collapse;
  font: 0.7rem var(--font-value);
}

.recovery-timeline-table th,
.recovery-timeline-table td {
  padding: 5px 7px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
}

.band-header {
  margin-bottom: 12px;
}

.band-header h2 {
  margin: 0;
  font-size: clamp(1.2rem, 2vw, 1.65rem);
  line-height: 1.1;
}

.band-header output,
.uncertainty-control,
.evidence-lock {
  color: var(--obs-ink-soft);
  font: 0.71rem var(--font-value);
}

.timeline-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 20px;
}

.timeline-viewport {
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

.timeline-svg {
  width: 100%;
  min-width: 760px;
  height: 210px;
}

.timeline-svg .axis-line,
.timeline-svg .axis-tick,
.timeline-svg .track-line {
  stroke: var(--obs-rule);
  stroke-width: 1;
}

.timeline-svg .axis-minor {
  stroke: var(--obs-rule-soft);
  stroke-width: 1;
}

.timeline-svg .axis-text,
.timeline-svg .policy-label,
.timeline-svg .event-label,
.timeline-svg .empty-label {
  fill: var(--obs-ink);
  font-family: var(--font-value);
}

.timeline-svg .axis-text { font-size: 11px; }
.timeline-svg .policy-label { font-size: 11px; font-weight: 600; }
.timeline-svg .event-label { font-size: 8px; pointer-events: none; }
.timeline-svg .empty-label { fill: var(--obs-red); font-size: 12px; text-anchor: middle; }

.timeline-svg .timeline-event {
  cursor: pointer;
  stroke-width: 1;
  transition: opacity 140ms ease, stroke-width 140ms ease;
}

.timeline-svg .timeline-event:hover,
.timeline-svg .timeline-event:focus,
.timeline-svg .timeline-event.is-selected {
  stroke: var(--obs-orange);
  stroke-width: 3;
}

.timeline-svg .timeline-event[data-kind="compute"] { fill: rgba(8, 117, 128, 0.24); stroke: var(--obs-event-compute); }
.timeline-svg .timeline-event[data-kind="collective"] { fill: rgba(36, 86, 196, 0.22); stroke: var(--obs-event-collective); }
.timeline-svg .timeline-event[data-kind="checkpoint"] { fill: rgba(105, 82, 163, 0.2); stroke: var(--obs-event-checkpoint); }
.timeline-svg .timeline-event[data-kind="failure"] { fill: rgba(181, 39, 32, 0.18); stroke: var(--obs-event-failure); }
.timeline-svg .timeline-event[data-kind="recovery"] { fill: rgba(198, 77, 19, 0.17); stroke: var(--obs-event-recovery); }
.timeline-svg .timeline-event[data-kind="power"],
.timeline-svg .timeline-event[data-kind="cooling"],
.timeline-svg .timeline-event[data-kind="grid"] { fill: rgba(123, 102, 32, 0.18); stroke: var(--obs-event-power); }
.timeline-svg .timeline-event[data-kind="state_transfer"] { fill: rgba(8, 117, 128, 0.12); stroke: var(--obs-teal-dark); }

.timeline-svg .scrubber-line {
  stroke: var(--obs-orange);
  stroke-width: 2;
  pointer-events: none;
}

.timeline-svg .scrubber-handle {
  fill: var(--obs-orange);
  pointer-events: none;
}

.timeline-controls {
  padding-left: 18px;
  border-left: 1px solid var(--obs-rule-soft);
}

.timeline-controls > label {
  display: block;
  margin-bottom: 9px;
  font: 600 0.7rem var(--font-value);
}

.timeline-controls input[type="range"] {
  width: 100%;
  accent-color: var(--obs-orange);
}

.timeline-control-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  margin-top: 14px;
}

.timeline-control-row button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 36px;
  padding: 6px;
  font: 0.7rem var(--font-value);
}

.timeline-control-row svg {
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.5;
}

button:disabled,
input:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.event-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 11px 18px;
  padding: 10px 0 0;
  margin: 0;
  border-top: 1px solid var(--obs-rule-soft);
  list-style: none;
  font: 0.7rem var(--font-value);
  text-transform: uppercase;
}

.event-legend li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.event-legend span {
  width: 23px;
  height: 10px;
  border: 1px solid currentColor;
}

.event-legend span[data-event-kind="compute"] { color: var(--obs-event-compute); background: rgba(8, 117, 128, 0.2); }
.event-legend span[data-event-kind="collective"] { color: var(--obs-event-collective); background: rgba(36, 86, 196, 0.2); }
.event-legend span[data-event-kind="state_transfer"] { color: var(--obs-teal-dark); background: rgba(8, 117, 128, 0.12); }
.event-legend span[data-event-kind="checkpoint"] { color: var(--obs-event-checkpoint); background: rgba(105, 82, 163, 0.2); }
.event-legend span[data-event-kind="failure"] { color: var(--obs-event-failure); background: rgba(181, 39, 32, 0.18); }
.event-legend span[data-event-kind="recovery"] { color: var(--obs-event-recovery); background: rgba(198, 77, 19, 0.17); }
.event-legend span[data-event-kind="power"] { color: var(--obs-event-power); background: rgba(123, 102, 32, 0.18); }

.timeline-event-table {
  width: 100%;
  margin-bottom: 12px;
  border-collapse: collapse;
  font: 0.7rem var(--font-value);
}

.timeline-event-table th,
.timeline-event-table td {
  padding: 5px 7px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
}

.uncertainty-control {
  display: flex;
  align-items: center;
  gap: 10px;
}

.uncertainty-control select {
  min-height: 34px;
  padding: 5px 30px 5px 10px;
  font: 0.71rem var(--font-value);
}

.comparison-scroll {
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

.policy-comparison,
.source-observations table,
.decision-ledger table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-value);
}

.policy-comparison {
  min-width: 1120px;
}

.policy-comparison th,
.policy-comparison td,
.source-observations th,
.source-observations td,
.decision-ledger th,
.decision-ledger td {
  padding: 9px 11px;
  border-right: 1px solid var(--obs-rule-soft);
  border-bottom: 1px solid var(--obs-rule);
  vertical-align: top;
  text-align: left;
}

.policy-comparison th:last-child,
.policy-comparison td:last-child,
.source-observations th:last-child,
.source-observations td:last-child,
.decision-ledger th:last-child,
.decision-ledger td:last-child {
  border-right: 0;
}

.policy-comparison th,
.source-observations th,
.decision-ledger th {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1.25;
}

.policy-comparison td {
  font-size: 0.73rem;
  line-height: 1.35;
}

.policy-comparison tr.is-selected td {
  background: rgba(8, 117, 128, 0.07);
}

.policy-select {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  font: 600 0.75rem var(--font-value);
  text-align: left;
}

.cell-value {
  display: block;
  margin-bottom: 4px;
  font-weight: 600;
}

.cell-note {
  display: block;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.35 var(--font-reading);
}

.comparison-boundary {
  margin: 10px 0 0;
  color: var(--obs-ink-soft);
  font: 0.7rem var(--font-value);
}

.evidence-lab {
  padding-top: 20px;
}

.evidence-lock {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.evidence-lock svg {
  width: 16px;
  height: 16px;
}

.evidence-chain {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) 44px minmax(180px, 1fr) 44px minmax(160px, 1fr) 44px minmax(160px, 1fr);
  align-items: center;
  gap: 8px;
  padding: 16px 0;
  border-top: 1px solid var(--obs-rule-soft);
  border-bottom: 1px solid var(--obs-rule);
}

.evidence-chain > svg {
  width: 44px;
  fill: none;
  stroke: var(--obs-teal-dark);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.2;
}

.chain-item {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 68px;
  padding: 10px 13px;
  border: 1px solid var(--obs-rule);
  border-radius: 0;
}

.chain-item p {
  margin: 0;
  font: 600 0.76rem/1.25 var(--font-value);
}

.chain-item small {
  display: block;
  margin-top: 4px;
  font-size: 0.7rem;
  letter-spacing: 0.04em;
}

.chain-item.evidence-observed { border-color: var(--obs-cobalt); }
.chain-item.evidence-observed small { color: var(--obs-cobalt); }
.chain-item.evidence-prior { border-color: var(--obs-cobalt); }
.chain-item.evidence-prior small { color: var(--obs-cobalt); }
.chain-item.evidence-unmeasured { border-color: var(--obs-red); }
.chain-item.evidence-unmeasured small { color: var(--obs-red); }

.evidence-grid {
  display: grid;
  grid-template-columns: minmax(360px, 0.78fr) minmax(0, 1.22fr);
  border-bottom: 1px solid var(--obs-rule);
}

.source-observations,
.residual-panel {
  min-width: 0;
  padding: 18px 16px 18px 0;
}

.source-observations {
  border-right: 1px solid var(--obs-rule);
}

.source-observations > p {
  margin-bottom: 12px;
  color: var(--obs-ink-soft);
  font-size: 0.78rem;
}

.source-table-scroll,
.ledger-scroll {
  overflow-x: auto;
}

.source-observations table {
  min-width: 560px;
}

.source-observations td,
.decision-ledger td {
  font-size: 0.7rem;
  line-height: 1.38;
}

.observation-name strong,
.observation-name small {
  display: block;
}

.observation-name small {
  margin-top: 3px;
  color: var(--obs-cobalt);
}

.observation-value strong,
.observation-value small {
  display: block;
}

.observation-value small {
  margin-top: 3px;
  color: var(--obs-ink-soft);
}

.copy-observation {
  width: 29px;
  height: 29px;
  padding: 5px;
  border: 0;
  background: transparent;
}

.copy-observation svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
}

.prior-parameters {
  display: grid;
  grid-template-columns: 1fr auto;
  margin: 16px 0 0;
  border-top: 1px solid var(--obs-rule);
  font: 0.7rem var(--font-value);
}

.prior-parameters dt,
.prior-parameters dd {
  padding: 6px 8px;
  margin: 0;
  border-bottom: 1px solid var(--obs-rule-soft);
}

.prior-parameters dd {
  text-align: right;
}

.transfer-boundary {
  padding-top: 14px;
}

.transfer-boundary h4,
.resolve-list h4 {
  margin-bottom: 6px;
  font: 600 0.8rem var(--font-value);
}

.transfer-boundary p {
  margin-bottom: 0;
  font-size: 0.76rem;
}

.residual-panel {
  padding-left: 18px;
}

.empty-residual {
  position: relative;
  border-bottom: 1px solid var(--obs-rule-soft);
}

.empty-residual > svg {
  width: 100%;
  height: auto;
  max-height: 360px;
}

.residual-grid {
  fill: none;
  stroke: var(--obs-rule-soft);
  stroke-width: 1;
}

.residual-grid path:first-child {
  stroke: var(--obs-rule);
}

.residual-axis-labels {
  fill: var(--obs-ink-soft);
  font: 11px var(--font-value);
}

.empty-residual-message {
  position: absolute;
  top: 43%;
  left: 55%;
  width: min(390px, 66%);
  transform: translate(-50%, -50%);
  text-align: center;
}

.empty-residual-message strong,
.empty-residual-message span {
  display: block;
}

.empty-residual-message strong {
  font: 600 0.83rem var(--font-value);
}

.empty-residual-message span {
  margin-top: 5px;
  color: var(--obs-ink-soft);
  font-size: 0.73rem;
}

.resolve-list {
  padding-top: 14px;
}

.resolve-list ol {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.resolve-list li {
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr);
  gap: 10px;
}

.resolve-list li p {
  margin: 0;
  color: var(--obs-ink-soft);
  font-size: 0.75rem;
}

.resolve-list li strong {
  display: block;
  color: var(--obs-ink);
}

.decision-ledger {
  padding: 16px 0;
  border-bottom: 1px solid var(--obs-rule);
}

.decision-ledger .section-line-heading {
  margin-bottom: 9px;
}

.decision-ledger table {
  min-width: 820px;
}

.raw-trace {
  margin-top: 14px;
  border: 1px solid var(--obs-rule);
  border-radius: 0;
  background: var(--obs-paper-raised);
}

.raw-trace summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 18px;
  gap: 14px;
  align-items: center;
  min-height: 42px;
  padding: 8px 12px;
  cursor: pointer;
  list-style: none;
  font: 0.72rem var(--font-value);
}

.raw-trace summary::-webkit-details-marker {
  display: none;
}

.raw-trace summary > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-weight: 600;
}

.raw-trace summary > span:nth-child(2) {
  overflow: hidden;
  color: var(--obs-ink-soft);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.raw-trace summary svg {
  width: 16px;
  height: 16px;
}

.raw-trace[open] summary > svg {
  transform: rotate(180deg);
}

.raw-trace pre {
  max-height: 520px;
  padding: 14px;
  margin: 0;
  overflow: auto;
  border-top: 1px solid var(--obs-rule);
  background: var(--obs-paper-deep);
  font: 0.7rem/1.5 var(--font-value);
  white-space: pre-wrap;
  word-break: break-word;
}

.obs-footer {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  max-width: 1920px;
  min-height: 42px;
  padding: 12px var(--obs-gutter);
  margin: 0 auto;
  color: var(--obs-ink-soft);
  border-right: 1px solid var(--obs-rule-soft);
  border-left: 1px solid var(--obs-rule-soft);
  font: 0.7rem var(--font-value);
}

.obs-footer span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.obs-footer i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--obs-red);
}

body[data-data-state="ready"] .obs-footer i {
  background: var(--obs-teal);
}

body[data-depth="freshman"] .depth-researcher,
body[data-depth="freshman"] .depth-full_trace,
body[data-depth="researcher"] .depth-full_trace {
  display: none !important;
}

body:not([data-depth="full_trace"]) .raw-trace pre {
  max-height: 320px;
}

.semantic-consistency-v1-band {
  border-top: 3px solid var(--obs-teal);
  background: rgba(248, 245, 237, 0.98);
}

.semantic-consistency-v1-header output {
  max-width: min(58ch, 52vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.semantic-consistency-insight {
  border-left-color: var(--obs-teal);
}

.semantic-consistency-insight > div:last-child {
  display: grid;
  gap: 8px;
}

.semantic-consistency-insight > div:last-child p,
.semantic-consistency-insight > div:last-child strong {
  margin: 0;
  color: #dce3df;
  font-size: 0.9rem;
  line-height: 1.55;
}

.semantic-consistency-insight > div:last-child strong {
  color: #afd7d3;
  font: 600 0.75rem/1.5 var(--font-value);
}

.semantic-consistency-depth-copy {
  max-width: 92ch;
  padding: 15px 0 17px;
  color: var(--obs-ink-soft);
  font-size: 0.88rem;
  line-height: 1.58;
}

.semantic-consistency-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .semantic-consistency-depth-copy .depth-freshman,
body[data-depth="full_trace"] .semantic-consistency-depth-copy .depth-freshman,
body[data-depth="full_trace"] .semantic-consistency-depth-copy .depth-researcher {
  display: none;
}

.semantic-consistency-research {
  display: grid;
  gap: 20px;
  margin-top: 18px;
}

.semantic-consistency-ranking,
.semantic-consistency-timeline,
.semantic-consistency-family-results {
  min-width: 0;
  padding: clamp(16px, 2.4vw, 26px);
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.semantic-consistency-ranking-frame {
  min-width: 0;
  overflow-x: auto;
  border: 1px solid var(--obs-rule-soft);
  background:
    linear-gradient(var(--obs-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--obs-grid) 1px, transparent 1px),
    var(--obs-paper);
  background-size: 24px 24px;
  scrollbar-color: var(--obs-teal) var(--obs-paper-deep);
}

#semantic-consistency-ranking-svg {
  display: block;
  width: 100%;
  min-width: 820px;
  height: auto;
  font-family: var(--font-value);
}

.semantic-ranking-axis,
.semantic-ranking-gridline {
  stroke: var(--obs-rule);
  stroke-width: 1;
}

.semantic-ranking-gridline {
  stroke: var(--obs-rule-soft);
}

.semantic-ranking-family,
.semantic-ranking-tick {
  fill: var(--obs-ink);
}

.semantic-ranking-family {
  font-size: 12px;
  font-weight: 700;
}

.semantic-ranking-tick {
  fill: var(--obs-ink-soft);
  font-size: 11px;
}

.semantic-ranking-label {
  fill: var(--obs-paper-raised);
  font-size: 11px;
  font-weight: 700;
  pointer-events: none;
}

.semantic-ranking-segment {
  stroke: var(--obs-paper-raised);
  stroke-width: 2;
}

.semantic-ranking-segment[data-state="adaptive_wins"],
.semantic-ranking-segment[data-state="adaptive_invariant"] {
  fill: rgba(8, 117, 128, 0.78);
}

.semantic-ranking-segment[data-state="fixed_wins"],
.semantic-ranking-segment[data-state="fixed_invariant"] {
  fill: rgba(36, 86, 196, 0.72);
}

.semantic-ranking-segment[data-state="rank_reverses"],
.semantic-ranking-segment[data-state="uncertain"] {
  fill: rgba(205, 126, 36, 0.76);
}

.semantic-ranking-segment[data-state="abstain"],
.semantic-ranking-segment[data-state="unsupported"] {
  fill: rgba(166, 49, 45, 0.72);
}

.semantic-ranking-segment[data-state="unmeasured"] {
  fill: var(--obs-paper-deep);
  stroke: var(--obs-red);
  stroke-dasharray: 5 4;
}

.semantic-ranking-segment[data-state="unmeasured"] + .semantic-ranking-label {
  fill: var(--obs-ink);
}

.semantic-consistency-family-control {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--obs-ink-soft);
  font: 600 0.7rem var(--font-value);
  text-transform: uppercase;
}

.semantic-consistency-family-control select {
  min-height: 34px;
  max-width: 300px;
  font: 500 0.72rem var(--font-value);
}

.semantic-consistency-timeline-well {
  margin-top: 14px;
}

.semantic-mode-interval {
  stroke: var(--obs-paper-raised);
  stroke-width: 1;
}

.semantic-mode-interval[data-mode="synchronous_restart"],
.semantic-mode-interval[data-mode="exact_sync"] {
  fill: var(--obs-cobalt);
}

.semantic-mode-interval[data-mode="exact_forward_recovery"] {
  fill: var(--obs-teal);
}

.semantic-mode-interval[data-mode="delayed_one_step"] {
  fill: var(--obs-orange);
}

.semantic-mode-interval[data-mode="periodic_local"] {
  fill: #8c74bd;
}

.semantic-mode-interval[data-mode="abstain"] {
  fill: var(--obs-red);
}

.semantic-mode-label,
.semantic-mode-event {
  fill: var(--obs-ink);
  font: 700 11px var(--font-value);
}

.semantic-mode-event {
  fill: var(--obs-red);
}

.semantic-consistency-evidence-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--obs-rule-soft);
}

.semantic-consistency-evidence-grid > section {
  min-width: 0;
  padding: 16px;
}

.semantic-consistency-evidence-grid > section + section {
  border-left: 1px solid var(--obs-rule-soft);
}

.semantic-consistency-evidence-grid h4 {
  margin: 0 0 10px;
  font: 700 0.72rem var(--font-value);
  text-transform: uppercase;
}

.semantic-consistency-evidence-grid dl,
.semantic-consistency-evidence-grid ul {
  margin: 0;
}

.semantic-consistency-evidence-grid dl {
  display: grid;
  gap: 8px;
}

.semantic-consistency-evidence-grid dt {
  color: var(--obs-ink-soft);
  font: 600 0.7rem var(--font-value);
  text-transform: uppercase;
}

.semantic-consistency-evidence-grid dd,
.semantic-consistency-evidence-grid li {
  margin: 2px 0 0;
  overflow-wrap: anywhere;
  font-size: 0.75rem;
  line-height: 1.48;
}

.semantic-consistency-family-table td:last-child[data-state="abstain"],
.semantic-consistency-family-table td:last-child[data-state="rank_reverses"] {
  color: var(--obs-red);
  font-weight: 700;
}

.semantic-consistency-epoch-table td {
  vertical-align: top;
}

.semantic-consistency-epoch-table tr[data-abstained="true"] {
  background: rgba(166, 49, 45, 0.08);
}

.rack-dephasing-v3-band {
  border-top: 3px solid #6652a3;
  background: rgba(248, 245, 237, 0.99);
}

.rack-dephasing-v3-header output {
  max-width: min(54ch, 50vw);
  color: var(--obs-ink-soft);
  font: 0.7rem/1.4 var(--font-value);
  text-align: right;
}

.rack-dephasing-insight {
  display: grid;
  grid-template-columns: minmax(300px, 0.82fr) minmax(320px, 1fr);
  gap: clamp(22px, 4vw, 64px);
  align-items: end;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid var(--obs-ink);
  border-left: 7px solid #806bc1;
  background: var(--obs-ink);
  color: var(--obs-paper-raised);
}

.rack-dephasing-eyebrow {
  margin: 0 0 8px;
  color: #bfb2ea;
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.rack-dephasing-insight h3 {
  max-width: 24ch;
  margin: 0;
  font-size: clamp(1.55rem, 3.1vw, 2.7rem);
  line-height: 1.03;
}

.rack-dephasing-insight > div:last-child {
  display: grid;
  gap: 12px;
}

.rack-dephasing-insight > div:last-child p {
  max-width: 68ch;
  margin: 0;
  color: #dce3df;
  font-size: 0.92rem;
  line-height: 1.62;
}

.rack-dephasing-insight > div:last-child strong {
  padding-top: 10px;
  border-top: 1px solid rgba(248, 245, 237, 0.28);
  color: #c9bdf0;
  font: 700 0.72rem/1.5 var(--font-value);
}

.rack-dephasing-depth-copy {
  max-width: 94ch;
  padding: 15px 0 17px;
  color: var(--obs-ink-soft);
  font-size: 0.88rem;
  line-height: 1.58;
}

.rack-dephasing-depth-copy p {
  margin: 0;
}

body[data-depth="researcher"] .rack-dephasing-depth-copy .depth-freshman,
body[data-depth="full_trace"] .rack-dephasing-depth-copy .depth-freshman,
body[data-depth="full_trace"] .rack-dephasing-depth-copy .depth-researcher {
  display: none;
}

.rack-dephasing-freshman-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.rack-dephasing-plain-card {
  min-width: 0;
  padding: clamp(15px, 2vw, 22px);
  border-top: 5px solid #806bc1;
  background: rgba(102, 82, 163, 0.05);
}

.rack-dephasing-plain-card + .rack-dephasing-plain-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-plain-card span,
.rack-dephasing-plain-card strong,
.rack-dephasing-plain-card small {
  display: block;
  font-family: var(--font-value);
}

.rack-dephasing-plain-card span {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.rack-dephasing-plain-card strong {
  margin: 15px 0 8px;
  color: #51407f;
  font-size: clamp(1.3rem, 2.2vw, 2rem);
  line-height: 1;
}

.rack-dephasing-plain-card small {
  color: var(--obs-ink-soft);
  font-size: 0.71rem;
  line-height: 1.5;
}

.rack-dephasing-waveform,
.rack-dephasing-effects,
.rack-dephasing-policy-summary,
.rack-dephasing-gates {
  padding: 15px 16px 16px;
  border: 1px solid var(--obs-rule);
  background: var(--obs-paper-raised);
}

.rack-dephasing-effects,
.rack-dephasing-policy-summary,
.rack-dephasing-gates {
  border-top: 0;
}

.rack-dephasing-section-header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
}

.rack-dephasing-section-header h3,
.rack-dephasing-boundary h3 {
  margin: 0;
  font: 700 0.77rem/1.3 var(--font-value);
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.rack-dephasing-section-header > span {
  max-width: 44ch;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.35 var(--font-value);
  text-align: right;
}

.rack-dephasing-controls {
  display: flex;
  flex: 0 0 auto;
  gap: 9px;
}

.rack-dephasing-controls label {
  display: grid;
  gap: 4px;
  color: var(--obs-ink-soft);
  font: 700 0.7rem var(--font-value);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.rack-dephasing-controls select {
  min-height: 34px;
  padding: 5px 28px 5px 8px;
  font: 0.7rem var(--font-value);
}

.rack-dephasing-chart-frame {
  min-height: 540px;
  border: 1px solid var(--obs-rule-soft);
  background:
    linear-gradient(rgba(102, 82, 163, 0.025), rgba(102, 82, 163, 0.025)),
    var(--obs-paper-deep);
  overflow: hidden;
}

.rack-dephasing-chart-frame svg {
  display: block;
  width: 100%;
  min-height: 540px;
}

.rack-dephasing-grid-line,
.rack-dephasing-axis-line {
  stroke: var(--obs-rule-soft);
  stroke-width: 1;
  shape-rendering: crispEdges;
}

.rack-dephasing-axis-label,
.rack-dephasing-direct-label,
.rack-dephasing-rail-label,
.rack-dephasing-event-label {
  fill: var(--obs-ink-soft);
  font-family: var(--font-value);
  font-size: 11px;
}

.rack-dephasing-direct-label {
  font-weight: 700;
}

.rack-dephasing-wave-line {
  fill: none;
  stroke-width: 2.25;
  vector-effect: non-scaling-stroke;
}

.rack-dephasing-wave-line--baseline {
  stroke: var(--obs-orange);
  stroke-dasharray: 6 4;
}

.rack-dephasing-wave-line--feedback {
  stroke: #6652a3;
  stroke-width: 2.75;
}

.rack-dephasing-event-mark {
  stroke: rgba(31, 38, 35, 0.28);
  stroke-width: 0.75;
  vector-effect: non-scaling-stroke;
}

.rack-dephasing-event-mark[data-kind*="checkpoint"] { fill: var(--obs-event-checkpoint); }
.rack-dephasing-event-mark[data-kind*="transfer"] { fill: var(--obs-orange); }
.rack-dephasing-event-mark[data-kind*="rebuild"] { fill: #806bc1; }
.rack-dephasing-event-mark[data-kind*="rejoin"] { fill: var(--obs-teal); }
.rack-dephasing-event-mark[data-kind*="compute"] { fill: rgba(56, 87, 121, 0.5); }
.rack-dephasing-event-mark[data-kind*="merge"] { fill: rgba(56, 87, 121, 0.78); }

.rack-dephasing-waveform-fallback {
  margin-top: 10px;
  color: var(--obs-ink-soft);
  font: 0.7rem/1.5 var(--font-value);
}

.rack-dephasing-effect-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-effect-card {
  min-width: 0;
  padding: 15px;
  border-top: 5px solid #806bc1;
  background: rgba(102, 82, 163, 0.045);
}

.rack-dephasing-effect-card + .rack-dephasing-effect-card {
  border-left: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-effect-card[data-state="fail"],
.rack-dephasing-effect-card[data-state="invalid"] {
  border-top-color: var(--obs-red);
  background: rgba(166, 54, 43, 0.05);
}

.rack-dephasing-effect-card span,
.rack-dephasing-effect-card strong,
.rack-dephasing-effect-card small {
  display: block;
  font-family: var(--font-value);
}

.rack-dephasing-effect-card span {
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
}

.rack-dephasing-effect-card strong {
  margin: 14px 0 8px;
  color: #51407f;
  font-size: clamp(1rem, 1.7vw, 1.45rem);
  line-height: 1.15;
}

.rack-dephasing-effect-card small {
  padding-top: 8px;
  border-top: 1px solid var(--obs-rule-soft);
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.45;
}

.rack-dephasing-table-scroll {
  max-width: 100%;
  overflow-x: auto;
}

.rack-dephasing-table {
  width: 100%;
  min-width: 1040px;
  border-collapse: collapse;
  font: 0.7rem/1.4 var(--font-value);
}

.rack-dephasing-table th,
.rack-dephasing-table td {
  padding: 8px 9px;
  border: 1px solid var(--obs-rule-soft);
  text-align: left;
  vertical-align: top;
}

.rack-dephasing-table th {
  background: var(--obs-paper-deep);
  font-weight: 700;
  text-transform: uppercase;
}

.rack-dephasing-gate-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-gate {
  min-width: 0;
  padding: 10px;
  border-left: 1px solid var(--obs-rule-soft);
  background: rgba(102, 82, 163, 0.045);
}

.rack-dephasing-gate:first-child {
  border-left: 0;
}

.rack-dephasing-gate[data-state="pass"] { box-shadow: inset 0 4px 0 var(--obs-teal); }
.rack-dephasing-gate[data-state="fail"] { box-shadow: inset 0 4px 0 var(--obs-red); }
.rack-dephasing-gate[data-state="unresolved"] { box-shadow: inset 0 4px 0 var(--obs-event-power); }

.rack-dephasing-gate strong,
.rack-dephasing-gate span {
  display: block;
  font-family: var(--font-value);
}

.rack-dephasing-gate strong {
  font-size: 0.7rem;
  text-transform: uppercase;
}

.rack-dephasing-gate span {
  margin-top: 5px;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.35;
}

.rack-dephasing-boundary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 11px;
  padding: 14px 16px;
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: rgba(102, 82, 163, 0.045);
}

.rack-dephasing-boundary p {
  max-width: 112ch;
  margin: 5px 0 0;
  color: var(--obs-ink-soft);
  font-size: 0.74rem;
  line-height: 1.55;
}

.rack-dephasing-boundary p + p {
  padding-top: 7px;
  border-top: 1px solid var(--obs-rule-soft);
  font-family: var(--font-value);
  font-size: 0.7rem;
}

.rack-dephasing-trace {
  border: 1px solid var(--obs-rule);
  border-top: 0;
  background: var(--obs-paper-raised);
}

.rack-dephasing-trace details + details {
  border-top: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-trace summary {
  padding: 10px 14px;
  font: 700 0.7rem var(--font-value);
  cursor: pointer;
}

.rack-dephasing-trace .rack-dephasing-table-scroll,
.rack-dephasing-trace-summary,
.rack-dephasing-raw-manifest,
.rack-dephasing-trace pre {
  margin: 0 14px 14px;
}

.rack-dephasing-event-table {
  min-width: 1320px;
}

.rack-dephasing-trace-summary,
.rack-dephasing-raw-manifest {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  border: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-trace-fact {
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--obs-rule-soft);
}

.rack-dephasing-trace-fact strong,
.rack-dephasing-trace-fact span,
.rack-dephasing-trace-fact a {
  display: block;
  overflow-wrap: anywhere;
  font-family: var(--font-value);
}

.rack-dephasing-trace-fact strong {
  font-size: 0.7rem;
  text-transform: uppercase;
}

.rack-dephasing-trace-fact span,
.rack-dephasing-trace-fact a {
  margin-top: 5px;
  color: var(--obs-ink-soft);
  font-size: 0.7rem;
  line-height: 1.4;
}

.rack-dephasing-trace pre {
  max-height: 520px;
  padding: 12px;
  border: 1px solid var(--obs-rule-soft);
  background: var(--obs-paper-deep);
  overflow: auto;
  font-size: 0.7rem;
}

@media (max-width: 1220px) {
  .obs-header {
    grid-template-columns: minmax(230px, 1fr) auto minmax(250px, 310px) auto;
  }

  .obs-nav a {
    padding-right: 14px;
    padding-left: 14px;
  }

  .research-band {
    grid-template-columns: 176px minmax(0, 1fr) minmax(300px, 332px);
  }

  .causal-reading {
    padding-right: 10px;
    padding-left: 10px;
  }

  .evidence-grid {
    grid-template-columns: minmax(330px, 0.88fr) minmax(0, 1.12fr);
  }
}

@media (max-width: 980px) {
  :root {
    --obs-gutter: 16px;
  }

  .obs-header {
    grid-template-columns: minmax(200px, 1fr) minmax(250px, 310px) auto;
  }

  .obs-nav {
    display: none;
  }

  .question-band {
    grid-template-columns: 185px minmax(0, 1fr);
  }

  .research-band {
    grid-template-columns: 166px minmax(0, 1fr);
  }

  .research-band.inspector-hidden {
    grid-template-columns: 166px minmax(0, 1fr);
  }

  .evidence-inspector {
    grid-column: 1 / -1;
    border-top: 1px solid var(--obs-rule);
    border-left: 0;
  }

  .inspector-body {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
  }

  .inspector-lead {
    grid-column: 1 / -1;
  }

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

  .source-observations {
    padding-right: 0;
    border-right: 0;
    border-bottom: 1px solid var(--obs-rule);
  }

  .residual-panel {
    padding-left: 0;
  }

  .evidence-chain {
    grid-template-columns: minmax(150px, 1fr) 28px minmax(150px, 1fr) 28px minmax(150px, 1fr) 28px minmax(150px, 1fr);
    gap: 5px;
  }

  .evidence-chain > svg {
    width: 28px;
  }

  .equal-work-freshman-grid,
  .equal-work-effect-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .equal-work-plain-card:nth-child(3),
  .equal-work-effect-card:nth-child(3) {
    border-left: 0;
  }

  .equal-work-plain-card:nth-child(n + 3),
  .equal-work-effect-card:nth-child(n + 3) {
    border-top-width: 1px;
    border-top-color: var(--obs-rule-soft);
  }

  .equal-work-plain-card[data-state="fail"],
  .equal-work-effect-card[data-passed="false"] {
    box-shadow: inset 0 4px var(--obs-red);
  }

  .equal-work-policy-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkpoint-power-freshman-grid,
  .checkpoint-power-arm-grid,
  .checkpoint-power-control-grid,
  .checkpoint-power-contrast-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkpoint-power-plain-card:nth-child(3),
  .checkpoint-power-arm-card:nth-child(3),
  .checkpoint-power-control-card:nth-child(3),
  .checkpoint-power-contrast-card:nth-child(3) {
    border-left: 0;
  }

  .checkpoint-power-plain-card:nth-child(n + 3),
  .checkpoint-power-arm-card:nth-child(n + 3),
  .checkpoint-power-control-card:nth-child(n + 3),
  .checkpoint-power-contrast-card:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
  }

  .checkpoint-power-plain-card[data-state="fail"],
  .checkpoint-power-contrast-card:nth-child(n) {
    box-shadow: inset 0 4px var(--obs-red);
  }

  .checkpoint-power-arm-card:nth-child(n + 3) {
    box-shadow: inset 0 4px var(--checkpoint-arm-color);
  }

  .checkpoint-power-validity-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-power-logger {
    border-top: 1px solid var(--obs-rule-soft);
    border-left: 0;
  }

  .checkpoint-energy-freshman-grid,
  .checkpoint-energy-validity-grid,
  .checkpoint-energy-support-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkpoint-energy-plain-card:nth-child(3),
  .checkpoint-energy-validity-card:nth-child(3),
  .checkpoint-energy-support-card:nth-child(3) {
    border-left: 0;
  }

  .checkpoint-energy-plain-card:nth-child(n + 3),
  .checkpoint-energy-validity-card:nth-child(n + 3),
  .checkpoint-energy-support-card:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
    box-shadow: inset 0 4px var(--obs-teal);
  }

  .rack-dephasing-freshman-grid,
  .rack-dephasing-effect-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rack-dephasing-plain-card:nth-child(3),
  .rack-dephasing-effect-card:nth-child(3),
  .rack-dephasing-effect-card:nth-child(5) {
    border-left: 0;
  }

  .rack-dephasing-plain-card:nth-child(n + 3),
  .rack-dephasing-effect-card:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
    box-shadow: inset 0 4px #806bc1;
  }
}

@media (max-width: 760px) {
  :root {
    --obs-gutter: 14px;
    --obs-header-height: 54px;
  }

  html {
    scroll-behavior: auto;
  }

  body {
    font-size: 15px;
  }

  .obs-header {
    grid-template-columns: minmax(118px, 1fr) minmax(92px, 132px) 48px;
    min-height: 54px;
  }

  .obs-identity {
    padding: 0 12px;
  }

  .obs-wordmark {
    font-size: 1.42rem;
  }

  .obs-product,
  .share-state span {
    display: none;
  }

  .experiment-picker select {
    padding-right: 28px;
    padding-left: 10px;
    font-size: 0.77rem;
  }

  .experiment-picker svg {
    right: 8px;
  }

  .share-state {
    justify-content: center;
    width: 48px;
    padding: 0;
  }

  .share-state svg {
    width: 23px;
    height: 23px;
  }

  main {
    display: flex;
    flex-direction: column;
    width: 100%;
    contain: inline-size;
    overflow-x: hidden;
    border: 0;
  }

  .question-band { order: 1; }
  .semantic-consistency-v1-band { order: 2; }
  .research-band { order: 3; }
  .comparison-band { order: 4; }
  .recovery-v2-band { order: 5; }
  .learning-v1-band { order: 6; }
  .equal-work-v1-band { order: 7; }
  .checkpoint-power-v1-band { order: 8; }
  .checkpoint-energy-v2-band { order: 9; }
  .rack-dephasing-v3-band { order: 10; }
  .timeline-band { order: 11; }
  .evidence-lab { order: 12; }

  .question-band {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 24px;
    padding-bottom: 18px;
  }

  .question-copy {
    order: 1;
  }

  .depth-cluster {
    order: 2;
    padding: 0;
  }

  .depth-cluster > .control-label {
    display: none;
  }

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

  .depth-control button {
    min-height: 42px;
    padding: 7px 4px;
    font-size: 0.7rem;
    text-align: center;
  }

  .experiment-kicker {
    margin-bottom: 8px;
  }

  .question-copy h1 {
    font-size: clamp(1.85rem, 8vw, 2.55rem);
    line-height: 1.08;
  }

  .stage-boundary {
    flex-wrap: wrap;
    row-gap: 2px;
    font-size: 0.7rem;
  }

  .plain-answer {
    font-size: 0.78rem;
  }

  .research-band {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .research-band.inspector-hidden {
    display: flex;
  }

  .research-core { order: 1; }
  .evidence-inspector { order: 2; }
  .causal-reading { order: 3; }

  .research-core {
    width: 100%;
  }

  .site-field {
    padding: 14px 0 12px;
  }

  .site-field .section-line-heading {
    padding: 0 var(--obs-gutter);
  }

  .section-line-heading {
    align-items: start;
  }

  .section-line-heading > span {
    max-width: 52%;
    font-size: 0.7rem;
  }

  .site-viewport {
    padding: 0 14px;
    scroll-padding-inline: 14px;
    scroll-snap-type: x mandatory;
  }

  .site-rail {
    grid-template-columns: 220px 126px 220px 126px 220px;
    gap: 0;
    min-width: 912px;
    min-height: 140px;
    margin-top: 6px;
  }

  .site-button {
    min-height: 116px;
    scroll-snap-align: center;
  }

  .site-position {
    display: flex;
  }

  .causal-field {
    padding-right: var(--obs-gutter);
    padding-left: var(--obs-gutter);
  }

  .causal-field .section-line-heading > span {
    display: none;
  }

  .causal-svg-wrap {
    min-height: 696px;
  }

  .causal-svg {
    height: 696px;
  }

  .causal-svg .node-title {
    font-size: 13px;
  }

  .causal-svg .node-detail {
    font-size: 9.5px;
  }

  .causal-reading {
    padding: 16px var(--obs-gutter) 20px;
    border-top: 1px solid var(--obs-rule);
    border-right: 0;
  }

  .causal-reading > ol {
    gap: 9px;
  }

  .causal-reading > ol::before {
    bottom: 14px;
  }

  .causal-reading > ol li {
    grid-template-columns: 27px minmax(0, 1fr);
  }

  .causal-reading > ol li > span {
    width: 27px;
    height: 27px;
  }

  .evidence-key {
    display: none;
  }

  .evidence-inspector {
    border-top: 1px solid var(--obs-rule);
    border-left: 0;
    border-radius: 0;
    background: var(--obs-paper-raised);
  }

  .evidence-inspector.is-transient {
    position: fixed;
    z-index: 60;
    right: 0;
    bottom: 0;
    left: 0;
    max-height: min(76vh, 680px);
    overflow-y: auto;
    border: 1px solid var(--obs-rule);
    border-bottom: 0;
  }

  .sheet-handle {
    display: block;
    width: 42px;
    height: 4px;
    margin: 9px auto 0;
    border-radius: 0;
    background: var(--obs-rule);
  }

  .inspector-header {
    padding-top: 10px;
  }

  .inspector-close {
    visibility: hidden;
  }

  .evidence-inspector.is-transient .inspector-close {
    visibility: visible;
  }

  .inspector-body {
    display: block;
  }

  .timeline-band,
  .semantic-consistency-v1-band,
  .recovery-v2-band,
  .learning-v1-band,
  .equal-work-v1-band,
  .checkpoint-power-v1-band,
  .checkpoint-energy-v2-band,
  .comparison-band,
  .evidence-lab {
    padding-top: 18px;
    padding-bottom: 18px;
  }

  .band-header {
    align-items: start;
  }

  .band-header h2 {
    font-size: 1.28rem;
  }

  .timeline-band .band-header output {
    max-width: 46%;
    text-align: right;
  }

  .timeline-layout {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .timeline-viewport {
    width: calc(100% + var(--obs-gutter) * 2);
    margin-left: calc(var(--obs-gutter) * -1);
    padding: 0 var(--obs-gutter);
  }

  .timeline-svg {
    min-width: 820px;
  }

  .recovery-v2-header {
    display: block;
  }

  .recovery-v2-header output,
  .semantic-consistency-v1-header output,
  .learning-v1-header output,
  .equal-work-v1-header output,
  .checkpoint-power-v1-header output,
  .checkpoint-energy-v2-header output {
    display: block;
    max-width: none;
    margin-top: 6px;
    text-align: left;
  }

  .semantic-consistency-insight,
  .semantic-consistency-evidence-grid {
    grid-template-columns: 1fr;
  }

  .semantic-consistency-evidence-grid > section + section {
    border-top: 1px solid var(--obs-rule-soft);
    border-left: 0;
  }

  .semantic-consistency-family-control {
    align-items: stretch;
    flex-direction: column;
    width: 100%;
  }

  .semantic-consistency-family-control select {
    width: 100%;
    max-width: none;
  }

  .learning-v1-header,
  .equal-work-v1-header,
  .checkpoint-power-v1-header,
  .checkpoint-energy-v2-header {
    display: block;
  }

  .learning-insight {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
  }

  .learning-insight h3 {
    max-width: 22ch;
    font-size: 1.65rem;
  }

  .learning-policy-grid,
  .learning-visual-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .learning-policy-card + .learning-policy-card,
  .learning-figure + .learning-figure {
    border-top: 1px solid var(--obs-rule-soft);
    border-left: 0;
  }

  .learning-supporting-metrics {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .learning-direct-values {
    grid-template-columns: minmax(0, 1fr);
  }

  .learning-gate-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .learning-gate + .learning-gate {
    border-left: 0;
  }

  .learning-gate:nth-child(even) {
    border-left: 1px solid var(--obs-rule-soft);
  }

  .learning-gate:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
  }

  .equal-work-insight {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
  }

  .equal-work-insight h3 {
    max-width: 24ch;
    font-size: 1.7rem;
  }

  .equal-work-freshman-grid,
  .equal-work-policy-grid,
  .equal-work-effect-grid,
  .equal-work-bridge-columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .equal-work-plain-card + .equal-work-plain-card,
  .equal-work-policy-card[data-policy="adaptive"],
  .equal-work-effect-card + .equal-work-effect-card {
    border-left: 0;
  }

  .equal-work-plain-card:nth-child(n + 2),
  .equal-work-policy-card[data-policy="adaptive"],
  .equal-work-effect-card:nth-child(n + 2) {
    border-top-width: 1px;
    border-top-color: var(--obs-rule-soft);
  }

  .equal-work-plain-card[data-state="fail"],
  .equal-work-effect-card[data-passed="false"] {
    box-shadow: inset 0 4px var(--obs-red);
  }

  .equal-work-policy-metrics {
    grid-template-columns: minmax(0, 1fr);
  }

  .equal-work-section-header {
    display: block;
  }

  .equal-work-section-header > span {
    display: block;
    margin-top: 5px;
    text-align: left;
  }

  .equal-work-gate-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .equal-work-gate,
  .equal-work-gate:first-child {
    border-top: 1px solid var(--obs-rule-soft);
    border-left: 0;
  }

  .equal-work-gate:nth-child(even) {
    border-left: 1px solid var(--obs-rule-soft);
  }

  .equal-work-gate[data-passed="false"] {
    grid-column: 1 / -1;
    border-top: 4px solid var(--obs-red);
  }

  .checkpoint-power-insight {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
  }

  .checkpoint-power-insight h3 {
    max-width: 25ch;
    font-size: 1.7rem;
  }

  .checkpoint-power-freshman-grid,
  .checkpoint-power-arm-grid,
  .checkpoint-power-control-grid,
  .checkpoint-power-contrast-grid,
  .checkpoint-power-redirect-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-power-plain-card + .checkpoint-power-plain-card,
  .checkpoint-power-arm-card + .checkpoint-power-arm-card,
  .checkpoint-power-control-card + .checkpoint-power-control-card,
  .checkpoint-power-contrast-card + .checkpoint-power-contrast-card {
    border-left: 0;
  }

  .checkpoint-power-plain-card:nth-child(n + 2),
  .checkpoint-power-arm-card:nth-child(n + 2),
  .checkpoint-power-control-card:nth-child(n + 2),
  .checkpoint-power-contrast-card:nth-child(n + 2) {
    border-top: 1px solid var(--obs-rule-soft);
  }

  .checkpoint-power-arm-card:nth-child(n + 2),
  .checkpoint-power-contrast-card:nth-child(n) {
    box-shadow: inset 0 4px var(--checkpoint-arm-color, var(--obs-red));
  }

  .checkpoint-power-plain-card[data-state="fail"] {
    box-shadow: inset 0 4px var(--obs-red);
  }

  .checkpoint-power-section-header {
    display: block;
  }

  .checkpoint-power-section-header > span {
    display: block;
    margin-top: 5px;
    text-align: left;
  }

  .checkpoint-power-invalidators {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-power-invalidator + .checkpoint-power-invalidator {
    border-top-width: 1px;
    border-left: 0;
    box-shadow: inset 0 4px var(--obs-red);
  }

  .checkpoint-power-poll-comparison {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-power-redirect {
    grid-template-columns: 46px minmax(0, 1fr);
  }

  .checkpoint-power-redirect > span {
    width: 42px;
    height: 42px;
  }

  .checkpoint-power-run-selector {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-power-run-selector select {
    width: 100%;
  }

  .checkpoint-energy-insight {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
  }

  .checkpoint-energy-insight h3 {
    max-width: 25ch;
    font-size: 1.7rem;
  }

  .checkpoint-energy-freshman-grid,
  .checkpoint-energy-validity-grid,
  .checkpoint-energy-support-grid,
  .checkpoint-energy-effect-grid,
  .checkpoint-energy-exploratory-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-energy-plain-card + .checkpoint-energy-plain-card,
  .checkpoint-energy-validity-card + .checkpoint-energy-validity-card,
  .checkpoint-energy-support-card + .checkpoint-energy-support-card,
  .checkpoint-energy-effect-card + .checkpoint-energy-effect-card {
    border-left: 0;
  }

  .checkpoint-energy-plain-card:nth-child(n + 2),
  .checkpoint-energy-validity-card:nth-child(n + 2),
  .checkpoint-energy-support-card:nth-child(n + 2),
  .checkpoint-energy-effect-card:nth-child(n + 2) {
    border-top: 1px solid var(--obs-rule-soft);
    box-shadow: inset 0 4px var(--obs-teal);
  }

  .checkpoint-energy-section-header {
    display: block;
  }

  .checkpoint-energy-section-header > span {
    display: block;
    margin-top: 5px;
    text-align: left;
  }

  .checkpoint-energy-exploratory > header {
    align-items: start;
    flex-direction: column;
  }

  .checkpoint-energy-exploratory-grid section + section {
    border-top: 1px solid rgba(123, 102, 32, 0.32);
    border-left: 0;
  }

  .checkpoint-energy-gate-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkpoint-energy-gate:nth-child(odd) {
    border-left: 0;
  }

  .checkpoint-energy-gate:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
  }

  .checkpoint-energy-counter-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkpoint-energy-counter-summary > div:nth-child(odd) {
    border-left: 0;
  }

  .checkpoint-energy-counter-summary > div:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
  }

  .checkpoint-energy-run-selector {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .checkpoint-energy-run-selector select {
    width: 100%;
  }

  .rack-dephasing-insight {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
  }

  .rack-dephasing-insight h3 {
    max-width: 25ch;
    font-size: 1.7rem;
  }

  .rack-dephasing-freshman-grid,
  .rack-dephasing-effect-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .rack-dephasing-plain-card + .rack-dephasing-plain-card,
  .rack-dephasing-effect-card + .rack-dephasing-effect-card {
    border-left: 0;
  }

  .rack-dephasing-plain-card:nth-child(n + 2),
  .rack-dephasing-effect-card:nth-child(n + 2) {
    border-top: 1px solid var(--obs-rule-soft);
    box-shadow: inset 0 4px #806bc1;
  }

  .rack-dephasing-section-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .rack-dephasing-section-header > span {
    text-align: left;
  }

  .rack-dephasing-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .rack-dephasing-controls select {
    width: 100%;
    min-height: 44px;
  }

  .rack-dephasing-chart-frame,
  .rack-dephasing-chart-frame svg {
    min-height: 680px;
  }

  .rack-dephasing-table-scroll {
    width: calc(100% + var(--obs-gutter) * 2);
    margin-left: calc(var(--obs-gutter) * -1);
    padding: 0 var(--obs-gutter);
  }

  .rack-dephasing-gate-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rack-dephasing-gate:nth-child(odd) {
    border-left: 0;
  }

  .rack-dephasing-gate:nth-child(n + 3) {
    border-top: 1px solid var(--obs-rule-soft);
  }

  .rack-dephasing-trace-summary,
  .rack-dephasing-raw-manifest {
    grid-template-columns: minmax(0, 1fr);
  }

  .recovery-timeline-well {
    width: calc(100% + var(--obs-gutter) * 2);
    margin-left: calc(var(--obs-gutter) * -1);
    border-right: 0;
    border-left: 0;
  }

  .recovery-timeline-svg {
    min-width: 840px;
  }

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

  .recovery-measure,
  .recovery-measure:nth-child(odd),
  .recovery-measure:nth-child(-n + 2),
  .recovery-learning-boundary {
    border-right: 0;
    border-bottom: 1px solid var(--obs-rule-soft);
  }

  .recovery-learning-boundary {
    border-bottom: 0;
  }

  .recovery-policy-measure,
  .recovery-completion-policy {
    grid-template-columns: minmax(116px, 0.34fr) minmax(150px, 1fr);
  }

  .recovery-measure-value {
    grid-column: 2;
    text-align: left;
  }

  .recovery-stack-legend {
    grid-column: 2;
  }

  .timeline-controls {
    padding: 12px 0 0;
    border-top: 1px solid var(--obs-rule-soft);
    border-left: 0;
  }

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

  .uncertainty-control {
    flex-direction: column;
    align-items: end;
    gap: 4px;
  }

  .uncertainty-control span {
    font-size: 0.7rem;
  }

  .uncertainty-control select {
    max-width: 150px;
  }

  .comparison-scroll {
    width: calc(100% + var(--obs-gutter) * 2);
    margin-left: calc(var(--obs-gutter) * -1);
    padding: 0 var(--obs-gutter);
  }

  .policy-comparison {
    min-width: 1060px;
  }

  .evidence-lab .band-header {
    display: block;
  }

  .evidence-lock {
    margin-top: 8px;
  }

  .evidence-chain {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .evidence-chain > svg {
    width: 24px;
    height: 26px;
    margin: 0 auto;
    transform: rotate(90deg);
  }

  .chain-item {
    min-height: 56px;
  }

  .evidence-grid {
    display: block;
  }

  .source-observations,
  .residual-panel {
    padding-right: 0;
    padding-left: 0;
  }

  .source-observations {
    contain: inline-size;
    overflow-x: hidden;
  }

  .source-table-scroll,
  .ledger-scroll {
    width: calc(100% + var(--obs-gutter) * 2);
    margin-left: calc(var(--obs-gutter) * -1);
    padding: 0 var(--obs-gutter);
  }

  .source-table-scroll {
    width: 100%;
    margin-left: 0;
    padding: 0;
    overflow-x: visible;
  }

  .source-observations table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
  }

  .source-observations th,
  .source-observations td {
    overflow-wrap: anywhere;
  }

  .source-observations th:nth-child(1),
  .source-observations td:nth-child(1) { width: 42%; }

  .source-observations th:nth-child(2),
  .source-observations td:nth-child(2) { width: 27%; }

  .source-observations th:nth-child(3),
  .source-observations td:nth-child(3) { width: 31%; }

  .source-observations th:nth-child(4),
  .source-observations td:nth-child(4) {
    display: none;
  }

  .empty-residual-message {
    top: 42%;
    left: 57%;
    width: 62%;
  }

  .empty-residual-message strong {
    font-size: 0.7rem;
  }

  .empty-residual-message span {
    font-size: 0.7rem;
  }

  .decision-ledger .section-line-heading {
    display: block;
  }

  .decision-ledger .section-line-heading > span {
    display: block;
    max-width: none;
    margin-top: 5px;
    text-align: left;
  }

  .raw-trace summary {
    grid-template-columns: auto minmax(0, 1fr) 16px;
    gap: 8px;
  }

  .raw-trace summary > span:nth-child(2) {
    font-size: 0.7rem;
  }

  .obs-footer {
    display: block;
    padding-right: 14px;
    padding-left: 14px;
    border: 0;
  }

  .obs-footer span {
    display: block;
  }

  .obs-footer span + span {
    margin-top: 5px;
  }
}

@media (max-width: 420px) {
  .obs-wordmark {
    font-size: 1.22rem;
  }

  .obs-header {
    grid-template-columns: minmax(105px, 1fr) 104px 46px;
  }

  .question-copy h1 {
    font-size: 1.9rem;
  }

  .depth-control button {
    font-size: 0.7rem;
  }

  .event-legend {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .learning-metric-triad {
    grid-template-columns: minmax(0, 1fr);
  }

  .learning-primary-metric dt {
    min-height: 0;
  }

  .rack-dephasing-controls,
  .rack-dephasing-gate-strip {
    grid-template-columns: minmax(0, 1fr);
  }

  .rack-dephasing-gate,
  .rack-dephasing-gate:nth-child(odd) {
    border-left: 0;
  }

  .rack-dephasing-gate:nth-child(n + 2) {
    border-top: 1px solid var(--obs-rule-soft);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media print {
  .obs-header {
    position: static;
  }

  .share-state,
  .timeline-controls,
  .rack-dephasing-controls,
  .inspector-close,
  .copy-observation,
  .copy-source {
    display: none !important;
  }

  .site-viewport,
  .timeline-viewport,
  .comparison-scroll,
  .source-table-scroll,
  .ledger-scroll {
    overflow: visible;
  }

  .rack-dephasing-table-scroll {
    overflow: visible;
  }

  .policy-comparison,
  .source-observations table,
  .decision-ledger table,
  .timeline-svg,
  .rack-dephasing-table,
  .site-rail {
    min-width: 0;
  }
}
