:root { --rx-blocked: #e8737f; --rx-clean: #8fd3e0; --rx-rail: #3d556a; --rx-rail-live: #9ed4dc; }
@media screen {
  body.casework .story-route { position: relative; }
  body.casework .story-node:not(:last-child)::after { content: none; }
  body.casework .story-node:not(:last-child)::before { content: ''; position: absolute; left: 100%; top: 50%; width: 24px; height: 3px; margin-top: -1.5px; border-radius: 2px; background: linear-gradient(90deg, var(--rx-rail-live) 0 50%, var(--rx-rail) 50% 100%); background-size: 200% 100%; background-position: 100% 0; transition: background-position .45s var(--ds-ease, ease); }
  body.casework .story-node.is-reached:not(:last-child)::before { background-position: 0 0; }
  body.casework .story-node.is-current:not(:last-child)::before { background-image: linear-gradient(90deg, var(--rx-rail-live) 0 50%, var(--rx-rail) 50% 100%),
                      radial-gradient(circle, var(--rx-rail-live) 0 38%, transparent 42%); background-size: 200% 100%, 10px 10px; background-repeat: no-repeat, no-repeat; background-position: 0 0, -10px 50%; animation: rx-pulse 1.15s var(--ds-ease, ease) infinite; filter: drop-shadow(0 0 4px #9ed4dc66); }
  @keyframes rx-pulse {
    from { background-position: 0 0, -10px 50%; }
    to { background-position: 0 0, 26px 50%; }
  }
  body.casework .story-node.is-current { box-shadow: 0 0 0 2px #9ed4dc33, 0 10px 30px -18px #000; }
  body.casework .story-node.is-upcoming { opacity: .72; }
  body.casework .story-step-nav button { position: relative; overflow: hidden; }
  body.casework .story-step-nav.is-playing button[aria-pressed=true]::after { content: ''; position: absolute; left: 0; bottom: 0; height: 2px; background: var(--ds-evidence, #9ed4dc); animation: rx-dwell 3.2s linear forwards; }
  @keyframes rx-dwell {
    from { width: 0; }
    to { width: 100%; }
  }
  body.casework .story-controls { position: relative; }
  body.casework [data-story-ready] .story-controls::after { content: ''; position: absolute; left: 0; bottom: -1px; height: 2px; width: var(--story-progress, 0%); background: var(--ds-accent, #ed7886); transition: width .45s var(--ds-ease, ease); }
  body.casework .story-wire { border-top: 1px solid var(--ds-line, #344b5e); background: #091520; padding: 20px 24px; }
  body.casework .story-wire-head { display: flex; flex-wrap: wrap; gap: 8px 16px; justify-content: space-between; margin-bottom: 14px; font: 600 11px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); }
  body.casework .story-wire-panel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 18px; }
  body.casework .story-wire-panel[hidden] { display: none; }
  body.casework .story-wire-actors { display: grid; gap: 10px; align-content: start; }
  body.casework .story-wire-actor { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 12px; align-items: baseline; padding: 11px 13px; border: 1px solid #2d4456; border-radius: 5px; background: #0d1c28; }
  body.casework .story-wire-actor b { grid-column: 1; font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .1em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); white-space: nowrap; }
  body.casework .story-wire-actor span { grid-column: 2; font: 13.0px/1.6 Inter, Arial, sans-serif; color: #d3e0ea; }
  body.casework .story-wire-actor[data-role="attacker"] { border-left: 3px solid var(--rx-blocked); }
  body.casework .story-wire-actor[data-role="steam"] { border-left: 3px solid var(--rx-clean); }
  body.casework .story-wire-actor[data-role="victim"] { border-left: 3px solid #8b9bab; }
  body.casework .story-wire-call { margin: 0; padding: 14px 16px; border: 1px solid #23394a; border-radius: 5px; background: #06101a; font: 12.0px/1.9 var(--cw-mono, monospace); color: #b9cbd9; overflow-x: auto; white-space: pre-wrap; }
  body.casework .story-wire-call b { color: #7aa7c4; font-weight: 400; }
  body.casework .story-wire-call u { text-decoration: none; color: var(--rx-clean); }
  body.casework .story-wire-call i { display: block; margin-top: 10px; font-style: normal; color: #8ba3b6; font-size: 11.0px; }
  body.casework .story-wire-verdict { grid-column: 1 / -1; margin: 0; padding: 12px 14px; border-radius: 4px; background: #2a1a22; box-shadow: inset 3px 0 var(--rx-blocked); font: 13.0px/1.75 Inter, Arial, sans-serif; color: #e4d3d7; }
  body.casework .story-wire-verdict strong { color: #fff; }
  body.casework .sdd-tl-track { position: relative; height: 14px; border-radius: 3px; background: #0d1c28; box-shadow: inset 0 0 0 1px #2b4053; overflow: hidden; }
  body.casework .sdd-tl-fill { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, #8d4552, var(--rx-blocked) 55%, #f0b37e); transform-origin: left; transform: scaleX(1); transition: transform 1.5s var(--ds-ease, ease); }
  body.casework .sdd-timeline.is-armed .sdd-tl-fill { transform: scaleX(0); }
  body.casework .sdd-timeline.is-armed.is-live .sdd-tl-fill { transform: scaleX(1); }
  body.casework .sdd-tl-track::after { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: #fff; box-shadow: 0 0 0 1.5px #0d1c28, 0 0 9px #ffffffcc; }
  body.casework .sdd-tl-scale { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 18px; margin: 9px 0 0; font: 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .06em; text-transform: uppercase; color: #8ba3b6; }
  body.casework .sdd-tl-scale b { color: var(--ds-ink, #edf3f8); font-weight: 700; }
  body.casework .sdd-tl-nodes li { padding: 11px 13px; border: 1px solid #2d4456; border-left: 3px solid var(--rx-rail); border-radius: 4px; background: #0d1c28; }
  body.casework .sdd-tl-nodes li:first-child { border-left-color: var(--ds-ink, #edf3f8); }
  body.casework .sdd-tl-nodes li:last-child { border-left-color: var(--rx-blocked); }
  body.casework .sdd-tl-nodes time { display: block; font-size: 11.0px; letter-spacing: .08em; color: #8ba3b6; }
  body.casework .sdd-tl-nodes strong { display: block; margin: 5px 0 4px; font: 600 12px/1.5 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .sdd-tl-nodes em { font-style: normal; font-size: 11.0px; color: #7f97ab; }
  body.casework .sst-chart { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 0; padding: 18px; border: 1px solid var(--ds-line, #344b5e); border-radius: 6px; background: #0b1722; }
  body.casework .sst-panel { min-width: 0; }
  body.casework .sst-panel-head { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: space-between; align-items: baseline; padding-bottom: 12px; margin-bottom: 14px; border-bottom: 1px solid #23394a; font: 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .05em; color: var(--ds-muted, #b1c1d0); }
  body.casework .sst-panel-head b { font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .08em; text-transform: uppercase; }
  body.casework .sst-panel-head b[data-trend="moves"] { color: var(--rx-blocked); }
  body.casework .sst-panel-head b[data-trend="flat"] { color: var(--rx-clean); }
  body.casework .sst-caption { grid-column: 1 / -1; margin: 0; padding-top: 14px; border-top: 1px solid #23394a; font: 12.0px/1.7 Inter, Arial, sans-serif; color: #9fb3c4; }
  body.casework .sst-caption a { color: var(--ds-evidence, #9ed4dc); }
  body.casework .sst-caption code { font-size: 11.0px; color: #c3d4e1; }
  body.casework .sst-chart.is-series { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  body.casework .sst-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
  body.casework .sst-chart .sst-grid line { stroke: #22384a; stroke-width: 1; }
  body.casework .sst-chart .sst-grid text,
  body.casework .sst-chart .sst-x { fill: #7f97ab; font: 11.0px var(--cw-mono, monospace); text-anchor: end; }
  body.casework .sst-chart .sst-x { text-anchor: middle; }
  body.casework .sst-chart .sst-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
  body.casework .sst-chart .sst-dot { stroke: #0b1722; stroke-width: 1.5; }
  body.casework .sst-chart svg[data-hue="volume"] :is(.sst-line, .sst-dot) { stroke: var(--rx-blocked); }
  body.casework .sst-chart svg[data-hue="volume"] .sst-dot { fill: var(--rx-blocked); }
  body.casework .sst-chart svg[data-hue="volume"] .sst-area { fill: #e8737f22; }
  body.casework .sst-chart svg[data-hue="response"] :is(.sst-line, .sst-dot) { stroke: var(--rx-clean); }
  body.casework .sst-chart svg[data-hue="response"] .sst-dot { fill: var(--rx-clean); }
  body.casework .sst-chart svg[data-hue="response"] .sst-area { fill: #8fd3e01c; }
  body.casework .sst-chart .sst-gap rect { fill: #ffffff08; stroke: #3d556a; stroke-width: 1; stroke-dasharray: 4 4; }
  body.casework .sst-chart .sst-gap text { fill: #8ba3b6; font: 11.0px var(--cw-mono, monospace); letter-spacing: .08em; }
  body.casework .sst-chart .sst-dot { transition: r .15s ease; cursor: help; }
  body.casework .sst-chart .sst-dot:hover { r: 6; }
  body.casework .sst-note { margin: 10px 0 0; font: 11.0px/1.8 var(--cw-mono, monospace); color: #8ba3b6; }
  body.casework .sst-note b { color: var(--ds-ink, #edf3f8); }
  body.casework .sst-chart.is-armed .sst-line { stroke-dasharray: 2200; stroke-dashoffset: 2200; }
  body.casework .sst-chart.is-armed .sst-dot,
  body.casework .sst-chart.is-armed .sst-area { opacity: 0; }
  body.casework .sst-chart.is-armed.is-live .sst-line { stroke-dashoffset: 0; transition: stroke-dashoffset 1.4s var(--ds-ease, ease); }
  body.casework .sst-chart.is-armed.is-live :is(.sst-dot, .sst-area) { opacity: 1; transition: opacity .6s ease .7s; }
  body.casework .cef-exhibit { margin-top: 40px; padding: 26px; border: 1px solid var(--ds-line, #344b5e); border-radius: var(--ds-radius, 8px); background: var(--ds-surface, #111f2c); }
  body.casework .cef-compare { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 8px; }
  body.casework .cef-col { border: 1px solid #2d4456; border-radius: 6px; background: #0d1c28; overflow: hidden; }
  body.casework .cef-col[data-side="steam"] { border-color: #6d3f4a; }
  body.casework .cef-col-head { padding: 15px 18px; border-bottom: 1px solid #23394a; background: #0a1621; }
  body.casework .cef-col-head b { display: block; font: 700 14.0px/1.4 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .cef-col-head span { display: block; margin-top: 4px; font: 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); }
  body.casework .cef-col[data-side="steam"] .cef-col-head span { color: var(--rx-blocked); }
  body.casework .cef-layers { list-style: none; margin: 0; padding: 0; }
  body.casework .cef-layers li { padding: 14px 18px 14px 44px; position: relative; border-bottom: 1px solid #1c2f3e; }
  body.casework .cef-layers li:last-child { border-bottom: 0; }
  body.casework .cef-layers li::before { content: '✓'; position: absolute; left: 16px; top: 13px; font: 700 14.0px/1.4 var(--cw-mono, monospace); color: var(--rx-clean); }
  body.casework .cef-layers li[data-state="absent"]::before { content: '✕'; color: var(--rx-blocked); }
  body.casework .cef-layers li[data-state="partial"]::before { content: '~'; color: #d9a05b; }
  body.casework .cef-layers li[data-state="present"]::before { content: '●'; color: var(--rx-clean); }
  body.casework .cef-layers li[data-state="absent"] { background: #2a1a2210; }
  body.casework .cef-layers b { display: block; font: 600 13px/1.5 var(--cw-mono, monospace); color: var(--ds-ink, #edf3f8); }
  body.casework .cef-layers span { display: block; margin-top: 5px; font: 13.0px/1.7 Inter, Arial, sans-serif; color: var(--ds-muted, #b1c1d0); }
  body.casework .cef-layers li[data-state="absent"] b { color: var(--rx-blocked); }
  body.casework .cef-test, body.casework .cef-field { margin-top: 18px; padding: 16px 18px; border-radius: 6px; }
  body.casework .cef-test { border: 1px solid #40697a; background: #0d222b; }
  body.casework .cef-test-head, body.casework .cef-field-head { font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--rx-clean); margin-bottom: 9px; }
  body.casework .cef-field { border: 1px solid #6d3f4a; background: #21161c; }
  body.casework .cef-field-head { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: space-between; color: var(--rx-blocked); }
  body.casework .cef-field-head b { color: var(--ds-ink, #edf3f8); font-weight: 700; text-transform: none; letter-spacing: 0; font-size: 12.0px; }
  body.casework :is(.cef-test, .cef-field) p { margin: 0; font: 13.0px/1.8 Inter, Arial, sans-serif; color: #cfdde8; }
  body.casework .cef-test code { color: var(--rx-clean); }
  body.casework .cef-consequence { margin-top: 18px; padding: 18px 20px; border-radius: 6px; background: #0a1621; box-shadow: inset 3px 0 var(--rx-blocked); }
  body.casework .cef-consequence h3 { margin: 0 0 10px; font: 700 17.0px/1.35 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .cef-consequence p { margin: 0 0 12px; font: 14.0px/1.8 Inter, Arial, sans-serif; color: #cfdde8; max-width: 82ch; }
  body.casework .cef-consequence p:last-child { margin-bottom: 0; }
  body.casework .cef-consequence a { color: var(--ds-evidence, #9ed4dc); }
  body.casework .cef-exhibit > .evidence-caption { margin-top: 16px; padding-top: 14px; border-top: 1px solid #23394a; }
  body.casework .rx { border: 1px solid var(--ds-line, #344b5e); border-radius: var(--ds-radius, 8px); background: var(--ds-surface, #111f2c); overflow: hidden; margin-block: 24px; }
  body.casework .rx-head { display: flex; flex-wrap: wrap; gap: 12px 20px; justify-content: space-between; align-items: baseline; padding: 20px 24px; border-bottom: 1px solid var(--ds-line, #344b5e); }
  body.casework .rx-head h3 { margin: 6px 0 0; font: 700 19.0px/1.3 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .rx-kicker { font: 600 11px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--ds-accent, #ed7886); }
  body.casework .rx-head p { margin: 0; font: 11.0px/1.7 var(--cw-mono, monospace); color: var(--ds-muted, #b1c1d0); max-width: 42ch; }
  body.casework .rx-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 16px 24px; border-bottom: 1px solid var(--ds-line, #344b5e); background: #0d1925; }
  body.casework .rx-controls label { font: 600 11px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); }
  body.casework .rx-controls select { min-height: 44px; min-width: 240px; padding: 8px 12px; background: #0c1925; color: var(--ds-ink, #edf3f8); border: 1px solid #40586c; border-radius: 4px; font: 500 13px/1.5 var(--cw-mono, monospace); }
  body.casework .rx-nav { display: flex; gap: 6px; margin-left: auto; }
  body.casework .rx-nav button { min-height: 44px; min-width: 44px; padding: 8px 14px; border: 1px solid #577386; border-radius: 4px; background: #1b3042; color: var(--ds-ink, #edf3f8); cursor: pointer; font: 600 12px/1.5 Inter, Arial, sans-serif; }
  body.casework .rx-nav button:hover { background: #28465b; }
  body.casework .rx-flag { display: inline-flex; align-items: center; gap: 7px; padding: 6px 11px; border-radius: 3px; font: 700 11.0px/1.4 var(--cw-mono, monospace); letter-spacing: .1em; text-transform: uppercase; border: 1px solid #5a6f83; color: var(--ds-muted, #b1c1d0); background: #16263500; }
  body.casework .rx-flag[data-state="split"] { border-color: var(--rx-blocked); color: var(--rx-blocked); background: #3a1f28; }
  body.casework .rx-flag[data-state="clean"] { border-color: #5a7080; color: #a9bdcc; }
  body.casework .rx-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.casework .rx-lane { padding: 22px 24px; min-width: 0; }
  body.casework .rx-lane + .rx-lane { border-left: 1px solid var(--ds-line, #344b5e); }
  body.casework .rx-lane-head { display: flex; align-items: baseline; gap: 10px; margin-bottom: 16px; font: 600 11px/1.6 var(--cw-mono, monospace); letter-spacing: .08em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); }
  body.casework .rx-lane-head b { font-size: 15.0px; color: var(--ds-accent, #ed7886); }
  body.casework .rx-flow { list-style: none; margin: 0; padding: 0; display: grid; gap: 22px; }
  body.casework .rx-step { position: relative; padding: 14px 16px; min-width: 0; border: 1px solid #40586c; border-radius: 6px; background: #142738; }
  body.casework .rx-step:not(:last-child)::after { content: ''; position: absolute; left: 22px; top: 100%; width: 2px; height: 22px; background: linear-gradient(180deg, var(--rx-rail-live), var(--rx-rail)); }
  body.casework .rx-step small { display: block; font: 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .09em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); margin-bottom: 7px; }
  body.casework .rx-step strong { display: block; font: 600 15px/1.4 var(--cw-mono, monospace); color: var(--ds-ink, #edf3f8); overflow-wrap: anywhere; }
  body.casework .rx-step em { display: block; font: 12.0px/1.6 Inter, Arial, sans-serif; font-style: normal; color: var(--ds-muted, #b1c1d0); margin-top: 6px; }
  body.casework .rx-step[data-verdict] { border-left-width: 3px; }
  body.casework .rx-step[data-verdict="blocked"] { border-color: #8d4552; border-left-color: var(--rx-blocked); background: #2a1a22; }
  body.casework .rx-step[data-verdict="clean"] { border-color: #40697a; border-left-color: var(--rx-clean); background: #122a33; }
  body.casework .rx-badge { display: inline-flex; align-items: center; gap: 7px; font: 700 13.0px/1.4 var(--cw-mono, monospace); letter-spacing: .06em; }
  body.casework .rx-badge[data-verdict="blocked"] { color: var(--rx-blocked); }
  body.casework .rx-badge[data-verdict="clean"] { color: var(--rx-clean); }
  body.casework .rx-badge i { font-style: normal; font-size: 15.0px; line-height: 1; }
  body.casework .rx-wire { padding: 20px 24px; border-top: 1px solid var(--ds-line, #344b5e); background: #091520; }
  body.casework .rx-wire-head { display: flex; flex-wrap: wrap; gap: 8px 14px; justify-content: space-between; font: 600 11px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--ds-muted, #b1c1d0); margin-bottom: 12px; }
  body.casework .rx-req { margin: 0; padding: 14px 16px; border: 1px solid #23394a; border-radius: 4px; background: #06101a; font: 12.0px/1.9 var(--cw-mono, monospace); color: #b9cbd9; overflow-x: auto; }
  body.casework .rx-req b { color: #7aa7c4; font-weight: 400; }
  body.casework .rx-req u { text-decoration: none; color: var(--rx-clean); }
  body.casework .rx-req .rx-req-key { display: block; padding-left: 18px; }
  body.casework .rx-req .is-marked { background: #14313c; box-shadow: inset 3px 0 var(--rx-clean); border-radius: 2px; }
  body.casework .rx-caret { border-right: 2px solid var(--rx-clean); animation: rx-caret 1s steps(2) infinite; }
  @keyframes rx-caret {
    50% { border-color: transparent; }
  }
  body.casework .rx-foot { display: grid; gap: 10px; padding: 18px 24px; border-top: 1px solid var(--ds-line, #344b5e); font: 12.0px/1.75 Inter, Arial, sans-serif; color: var(--ds-muted, #b1c1d0); }
  body.casework .rx-foot strong { color: var(--ds-ink, #edf3f8); }
  body.casework .rx-foot a { color: var(--ds-evidence, #9ed4dc); text-underline-offset: 3px; }
  body.casework .rx-foot-sources { display: flex; flex-wrap: wrap; gap: 8px 18px; font-family: var(--cw-mono, monospace); font-size: 11.0px; }
  body.casework .rx-tally { display: grid; gap: 14px; padding: 18px 24px; border-top: 1px solid var(--ds-line, #344b5e); }
  body.casework .rx-tally-row { display: grid; grid-template-columns: minmax(0, 20ch) minmax(0, 1fr) auto; gap: 14px; align-items: center; }
  body.casework .rx-tally-label { font: 12.0px/1.6 Inter, Arial, sans-serif; color: var(--ds-muted, #b1c1d0); }
  body.casework .rx-tally-track { height: 10px; border-radius: 2px; background: #16263480; box-shadow: inset 0 0 0 1px #2b4053; }
  body.casework .rx-tally-track span { display: block; height: 100%; border-radius: 0 4px 4px 0; transform-origin: left; transform: scaleX(0); transition: transform .7s var(--ds-ease, ease); }
  body.casework .rx.is-live .rx-tally-track span { transform: scaleX(1); }
  body.casework .rx-tally-row[data-verdict="blocked"] .rx-tally-track span { background: var(--rx-blocked); }
  body.casework .rx-tally-row[data-verdict="clean"] .rx-tally-track span { background: var(--rx-clean); }
  body.casework .rx-tally-value { font: 700 14.0px/1.4 var(--cw-mono, monospace); color: var(--ds-ink, #edf3f8); }
  body.casework .rx-tally-note { font: 11.0px/1.7 var(--cw-mono, monospace); color: #8ba3b6; margin: 0; }
  body.casework .rx-step-age { display: inline-block; margin-top: 8px; padding: 4px 9px; border-radius: 3px; background: #0b1c26; box-shadow: inset 0 0 0 1px #40697a; font: 11.0px/1.6 var(--cw-mono, monospace); color: #a9c4d1; }
  body.casework .rx-step-age b { color: var(--rx-clean); font-size: 13.0px; }
  body.casework .rx-age { padding: 22px 24px; border-top: 1px solid var(--ds-line, #344b5e); }
  body.casework .rx-age-head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 14px 28px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #23394a; }
  body.casework .rx-age-head h4 { margin: 6px 0 0; font: 700 17.0px/1.35 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); text-wrap: balance; }
  body.casework .rx-age-head p { margin: 0; font: 12.0px/1.75 Inter, Arial, sans-serif; color: var(--ds-muted, #b1c1d0); }
  body.casework .rx-age-head b { color: var(--ds-ink, #edf3f8); }
  body.casework .rx-age-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 18px 0; }
  body.casework .rx-age-stats div { padding: 13px 15px; border: 1px solid #2d4456; border-left: 3px solid var(--rx-clean); border-radius: 5px; background: #0d1c28; }
  body.casework .rx-age-stats strong { display: block; font: 800 22px/1.2 var(--cw-mono, monospace); color: var(--ds-ink, #edf3f8); }
  body.casework .rx-age-stats span { display: block; margin-top: 6px; font: 12.0px/1.6 Inter, Arial, sans-serif; color: var(--ds-muted, #b1c1d0); }
  body.casework .rx-age-stats code { font-size: 11.0px; color: var(--rx-clean); }
  body.casework .rx-age-rows { display: grid; gap: 5px; padding-top: 4px; }
  body.casework .rx-age-row { display: grid; grid-template-columns: minmax(0, 19ch) minmax(0, 1fr) 9ch 10ch; gap: 12px; align-items: center; padding: 3px 0; }
  body.casework .rx-age-host { min-width: 0; }
  body.casework .rx-age-host b { display: block; font: 600 12px/1.5 var(--cw-mono, monospace); color: var(--ds-ink, #edf3f8); overflow-wrap: anywhere; }
  body.casework .rx-age-host i { display: block; font: normal 11px/1.5 Inter, Arial, sans-serif; color: #7f97ab; }
  body.casework .rx-age-track { height: 10px; border-radius: 2px; background: #0d1c28; box-shadow: inset 0 0 0 1px #23394a; }
  body.casework .rx-age-track span { display: block; height: 100%; border-radius: 0 3px 3px 0; background: #6f9bb5; transform-origin: left; transform: scaleX(0); transition: transform .8s var(--ds-ease, ease); }
  body.casework .rx.is-live .rx-age-track span { transform: scaleX(1); }
  body.casework .rx-age-value { font: 700 12.0px/1.4 var(--cw-mono, monospace); color: var(--ds-ink, #edf3f8); text-align: right; }
  body.casework .rx-age-state { font: 600 11px/1.4 var(--cw-mono, monospace); letter-spacing: .05em; text-transform: uppercase; }
  body.casework .rx-age-state[data-verdict="blocked"] { color: var(--rx-blocked); }
  body.casework .rx-age-state[data-verdict="clean"] { color: #8ba3b6; }
  body.casework .rx.is-swapping .rx-step { animation: rx-step-in .42s var(--ds-ease, ease) both; }
  body.casework .rx.is-swapping .rx-lane:nth-child(1) .rx-step:nth-child(1) { animation-delay: .00s; }
  body.casework .rx.is-swapping .rx-lane:nth-child(1) .rx-step:nth-child(2) { animation-delay: .08s; }
  body.casework .rx.is-swapping .rx-lane:nth-child(1) .rx-step:nth-child(3) { animation-delay: .16s; }
  body.casework .rx.is-swapping .rx-lane:nth-child(2) .rx-step:nth-child(1) { animation-delay: .06s; }
  body.casework .rx.is-swapping .rx-lane:nth-child(2) .rx-step:nth-child(2) { animation-delay: .14s; }
  body.casework .rx.is-swapping .rx-lane:nth-child(2) .rx-step:nth-child(3) { animation-delay: .22s; }
  @keyframes rx-step-in {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
  }
  body.casework .thf { margin-top: 28px; border: 1px solid var(--ds-line, #344b5e); border-radius: var(--ds-radius, 8px); background: var(--ds-surface, #111f2c); overflow: hidden; }
  body.casework .thf-head { padding: 22px 24px 20px; border-bottom: 1px solid #23394a; background: #0a1621; }
  body.casework .thf-head h3 { margin: 0 0 10px; font: 700 20.0px/1.3 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .thf-head p { margin: 0; font: 14.0px/1.8 Inter, Arial, sans-serif; color: #cfdde8; max-width: 84ch; }
  body.casework .thf-kicker { display: block; margin-bottom: 8px; font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .14em; text-transform: uppercase; color: var(--rx-blocked); }
  body.casework .thf-rule { margin: 0; padding: 16px 24px; border-bottom: 1px solid #23394a; background: #0d1c28; }
  body.casework .thf-rule span { display: block; margin-bottom: 7px; font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; color: var(--rx-clean); }
  body.casework .thf-rule q { font: italic 15px/1.75 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .thf-rule cite { display: block; margin-top: 8px; font: 11.0px/1.6 var(--cw-mono, monospace); font-style: normal; color: var(--ds-muted, #b1c1d0); }
  body.casework .thf-rule cite a { color: var(--ds-evidence, #9ed4dc); }
  body.casework .thf-ledger { list-style: none; margin: 0; padding: 0; }
  body.casework .thf-case { display: grid; grid-template-columns: 11ch minmax(0, 1fr) 15ch; gap: 6px 20px; padding: 18px 24px; border-bottom: 1px solid #1c2f3e; }
  body.casework .thf-case:last-child { border-bottom: 0; }
  body.casework .thf-case[data-outcome="refused"] { box-shadow: inset 3px 0 var(--rx-blocked); }
  body.casework .thf-case[data-outcome="restored"] { box-shadow: inset 3px 0 var(--rx-clean); }
  body.casework .thf-when { font: 600 11px/1.7 var(--cw-mono, monospace); color: var(--ds-muted, #b1c1d0); }
  body.casework .thf-who { display: block; font: 700 15.0px/1.4 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .thf-sum { display: inline-block; margin: 6px 0 8px; padding: 2px 9px; border-radius: 3px; border: 1px solid #40697a; background: #0d222b; font: 700 14.0px/1.6 var(--cw-mono, monospace); color: #9ed4dc; }
  body.casework .thf-sum i { font-style: normal; font-weight: 400; font-size: 11.0px; color: var(--ds-muted, #b1c1d0); }
  body.casework .thf-case p { margin: 0 0 8px; font: 13.0px/1.8 Inter, Arial, sans-serif; color: #cfdde8; max-width: 76ch; }
  body.casework .thf-case p:last-child { margin-bottom: 0; }
  body.casework .thf-case blockquote { margin: 0 0 8px; padding: 10px 14px; border-left: 2px solid var(--rx-blocked); background: #21161c; font: italic 13px/1.75 Inter, Arial, sans-serif; color: #e7eef5; }
  body.casework .thf-src { font: 11.0px/1.7 var(--cw-mono, monospace); color: var(--ds-muted, #b1c1d0); }
  body.casework .thf-src a { color: var(--ds-evidence, #9ed4dc); }
  body.casework .thf-out { align-self: start; font: 700 11.0px/1.5 var(--cw-mono, monospace); letter-spacing: .08em; text-transform: uppercase; text-align: right; }
  body.casework .thf-out b { display: block; font-size: 11.0px; }
  body.casework .thf-out i { display: block; margin-top: 5px; font-style: normal; font-weight: 400; letter-spacing: 0; text-transform: none; font-size: 11.0px; line-height: 1.6; color: var(--ds-muted, #b1c1d0); }
  body.casework .thf-case[data-outcome="refused"] .thf-out b { color: var(--rx-blocked); }
  body.casework .thf-case[data-outcome="restored"] .thf-out b { color: var(--rx-clean); }
  body.casework .thf-out b::before { content: '✕ '; }
  body.casework .thf-case[data-outcome="restored"] .thf-out b::before { content: '✓ '; }
  body.casework .thf-foot { padding: 20px 24px; border-top: 1px solid #23394a; background: #0a1621; }
  body.casework .thf-foot h4 { margin: 0 0 10px; font: 700 15.0px/1.4 Inter, Arial, sans-serif; color: var(--ds-ink, #edf3f8); }
  body.casework .thf-foot p { margin: 0 0 10px; font: 13.0px/1.8 Inter, Arial, sans-serif; color: #cfdde8; max-width: 84ch; }
  body.casework .thf-foot p:last-child { margin-bottom: 0; }
  body.casework .thf-foot strong { color: var(--ds-ink, #edf3f8); }
  body.casework .thf-foot a { color: var(--ds-evidence, #9ed4dc); }
}
@media screen and (max-width: 900px) {
  body.casework .story-wire-panel { grid-template-columns: minmax(0, 1fr); }
  body.casework .rx-board { grid-template-columns: minmax(0, 1fr); }
  body.casework .rx-lane + .rx-lane { border-left: 0; border-top: 1px solid var(--ds-line, #344b5e); }
  body.casework .rx-tally-row { grid-template-columns: minmax(0, 1fr) auto; }
  body.casework .rx-tally-track { grid-column: 1 / -1; }
  body.casework .rx-age-head { grid-template-columns: minmax(0, 1fr); }
  body.casework .rx-age-stats { grid-template-columns: minmax(0, 1fr); }
  body.casework .cef-compare { grid-template-columns: minmax(0, 1fr); }
}
@media screen and (max-width: 700px) {
  body.casework .story-node:not(:last-child)::before { left: 50%; top: 100%; width: 2px; height: 24px; margin: 0 0 0 -1px; background: linear-gradient(180deg, var(--rx-rail-live) 0 50%, var(--rx-rail) 50% 100%); background-size: 100% 200%; background-position: 0 100%; transition: background-position .45s var(--ds-ease, ease); }
  body.casework .story-node.is-reached:not(:last-child)::before { background-position: 0 0; }
  body.casework .story-node.is-current:not(:last-child)::before { animation: none; }
  body.casework :is(.rx-head, .rx-controls, .rx-lane, .rx-wire, .rx-foot, .rx-tally) { padding: 16px 18px; }
  body.casework :is(.rx-req, .story-wire-call) { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 11.0px; }
  body.casework .rx-req .rx-req-key { padding-left: 12px; }
  body.casework .rx-controls select { min-width: 0; width: 100%; }
  body.casework .rx-nav { margin-left: 0; width: 100%; }
  body.casework .rx-nav button { flex: 1; }
  body.casework .rx-age-row { grid-template-columns: minmax(0, 1fr) 8ch; gap: 4px 10px; }
  body.casework .rx-age-track { grid-column: 1 / -1; }
  body.casework .rx-age-state { grid-column: 1 / -1; }
  body.casework .thf-case { grid-template-columns: minmax(0, 1fr); padding: 16px 18px; }
  body.casework .thf-out { text-align: left; }
  body.casework :is(.thf-head, .thf-rule, .thf-foot) { padding-left: 18px; padding-right: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  body.casework .story-node::before,
  body.casework .rx-tally-track span,
  body.casework .story-controls::after { transition: none !important; animation: none !important; }
  body.casework .story-node.is-reached:not(:last-child)::before { background-position: 0 0; }
  body.casework .rx-tally-track span { transform: scaleX(1) !important; }
  body.casework .rx-caret { border-color: transparent !important; }
}
@media print {
  body.casework .rx { display: none !important; }
  body.casework .story-node:not(:last-child)::before { display: none; }
  body.casework .story-wire-panel,
  body.casework .story-wire-panel[hidden] { display: block !important; break-inside: avoid; border-top: 1px solid #999; padding-top: 10px; margin-top: 10px; }
  body.casework .thf { border: 1px solid #999; }
  body.casework .thf-case { break-inside: avoid; box-shadow: none !important; border-bottom: 1px solid #ccc; }
  body.casework .thf-out b { color: #000 !important; }
}
.cef-bounty { margin-top: 18px; padding: 16px 18px; border-radius: 6px; border: 1px solid #6a5a34; background: #1c1a12; }
.cef-bounty-head { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: space-between; color: #e0b467; font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; }
.cef-bounty-head b { color: var(--ds-ink, #edf3f8); font-weight: 700; text-transform: none; letter-spacing: 0; font-size: 12.0px; }
.cef-bounty-lede { margin: 11px 0 0 !important; font: 13.0px/1.8 Inter, Arial, sans-serif; color: #cfdde8; }
.cef-bounty-list { margin: 13px 0 0; padding: 0; list-style: none; }
.cef-bounty-list > li { display: grid; grid-template-columns: 148px minmax(0, 1fr); gap: 16px; padding: 13px 0; border-top: 1px solid #3a3320; }
.cef-bounty-id a { display: block; color: #f0c476; font: 700 15.0px/1.3 var(--cw-mono, monospace); text-decoration: none; border-bottom: 1px solid #6a5a34; }
.cef-bounty-id a:hover, .cef-bounty-id a:focus-visible { color: #ffe0a8; border-bottom-color: #f0c476; }
.cef-bounty-id span { display: block; margin-top: 5px; color: #9a8f74; font: 500 11px/1.6 var(--cw-mono, monospace); letter-spacing: .06em; text-transform: uppercase; }
.cef-bounty-list h4 { margin: 0 0 6px; color: #f2f6fa; font: 700 13.0px/1.45 Inter, Arial, sans-serif; }
.cef-bounty-list p { margin: 0 !important; font: 12.0px/1.75 Inter, Arial, sans-serif; color: #c5d3df; }
.cef-bounty-list code { color: #f0c476; font-size: 11.0px; }
.cef-bounty-list q { color: #eef4f9; font-style: italic; }
.cef-bounty-read { margin: 14px 0 0 !important; padding-top: 12px; border-top: 1px solid #3a3320; font: 12.0px/1.8 Inter, Arial, sans-serif !important; color: #c0cfdb !important; }
.cef-bounty-read b { color: #e0b467; }
.cef-bounty-read a { color: var(--ds-evidence, #9ed4dc); text-decoration: underline; text-underline-offset: 2px; }
.cef-bounty-src { margin: 10px 0 0 !important; font: 11.0px/1.7 var(--cw-mono, monospace) !important; color: #948c76 !important; }
.cef-bounty-src a { color: #b8ab8a; text-decoration: underline; }
@media (max-width: 680px) {
  .cef-bounty-list > li { grid-template-columns: 1fr; gap: 6px; }
}
@media print {
  .cef-bounty { background: #fff !important; border-color: #bbb !important; }
  .cef-bounty-list h4, .cef-bounty-head b { color: #111 !important; }
}
.integration-paradox { margin: 8px 0 0; padding: clamp(20px, 3vw, 34px); border: 1px solid #4a5f78; border-radius: 14px; background: linear-gradient(140deg, #101b28, #0a1118 72%); }
.ip-head h3 { margin: 9px 0 12px; color: #f2f7fb; font: 800 clamp(20px, 2.6vw, 30px)/1.18 Inter, Arial, sans-serif; letter-spacing: -.03em; }
.ip-lede { margin: 0; max-width: 78ch; color: #c2d2df; font: 13.0px/1.8 Inter, Arial, sans-serif; }
.ip-lede b { color: #f2f7fb; }
.ip-table-wrap { margin-top: 20px; overflow-x: auto; }
.ip-table { width: 100%; border-collapse: collapse; min-width: 640px; }
.ip-table thead th { padding: 10px 14px; border-bottom: 1px solid #3d5468; color: #90a8bc; font: 700 11.0px/1.6 var(--cw-mono, monospace); letter-spacing: .12em; text-transform: uppercase; text-align: left; }
.ip-table tbody tr { border-top: 1px solid #23344a; }
.ip-table th[scope="row"], .ip-table td { padding: 15px 14px; vertical-align: top; width: 50%; }
.ip-table th[scope="row"] { text-align: left; font-weight: 400; background: #0c1520; text-transform: none; letter-spacing: normal; }
.ip-table th[scope="row"] b, .ip-table th[scope="row"] span,
.ip-table th[scope="row"] q, .ip-table th[scope="row"] time { text-transform: none; letter-spacing: normal; }
.ip-table td { background: #1a1016; }
.ip-table b { display: block; margin-bottom: 5px; font: 700 13.0px/1.45 Inter, Arial, sans-serif; }
.ip-table th[scope="row"] b { color: #9ed4dc; }
.ip-table td b { color: #f09aa4; }
.ip-table span { display: block; color: #b6c6d4; font: 12.0px/1.75 Inter, Arial, sans-serif; }
.ip-table td span { color: #cdbcc2; }
.ip-table q { color: #eaf2f8; font-style: italic; }
.ip-table code { color: #9ed4dc; font-size: 11.0px; }
.ip-table time { color: inherit; font-weight: 700; }
.ip-table b.ip-gap { display: inline; margin: 0; color: #ff8d99; font-weight: 800; border-bottom: 1px solid #7a3a44; }
.ip-question, .ip-reversal { margin-top: 18px; padding: 16px 18px; border: 1px solid #3d5468; border-radius: 6px; background: #0d1621; }
.ip-question { border-left: 3px solid #f09aa4; }
.ip-reversal { border-left: 3px solid #6f8398; }
.ip-question p, .ip-reversal p { margin: 8px 0 0 !important; color: #c3d2de !important; font: 13.0px/1.8 Inter, Arial, sans-serif !important; }
.ip-question b { color: #f2f7fb; }
.ip-reversal ul { margin: 9px 0 0; padding-left: 20px; }
.ip-reversal li { margin-bottom: 6px; color: #bccbd8; font: 12.0px/1.75 Inter, Arial, sans-serif; }
.ip-verdict { margin: 18px 0 0 !important; padding-top: 14px; border-top: 1px solid #2b3d52; color: #d3e0ea !important; font: 14.0px/1.8 Inter, Arial, sans-serif !important; }
.ip-verdict b { color: #fff; }
.ip-source { margin: 12px 0 0 !important; color: #7f92a4 !important; font: 11.0px/1.8 var(--cw-mono, monospace) !important; }
.ip-source a { color: #9ab6c6; text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 720px) {
  .ip-table { min-width: 560px; }
}
@media print {
  .integration-paradox { background: #fff !important; border-color: #999 !important; }
  .ip-head h3, .ip-verdict, .ip-verdict b { color: #111 !important; }
  .ip-table th[scope="row"], .ip-table td { background: #fff !important; }
  .ip-table th[scope="row"] b { color: #14506b !important; }
  .ip-table td b { color: #8c2030 !important; }
  .ip-table span, .ip-lede, .ip-question p, .ip-reversal p, .ip-reversal li { color: #222 !important; }
  .ip-table-wrap { overflow: visible !important; }
}
.integration-paradox .sr-only, .ip-table caption.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
