:root { --body-zh: "Knowledge WenKai", "Minimal LXGW WenKai", "Kaiti SC", serif; --sage: #53614c; --warm: #806238; --wash: #e8e9df; --panel: #fafaf5; }
body { font-size: 16px; line-height: 1.7; }
button { cursor: pointer; }
button:disabled { cursor: default; }
button, a { -webkit-tap-highlight-color: transparent; }
button, input { font-family: inherit; }
button { line-height: inherit; }
[hidden] { display: none !important; }
.header-links { display: flex; align-items: center; gap: 1.7rem; font-size: .78rem; }
.header-links .language-switch { min-height: 36px; }
.project-nav { display: flex; gap: 1.8rem; justify-content: center; padding-top: 1.2rem; font-size: .85rem; color: var(--muted); }
.project-nav a { padding: .25rem 0; border-bottom: 1px solid transparent; }
.project-nav a[aria-current] { color: var(--ink); border-color: var(--ink); }
.project-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; padding: 2.6rem 0 2rem; }
.eyebrow { color: var(--muted); font-size: .66rem; letter-spacing: .14em; margin: 0 0 .6rem; }
h1, h2, h3, h4 { font-weight: 400; }
.project-heading h1 { font-size: clamp(1.7rem,3.4vw,2.6rem); line-height: 1.4; margin: 0; letter-spacing: -.025em; }
.project-deck { margin: .5rem 0 0; color: var(--muted); font-size: .88rem; }
.edition { flex-shrink: 0; display: grid; gap: .3rem; text-align: right; font-size: .68rem; color: var(--muted); }
.story-shell { border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.step-nav { display: grid; grid-template-columns: repeat(5,1fr); border-bottom: 1px solid var(--rule); }
.step-nav button { padding: 1rem .7rem; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; background: transparent; text-align: left; font-size: .76rem; color: var(--muted); display: flex; align-items: baseline; gap: .8rem; }
.step-nav button:first-child { padding-left: 0; }
.step-nav button[aria-current] { border-bottom-color: var(--ink); color: var(--ink); }
.step-nav .step-number { font-family: var(--body-en); font-size: .9rem; opacity: .75; }
.scene { min-height: 456px; padding: 2.5rem 0 2.2rem; display: grid; grid-template-columns: .8fr 1.45fr; gap: 3.5rem; align-items: center; }
.scene-enter { animation: arrive 320ms ease both; }
.scene-copy { align-self: stretch; display: flex; flex-direction: column; align-items: start; }
.scene-index { font-family: var(--body-en); font-style: italic; color: var(--muted); margin: 0 0 1rem; font-size: 1rem; }
.scene-copy h2 { margin: 0; font-size: clamp(1.6rem,2.6vw,2.1rem); line-height: 1.6; letter-spacing: -.025em; }
.scene-intro { font-size: .9rem; color: var(--muted); margin: 1rem 0 1.7rem; max-width: 30em; }
.ownership { border-top: 1px solid var(--rule); margin: auto 0 0; padding-top: 1rem; font-size: .76rem; }
.ownership span { display: block; font-size: .65rem; color: var(--muted); margin-bottom: .4rem; letter-spacing: .08em; }
.scene-art { min-width: 0; }
.art-caption { color: var(--muted); font-size: .64rem; margin: .7rem 0 0; display: flex; justify-content: space-between; gap: 1rem; }
.mock-window { border: 1px solid #aeb0a3; background: #f7f7f1; box-shadow: 6px 7px 0 var(--wash); }
.mock-top { padding: .65rem 1rem; border-bottom: 1px solid var(--rule); display: flex; align-items: center; justify-content: space-between; gap: 1rem; font-size: .73rem; }
.window-dots { display: flex; gap: 4px; }
.window-dots i { width: 5px; height: 5px; border: 1px solid var(--muted); border-radius: 50%; }
.mock-workspace { display: grid; grid-template-columns: 85px 1fr; min-height: 211px; }
.mock-sidebar { border-right: 1px solid var(--rule); padding: .7rem; display: grid; align-content: start; gap: .3rem; }
.mock-sidebar span { padding: .4rem .2rem; text-align: center; font-size: .72rem; color: var(--muted); }
.mock-sidebar .current { background: var(--wash); color: var(--ink); }
.mock-empty { display: grid; place-content: center; text-align: center; padding: 1rem; }
.empty-symbol { display: block; width: 42px; height: 30px; border: 1px solid var(--rule); margin: 0 auto .8rem; position: relative; }
.empty-symbol:before,.empty-symbol:after { content: ''; height: 1px; background: var(--rule); position: absolute; left: 10px; right: 10px; top: 10px; }
.empty-symbol:after { top: 16px; right: 16px; }
.mock-empty p { font-size: .8rem; margin: 0; }
.mock-empty small { display: block; font-size: .65rem; color: var(--muted); margin-top: .3rem; }
.question-note { margin: 1.2rem 0 0; display: flex; align-items: start; gap: .8rem; font-size: .78rem; }
.question-note .annotation { color: var(--sage); font-size: 1.1rem; line-height: 1.4; }
.text-link { background: transparent; border: 0; border-bottom: 1px solid var(--rule); padding: .1rem 0; font-size: inherit; }
.text-link:hover { border-color: var(--ink); }
.source-list { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
.source-card { text-align: left; padding: 1rem; border: 1px solid var(--rule); background: transparent; transition: background 150ms,border-color 150ms; min-height: 114px; }
.source-card:hover, .source-card[aria-pressed="true"] { background: var(--wash); border-color: var(--sage); }
.source-card .source-id { display: flex; justify-content: space-between; color: var(--muted); font-size: .63rem; }
.source-card strong { font-weight: 400; display: block; font-size: .94rem; margin-top: .3rem; }
.source-card small { color: var(--muted); font-size: .72rem; display: block; }
.source-explanation { border-left: 2px solid var(--sage); margin-top: 1rem; padding: .15rem 0 .15rem 1rem; min-height: 94px; }
.source-explanation p { font-size: .83rem; margin: 0 0 .4rem; }
.source-explanation small { font-size: .65rem; color: var(--muted); }
.fact-list { border-top: 1px solid var(--rule); }
.fact-row { display: grid; grid-template-columns: 6.3rem 1fr auto; align-items: center; gap: .9rem; padding: 1rem 0; border-bottom: 1px solid var(--rule); text-align: left; width: 100%; background: transparent; border-left: 0; border-right: 0; border-top: 0; }
.fact-row:hover { background: #e8e9df55; }
.fact-row strong { font-weight: 400; font-size: .88rem; }
.fact-row small { font-size: .68rem; color: var(--muted); display: block; margin-top: .3rem; }
.status { display: inline-flex; gap: .4rem; align-items: center; color: var(--sage); font-size: .72rem; white-space: nowrap; }
.status:before { content: ''; width: 5px; height: 5px; border: 1px solid currentColor; border-radius: 50%; background: currentColor; }
.status.pending { color: var(--warm); }.status.pending:before { background: transparent; }
.status.unverified { color: var(--muted); }.status.unverified:before { border-radius: 0; background: transparent; }
.gates { margin-top: 1.1rem; display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; font-size: .72rem; }
.gates .gate-arrow { color: #8c8e83; }
.document { padding: 1.5rem 1.8rem; border: 1px solid var(--rule); background: var(--panel); box-shadow: 5px 6px 0 var(--wash); }
.document-header { display: flex; justify-content: space-between; gap: 1rem; padding-bottom: .8rem; border-bottom: 1px solid var(--rule); color: var(--muted); font-size: .65rem; }
.document h3 { font-size: 1.15rem; margin: 1rem 0; }
.excerpt { border: 0; border-top: 1px solid var(--rule); background: transparent; padding: .85rem 0; text-align: left; display: block; width: 100%; }
.excerpt:first-of-type { border-top: 0; }
.excerpt .excerpt-label { display: flex; justify-content: space-between; color: var(--muted); font-size: .66rem; margin-bottom: .35rem; }
.excerpt p { margin: 0; font-size: .81rem; line-height: 1.85; }
.excerpt u { text-decoration-thickness: 1px; text-underline-offset: 4px; text-decoration-color: #89937b; }
.excerpt:hover u { background: var(--wash); }
.delivery-head { border-bottom: 1px solid var(--rule); padding-bottom: .8rem; display: flex; align-items: end; gap: 1rem; }
.delivery-head .big-number { font-family: var(--body-en); line-height: .9; font-size: 5.3rem; letter-spacing: -.06em; }
.delivery-head p { font-size: .85rem; margin: 0 0 .1rem; }
.delivery-head small { display: block; font-size: .65rem; color: var(--muted); }
.delivery-line { display: grid; grid-template-columns: 1fr auto; gap: 1rem; border-bottom: 1px solid var(--rule); padding: .65rem 0; font-size: .78rem; }
.delivery-line span:last-child { color: var(--sage); }
.correction-teaser { background: var(--wash); padding: 1rem 1.1rem; margin-top: 1rem; font-size: .78rem; }
.correction-teaser p { margin: .2rem 0 .6rem; }
.project-scale { color: var(--muted); font-size: .69rem; margin-top: 1rem; }
.story-controls { display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--rule); padding: 1rem 0; }
.quiet-button { background: transparent; border: 0; padding: .55rem 0; font-size: .8rem; }
.quiet-button:disabled { opacity: .3; }
.next-button,.ink-link { background: var(--ink); color: var(--paper); border: 1px solid var(--ink); padding: .55rem 1rem; font-size: .8rem; min-width: 116px; }
.next-button:hover,.ink-link:hover { background: var(--sage); border-color: var(--sage); }
.scene-count { font-family: var(--body-en); color: var(--muted); font-size: .78rem; }
.project-footer { display: flex; justify-content: space-between; gap: 1rem; padding: 1.15rem 0 2rem; font-size: .68rem; color: var(--muted); }
/* The evaluation is a readable diagram, with the historical case beneath it. */
.eval-flow { border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); padding: 1.3rem 0; }
.flow-heading { display: flex; justify-content: space-between; gap: 1rem; font-size: .72rem; margin-bottom: 1rem; color: var(--muted); }
.review-lanes { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
.review-lane { border: 1px solid var(--rule); padding: 1.3rem 1.5rem; text-align: left; background: transparent; }
.review-lane:hover { background: var(--wash); }
.review-lane h2 { font-size: 1.15rem; margin: .3rem 0 .5rem; }
.review-lane p { color: var(--muted); font-size: .8rem; margin: 0; }
.flow-connector { text-align: center; font-size: 1.1rem; color: var(--muted); line-height: 1.4; padding: .3rem; }
.rule-bridge { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--rule); background: var(--wash); }
.rule-bridge button { background: transparent; border: 0; text-align: left; padding: .9rem 1.4rem; }
.rule-bridge button+button { border-left: 1px solid var(--rule); }
.rule-bridge strong { display: block; font-size: .9rem; font-weight: 400; }.rule-bridge small { font-size: .73rem; color: var(--muted); }
.review-route { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 1.2rem; padding: .7rem; font-size: .85rem; }
.review-route .reviewer-pair { display: flex; gap: .4rem; }
.review-route .reviewer-pair span { border: 1px solid var(--rule); padding: .25rem 1.1rem; }
.review-route small { display: block; color: var(--muted); font-size: .65rem; }
.delivery-route { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 1rem; align-items: center; border-top: 1px solid var(--rule); padding-top: 1rem; margin-top: .8rem; }
.delivery-route button { border: 0; background: transparent; padding: .3rem; text-align: center; font-size: .8rem; }
.delivery-route small { display: block; font-size: .68rem; color: var(--muted); }
.eval-note { font-size: .69rem; color: var(--muted); margin: 1rem 0 0; }
.eval-record { padding-top: 2.5rem; }.section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.section-heading h2 { margin: 0 0 1rem; font-size: 1.45rem; }.section-heading span { font-size: .68rem; color: var(--muted); }
.score-row { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.score-row div { padding: 1.2rem 0; }.score-row div+div { padding-left: 1.5rem; border-left: 1px solid var(--rule); }
.score-row strong { font-size: 2.5rem; line-height: 1.1; font-weight: 400; font-family: var(--body-en); display: block; }
.score-row span { color: var(--muted); font-size: .74rem; }
.record-details { border-bottom: 1px solid var(--rule); }
.record-details summary { cursor: pointer; padding: 1.2rem 0; list-style: none; display: flex; align-items: baseline; gap: 1rem; font-size: .98rem; }
.record-details summary::-webkit-details-marker { display: none; }.record-details summary:after { content: '+'; margin-left: auto; color: var(--muted); }.record-details[open] summary:after { content: '−'; }
.record-details summary .record-no { font-size: .73rem; color: var(--muted); font-family: var(--body-en); }
.record-content { max-width: 780px; padding: 0 0 1.4rem 2.1rem; font-size: .84rem; }
.record-content p { margin: .25rem 0 .85rem; }
.compare { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 1rem 0; }
.compare>div { background: var(--wash); padding: 1rem 1.2rem; }.compare span { font-size: .69rem; color: var(--muted); }.compare p { margin: .45rem 0 0; font-size: .85rem; }
.record-boundary { font-size: .73rem; color: var(--muted); padding-left: 1rem; border-left: 1px solid var(--rule); }
.eval-contribution { display: grid; grid-template-columns: 1fr 2fr; gap: 2rem; padding: 1.5rem 0; border-bottom: 1px solid var(--rule); margin-top: 1.2rem; }
.eval-contribution h2 { margin: 0; font-size: 1rem; }.eval-contribution p { margin: 0; font-size: .83rem; color: var(--muted); }
@keyframes arrive { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width:800px) {
 .project-heading { align-items: start; gap: 1.2rem; }.edition { max-width: 150px; font-size: .62rem; }
 .scene { gap: 2rem; grid-template-columns: .85fr 1.15fr; }.scene-copy h2 { font-size: 1.6rem; }
 .mock-workspace { grid-template-columns: 62px 1fr; }.mock-sidebar { padding: .4rem; }.fact-row { grid-template-columns: 5.6rem 1fr auto; gap: .4rem; }
 .source-card { padding: .75rem; }.document { padding: 1.15rem; }
}
@media (max-width:600px) {
 .site-header { padding-top: 1.3rem; }.header-links { gap: 1rem; font-size: .7rem; }.project-nav { padding-top: .9rem; }
 .project-heading { display: block; padding: 1.6rem 0 1.3rem; }.project-deck { font-size: .8rem; }.edition { display: flex; justify-content: space-between; text-align: left; max-width: none; margin-top: .8rem; }
 .step-nav button { padding: .7rem .2rem; gap: .05rem; flex-direction: column; font-size: .65rem; }.step-nav .step-number { font-size: .8rem; }
 .scene { display: flex; flex-direction: column; align-items: stretch; gap: 1.3rem; min-height: 0; padding: 1.4rem 0; }.scene-copy { display: block; }.scene-index { display: none; }.scene-copy h2 { font-size: 1.65rem; line-height: 1.45; }.scene-intro { font-size: .82rem; margin: .6rem 0 0; }.ownership { font-size: .72rem; margin-top: 1rem; padding-top: .7rem; }.ownership span { display: inline; margin-right: .6rem; }
 .mock-workspace { min-height: 177px; grid-template-columns: 72px 1fr; }.question-note { margin-top: 1rem; font-size: .73rem; }.art-caption { font-size: .61rem; }.source-card { min-height: 105px; }.source-explanation { min-height: 0; }.source-explanation p { font-size: .8rem; }
 .document { padding: 1rem 1.2rem; }.fact-row strong { font-size: .81rem; }.gates { gap: .4rem; font-size: .64rem; }.delivery-head .big-number { font-size: 4.5rem; }
 .story-controls { padding: .8rem 0; }.next-button { min-width: 104px; }.project-footer { font-size: .62rem; align-items: start; }.project-footer>span { max-width: 62%; }
 .review-lanes { gap: .6rem; }.review-lane { padding: .9rem .75rem; }.review-lane h2 { font-size: 1rem; }.review-lane p { font-size: .73rem; }
 .rule-bridge button { padding: .8rem; }.rule-bridge strong { font-size: .78rem; }.rule-bridge small { font-size: .65rem; }
 .review-route { gap: .7rem; font-size: .8rem; }.delivery-route { gap: .2rem; }.delivery-route button { font-size: .71rem; }.delivery-route small { font-size: .61rem; }
 .eval-record { padding-top: 1.8rem; }.section-heading { align-items: start; }.section-heading h2 { font-size: 1.25rem; }.section-heading span { text-align: right; font-size: .62rem; }
 .score-row div+div { padding-left: .8rem; }.score-row strong { font-size: 2rem; }.score-row span { font-size: .64rem; }.record-details summary { font-size: .88rem; gap: .7rem; }.record-content { padding-left: 0; font-size: .8rem; }.compare { gap: .6rem; }.compare>div { padding: .8rem; }.compare p { font-size: .77rem; }
 .eval-contribution { display: block; }.eval-contribution h2 { margin-bottom: .6rem; }

}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior: auto; }.scene-enter { animation: none; }* { transition: none !important; } }

.story-controls:has(#replay) .scene-count { display: none; }
@media(max-width:600px) { .story-controls { gap: .6rem; }.story-controls .quiet-button { font-size: .7rem; }.story-controls .next-button { font-size: .73rem; min-width: 104px; padding-inline: .7rem; } }
/* Scene changes move screen-reader focus to the heading; controls retain visible focus. */
.scene-copy h2:focus { outline: none; }
/* Inline explanations and diagrams replace all evidence popups. */
.scene { align-items: start; min-height: 456px; }
.scene-copy { min-height: 340px; }
.scene-art figure { margin: 0; }
.note-label,.source-map figcaption,.inline-flow figcaption { font-size: .65rem; color: var(--muted); letter-spacing: .07em; }
.observation-note { border-left: 2px solid var(--sage); padding: .2rem 0 .2rem 1rem; margin-top: 1.15rem; }
.observation-note p { margin: .4rem 0 0; font-size: .84rem; line-height: 1.85; }
.takeaway { font-size: .86rem; margin: .8rem 0 0; color: var(--sage); }
.source-map figcaption { margin-bottom: .8rem; }
.source-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }
.source-node { position: relative; border: 1px solid var(--rule); padding: 1rem 1.1rem; }
.source-node .node-index { color: var(--muted); font-size: .65rem; font-family: var(--body-en); }
.source-node h3 { font-size: 1rem; margin: .2rem 0 .35rem; }
.source-node p { font-size: .8rem; color: var(--muted); margin: 0; line-height: 1.8; }
.merge-lines { display: block; width: 100%; height: 35px; fill: none; stroke: #8c8e83; stroke-width: 1; }
.diagram-node { border: 1px solid var(--rule); text-align: center; padding: .85rem 1rem; }
.diagram-node strong { font-size: .86rem; font-weight: 400; display: block; }
.ai-node { background: var(--wash); }.ai-node .note-label { display: block; margin-bottom: .25rem; }
.result-node { border-color: var(--sage); color: var(--sage); }
.diagram-arrow { display: block; text-align: center; line-height: 1.8; color: var(--muted); }
.fact-row { grid-template-columns: 6.3rem 1fr; cursor: default; }
.fact-row:hover { background: transparent; }
.fact-row small { font-size: .75rem; line-height: 1.8; }
.inline-flow { margin: 1.3rem 0 0 !important; }
.inline-flow figcaption { margin-bottom: .7rem; }
.inline-flow ol { list-style: none; margin: 0; padding: 0; display: flex; align-items: stretch; gap: 1.2rem; }
.inline-flow li { position: relative; flex: 1; min-width: 0; border: 1px solid var(--rule); padding: .7rem .75rem; display: flex; flex-direction: column; background: #fafaf54d; }
.inline-flow li:not(:last-child)::after { content: '→'; position: absolute; right: -1.06rem; top: 50%; transform: translateY(-50%); font-size: .85rem; color: var(--muted); }
.inline-flow .flow-order { font-family: var(--body-en); color: var(--muted); font-size: .67rem; }
.inline-flow strong { font-size: .78rem; font-weight: 400; margin: .15rem 0; }
.inline-flow small { color: var(--muted); font-size: .65rem; line-height: 1.6; }
.writing-flow { margin-top: 0 !important; margin-bottom: 1.1rem !important; }
.writing-flow li { justify-content: center; }.writing-flow .flow-order { display: none; }
.delivery-flow { margin-top: 0 !important; margin-bottom: 1.4rem !important; }
.excerpt { cursor: auto; }.excerpt:hover u { background: none; }
.excerpt-label { letter-spacing: .04em; }
.correction-teaser small { color: var(--muted); font-size: .7rem; }
.correction-teaser p { line-height: 1.85; }
.project-footer>span:last-child { text-align: right; }
.flow-heading { align-items: baseline; }
.flow-heading h2 { color: var(--ink); font-size: 1.25rem; margin: 0; }
.quality-map { margin: 1.2rem 0 0; }
.draft-node { max-width: 440px; margin: 0 auto; background: var(--wash); }
.review-lane { cursor: default; background: transparent; }.review-lane:hover { background: transparent; }
.review-lane h3 { font-size: 1.1rem; margin: .4rem 0 .6rem; }
.review-lane p { line-height: 1.9; }
.decision-node { max-width: 360px; margin: 0 auto; border-radius: 50%; padding: 1rem 1.2rem; border-color: var(--sage); }
.verdict-branches { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.25rem; padding-top: 1.6rem; position: relative; }
.verdict-branches::before { content: ''; position: absolute; top: .8rem; left: 16%; right: 16%; border-top: 1px solid var(--rule); }
.verdict-branches::after { content: ''; position: absolute; top: 0; height: .8rem; left: 50%; border-left: 1px solid var(--rule); }
.verdict { border: 1px solid var(--rule); padding: 1rem 1.1rem; position: relative; }
.verdict::before { content: '↓'; position: absolute; top: -1.3rem; left: 50%; transform: translateX(-50%); line-height: 1; color: var(--muted); font-size: 1rem; }
.branch-label { display: block; font-size: .67rem; color: var(--muted); margin-bottom: .4rem; }
.verdict strong { font-weight: 400; font-size: 1rem; }
.verdict p { font-size: .78rem; line-height: 1.8; color: var(--muted); margin: .5rem 0 0; }
.verdict.stop { border-top-color: var(--warm); }.verdict.stop strong { color: var(--warm); }.verdict.pass { border-top-color: var(--sage); }.verdict.pass strong { color: var(--sage); }
.loop-label { display: block; font-size: .7rem; margin-top: .65rem; border-top: 1px dashed var(--rule); padding-top: .5rem; color: var(--sage); }
.quality-map>figcaption { margin-top: 1rem; font-size: .73rem; color: var(--muted); }
.eval-section { padding: 2rem 0; border-bottom: 1px solid var(--rule); }
.eval-section .section-heading h2 { font-size: 1.35rem; }
.reviewer-diagram { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1.5rem; }
.reviewer-pair { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; text-align: center; }
.reviewer-pair>div { border: 1px solid var(--rule); padding: .65rem; font-size: .9rem; }
.reviewer-pair>small { grid-column: 1/-1; color: var(--muted); font-size: .68rem; }
.side-arrow { color: var(--muted); }
.third-reviewer { border: 1px solid var(--rule); padding: .9rem 1rem; }
.third-reviewer strong { display: block; font-weight: 400; font-size: .93rem; margin-top: .4rem; }
.plain-note { font-size: .82rem; color: var(--muted); line-height: 1.9; margin: 1rem 0 0; }
.correction-flow li { text-align: center; }.correction-flow .flow-order { display: none; }
.eval-contribution { margin-top: 0; border: 0; }
@media (max-width:800px) {
 .scene { grid-template-columns: .85fr 1.3fr; gap: 2rem; }
 .source-node { padding: .8rem; }.source-node h3 { font-size: .9rem; }.source-node p { font-size: .74rem; }
 .inline-flow ol { gap: 1rem; }.inline-flow li { padding: .6rem .5rem; }.inline-flow li:not(:last-child)::after { right: -.9rem; }
 .checkpoint-flow strong { font-size: .71rem; }.checkpoint-flow small { font-size: .62rem; }
 .verdict-branches { gap: .8rem; }.verdict { padding: .8rem; }.verdict strong { font-size: .89rem; }
}
@media (max-width:600px) {
 .scene-copy { min-height: 0; }
 .fact-row { grid-template-columns: 5.6rem 1fr; }
 .fact-row small { font-size: .72rem; }
 .observation-note p { font-size: .8rem; }.takeaway { font-size: .8rem; }
 .source-node h3 { font-size: .9rem; }.source-node p { font-size: .76rem; }
 .inline-flow ol { flex-direction: column; gap: 1.25rem; }
 .inline-flow li { padding: .6rem .85rem; display: grid; grid-template-columns: 1.5rem 1fr; column-gap: .5rem; align-items: baseline; }
 .inline-flow .flow-order { grid-row: 1/3; }.inline-flow strong { font-size: .8rem; }.inline-flow small { grid-column: 2; font-size: .7rem; }
 .inline-flow li:not(:last-child)::after { content: '↓'; top: auto; bottom: -1.22rem; right: auto; left: 50%; transform: translateX(-50%); line-height: 1.2; }
 .writing-flow ol { flex-direction: row; gap: 1rem; }.writing-flow li { display: flex; padding: .5rem; text-align: center; }.writing-flow strong { font-size: .69rem; }.writing-flow li:not(:last-child)::after { content: '→'; bottom: auto; top: 50%; left: auto; right: -.87rem; transform: translateY(-50%); }
 .flow-heading { display: block; }.flow-heading h2 { font-size: 1.15rem; }.flow-heading>span { display: block; margin-top: .3rem; }
 .review-lane h3 { font-size: .95rem; }.review-lane p { font-size: .75rem; }.review-lane { padding: .85rem; }
 .verdict-branches { grid-template-columns: 1fr; gap: .65rem; padding: 1rem 0 0 1rem; }
 .verdict-branches::before { top: 0; bottom: 2.7rem; left: .1rem; right: auto; border-top: 0; border-left: 1px solid var(--rule); }
 .verdict-branches::after { top: 0; left: .1rem; width: 50%; height: 0; border-left: 0; border-top: 1px solid var(--rule); }
 .verdict { padding: .85rem 1rem; }.verdict::before { content: '→'; left: -.95rem; top: 1.2rem; transform: none; font-size: .8rem; }.verdict strong { font-size: .95rem; }
 .reviewer-diagram { grid-template-columns: 1fr; gap: .6rem; }.side-arrow { font-size: 0; text-align: center; }.side-arrow::after { content: '↓'; font-size: 1rem; }
 .third-reviewer { text-align: center; }.plain-note { font-size: .79rem; }
 .eval-section .section-heading { display: block; }.eval-section .section-heading h2 { font-size: 1.2rem; margin-bottom: .7rem; }.eval-section .section-heading>span { display: block; text-align: left; margin-bottom: .7rem; }
 .correction-flow li { display: block; }
 .project-footer>span { max-width: 65%; }.project-footer>span:last-child { max-width: 35%; }
}
/* Project context precedes the feature example; it is always visible, not another screen. */
.project-heading>div:first-child { min-width: 0; }
.project-heading h1 { text-wrap: balance; }
.project-brief { display: block; border-top: 1px solid var(--rule); padding: 1.8rem 0 1.2rem; }
.project-brief h2 { font-size: 1.05rem; margin: 0 0 .6rem; }
.project-brief p { font-size: .85rem; color: var(--muted); line-height: 1.95; margin: 0; }
.case-introduction { padding: 1.5rem 0 1.2rem; border-top: 1px solid var(--rule); }
.case-introduction .eyebrow { display: block; margin: 0 0 .35rem; }
.case-introduction p { font-size: .84rem; margin: 0; }
@media(max-width:600px) {
 .project-heading h1 { font-size: 1.65rem; }
 .project-brief { padding-top: 1.3rem; }
 .project-brief h2 { font-size: 1rem; }.project-brief p { font-size: .8rem; }
 .case-introduction { padding: 1.2rem 0 1rem; }.case-introduction p { font-size: .8rem; }
}
/* The batch case shows the knowledge delta, source excerpts and business rules. */
.early-manual { border: 1px solid var(--rule); background: var(--panel); padding: 1.5rem 1.7rem; }
.early-manual blockquote { margin: 1rem 0 1.5rem; padding: 0 0 1rem; border-bottom: 1px solid var(--rule); font-size: 1.35rem; line-height: 1.8; }
.early-manual>p { font-size: .78rem; color: var(--muted); margin: 0; }
.open-questions { margin: .5rem 0 0; padding-left: 1.2rem; font-size: .85rem; }
.open-questions li { padding: .4rem 0; }
.source-node .logic-sketch { font-size: .78rem; line-height: 1.7; padding: .5rem 0; margin-bottom: .35rem; color: var(--sage); }
.business-rule-map figcaption { margin-bottom: .9rem; }
.input-pair { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.input-pair>div { text-align: center; padding: .75rem; border: 1px solid var(--rule); font-size: .78rem; }
.result-branches { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .6rem; margin-top: .7rem; }
.result-branches span { font-size: .8rem; text-align: center; border: 1px solid var(--rule); padding: .6rem .3rem; }
.result-branches span:first-child { color: var(--sage); border-color: var(--sage); }.result-branches span:last-child { color: var(--warm); }
.notification-rule { border: 1px solid var(--sage); padding: 1rem; }
.notification-rule>strong { display: block; font-size: .93rem; font-weight: 400; margin-top: .3rem; }
.notification-branches { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; border-top: 1px solid var(--rule); margin-top: .7rem; }
.notification-branches p { font-size: .75rem; margin: .7rem 0 0; }.notification-branches b { font-weight: 400; color: var(--sage); }
.excerpt blockquote { margin: 0; font-size: .86rem; line-height: 1.9; }
.manual-gloss { margin: .7rem 0 0; font-size: .67rem; color: var(--muted); }
.delivery-proof { padding: 1.3rem; background: var(--wash); }
.delivery-proof h3 { margin: .5rem 0; font-size: 1.15rem; }.delivery-proof p { margin: 0; font-size: .84rem; color: var(--muted); }
.quality-map.inline-flow { margin-top: 1rem !important; }
@media(max-width:600px) {
 .early-manual { padding: 1rem 1.1rem; }.early-manual blockquote { font-size: 1.15rem; }
 .open-questions { font-size: .8rem; }.source-inputs { grid-template-columns: 1fr; }.source-map>.merge-lines { display: none; }.source-map>.ai-node { margin-top: .75rem; }
 .notification-branches { grid-template-columns: 1fr; gap: 0; }
 .excerpt blockquote { font-size: .8rem; }.quality-map.inline-flow li { display: flex; }
 .compare { grid-template-columns: 1fr; }
}

.case-introduction .context-note { font-size: .68rem; color: var(--muted); margin-top: .55rem; line-height: 1.8; }

/* Five stages carry one knowledge task from questions to checked publication. */
.task-brief { border: 1px solid var(--rule); padding: 1.25rem 1.5rem; background: var(--panel); }
.task-brief h3 { font-size: 1.15rem; margin: .6rem 0 1rem; }
.task-questions { list-style: none; margin: 0; padding: 0; }
.task-questions li { border-top: 1px solid var(--rule); padding: .8rem 0; }
.task-questions strong { font-weight: 400; font-size: .9rem; }
.task-questions p { font-size: .78rem; line-height: 1.8; color: var(--muted); margin: .35rem 0 0; }
.task-brief+.writing-flow { margin-top: 1rem !important; margin-bottom: 0 !important; }
.rule-list { border-top: 1px solid var(--rule); }
.rule-item { display: grid; grid-template-columns: 2rem 1fr; gap: .8rem; padding: 1.4rem 0; border-bottom: 1px solid var(--rule); }
.rule-number { font-family: var(--body-en); font-size: 1.35rem; color: var(--sage); }
.rule-item h3 { font-size: 1.05rem; margin: 0 0 .45rem; }
.rule-item p { font-size: .82rem; color: var(--muted); margin: 0; line-height: 1.9; }
.delivery-proof:has(.delivery-table) { background: transparent; padding: 0; }
.delivery-proof>.note-label { margin: 0 0 .9rem; font-size: .65rem; }
.delivery-table-head,.delivery-row { display: grid; grid-template-columns: .75fr 2fr .75fr; gap: 1rem; }
.delivery-table-head { font-size: .67rem; color: var(--muted); border-bottom: 1px solid var(--rule); padding: .65rem 0; }
.delivery-row { padding: 1rem 0; border-bottom: 1px solid var(--rule); align-items: start; }
.delivery-row strong { font-size: .78rem; font-weight: 400; }
.delivery-row p { font-size: .77rem; line-height: 1.9; margin: 0; color: var(--ink); }
.delivery-match { font-size: .72rem; color: var(--sage); }
@media(max-width:600px) {
 .task-brief { padding: 1rem; }.task-brief h3 { font-size: 1rem; }
 .rule-item { grid-template-columns: 1.5rem 1fr; gap: .6rem; padding: 1rem 0; }.rule-item h3 { font-size: .95rem; }.rule-item p { font-size: .78rem; }
 .delivery-table-head { display: none; }.delivery-row { grid-template-columns: 1fr; gap: .5rem; }
 .delivery-row strong { font-size: .9rem; }.delivery-row p { font-size: .8rem; }.delivery-match { font-size: .74rem; }
 .delivery-proof .manual-gloss { font-size: .68rem; }
}
