/* Tabular method illustrations: a restrained ink-and-grid visual vocabulary. */
.tmv-lead { font-size:18px; line-height:1.8; color:var(--muted); max-width:80ch; margin-bottom:26px; }
.tmv-flow-arrow { display:block; width:34px!important; height:28px; max-width:100%; stroke:var(--tmv-teal); stroke-width:1.7; stroke-linecap:butt; stroke-linejoin:round; fill:none; }
.tmv-flow-arrow .connector-head { fill:var(--tmv-teal); stroke:none; }
.tmv-flow-arrow.tmv-arrow-down { transform:rotate(90deg); }
.tmv-foundation-flow,.tmv-causal-example-flow { display:grid; grid-template-columns:minmax(230px,1.3fr) 34px minmax(145px,.8fr) 34px minmax(185px,1fr); gap:12px; align-items:center; margin-block:27px; }
.tmv-foundation-flow>div,.tmv-causal-example-flow>div { min-width:0; }
.tmv-example-table-wrap { min-width:0; }
.tmv-example-table { border-collapse:collapse; width:100%; table-layout:fixed; text-align:left; font-size:17px; line-height:1.5; }
.tmv-example-table caption { text-align:left; color:var(--accent); font-size:16px; font-weight:600; line-height:1.6; padding-bottom:17px; }
.tmv-example-table th { font-size:16px; color:var(--accent); padding:10px 6px; border-block:1px solid var(--line); background:var(--soft); font-weight:650; overflow-wrap:anywhere; }
.tmv-example-table td { padding:13px 6px; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.tmv-tfm .tmv-example-table th:last-child,.tmv-tfm .tmv-example-table td:last-child { background:var(--accent-light); }
.tmv-example-table .tmv-query-row td { border-top:2px solid var(--accent); }
.tmv-query-row td:last-child { color:var(--accent); font:26px/1.2 Georgia,serif; }
.tmv-input-note { margin-top:15px; font-size:16px; line-height:1.7; color:var(--muted); }
.tmv-parameter-node { text-align:center; padding:19px 13px; background:var(--soft); border:1px solid var(--line); border-radius:12px; }
.tmv-parameter-node>p { font-size:16px; line-height:1.55; color:var(--muted); }
.tmv-fixed-theta { display:block; font:74px/1.25 Georgia,serif; color:var(--tmv-teal); margin-block:10px; }
.tmv-parameter-node>strong { display:block; color:var(--ink); font-size:17px; line-height:1.6; font-weight:600; }
.tmv-parameter-node>small { display:block; color:var(--muted); font-size:16px; line-height:1.65; margin-top:10px; }
.tmv-foundation-output { text-align:center; padding:20px 10px; }
.tmv-output-task { font-size:17px; font-weight:600; color:var(--accent); }
.tmv-output-symbol { font:36px/1.35 Georgia,serif; color:var(--accent); margin-block:18px; }
.tmv-foundation-output strong { font-size:20px; line-height:1.5; display:block; font-weight:600; color:var(--ink); }
.tmv-foundation-output>p:last-child { font-size:16px; color:var(--muted); margin-top:15px; }
.tmv-case-controls { display:flex; gap:12px; flex-wrap:wrap; }
.tmv-case-controls button { border:1px solid var(--line); background:var(--paper); color:var(--muted); border-radius:6px; padding:10px 16px; font-size:16px; min-height:46px; }
.tmv-case-controls button[aria-pressed="true"] { color:var(--accent); border-color:var(--accent); background:var(--accent-light); }
.tmv-graph-label { color:var(--accent); text-align:center; font-size:16px; font-weight:600; margin-bottom:12px; }
.tmv-example-graph { width:100%; max-width:320px; margin-inline:auto; }
.tmv-example-graph rect { fill:#edf4f1; stroke:var(--tmv-teal); stroke-width:2; }
.tmv-example-graph text { fill:var(--tmv-teal); font-size:22px; text-anchor:middle; }
.tmv-example-graph marker path { fill:var(--tmv-teal); }
.tmv-example-edges { fill:none; stroke:var(--tmv-teal); stroke-width:3.3; }
.tmv-causal-example-flow { transition:opacity .6s; }
.tmv-causal[data-tmv-phase="0"] .tmv-causal-example-flow,.tmv-causal[data-tmv-phase="1"] .tmv-causal-example-flow { opacity:.35; }
.tmv-agent-request { padding:20px 22px; border-left:3px solid var(--accent); background:var(--soft); margin-block:25px; }
.tmv-request-label,.tmv-result-label { font-size:16px; color:var(--accent); display:block; font-weight:650; margin-bottom:10px; }
.tmv-agent-request>p { font:22px/1.65 Georgia,serif; color:var(--ink); }
.tmv-agent-inputs { display:flex; flex-wrap:wrap; align-items:center; gap:10px 15px; font-size:16px; line-height:1.7; color:var(--muted); margin-top:-10px; margin-bottom:24px; }
.tmv-agent-inputs span { border:1px solid var(--line); background:var(--paper); border-radius:4px; padding:4px 10px; }
.tmv-agent-toolbar { display:flex; justify-content:space-between; align-items:center; gap:15px; border-block:1px solid var(--line); margin-bottom:24px; padding-block:10px; font-size:16px; color:var(--muted); }
.tmv-agent-toolbar .tmv-replay { color:var(--accent); border:0; padding:8px 0; background:none; font-size:16px; }
.tmv-agent-flow { display:grid; grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr); gap:8px; align-items:center; }
.tmv-agent-flow>.tmv-flow-arrow { width:22px!important; }
.tmv-agent-stage { align-self:stretch; display:flex; flex-direction:column; align-items:flex-start; min-width:0; text-align:left; border:1px solid var(--line); border-radius:10px; background:var(--paper); padding:19px 15px; color:var(--ink); transition:background .4s,border-color .4s,opacity .4s; }
.tmv-agent-stage[aria-pressed="true"] { background:var(--accent-light); border-color:var(--accent); }
.tmv-agent-number { color:var(--accent); font:26px/1.3 Georgia,serif; margin-bottom:15px; }
.tmv-agent-stage>strong { display:block; font-size:18px; line-height:1.5; font-weight:650; margin-block:15px 10px; }
.tmv-agent-body { font-size:16px; line-height:1.7; color:var(--muted); flex:1; }
.tmv-agent-artifact { display:block; color:var(--accent); border-top:1px solid var(--line); padding-top:13px; margin-top:18px; font-size:16px; line-height:1.6; }
.tmv-agent-icon { display:grid; align-items:center; width:47px; height:41px; gap:4px; position:relative; }
.tmv-agent-icon i { display:block; background:var(--accent); opacity:.6; height:5px; border-radius:1px; }
.tmv-agent-icon-table { border:2px solid var(--accent); padding:5px; grid-template-columns:repeat(3,1fr); }
.tmv-agent-icon-table i { height:25px; }
.tmv-agent-icon-plan i:nth-child(2) { width:70%; }.tmv-agent-icon-plan i:nth-child(3) { width:45%; }
.tmv-agent-icon-tools { grid-template-columns:1fr 1fr; gap:7px; }.tmv-agent-icon-tools i { height:15px; }
.tmv-agent-icon-report { border:2px solid var(--accent); padding:6px; }.tmv-agent-icon-report i:last-child { width:60%; }
.tmv-agent-result { padding:20px 22px; border:1px solid var(--line); border-radius:10px; margin-top:25px; background:var(--soft); }
.tmv-agent-result>strong { display:block; font-size:19px; line-height:1.6; color:var(--accent); font-weight:600; }
.tmv-agent-result>p { font-size:16px; line-height:1.75; color:var(--muted); margin-top:8px; }
.tmv-agent-stage.tmv-agent-future { opacity:.4; }
.tmv-scene { --tmv-teal:#296b68; --tmv-grid:#dce3de; margin:30px 0 22px; padding:26px 28px 19px; border:1px solid var(--line); border-radius:16px; background:var(--white); min-width:0; overflow:hidden; }
.tmv-heading { display:flex; justify-content:space-between; gap:22px; align-items:start; margin-bottom:21px; }
.tmv-kicker { color:var(--accent); font-size:16px; font-weight:650; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; }
.tmv-heading h3 { font:32px/1.23 Georgia,"Times New Roman",serif; letter-spacing:-.025em; margin-top:8px; max-width:610px; }
.tmv-schematic { font:16px/1.6 "Segoe UI",Arial,sans-serif; color:var(--muted); white-space:nowrap; padding-top:2px; }
.tmv-controls { display:flex; align-items:center; gap:0; flex-wrap:wrap; border-block:1px solid var(--line); margin-bottom:22px; }
.tmv-controls button { padding:12px 13px; background:none; border:0; border-bottom:2px solid transparent; color:var(--muted); font-size:16px; line-height:1.5; margin-bottom:-1px; text-align:left; }
.tmv-controls button:first-child { padding-left:0; }
.tmv-controls button[aria-pressed="true"] { color:var(--accent); border-bottom-color:var(--accent); font-weight:650; }
.tmv-controls button:hover { color:var(--accent); }
.tmv-controls button:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.tmv-controls .tmv-replay { margin-left:auto; color:var(--accent); padding-right:0; }
.tmv-replay>span { font-size:18px; margin-left:5px; }
.tmv-caption { min-height:55px; margin-top:20px; padding-top:16px; border-top:1px solid var(--line); font-size:18px; line-height:1.75; color:var(--ink); }
.tmv-footnote { color:var(--muted); font-size:16px; line-height:1.75; margin-top:9px; }
.tmv-plot-note { color:var(--muted); font-size:16px; line-height:1.7; margin-top:15px; }
.tmv-scene svg { display:block; width:100%; overflow:visible; font-family:"Segoe UI",Arial,sans-serif; }
.tmv-nca-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(150px,.8fr); gap:30px; align-items:center; }
.tmv-scatter-wrap { min-width:0; }
.tmv-scatter { max-width:490px; }
.tmv-grid-field { color:var(--tmv-grid); }
#tmv-nca-grid circle { fill:var(--tmv-grid); }
.tmv-point { transition:transform 1.3s cubic-bezier(.22,.7,.18,1); transition-delay:var(--tmv-delay,0ms); }
.tmv-class-a { fill:var(--accent); }
.tmv-class-b { fill:var(--tmv-teal); }
.tmv-query { transition:transform 1.3s cubic-bezier(.22,.7,.18,1); }
.tmv-query circle:first-child { stroke:var(--ink); fill:#fffefa; stroke-width:3; }
.tmv-query circle:last-child { fill:var(--ink); }
.tmv-neighbor-links { opacity:1; transition:opacity .8s; }
.tmv-neighbor-links>path { stroke:var(--accent); stroke-width:2.2; stroke-dasharray:3 4; fill:none; }
.tmv-neighbor-links>circle { stroke:var(--accent); stroke-width:1; fill:none; opacity:.25; }
.tmv-nca[data-tmv-phase="0"] .tmv-neighbor-links { opacity:0; }
.tmv-svg-caption { fill:var(--muted); font-size:16px; }
.tmv-legend { display:flex; justify-content:center; gap:19px; flex-wrap:wrap; margin-top:5px; font-size:16px; color:var(--muted); }
.tmv-legend>span { display:inline-flex; align-items:center; gap:7px; }
.tmv-legend i { display:inline-block; width:8px; height:8px; }
.tmv-legend-a { border-radius:50%; background:var(--accent); }
.tmv-legend-b { width:0!important; height:0!important; border-inline:5px solid transparent; border-bottom:8px solid var(--tmv-teal); }
.tmv-legend-query { border:1.5px solid var(--ink); border-radius:50%; }
.tmv-nca-explanation { padding:15px 0; }
.tmv-process-label { display:flex; align-items:center; gap:12px; }
.tmv-process-label>span { color:var(--accent); font:23px Georgia,serif; opacity:.55; width:27px; }
.tmv-process-label>p { font-size:18px; line-height:1.55; color:var(--ink); }
.tmv-mini-arrow { color:var(--accent); padding-left:8px; font-size:22px; margin-block:6px; opacity:.5; }
.tmv-nca[data-tmv-phase="0"] .tmv-transform-label,.tmv-nca[data-tmv-phase="0"] .tmv-neighbor-label { opacity:.4; }
.tmv-transform-label,.tmv-neighbor-label { transition:opacity .7s; }
.tmv-method-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.tmv-method { min-width:0; }
.tmv-method+.tmv-method { border-left:1px solid var(--line); padding-left:24px; }
.tmv-method h4 { font:30px/1.2 Georgia,serif; color:var(--accent); margin:0 0 7px; letter-spacing:-.025em; }
.tmv-method>p { font-size:18px; color:var(--muted); line-height:1.6; }
.tmv-method .tmv-method-bottom { font-size:18px; color:var(--ink); min-height:40px; }
.tmv-depth-svg { margin-top:15px; }
.tmv-depth-svg text { fill:var(--muted); font-size:22px; }
.tmv-depth-svg .tmv-input-label { font-size:22px; }
.tmv-depth-svg marker path { fill:var(--tmv-teal); }
.tmv-layer rect { fill:var(--paper); stroke:var(--line); stroke-width:2.2; transition:fill .65s,stroke .65s,opacity .65s; }
.tmv-layer text { text-anchor:middle; font-size:22px; fill:var(--muted); transition:fill .65s; }
.tmv-forward-path { stroke:var(--line); stroke-width:2.8; fill:none; }
.tmv-input-path { stroke:var(--tmv-teal); stroke-width:2.8; fill:none; }
.tmv-exit-path,.tmv-output-path { stroke:var(--tmv-teal); stroke-width:3; fill:none; opacity:1; transition:opacity .7s; }
.tmv-exit-label { text-anchor:middle; fill:var(--tmv-teal)!important; font-size:22px!important; }
.tmv-revisit-label { fill:var(--tmv-teal)!important; text-anchor:middle; font-size:22px!important; }
.tmv-prediction rect { stroke:var(--tmv-teal); fill:#eaf2ef; stroke-width:1; }
.tmv-prediction text { fill:var(--tmv-teal); text-anchor:middle; font-size:22px; }
.tmv-prediction,.tmv-exit-label,.tmv-revisit-label { transition:opacity .7s; }
.tmv-revisit-paths path { stroke:var(--tmv-teal); stroke-width:2.8; fill:none; stroke-dasharray:420; stroke-dashoffset:0; transition:stroke-dashoffset 1.2s ease,opacity .7s; }
.tmv-depth[data-tmv-phase="0"] .tmv-prediction,.tmv-depth[data-tmv-phase="0"] .tmv-exit-label,.tmv-depth[data-tmv-phase="0"] .tmv-revisit-label,.tmv-depth[data-tmv-phase="0"] .tmv-exit-path,.tmv-depth[data-tmv-phase="0"] .tmv-output-path,.tmv-depth[data-tmv-phase="1"] .tmv-prediction,.tmv-depth[data-tmv-phase="1"] .tmv-exit-path,.tmv-depth[data-tmv-phase="1"] .tmv-output-path { opacity:.15; }
.tmv-depth[data-tmv-phase="0"] .tmv-revisit-paths path { stroke-dashoffset:420; opacity:0; }
.tmv-depth[data-tmv-phase="0"] .tmv-layer { opacity:.5; }
.tmv-depth[data-tmv-phase="1"] .tmv-layer:nth-of-type(n),.tmv-depth[data-tmv-phase="2"] .tmv-layer:nth-of-type(n) { opacity:1; }
.tmv-depth[data-tmv-phase="1"] .tmv-layer rect,.tmv-depth[data-tmv-phase="2"] .tmv-layer rect { stroke:var(--accent); fill:var(--accent-light); }
.tmv-depth[data-tmv-phase="1"] .tmv-layer text,.tmv-depth[data-tmv-phase="2"] .tmv-layer text { fill:var(--accent); }
.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-4,.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-5,.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-6 { opacity:.3!important; }
.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-4 rect,.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-5 rect,.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-6 rect { stroke:var(--line); fill:var(--paper); }
.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-4 text,.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-5 text,.tmv-depth[data-tmv-exit="early"] .tmv-swift .tmv-layer-6 text { fill:var(--muted); }
.tmv-pretrain-row { display:grid; grid-template-columns:126px minmax(0,1fr) 30px minmax(150px,.72fr); gap:15px; align-items:center; padding-block:15px 24px; }
.tmv-stage-label span { display:block; color:var(--accent); font-size:18px; font-weight:650; }
.tmv-stage-label small { display:block; color:var(--muted); font-size:16px; line-height:1.6; margin-top:5px; }
.tmv-world-sources { display:grid; gap:7px; }
.tmv-world-sources>span { font-size:16px; color:var(--muted); border-left:2px solid var(--line); padding-left:11px; transition:color .6s,border-color .6s; }
.tmv-causal[data-tmv-phase="0"] .tmv-world-sources>span { border-left-color:var(--accent); color:var(--accent); }
.tmv-horizontal-arrow { color:var(--tmv-teal); font-size:24px; text-align:center; opacity:.65; }
.tmv-shared-model { display:flex; gap:13px; align-items:center; padding:12px 14px; border:1px solid var(--line); transition:background .6s,border-color .6s; }
.tmv-theta { font:42px/1 Georgia,serif; color:var(--accent); }
.tmv-shared-model>div { font-size:16px; color:var(--ink); }
.tmv-shared-model small { display:block; color:var(--muted); font-size:16px; line-height:1.6; margin-top:4px; }
.tmv-causal[data-tmv-phase="1"] .tmv-shared-model { background:var(--accent-light); border-color:var(--accent); }
.tmv-causal-divider { display:flex; align-items:center; gap:15px; color:var(--muted); font-size:16px; margin-bottom:20px; }
.tmv-causal-divider::before,.tmv-causal-divider::after { content:""; height:1px; flex:1; background:var(--line); }
.tmv-playing[data-tmv-phase="1"] .tmv-layer { animation:tmv-layer-reveal .85s both; animation-delay:calc(var(--tmv-i)*.12s); }
@keyframes tmv-layer-reveal { from{opacity:.25}to{opacity:1} }
.motion-off .tmv-scene * { animation:none!important; transition:none!important; }
.tmv-reset * { animation:none!important; transition:none!important; }
/* Finite teaching sequences: emphasize evidence, computation, then output. */
.tmv-fixed-badge { display:inline-flex; align-items:center; gap:7px; padding:7px 10px; border:1px solid var(--line); border-radius:20px; background:var(--paper); color:var(--tmv-teal); font-size:16px; line-height:1.4; white-space:nowrap; }
.tmv-fixed-badge svg { width:17px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; }
.tmv-phase-label { display:block; margin-bottom:14px; font-size:16px; line-height:1.5; letter-spacing:.06em; text-transform:uppercase; color:var(--accent); }
.tmv-tfm .tmv-case-controls { margin-bottom:18px; }
.tmv-tfm .tmv-foundation-input,.tmv-tfm .tmv-parameter-node,.tmv-tfm .tmv-foundation-output { border:1px solid var(--line); border-radius:12px; padding:17px 12px; transition:background .45s,border-color .45s,box-shadow .45s; }
.tmv-tfm[data-tmv-phase="0"] .tmv-foundation-input,.tmv-tfm[data-tmv-phase="1"] .tmv-parameter-node,.tmv-tfm[data-tmv-phase="2"] .tmv-foundation-output { border-color:var(--tmv-teal); box-shadow:0 0 0 3px #296b680c; background:#f3f8f5; }
.tmv-tfm .tmv-foundation-flow { gap:9px; }
.tmv-tfm .tmv-example-table td { padding-block:10px; }
.tmv-tfm .tmv-example-table caption { font-size:16px; padding-bottom:12px; }
.tmv-tfm[data-tmv-phase="0"] .tmv-query-row { opacity:.65; }
.tmv-tfm[data-tmv-phase="2"] .tmv-query-row { background:var(--accent-light); }
.tmv-tfm.tmv-playing[data-tmv-phase="0"] tbody>tr:not(.tmv-query-row) { animation:tmv-row-evidence 1s ease both; }
.tmv-tfm.tmv-playing[data-tmv-phase="0"] tbody>tr:nth-child(2) { animation-delay:.2s; }
.tmv-tfm.tmv-playing[data-tmv-phase="0"] tbody>tr:nth-child(3) { animation-delay:.4s; }
.tmv-tfm.tmv-playing[data-tmv-phase="1"] .tmv-flow-arrow .tmv-connector-line { stroke-dasharray:5 4; animation:tmv-evidence-flow 1s linear 2; }
.tmv-tfm.tmv-playing[data-tmv-phase="1"] .tmv-fixed-theta { animation:tmv-context-read 1.2s ease; }
.tmv-controls .tmv-pause { margin-left:auto; padding-inline:12px; font-size:16px; }
.tmv-controls .tmv-pause+.tmv-replay { margin-left:0; }
.tmv-pause:disabled { opacity:.4; }
.tmv-agent-toolbar .tmv-pause { margin-left:auto; border:0; background:none; color:var(--accent); font:inherit; }
.tmv-query-controls { display:flex; gap:7px; flex-wrap:wrap; min-height:45px; margin-top:14px; }
.tmv-query-controls button { padding:6px 10px; font-size:16px; line-height:1.4; color:var(--muted); border:1px solid var(--line); border-radius:20px; background:transparent; }
.tmv-query-controls button[aria-pressed="true"] { background:var(--accent-light); border-color:var(--accent); color:var(--accent); }
.tmv-method .tmv-history-key { display:flex; align-items:center; min-height:45px; margin-top:14px; font-size:16px; color:var(--tmv-teal); }
.tmv-history-bank rect { fill:#eaf2ef; stroke:var(--tmv-teal); stroke-width:1.5; }
.tmv-depth-svg .tmv-history-bank text { fill:var(--tmv-teal); font-size:22px; text-anchor:middle; }
.tmv-history-bank { transition:opacity .6s; }
.tmv-depth[data-tmv-phase="0"] .tmv-history-bank { opacity:.35; }
@keyframes tmv-row-evidence { 0%{background:transparent} 55%{background:var(--accent-light)} 100%{background:transparent} }
@keyframes tmv-evidence-flow { to{stroke-dashoffset:-18} }
@keyframes tmv-context-read { 0%,100%{color:var(--tmv-teal)} 50%{color:var(--accent);text-shadow:0 0 20px #89552e20} }
@media(max-width:1150px) { .tmv-pretrain-row { grid-template-columns:108px minmax(0,1fr) 20px minmax(130px,.85fr); gap:10px; }.tmv-scene { padding:23px; }.tmv-method-pair { gap:18px; }.tmv-method+.tmv-method { padding-left:18px; }.tmv-schematic { white-space:normal; text-align:right; max-width:110px; } }
@media(max-width:760px) { .tmv-heading h3 { font-size:25px; }.tmv-method-pair { grid-template-columns:minmax(0,1fr); gap:25px; }.tmv-method+.tmv-method { border-left:0; border-top:1px solid var(--line); padding:24px 0 0; }.tmv-depth-svg { max-width:430px; margin-inline:auto; }.tmv-method .tmv-method-bottom { min-height:0; }.tmv-pretrain-row { grid-template-columns:1fr 25px 1fr; }.tmv-stage-label { grid-column:1/-1; display:flex; gap:14px; align-items:baseline; }.tmv-stage-label small { margin-top:0; }.tmv-nca-layout { grid-template-columns:minmax(0,1fr); gap:20px; }.tmv-nca-explanation { display:flex; align-items:center; justify-content:space-between; padding:0; gap:10px; }.tmv-process-label { display:block; text-align:center; flex:1; }.tmv-process-label>span { display:block; margin:0 auto 5px; font-size:20px; }.tmv-process-label>p { font-size:16px; }.tmv-mini-arrow { transform:rotate(-90deg); padding:0; margin:0; }.tmv-scatter { margin-inline:auto; } }
@media(max-width:500px) {
  .tmv-scene { margin-block:24px 18px; padding:20px 15px 17px; }
  .tmv-heading { display:block; margin-bottom:17px; }
  .tmv-heading h3 { font-size:25px; }
  .tmv-schematic { display:block; max-width:none; text-align:left; margin-top:11px; }
  .tmv-controls { gap:0 12px; justify-content:space-between; margin-bottom:18px; }
  .tmv-controls button { padding:10px 0; font-size:16px; min-height:44px; }
  .tmv-controls .tmv-replay { margin-left:0; }
  .tmv-caption { min-height:0; }
  .tmv-process-label>p { font-size:16px; }
  .tmv-pretrain-row { grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr); gap:9px; }
  .tmv-stage-label { display:block; }
  .tmv-stage-label small { margin-top:4px; }
  .tmv-world-sources>span { font-size:16px; padding-left:8px; }
  .tmv-shared-model { padding:10px 8px; display:block; text-align:center; }
  .tmv-theta { font-size:35px; display:block; margin-bottom:5px; }
  .tmv-shared-model>div,.tmv-shared-model small { font-size:16px; }
  .tmv-legend { gap:12px; }
}
@media(prefers-reduced-motion:reduce) { html:not(.motion-on) .tmv-scene * { animation-duration:.01ms!important; transition-duration:.01ms!important; } }
@media print { .tmv-controls { display:none; }.tmv-scene { break-inside:avoid; }.tmv-method-pair { grid-template-columns:1fr 1fr; } }

@media(max-width:1100px) {
  .tmv-foundation-flow,.tmv-causal-example-flow { grid-template-columns:minmax(0,1fr); gap:19px; }
  .tmv-foundation-flow>.tmv-flow-arrow,.tmv-causal-example-flow>.tmv-flow-arrow { margin-inline:auto; transform:rotate(90deg); }
  .tmv-foundation-flow>div,.tmv-causal-example-flow>div { width:100%; max-width:520px; margin-inline:auto; }
  .tmv-parameter-node { display:grid; grid-template-columns:90px minmax(0,1fr); gap:8px 16px; align-items:center; text-align:left; padding:22px; }
  .tmv-fixed-theta { grid-column:1; grid-row:1/4; margin:0; text-align:center; }
  .tmv-parameter-node>p,.tmv-parameter-node>strong,.tmv-parameter-node>small { grid-column:2; }
  .tmv-parameter-node>small { margin-top:0; }
  .tmv-tfm .tmv-parameter-node>.tmv-phase-label { grid-column:1/-1; margin-bottom:4px; }
  .tmv-tfm .tmv-parameter-node>.tmv-fixed-theta { grid-row:2/5; }
  .tmv-foundation-output { padding:10px 15px; }
  .tmv-output-symbol { margin-block:10px; }
  .tmv-example-graph { max-width:300px; }
  .tmv-agent-flow { grid-template-columns:minmax(0,1fr); gap:12px; }
  .tmv-agent-flow>.tmv-flow-arrow { transform:rotate(90deg); width:34px!important; margin-inline:auto; }
  .tmv-agent-stage { display:grid; grid-template-columns:50px minmax(0,1fr); gap:0 18px; padding:20px 22px; }
  .tmv-agent-number { grid-column:1; grid-row:1; margin:0; }
  .tmv-agent-icon { grid-column:1; grid-row:2/4; margin-top:15px; }
  .tmv-agent-stage>strong { grid-column:2; grid-row:1; margin:0 0 10px; font-size:20px; }
  .tmv-agent-body { grid-column:2; grid-row:2; }
  .tmv-agent-artifact { grid-column:2; grid-row:3; margin-top:12px; padding-top:12px; }
}
@media(max-width:600px) {
  .tmv-fixed-badge { margin-top:12px; }
  .tmv-controls .tmv-pause { margin-left:0; }
  .tmv-tfm .tmv-heading { display:block; }
  .tmv-lead { font-size:18px; }
  .tmv-heading h3 { font-size:29px; }
  .tmv-kicker { font-size:16px; }
  .tmv-schematic { font-size:16px; }
  .tmv-controls { justify-content:flex-start; column-gap:18px; }
  .tmv-controls button { font-size:16px; line-height:1.6; }
  .tmv-caption { font-size:18px; }
  .tmv-footnote,.tmv-plot-note { font-size:16px!important; }
  .tmv-example-table { font-size:17px; }
  .tmv-example-table th { font-size:16px; padding-inline:5px; }
  .tmv-example-table td { padding-inline:5px; }
  .tmv-parameter-node { padding:20px 14px; grid-template-columns:70px minmax(0,1fr); gap:6px 12px; }
  .tmv-fixed-theta { font-size:65px; }
  .tmv-case-controls { display:grid; grid-template-columns:minmax(0,1fr); width:100%; }
  .tmv-case-controls button { text-align:left; }
  .tmv-agent-stage { padding:20px 16px; grid-template-columns:38px minmax(0,1fr); gap:0 13px; }
  .tmv-agent-icon { width:35px; height:35px; }
  .tmv-agent-request { padding:19px 17px; }
  .tmv-agent-request>p { font-size:21px; }
  .tmv-pretrain-row { grid-template-columns:minmax(0,1fr); gap:18px; }
  .tmv-pretrain-row>.tmv-flow-arrow { transform:rotate(90deg); margin-inline:auto; }
  .tmv-shared-model { text-align:left; display:flex; gap:18px; padding:16px 19px; }
  .tmv-theta { margin:0; }
  .tmv-stage-label small { font-size:16px; }
  .tmv-process-label>p { font-size:16px; }
  .tmv-nca-explanation { display:grid; grid-template-columns:minmax(0,1fr); justify-items:start; gap:10px; }
  .tmv-process-label { display:flex; gap:12px; text-align:left; }
  .tmv-process-label>span { margin:0; }
  .tmv-mini-arrow { transform:none; padding-left:5px; }
}
@media print {
  .tmv-case-controls,.tmv-agent-toolbar { display:none; }
  .tmv-agent-stage { border-color:var(--line); opacity:1!important; }
  .tmv-causal-example-flow { opacity:1!important; }
}
