:root {
  color-scheme: light;
  --cp-bg: #f7f4ef;
  --cp-bg-elevated: #fcfbf8;
  --cp-surface: #ffffff;
  --cp-surface-soft: #f5f5f5;
  --cp-border: #dedede;
  --cp-border-strong: #919191;
  --cp-text: #242424;
  --cp-text-muted: #5c5c5c;
  --cp-text-soft: #6f6f6f;
  --cp-accent: #b11f4b;
  --cp-accent-hover: #9a1a41;
  --cp-accent-soft: rgba(177, 31, 75, 0.08);
  --cp-accent-fg: #ffffff;
  --cp-success: #16a34a;
  --cp-danger: #dc2626;
  --cp-warning: #f59e0b;
  --cp-link: #0078d4;
  --cp-shadow: 0 18px 48px rgba(0, 0, 0, 0.12);
  --cp-overlay: rgba(255, 255, 255, 0.8);
  --cp-panel: rgba(255, 255, 255, 0.86);
  --cp-panel-strong: rgba(255, 255, 255, 0.96);
  --cp-sheen: rgba(255, 255, 255, 0.55);
  --cp-highlight: rgba(177, 31, 75, 0.12);
}
html[data-theme="dark"] {
  color-scheme: dark;
  --cp-bg: #3d3b3a;
  --cp-bg-elevated: #343231;
  --cp-surface: #292929;
  --cp-surface-soft: #2e2e2e;
  --cp-border: #474747;
  --cp-border-strong: #5f5f5f;
  --cp-text: #dedede;
  --cp-text-muted: #919191;
  --cp-text-soft: #b0b0b0;
  --cp-accent: #fd8ea1;
  --cp-accent-hover: #fb7b91;
  --cp-accent-soft: rgba(253, 142, 161, 0.14);
  --cp-accent-fg: #1a1a1a;
  --cp-success: #4ade80;
  --cp-danger: #f87171;
  --cp-warning: #fbbf24;
  --cp-link: #4da6ff;
  --cp-shadow: 0 18px 48px rgba(0, 0, 0, 0.32);
  --cp-overlay: rgba(41, 41, 41, 0.88);
  --cp-panel: rgba(41, 41, 41, 0.72);
  --cp-panel-strong: rgba(41, 41, 41, 0.96);
  --cp-sheen: rgba(255, 255, 255, 0.04);
  --cp-highlight: rgba(253, 142, 161, 0.12);
}
* { box-sizing: border-box; }
html { scrollbar-gutter: stable; }
body { margin: 0; background: var(--cp-bg); color: var(--cp-text); font: 16px/1.65 "Segoe UI", Aptos, Calibri, -apple-system, BlinkMacSystemFont, sans-serif; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 4px; }
a:hover { color: var(--cp-accent); }
button, input, select, textarea { font: inherit; }
button, .button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 20px; border: 1px solid var(--cp-border-strong); border-radius: .625rem; background: var(--cp-surface); color: var(--cp-text); cursor: pointer; text-decoration: none; }
button:hover, .button:hover { border-color: var(--cp-accent); color: var(--cp-accent); }
button:disabled { opacity: .5; cursor: default; }
.primary { background: var(--cp-accent); color: var(--cp-accent-fg); border-color: var(--cp-accent); }
.primary:hover { background: var(--cp-accent-hover); color: var(--cp-accent-fg); }
.quiet { border-color: var(--cp-border); padding: 8px 12px; }
:focus-visible { outline: 3px solid var(--cp-accent); outline-offset: 4px; }
.skip { position: fixed; top: 8px; left: 16px; background: var(--cp-surface); width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; z-index: 20; }
.skip:focus { clip-path: none; width: auto; height: auto; padding: 12px; }
header { display: flex; align-items: center; gap: 24px; padding: 20px max(24px, calc((100% - 1232px) / 2)); border-bottom: 1px solid var(--cp-border); background: var(--cp-bg-elevated); }
.brand { display: flex; align-items: center; gap: 12px; text-decoration: none; font-size: 24px; font-weight: 650; line-height: 1.2; white-space: nowrap; }
.brand-mark { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid var(--cp-accent); border-radius: .625rem; color: var(--cp-accent); font: 24px Consolas, monospace; }
.brand small { display: block; font-size: 10px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; margin-top: 6px; color: var(--cp-text-muted); }
nav { display: flex; flex: 1; justify-content: flex-end; gap: 24px; align-items: center; }
nav a { flex-shrink: 0; font-size: 14px; line-height: 24px; text-decoration: none; padding: 8px 0; border-bottom: 2px solid var(--cp-bg-elevated); white-space: nowrap; }
nav a[aria-current] { color: var(--cp-accent); border-bottom-color: var(--cp-accent); }
main { max-width: 1280px; margin: auto; padding: 48px 24px 80px; min-height: 75vh; }
main:focus { outline: none; }
h1,h2,h3,p { margin-top: 0; }
h1 { font-size: clamp(36px, 5vw, 68px); font-weight: 650; line-height: 1.06; letter-spacing: -.045em; max-width: 920px; margin-bottom: 24px; }
h2 { font-size: clamp(24px, 3vw, 36px); letter-spacing: -.025em; line-height: 1.2; font-weight: 600; }
h3 { font-size: 20px; line-height: 1.35; font-weight: 600; margin-bottom: 12px; }
.eyebrow { color: var(--cp-accent); font: 12px/1.6 Consolas, monospace; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 20px; }
.lede { font-size: 20px; color: var(--cp-text-muted); max-width: 700px; }
.muted, small { color: var(--cp-text-muted); }
.hero { display: grid; grid-template-columns: 1.1fr 1fr; gap: 48px; align-items: center; padding: 24px 0 56px; }
.hero h1 span { color: var(--cp-accent); }
.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.orbit { position: relative; aspect-ratio: 1; display: grid; place-items: center; max-width: 460px; width: 100%; margin: auto; border-radius: 50%; border: 1px solid var(--cp-border-strong); background: radial-gradient(circle, var(--cp-accent-soft), var(--cp-bg) 65%); }
.orbit::before, .orbit::after { content: ""; position: absolute; inset: 14%; border: 1px solid var(--cp-border); border-radius: 50%; pointer-events: none; }
.orbit::after { inset: 28%; }
.orbit-core { text-align: center; z-index: 1; background: var(--cp-bg-elevated); border: 1px solid var(--cp-accent); border-radius: 50%; width: 132px; height: 132px; display: grid; align-content: center; font-size: 24px; line-height: 1.2; }
.orbit-core small { font-size: 10px; font-family: Consolas, monospace; letter-spacing: .08em; margin-top: 8px; }
.orbit a { position: absolute; z-index: 2; background: var(--cp-bg-elevated); border: 1px solid var(--cp-border); padding: 8px 16px; border-radius: .625rem; text-decoration: none; font-size: 14px; }
.orbit a:nth-of-type(1) { top: 1%; left: 37%; }
.orbit a:nth-of-type(2) { top: 25%; right: -2%; }
.orbit a:nth-of-type(3) { bottom: 22%; right: -2%; }
.orbit a:nth-of-type(4) { bottom: 1%; left: 35%; }
.orbit a:nth-of-type(5) { bottom: 22%; left: -2%; }
.orbit a:nth-of-type(6) { top: 25%; left: -2%; }
.section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; margin: 44px 0 24px; }
.section-head h2 { margin: 0; }
.grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.grid.two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.card { border: 1px solid var(--cp-border); border-radius: 16px; background: var(--cp-surface); padding: 28px; min-width: 0; }
a.card { text-decoration: none; transition: transform .18s, border-color .18s; }
a.card:hover { transform: translateY(-3px); border-color: var(--cp-accent); }
.card p:last-child { margin-bottom: 0; }
.number { font: 40px/1 Consolas, monospace; color: var(--cp-accent); display: block; margin-bottom: 24px; }
.pill { display: inline-block; font: 11px/1.5 Consolas, monospace; text-transform: uppercase; letter-spacing: .04em; border: 1px solid var(--cp-border); border-radius: .625rem; padding: 4px 8px; color: var(--cp-text-muted); }
.pill.accent { color: var(--cp-accent); background: var(--cp-accent-soft); border-color: var(--cp-accent); }
.pill.error { color: var(--cp-danger); }
.pill.good { color: var(--cp-success); }
.flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: 24px 0; }
.flow span { position: relative; border-top: 2px solid var(--cp-accent); background: var(--cp-accent-soft); padding: 16px 8px; font-size: 13px; text-align: center; overflow-wrap: anywhere; }
.flow span::before { content: ""; position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--cp-accent); top: -5px; left: calc(50% - 4px); }
.band { background: var(--cp-bg-elevated); padding: 28px 32px; border-left: 3px solid var(--cp-accent); border-radius: 0 16px 16px 0; margin: 28px 0; }
.band p:last-child { margin-bottom: 0; }
.stage { display: grid; grid-template-columns: 240px 1fr; gap: 32px; padding: 36px 0; border-top: 1px solid var(--cp-border); }
.stage aside { position: sticky; top: 24px; align-self: start; }
.stage .grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.lesson-layout { display: grid; grid-template-columns: minmax(0, 780px) minmax(200px,1fr); gap: 48px; }
.prose { font-size: 18px; max-width: 780px; }
.prose h2 { font-size: 25px; margin-top: 32px; }
.prose p { margin-bottom: 24px; }
.crumb { margin: 0 0 28px; font-size: 13px; color: var(--cp-text-muted); }
.lesson-nav { align-self: start; position: sticky; top: 24px; }
.lesson-nav a { display: block; font-size: 14px; padding: 12px 0; border-bottom: 1px solid var(--cp-border); }
.lesson-nav a[aria-current] { color: var(--cp-accent); font-weight: 600; }
fieldset { margin: 24px 0 16px; border: 0; padding: 0; }
legend { font-size: 18px; font-weight: 600; margin-bottom: 16px; }
.choice { display: flex; gap: 12px; align-items: start; border: 1px solid var(--cp-border); border-radius: .625rem; padding: 12px 16px; margin-bottom: 12px; cursor: pointer; }
.choice input { margin-top: 7px; }
input[type="number"], input[type="search"], textarea, select { background: var(--cp-bg-elevated); color: var(--cp-text); border: 1px solid var(--cp-border-strong); border-radius: .625rem; padding: 10px 12px; max-width: 100%; }
input[type="search"], textarea { width: 100%; }
label.field { display: grid; gap: 6px; margin: 16px 0; font-size: 14px; }
input[type="range"] { width: 100%; accent-color: var(--cp-accent); }
.metric { font: 42px/1.2 Consolas, monospace; color: var(--cp-accent); margin: 16px 0; overflow-wrap: anywhere; }
.toolbar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 24px 0; }
.toolbar input { flex: 1; min-width: 180px; }
.radar-hero { display: grid; grid-template-columns: 1.4fr 1fr; align-items: center; gap: 64px; padding: 12px 0 48px; }
.radar-hero h1 span { color: var(--cp-accent); }
.radar-hero .button { gap: 24px; }
.radar-map { position: relative; width: 100%; max-width: 360px; margin: auto; aspect-ratio: 1; }
.radar-map svg { width: 100%; fill: none; stroke: var(--cp-border); stroke-width: 1; }
.radar-map .radar-beam { fill: var(--cp-accent-soft); stroke: var(--cp-accent); }
.radar-map .radar-dot, .signal-art .radar-dot { fill: var(--cp-accent); stroke: var(--cp-accent); }
.radar-map > strong { position: absolute; inset: 36% 24%; text-align: center; font: 48px/1.2 Consolas, monospace; background: var(--cp-bg); padding-top: 8px; }
.radar-map strong small { display: block; font-size: 9px; letter-spacing: .08em; margin-top: 8px; }
.radar-map-label { position: absolute; background: var(--cp-bg); color: var(--cp-accent); font: 10px Consolas, monospace; letter-spacing: .1em; padding: 4px 8px; }
.radar-map-label:nth-of-type(1) { top: 4%; left: 40%; }
.radar-map-label:nth-of-type(2) { right: 0; top: 64%; }
.radar-map-label:nth-of-type(3) { left: 4%; bottom: 12%; }
.radar-publishers { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.radar-publisher { display: flex; gap: 16px; padding: 20px; text-align: left; min-width: 0; border-color: var(--cp-border); border-radius: 16px; align-items: center; }
.radar-publisher[aria-pressed="true"] { border-color: var(--cp-accent); background: var(--cp-accent-soft); }
.publisher-mark { display: grid; place-items: center; width: 48px; height: 48px; flex-shrink: 0; background: var(--cp-accent-soft); color: var(--cp-accent); border-radius: 10px; font: 18px Consolas, monospace; }
.radar-publisher > span:nth-child(2) { flex: 1; min-width: 0; }
.radar-publisher strong, .radar-publisher small { display: block; }
.radar-publisher small { font-size: 11px; }
.publisher-count { font: 24px/1.3 Consolas, monospace; text-align: right; }
.publisher-count small { font-size: 9px; }
.radar-source-state { display: block; font-size: 11px; margin-top: 8px; }
.radar-source-state::before { content: ""; display: inline-block; width: 6px; height: 6px; background: currentColor; border-radius: 50%; margin-right: 6px; vertical-align: middle; }
.radar-source-state.checked { color: var(--cp-text-muted); }
.radar-source-state.delayed { color: var(--cp-danger); }
.radar-briefing { scroll-margin-top: 24px; }
.radar-briefing .section-head { align-items: center; }
.radar-briefing .eyebrow { margin-bottom: 8px; }
.radar-filters { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 16px; border-top: 1px solid var(--cp-border); padding-top: 8px; }
.radar-filters .field { min-width: 0; }
.radar-count, .radar-cadence { font-size: 13px; }
.radar-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.signal-card { position: relative; border: 1px solid var(--cp-border); border-radius: 16px; background: var(--cp-surface); overflow: hidden; min-width: 0; display: flex; flex-direction: column; }
.signal-card:hover, .signal-card:focus-within { border-color: var(--cp-accent); }
.signal-art { position: relative; height: 112px; overflow: hidden; background: var(--cp-bg-elevated); border-bottom: 1px solid var(--cp-border); color: var(--cp-accent); flex-shrink: 0; }
.signal-art > span { position: absolute; left: 24px; top: 24px; font: 32px/1 Consolas, monospace; letter-spacing: -.06em; z-index: 1; }
.signal-art > small { position: absolute; left: 24px; bottom: 16px; color: var(--cp-accent); font: 9px Consolas, monospace; letter-spacing: .1em; }
.signal-art svg { position: absolute; height: 100%; right: -24px; fill: none; stroke: var(--cp-border-strong); stroke-width: 1; }
.signal-art-open svg { transform: rotate(45deg); }
.signal-art-research svg { stroke-dasharray: 4 4; }
.signal-copy { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.signal-copy .eyebrow { font-size: 10px; margin-bottom: 16px; }
.signal-copy h3 { font-size: 22px; overflow-wrap: anywhere; }
.signal-copy h3 a { text-decoration: none; }
.signal-copy h3 a::after { content: ""; position: absolute; inset: 0; }
.signal-date { color: var(--cp-text-muted); font-size: 12px; }
.signal-read { margin-top: auto; padding-top: 16px; color: var(--cp-accent); font-size: 13px; border-top: 1px solid var(--cp-border); }
.signal-featured { grid-column: span 2; display: grid; grid-template-columns: .8fr 1.2fr; }
.signal-featured .signal-art { height: 100%; min-height: 300px; border-bottom: 0; border-right: 1px solid var(--cp-border); background: var(--cp-accent-soft); }
.signal-featured .signal-art > span { font-size: 56px; top: 36px; left: 28px; }
.signal-featured .signal-art svg { height: 60%; right: -88px; bottom: 16%; }
.signal-featured .signal-copy { padding: 32px; }
.signal-featured h3 { font-size: clamp(24px,2.4vw,32px); line-height: 1.2; letter-spacing: -.025em; }
.radar-grid > .empty { grid-column: 1 / -1; }
.radar-more { text-align: center; margin: 28px 0; }
.radar-more button[hidden] { display: none; }
.radar-health { padding: 24px; background: var(--cp-bg-elevated); }
.radar-health > p { font-size: 14px; max-width: 800px; }
.radar-health .card time { display: block; }
.radar-health .pill.good { color: var(--cp-text); }
.radar-practice { display: grid; grid-template-columns: 1fr 1.4fr; gap: 64px; border-top: 1px solid var(--cp-border); padding-top: 40px; margin-top: 48px; }
.radar-practice ol { list-style: none; padding: 0; margin: 0; }
.radar-practice li { display: grid; grid-template-columns: 100px 1fr; gap: 24px; padding: 0 0 24px; margin-bottom: 24px; border-bottom: 1px solid var(--cp-border); }
.radar-practice li > span { font: 11px Consolas, monospace; color: var(--cp-accent); padding-top: 6px; }
.radar-practice li p { color: var(--cp-text-muted); margin-bottom: 8px; }
.radar-practice li a { font-size: 13px; }
.source-status { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.source-status .card { padding: 16px; font-size: 13px; }
.review { border-top: 1px solid var(--cp-border); margin-top: 24px; padding-top: 16px; }
.review a { color: var(--cp-link); font-size: 14px; }
details { border: 1px solid var(--cp-border); border-radius: .625rem; padding: 16px; margin: 16px 0; }
summary { cursor: pointer; font-weight: 600; }
details p { margin-top: 16px; }
.checklist { padding-left: 24px; }
.checklist li { padding: 8px 0; }
.talk-gallery { gap: 32px; }
.talk-plan { background: var(--cp-bg-elevated); margin: 24px 0; }
.talk-plan h2 { font-size: 20px; margin: 24px 0 12px; }
.talk-agenda { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 12px; list-style: none; padding: 0; margin: 20px 0; }
.talk-agenda button { display: grid; gap: 12px; width: 100%; height: 100%; text-align: left; padding: 20px; background: var(--cp-surface); }
.talk-agenda span { font: 12px Consolas, monospace; color: var(--cp-accent); }
.talk-agenda small { color: var(--cp-text-muted); }
.talk-sources { padding-left: 24px; }
.talk-sources li { margin: 8px 0; }
.talk-card { display: block; border: 1px solid var(--cp-border); border-radius: 16px; overflow: hidden; background: var(--cp-surface); text-decoration: none; }
.talk-card:hover { border-color: var(--cp-accent); color: var(--cp-text); }
.talk-card-art { position: relative; background: var(--cp-bg-elevated); border-bottom: 1px solid var(--cp-border); height: 260px; overflow: hidden; }
.talk-card-art .cover-art { height: 100%; }
.talk-card-art .cover-art svg { width: 65%; opacity: .8; }
.talk-card-art .cover-art > strong { font-size: 54px; }
.talk-card-art .cover-art > div { bottom: 20px; }
.talk-edition { position: absolute; top: 20px; left: 24px; font: 10px Consolas, monospace; color: var(--cp-accent); letter-spacing: .12em; }
.talk-card-copy { padding: 32px; }
.talk-card-copy .eyebrow { font-size: 11px; margin-bottom: 12px; }
.talk-card-copy h2 { font-size: 32px; margin-bottom: 16px; }
.talk-thesis { font-size: 20px; }
.talk-card-copy > p:not(.eyebrow) { color: var(--cp-text-muted); }
.talk-card-link { display: flex; justify-content: space-between; color: var(--cp-accent); border-top: 1px solid var(--cp-border); padding-top: 20px; margin-top: 24px; }
.live-slide { container: slide / inline-size; }
.deck { border: 1px solid var(--cp-border); border-top: 4px solid var(--cp-accent); border-radius: 10px; background: var(--cp-surface); padding: 28px 40px 20px; aspect-ratio: 16/9; min-height: 620px; display: grid; grid-template-rows: auto 1fr auto auto; gap: 24px; }
.deck-masthead, .deck-folio { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; color: var(--cp-text-muted); font: 11px/1.5 Consolas, monospace; letter-spacing: .06em; }
.deck-masthead b, .deck-folio b { color: var(--cp-accent); font-weight: 400; margin: 0 8px; }
.deck-masthead > span:last-child { text-align: right; }
.deck-body { display: grid; grid-template-columns: .9fr 1.1fr; gap: 40px; align-items: center; min-width: 0; }
.deck-copy { min-width: 0; }
.deck-copy .eyebrow { font-size: 11px; margin-bottom: 20px; }
.deck h1 { font-size: clamp(32px, 3.4vw, 50px); letter-spacing: -.04em; line-height: 1.08; margin-bottom: 24px; }
.deck-subtitle { font-size: 20px; line-height: 1.5; color: var(--cp-text-muted); margin: 0; }
.deck-takeaway { display: flex; align-items: center; gap: 16px; border-top: 1px solid var(--cp-border); padding-top: 20px; }
.deck-takeaway > span { color: var(--cp-accent); font-size: 28px; line-height: 1; }
.deck-takeaway p { margin: 0; font-size: 18px; line-height: 1.45; }
.deck-folio { font-size: 10px; }
.deck-folio > span:last-child { white-space: nowrap; }
.talk-visual { margin: 0; min-width: 0; width: 100%; font-size: 16px; line-height: 1.5; }
.talk-visual strong { font-weight: 600; }
.visual-label { display: block; font: 10px/1.5 Consolas, monospace; letter-spacing: .08em; color: var(--cp-accent); margin-bottom: 12px; }
.visual-caption { font-size: 11px; line-height: 1.5; color: var(--cp-text-muted); margin: 16px 0 0; }
.cover-art { position: relative; display: grid; place-items: center; min-height: 300px; }
.cover-art svg { width: 100%; max-height: 340px; fill: var(--cp-surface); stroke: var(--cp-accent); stroke-width: 1.5; }
.cover-art > strong { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font: 700 60px/1 Consolas, monospace; letter-spacing: -.06em; color: var(--cp-accent); background: var(--cp-surface); padding: 12px; }
.cover-art > div { display: flex; justify-content: center; gap: 20px; position: absolute; bottom: -16px; width: 100%; color: var(--cp-text-muted); font: 11px Consolas, monospace; }
.nested-region { padding: 16px 0 0 20px; border: 1px solid var(--cp-accent); border-radius: 10px 0 0 0; background: var(--cp-accent-soft); }
.nested-region > span { display: block; margin: 0 16px 16px 0; font-size: 16px; }
.nested-region b { display: block; text-align: right; color: var(--cp-accent); font-size: 32px; padding: 8px 24px; }
.cycle-steps, .agent-loop { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.cycle-steps li, .agent-loop li { display: grid; gap: 12px; padding: 20px; border: 1px solid var(--cp-border); border-radius: 10px; background: var(--cp-bg-elevated); }
.step-number { font: 12px Consolas, monospace; color: var(--cp-accent); }
.training-contrast { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center; font-size: 12px; margin-top: 20px; text-align: center; }
.training-contrast strong:first-child { color: var(--cp-accent); }
.token-prefix { padding: 20px 24px; border: 1px solid var(--cp-border); background: var(--cp-bg-elevated); border-radius: 10px; }
.token-prefix small { font: 10px Consolas, monospace; letter-spacing: .1em; }
.token-prefix p { font: 18px/1.6 Consolas, monospace; margin: 12px 0 0; }
.token-cursor { color: var(--cp-accent); }
.probability-bars { display: grid; gap: 20px; margin-top: 28px; }
.probability-bars > div { display: grid; grid-template-columns: 58px 1fr 44px; align-items: center; gap: 16px; font: 14px Consolas, monospace; }
.probability-bars svg { width: 100%; height: 12px; background: var(--cp-surface-soft); border-radius: 3px; fill: var(--cp-accent); }
.attention-matrix { display: block; width: 100%; }
.attention-matrix text { fill: var(--cp-text-muted); font: 13px "Segoe UI", sans-serif; }
.attention-matrix rect { fill: var(--cp-accent); }
.attention-matrix .attention-0 { opacity: .3; } .attention-matrix .attention-1 { opacity: .6; }
.attention-matrix .masked { fill: var(--cp-surface-soft); stroke: var(--cp-border); }
.budget-total { display: flex; align-items: center; gap: 20px; padding-bottom: 16px; border-bottom: 1px solid var(--cp-border); }
.budget-total > strong { color: var(--cp-accent); font: 68px/1 Consolas, monospace; }
.budget-total small { display: block; font: 10px Consolas, monospace; margin-top: 8px; }
.budget-parts { display: grid; gap: 12px; margin-top: 20px; }
.budget-parts > div { display: grid; grid-template-columns: 100px 28px 1fr; align-items: center; gap: 12px; font-size: 13px; }
.budget-parts svg { height: 10px; width: 100%; background: var(--cp-surface-soft); fill: var(--cp-accent); }
.evidence-question { font-size: 22px; font-weight: 600; margin-bottom: 20px; }
.visual-evidence blockquote { margin: 0; border-left: 3px solid var(--cp-accent); background: var(--cp-accent-soft); padding: 20px; font-size: 20px; }
.unsupported { margin: 20px 0; padding: 0 20px; }
.evidence-verdict { font-size: 14px; color: var(--cp-accent); padding-top: 16px; border-top: 1px solid var(--cp-border); margin: 0; }
.visual-document { border: 1px solid var(--cp-border); padding: 24px; border-radius: 10px; background: var(--cp-bg-elevated); }
.document-rule { width: 48px; height: 4px; background: var(--cp-accent); margin-bottom: 12px; }
.visual-row { padding: 14px 0; border-bottom: 1px solid var(--cp-border); display: grid; grid-template-columns: 96px 1fr; gap: 16px; font-size: 14px; }
.visual-row:last-child { border: 0; padding-bottom: 0; }
.visual-row > span { color: var(--cp-text-muted); }
.retrieval-chain { list-style: none; padding: 0 0 0 20px; margin: 0; border-left: 1px solid var(--cp-accent); display: grid; gap: 16px; }
.retrieval-chain li { padding: 14px 20px; display: flex; align-items: center; gap: 16px; background: var(--cp-bg-elevated); border: 1px solid var(--cp-border); border-radius: 10px; }
.abstention-branch { margin: 16px 0 0 20px; color: var(--cp-accent); font-size: 13px; }
.architecture-layers { display: grid; gap: 10px; }
.architecture-layers > div { display: flex; gap: 20px; align-items: center; padding: 16px 20px; border: 1px solid var(--cp-border); background: var(--cp-bg-elevated); border-radius: 10px; }
.architecture-layers > div:nth-child(2) { border-color: var(--cp-accent); background: var(--cp-accent-soft); }
.architecture-layers > div > span { color: var(--cp-accent); font: 13px Consolas, monospace; }
.architecture-layers p { margin: 0; } .architecture-layers small { display: block; font-size: 12px; margin-top: 4px; }
.agent-limits { display: flex; justify-content: space-between; gap: 8px; margin-top: 20px; font: 11px Consolas, monospace; color: var(--cp-accent); }
.agent-stop { margin-top: 12px; border: 1px solid var(--cp-accent); border-radius: 8px; padding: 12px; text-align: center; font-size: 13px; }
.evaluation-grid table { border-collapse: collapse; width: 100%; font-size: 12px; table-layout: fixed; }
.evaluation-grid th, .evaluation-grid td { border: 1px solid var(--cp-border); padding: 16px 8px; text-align: center; overflow-wrap: anywhere; }
.evaluation-grid th { font-weight: 500; background: var(--cp-bg-elevated); }
.evaluation-grid .cell-fail { color: var(--cp-danger); font-weight: 600; }
.evaluation-grid .cell-pass { color: var(--cp-success); font-weight: 600; }
.serving-phases { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.serving-phases > div { border-top: 2px solid var(--cp-accent); padding-top: 16px; }
.phase-number { font: 12px Consolas, monospace; color: var(--cp-accent); }
.serving-phases h2 { font-size: 30px; margin: 16px 0; }
.serving-phases p { font-size: 14px; min-height: 64px; }
.prefill-blocks { display: grid; grid-template-columns: repeat(4,1fr); gap: 5px; }
.prefill-blocks span, .decode-blocks span { background: var(--cp-accent-soft); border: 1px solid var(--cp-accent); border-radius: 3px; height: 24px; }
.decode-blocks { display: grid; grid-template-columns: repeat(3,1fr); gap: 5px; }
.decode-blocks span:nth-child(n+4) { opacity: .3; }
.serving-labels { display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--cp-border); padding-top: 16px; margin-top: 20px; font-size: 11px; color: var(--cp-text-muted); }
.cost-fraction { text-align: center; }
.cost-fraction > div { display: flex; justify-content: space-evenly; align-items: center; padding-bottom: 16px; border-bottom: 2px solid var(--cp-border-strong); }
.cost-fraction span { font: 32px Consolas, monospace; } .cost-fraction small { display: block; font: 10px Consolas, monospace; margin-top: 8px; }
.cost-fraction p { font: 28px Consolas, monospace; margin: 16px 0; }
.accepted-cost { display: flex; align-items: center; gap: 24px; margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--cp-border); }
.accepted-cost strong { color: var(--cp-accent); font: 64px/1 Consolas, monospace; letter-spacing: -.05em; }
.accepted-cost span { color: var(--cp-text-muted); font-size: 14px; }
.trust-sides { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.trust-sides > div { display: grid; gap: 12px; align-content: start; }
.trust-sides > div:last-child { border-left: 2px dashed var(--cp-accent); padding-left: 24px; }
.trust-sides span, .trust-sides strong { font-size: 14px; padding: 12px 0; border-bottom: 1px solid var(--cp-border); }
.boundary-label { margin-top: 24px; font: 11px Consolas, monospace; text-align: center; color: var(--cp-accent); letter-spacing: .12em; }
.recovery-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.recovery-steps li { display: flex; align-items: start; gap: 24px; padding: 12px 0; border-bottom: 1px solid var(--cp-border); }
.recovery-steps li > span { font: 28px Consolas, monospace; color: var(--cp-accent); }
.recovery-steps p { font-size: 13px; color: var(--cp-text-muted); margin: 4px 0 0; }
.workflow-lanes { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.workflow-lanes > div:last-child { border-left: 1px solid var(--cp-border); padding-left: 24px; }
.visual-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.visual-steps li { padding: 12px 0; border-top: 1px solid var(--cp-border); }
.visual-steps .step-number { display: block; margin-bottom: 8px; }
.visual-steps strong { font-size: 14px; }
.portfolio-map { position: relative; padding-left: 28px; }
.portfolio-y { position: absolute; left: 0; top: 50%; transform: translate(-43%,-50%) rotate(-90deg); white-space: nowrap; font-size: 11px; color: var(--cp-text-muted); }
.portfolio-quadrants { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--cp-border-strong); border-left: 1px solid var(--cp-border-strong); }
.portfolio-quadrants > div { min-height: 112px; padding: 20px 16px; border-bottom: 1px solid var(--cp-border-strong); border-right: 1px solid var(--cp-border-strong); display: grid; align-content: center; gap: 12px; }
.portfolio-quadrants small { font: 9px Consolas, monospace; } .portfolio-quadrants strong { font-size: 16px; }
.pilot-quadrant { background: var(--cp-accent-soft); color: var(--cp-accent); }
.portfolio-x { font-size: 11px; color: var(--cp-text-muted); text-align: center; margin-top: 16px; }
.visual-timeline { display: grid; list-style: none; margin: 0; padding: 0; gap: 20px; }
.visual-timeline li { display: grid; grid-template-columns: 88px 1fr; gap: 6px 20px; border-left: 2px solid var(--cp-accent); padding-left: 20px; }
.visual-timeline span { font: 12px Consolas, monospace; color: var(--cp-accent); padding-top: 6px; grid-row: span 2; }
.visual-timeline strong { font-size: 26px; } .visual-timeline p { font-size: 13px; color: var(--cp-text-muted); margin: 0; }
.signal-funnel { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; text-align: center; }
.signal-funnel li { padding: 16px 12px; border: 1px solid var(--cp-border); background: var(--cp-bg-elevated); border-radius: 8px; }
.signal-funnel li:nth-child(2) { margin: 0 16px; } .signal-funnel li:nth-child(3) { margin: 0 32px; } .signal-funnel li:nth-child(4) { margin: 0 48px; background: var(--cp-accent-soft); border-color: var(--cp-accent); }
.signal-funnel strong { display: block; } .signal-funnel span { font-size: 12px; color: var(--cp-text-muted); }
.comparison-panels { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.comparison-panels > div { padding: 24px 20px; border: 1px solid var(--cp-border); border-radius: 10px; display: grid; gap: 20px; font-size: 14px; background: var(--cp-bg-elevated); }
.comparison-panels > div:last-child { border-color: var(--cp-accent); }
.comparison-link { font-size: 13px; text-align: center; margin-top: 20px; color: var(--cp-accent); }
.learning-wheel { width: 320px; max-width: 100%; aspect-ratio: 1; margin: auto; position: relative; display: grid; place-items: center; border: 1px solid var(--cp-accent); border-radius: 50%; }
.learning-wheel > span { position: absolute; background: var(--cp-surface); padding: 12px; font-size: 20px; }
.learning-wheel small { display: block; font: 10px Consolas, monospace; color: var(--cp-accent); }
.learning-wheel > span:nth-child(1) { top: -24px; } .learning-wheel > span:nth-child(2) { right: -24px; } .learning-wheel > span:nth-child(3) { bottom: -24px; } .learning-wheel > span:nth-child(4) { left: -24px; }
.learning-wheel > strong { max-width: 130px; font-size: 28px; line-height: 1.2; text-align: center; color: var(--cp-accent); }
.action-number { font: 72px/1 Consolas, monospace; color: var(--cp-accent); margin-bottom: 24px; }
.action-number small { display: inline-block; font: 10px/1.5 Consolas, monospace; max-width: 60px; margin-left: 16px; }
.action-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 16px; }
.action-steps li { display: flex; gap: 16px; align-items: baseline; padding-bottom: 12px; border-bottom: 1px solid var(--cp-border); font-size: 16px; }
.audience-question { color: var(--cp-accent); font-size: 14px; margin: 20px 0 0; }
.deck-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 16px 0; }
.deck-controls .actions { margin: 0; gap: 8px; }
.deck-controls button { font-size: 12px; padding: 8px 12px; }
.deck-controls p { font: 11px Consolas, monospace; white-space: nowrap; margin: 0; }
.slide-progress { display: block; height: 3px; margin: 0; border: 0; appearance: none; background: var(--cp-border); }
.slide-progress::-webkit-progress-bar { background: var(--cp-border); }
.slide-progress::-webkit-progress-value { background: var(--cp-accent); }
.slide-progress::-moz-progress-bar { background: var(--cp-accent); }
.presentation-controls { display: none; }
body:has(#talk-player.presenting) { overflow: hidden; }
html:has(#talk-player.presenting) { scrollbar-gutter: auto; overflow: hidden; }
#talk-player.presenting { position: fixed; inset: 0; z-index: 40; padding: 0; overflow: hidden; background: var(--cp-bg-elevated); }
#talk-player.presenting .live-slide { position: absolute; width: 1280px; height: 720px; left: 50%; top: 50%; transform: translate(-50%, -50%) scale(var(--slide-scale)); outline-offset: -4px; }
#talk-player.presenting .deck { width: 100%; height: 100%; min-height: 0; aspect-ratio: auto; border: 0; border-radius: 0; }
#talk-player.presenting .deck h1 { font-size: 50px; }
#talk-player.presenting .deck-controls, #talk-player.presenting .deck-notes, #talk-player.presenting .slide-progress { display: none; }
#talk-player.presenting:not(.controls-visible) { cursor: none; }
#talk-player.presenting .presentation-controls { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; width: max-content; max-width: calc(100% - 24px); padding: 8px 12px; border: 1px solid var(--cp-border); border-radius: 10px; background: var(--cp-surface); color: var(--cp-text); cursor: auto; opacity: 0; pointer-events: none; transition: opacity .15s; }
#talk-player.presenting.controls-visible .presentation-controls, #talk-player.presenting .presentation-controls:focus-within, #talk-player.presenting:has(#presentation-status:not(:empty)) .presentation-controls { opacity: 1; pointer-events: auto; }
.presentation-controls .actions { margin: 0; gap: 8px; align-items: center; }
.presentation-controls button { font-size: 12px; padding: 8px 12px; }
.presentation-hint, #presentation-count, #presentation-status { font: 11px/1.5 Consolas, monospace; }
#presentation-status { flex-basis: 100%; margin: 0; text-align: center; color: var(--cp-warning); }
#presentation-status:empty { display: none; }
#slide-overview { width: min(1000px, calc(100% - 40px)); max-height: calc(100% - 40px); overflow: auto; padding: 32px; border: 1px solid var(--cp-border-strong); border-radius: 16px; background: var(--cp-surface); color: var(--cp-text); }
#slide-overview::backdrop { background: var(--cp-overlay); }
.overview-heading { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 24px; }
.overview-heading h2 { margin: 0; }
.overview-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.overview-grid button { display: grid; align-content: start; gap: 12px; text-align: left; padding: 20px; min-height: 160px; }
.overview-grid button[aria-current] { border-color: var(--cp-accent); background: var(--cp-accent-soft); }
.overview-grid button > span { color: var(--cp-accent); font: 24px Consolas, monospace; }
.overview-grid small { font: 10px Consolas, monospace; }
#notes-text { max-width: 900px; white-space: pre-line; font-size: 18px; line-height: 1.8; }
.learning-doors { margin: 28px 0 40px; }
.learning-doors .card { border-top: 3px solid var(--cp-accent); }
.video-card { padding: 0; overflow: hidden; }
.video-frame { position: relative; aspect-ratio: 16/9; min-height: 200px; background: var(--cp-bg-elevated); border-bottom: 1px solid var(--cp-border); }
.load-video { position: absolute; inset: 0; width: 100%; height: 100%; display: block; padding: 0; border: 0; border-radius: 0; background: var(--cp-surface); }
.load-video img { display: block; width: 100%; height: 100%; object-fit: cover; }
.load-video:focus-visible { outline-offset: -4px; }
.video-play, .video-duration { position: absolute; background: var(--cp-surface); color: var(--cp-text); border: 1px solid var(--cp-border); border-radius: 10px; padding: 8px 12px; font-size: 13px; }
.video-play { bottom: 16px; left: 16px; font-weight: 600; }
.load-video:hover .video-play { background: var(--cp-accent); color: var(--cp-accent-fg); border-color: var(--cp-accent); }
.video-duration { top: 12px; right: 12px; font: 12px Consolas, monospace; }
.video-topics { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0; }
.stop-video { display: none; }
.video-card.playing .stop-video { display: inline-flex; }
.video-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.video-copy { padding: 24px; }
.video-copy .eyebrow { font-size: 10px; margin-bottom: 12px; }
.video-copy h3 { font-size: 22px; }
.video-copy > p:not(.eyebrow) { color: var(--cp-text-muted); font-size: 15px; }
.video-copy .actions { align-items: center; }
.video-copy .actions a { font-size: 13px; color: var(--cp-link); }
.video-copy details { font-size: 13px; padding: 12px; }
.video-card > .pill { margin: 24px 24px 0; }
.video-privacy { font-size: 13px; color: var(--cp-text-muted); }
.related-videos .grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.related-videos .video-copy h3 { font-size: 18px; }
.watch-start { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 48px; background: var(--cp-bg-elevated); border: 1px solid var(--cp-border); border-radius: 16px; padding: 40px; margin-top: 32px; }
.watch-start > div > p:not(.eyebrow) { color: var(--cp-text-muted); }
.watch-start ol { list-style: none; padding: 0; margin: 0; }
.watch-start li a { display: flex; gap: 24px; text-decoration: none; padding: 16px 0; border-bottom: 1px solid var(--cp-border); }
.watch-start li:first-child a { padding-top: 0; } .watch-start li:last-child a { border: 0; padding-bottom: 0; }
.watch-start li a > span { font: 24px Consolas, monospace; color: var(--cp-accent); }
.watch-start small { display: block; font-size: 11px; margin-top: 4px; }
.library-filters { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 24px; }
.guide-index { display: flex; flex-wrap: wrap; gap: 24px; padding: 20px 0; border-top: 1px solid var(--cp-border); border-bottom: 1px solid var(--cp-border); font-size: 14px; }
.guide-index .selected { color: var(--cp-accent); font-weight: 600; }
.guide-feature { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; padding: 48px 0; }
.guide-feature h2, .guide-decision h2 { font-size: clamp(28px,3.8vw,48px); }
.guide-feature p:not(.eyebrow) { color: var(--cp-text-muted); }
.foundation-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 16px; }
.foundation-steps li { display: flex; gap: 24px; align-items: center; padding: 20px 24px; border: 1px solid var(--cp-border); border-left: 3px solid var(--cp-accent); border-radius: 10px; background: var(--cp-surface); }
.foundation-steps .number { font-size: 28px; margin: 0; }
.foundation-steps h3 { margin: 0 0 4px; }
.foundation-steps p { margin: 0; font-size: 14px; }
.guide-check { margin-top: 32px; }
.guide-model { border-left: 2px solid var(--cp-accent); padding: 0 0 0 32px; display: grid; gap: 16px; }
.guide-model > span { color: var(--cp-text-muted); } .guide-model > b { padding: 16px 24px; border: 1px solid var(--cp-border); border-radius: 10px; background: var(--cp-accent-soft); font-size: 22px; }
.guide-model > small { font-size: 12px; }
.guide-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.guide-table th, .guide-table td { padding: 20px; border-bottom: 1px solid var(--cp-border); text-align: left; }
.guide-table th { background: var(--cp-bg-elevated); color: var(--cp-accent); font-size: 12px; }
.table-wrap { overflow-x: auto; } .table-wrap table { min-width: 520px; }
.guide-decision { border-top: 1px solid var(--cp-border); margin-top: 40px; padding-top: 40px; }
.gpu-schematic { text-align: center; }
.gpu-chip { display: grid; grid-template-columns: repeat(6,1fr); gap: 8px; border: 1px solid var(--cp-accent); padding: 24px; border-radius: 16px; max-width: 340px; margin: 0 auto 16px; }
.gpu-chip span { aspect-ratio: 1.5; border: 1px solid var(--cp-accent); background: var(--cp-accent-soft); border-radius: 3px; }
.memory-bus { font-size: 24px; color: var(--cp-accent); padding: 8px; }
.gpu-memory { background: var(--cp-bg-elevated); border: 1px solid var(--cp-border); border-radius: 10px; padding: 20px; }
.gpu-schematic small { font-size: 11px; display: block; margin-top: 16px; }
.weight-example { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; background: var(--cp-bg-elevated); padding: 32px; border: 1px solid var(--cp-border); border-radius: 16px; margin: 32px 0; }
.weight-example h2 { font-family: Consolas, monospace; color: var(--cp-accent); }
.print-slides { display: none; }
.empty { padding: 32px; border: 1px dashed var(--cp-border-strong); border-radius: 16px; }
.status { color: var(--cp-accent); font-weight: 600; }
progress { width: 100%; height: 8px; accent-color: var(--cp-accent); }
footer { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; max-width: 1280px; margin: auto; padding: 24px; border-top: 1px solid var(--cp-border); font-size: 12px; color: var(--cp-text-muted); }
#notice { position: fixed; bottom: 20px; right: 20px; max-width: min(460px, calc(100vw - 40px)); padding: 0; background: var(--cp-surface); color: var(--cp-text); border-radius: .625rem; z-index: 30; }
#notice:not(:empty) { padding: 16px 24px; border: 1px solid var(--cp-accent); }
@media(max-width: 1000px) {
  .radar-hero { gap: 32px; }
  .radar-publisher { gap: 12px; padding: 16px; }
  .radar-publisher > span:nth-child(2) > small { display: none; }
  .radar-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .radar-practice { gap: 32px; }
  header { gap: 16px; flex-wrap: wrap; } nav { order: 3; flex: 0 0 100%; width: 100%; min-width: 0; justify-content: space-between; gap: 12px; overflow-x: auto; }
  header > button { margin-left: auto; }
  .hero { gap: 32px; } .grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .lesson-layout { grid-template-columns: minmax(0,1fr); } .lesson-nav { position: static; }
}
@media(max-width: 860px) {
  .deck-controls { flex-wrap: wrap; }
  .deck-controls > .actions:last-child { width: 100%; }
  .learning-wheel { width: 260px; }
  .watch-start { gap: 32px; padding: 32px; }
  .guide-feature { gap: 32px; }
  .weight-example { grid-template-columns: 1fr; gap: 16px; }
}
@media(max-width: 640px) {
  .radar-hero { grid-template-columns: 1fr; padding-top: 0; gap: 0; }
  .radar-map { display: none; }
  .radar-hero .lede { font-size: 18px; }
  .radar-publishers { gap: 8px; }
  .radar-publisher { flex-direction: column; align-items: start; padding: 12px; gap: 12px; }
  .radar-publisher > span:nth-child(2) { flex: auto; }
  .radar-publisher strong { font-size: 12px; min-height: 36px; }
  .publisher-mark { width: 32px; height: 32px; font-size: 14px; }
  .publisher-count { text-align: left; font-size: 20px; }
  .radar-source-state { font-size: 10px; }
  .radar-briefing .section-head { align-items: start; flex-direction: column; }
  .radar-filters { grid-template-columns: 1fr 1fr; gap: 0 12px; }
  .radar-filters .field:first-child { grid-column: 1 / -1; margin-bottom: 0; }
  .radar-grid { grid-template-columns: 1fr; }
  .signal-featured { grid-column: auto; display: flex; }
  .signal-featured .signal-art { height: 144px; min-height: 0; border-right: 0; border-bottom: 1px solid var(--cp-border); }
  .signal-featured .signal-art > span { font-size: 40px; top: 28px; left: 24px; }
  .signal-featured .signal-art svg { height: 100%; right: -24px; bottom: 0; }
  .signal-featured .signal-copy { padding: 24px; }
  .radar-practice { grid-template-columns: 1fr; gap: 32px; }
  .radar-practice li { grid-template-columns: 72px 1fr; gap: 16px; }
  main { padding: 32px 20px 56px; } header { padding: 16px 20px; }
  .hero { grid-template-columns: 1fr; padding-top: 0; gap: 36px; } .orbit { max-width: 340px; }
  .grid, .grid.two, .stage .grid, .source-status { grid-template-columns: 1fr; }
  .card { padding: 24px; } .stage { grid-template-columns: 1fr; gap: 16px; } .stage aside { position: static; }
  .stage .number { display: inline; margin-right: 12px; } .stage aside h2 { display: inline; }
  .flow { grid-template-columns: repeat(2,minmax(0,1fr)); row-gap: 24px; }
  .band { padding: 24px; }
  .deck-controls > .actions:last-child { display: grid; grid-template-columns: 1fr 1fr; }
  .deck-controls > .actions:last-child button { min-width: 0; font-size: 11px; }
  .talk-card-art { height: 230px; }
  .talk-card-copy { padding: 24px; }
  .talk-card-copy h2 { font-size: 28px; }
  .overview-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .overview-grid button { padding: 16px; font-size: 12px; }
  #slide-overview { padding: 20px; }
  .overview-heading h2 { font-size: 22px; }
  .related-videos .grid { grid-template-columns: 1fr; }
  .video-card { padding: 0; }
  .watch-start, .guide-feature, .library-filters { grid-template-columns: 1fr; gap: 24px; }
  .watch-start { padding: 24px; }
  .library-filters { gap: 0; }
  .watch-start h2 br { display: none; }
  .guide-feature { padding: 32px 0; }
  .guide-feature h2 { font-size: 36px; }
  .guide-index { gap: 20px; font-size: 13px; }
  .weight-example { padding: 24px; }
  .guide-table th, .guide-table td { padding: 16px 12px; font-size: 13px; }
  .section-head { align-items: start; } .section-head a { flex-shrink: 0; }
}
@container slide (max-width: 860px) {
  .deck { aspect-ratio: auto; min-height: 0; padding: 24px; }
  .deck-body { grid-template-columns: 1fr; gap: 40px; }
  .deck h1 { font-size: 36px; max-width: 620px; }
  .deck-subtitle { font-size: 18px; max-width: 580px; }
  .talk-visual { max-width: 480px; margin: 0 auto; padding: 8px 0 16px; }
}
@container slide (max-width: 640px) {
  .deck { padding: 20px; gap: 24px; }
  .deck h1 { font-size: 32px; }
  .deck-masthead { font-size: 9px; gap: 12px; }
  .deck-folio { font-size: 8px; }
  .deck-copy .eyebrow { margin-bottom: 12px; }
  .deck-takeaway p { font-size: 15px; }
  .talk-visual { padding-bottom: 12px; }
  .cover-art { min-height: 240px; }
  .cover-art > strong { font-size: 48px; }
  .cover-art > div { gap: 12px; font-size: 9px; bottom: -8px; }
  .visual-document { padding: 16px; }
  .visual-row { grid-template-columns: 82px 1fr; gap: 12px; font-size: 12px; }
  .cycle-steps li, .agent-loop li { padding: 16px; font-size: 14px; }
  .training-contrast { font-size: 10px; }
  .evaluation-grid th, .evaluation-grid td { padding: 12px 4px; font-size: 10px; }
  .trust-sides { gap: 16px; } .trust-sides > div:last-child { padding-left: 16px; }
  .trust-sides span, .trust-sides strong { font-size: 12px; }
  .visual-label { font-size: 9px; }
  .workflow-lanes { gap: 16px; } .workflow-lanes > div:last-child { padding-left: 16px; }
  .visual-steps strong { font-size: 12px; }
  .accepted-cost { gap: 16px; } .accepted-cost strong { font-size: 52px; }
  .cost-fraction span { font-size: 28px; } .cost-fraction small { font-size: 8px; }
  .portfolio-quadrants > div { padding: 16px 12px; } .portfolio-quadrants strong { font-size: 13px; }
  .comparison-panels { gap: 12px; } .comparison-panels > div { padding: 20px 12px; font-size: 12px; }
  .visual-timeline li { grid-template-columns: 72px 1fr; gap: 6px 12px; padding-left: 16px; }
  .visual-timeline span { font-size: 10px; }
  .action-number { font-size: 64px; }
  .action-steps li { font-size: 14px; }
}
@media(prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; scroll-behavior: auto !important; } }
@media print {
  @page { size: landscape; margin: 8mm; }
  header, footer, .skip, .no-print, #notice, #talk-player, .talk-heading, dialog { display: none !important; }
  body, main { background: var(--cp-surface); color: var(--cp-text); padding: 0; margin: 0; max-width: none; }
  .print-slides { display: block; }
  .print-slides .deck { break-after: page; break-inside: avoid; border: 0; border-top: 3px solid var(--cp-accent); border-radius: 0; min-height: 0; height: 180mm; aspect-ratio: auto; padding: 20px; gap: 16px; }
  .print-slides .deck:last-child { break-after: auto; }
  .print-slides .deck-body { grid-template-columns: .9fr 1.1fr; gap: 32px; }
  .print-slides .deck h1 { font-size: 36px; } .print-slides .deck-subtitle { font-size: 18px; }
  .print-slides .talk-visual { max-width: none; }
}
