/* Week 09 content-specific diagrams only. Shared hierarchy: /assets/lesson-handout.css. */
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-poster-preview { margin: 28px 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
.co-poster-preview > a { display: block; max-width: 580px; margin-inline: auto; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-poster-preview img { display: block; width: 100%; height: auto; aspect-ratio: 10 / 13; border: 1px solid var(--line); border-radius: 0; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-poster-preview figcaption { display: grid; gap: 7px; padding-top: 14px; color: var(--muted); text-align: left; font-size: 13px; line-height: 1.8; }
.co-poster-preview figcaption strong { color: var(--ink); }
.co-poster-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 600px) { .co-poster-comparison { grid-template-columns: 1fr; gap: 0; } }
@media print { .co-poster-preview { break-inside: avoid; } }
.co-hero-diagram { margin: 0; padding: 26px; border: 1px solid var(--line-strong); background: var(--paper); }
.co-hero-diagram figcaption { font-size: 13px; color: var(--muted); margin: 0 0 20px; }
.co-hero-diagram ol { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; list-style: none; padding: 0; margin: 0; }
.co-hero-diagram li { border-top: 1px solid var(--line-strong); padding-top: 15px; }
.co-hero-diagram span { font: 12px/1.6 var(--mono); color: var(--link); display: block; margin-bottom: 8px; }
.co-hero-diagram strong { font-size: 18px; }
.co-hero-diagram p { font-size: 13px; margin: 8px 0 0; }
.co-workflow-chart { margin: 28px 0; padding: 24px 0; border-block: 1px solid var(--line-strong); }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual { margin: 28px 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual > a { display: block; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; border: 1px solid var(--line); border-radius: 0; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual figcaption { display: grid; gap: 7px; padding-top: 14px; text-align: left; line-height: 1.75; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual figcaption strong { color: var(--ink); font-size: 14px; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual figcaption span { color: var(--muted); font-size: 13px; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-lesson-visual figcaption small { color: var(--muted); font-size: 11px; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .handout-flow.co-readable-flow figcaption,
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-branch-diagram figcaption { padding: 0; text-align: left; color: var(--ink); font-size: 13px; font-weight: 650; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .handout-flow.co-readable-flow ol { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.co-readable-flow li { position: relative; }
.co-readable-flow li:not(:last-child)::after { content: "→"; position: absolute; right: -23px; top: 0; color: var(--accent-ink); }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-flow-followup { margin: 20px 0 0; color: var(--muted); font-size: 13px; line-height: 1.8; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-branch-diagram { margin: 28px 0; padding: 18px 0; border: 0; border-block: 1px solid var(--line-strong); background: transparent; }
.co-branch-root { display: grid; gap: 7px; width: fit-content; margin: 18px auto 34px; padding: 12px 20px; border: 1px solid var(--line-strong); background: var(--surface); text-align: center; }
.co-branch-root span { color: var(--muted); font-size: 12px; }
.co-branch-root strong { color: var(--ink); font-size: 15px; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-branches { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin: 0; padding: 0; list-style: none; }
.co-branches::before { content: ""; position: absolute; top: -17px; left: calc(25% - 7px); right: calc(25% - 7px); height: 1px; background: var(--line-strong); }
.co-branches::after { content: ""; position: absolute; left: 50%; top: -34px; height: 17px; border-left: 1px solid var(--line-strong); }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-branches li { position: relative; display: grid; align-content: start; gap: 9px; margin: 0; padding: 14px 0 0; border-top: 1px solid var(--line-strong); font-size: 13px; line-height: 1.75; }
.co-branches li::before { content: ""; position: absolute; left: 50%; top: -18px; height: 17px; border-left: 1px solid var(--line-strong); }
.co-branches strong { color: var(--accent-ink); font-size: 14px; }
.co-branches span { color: var(--muted); }
.co-branches b { color: var(--ink); font-weight: 550; }
.co-branches .co-branch-next { margin-top: 7px; font-size: 12px; }
.co-workflow-chart figcaption { display: grid; gap: 8px; margin-bottom: 24px; }
.co-workflow-chart figcaption strong { color: var(--ink); font-size: 18px; line-height: 1.6; }
.co-workflow-chart figcaption span { color: var(--muted); font-size: 12px; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-workflow-chart ul { list-style: none; margin: 0; padding: 0; }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-workflow-chart li { display: grid; grid-template-columns: 136px minmax(0, 1fr) 32px; align-items: center; gap: 12px; margin: 16px 0; font-size: 13px; }
.co-chart-track { display: block; height: 16px; border-left: 1px solid var(--line-strong); }
.co-chart-track > span { display: block; height: 100%; background: var(--accent-strong); }
.co-workflow-chart li strong { text-align: right; font-variant-numeric: tabular-nums; }
.co-chart-scale { display: flex; justify-content: space-between; margin: 12px 44px 20px 148px; font-size: 11px; color: var(--muted); }
body.teaching-document.lesson-handout[data-handout="v1"] .article .co-workflow-chart > p { margin: 20px 0 0; font-size: 12px; color: var(--muted); }
@media (max-width: 600px) {
  body.teaching-document.lesson-handout[data-handout="v1"] .article .handout-flow.co-readable-flow ol { grid-template-columns: 1fr; gap: 30px; }
  .co-readable-flow li:not(:last-child)::after { content: "↓"; top: auto; bottom: -26px; left: 0; right: auto; }
  .co-branch-root { margin-left: 0; margin-bottom: 0; text-align: left; }
  body.teaching-document.lesson-handout[data-handout="v1"] .article .co-branches { grid-template-columns: 1fr; gap: 22px; padding: 22px 0 0 20px; border-left: 1px solid var(--line-strong); }
  .co-branches::before, .co-branches::after { display: none; }
  body.teaching-document.lesson-handout[data-handout="v1"] .article .co-branches li { padding-top: 0; border-top: 0; }
  .co-branches li::before { top: 12px; left: -20px; width: 13px; height: 1px; border-left: 0; background: var(--line-strong); }
  .co-hero-diagram { padding: 20px; }
  .co-hero-diagram ol { gap: 18px; }
  .co-hero-diagram strong { font-size: 16px; }
  body.teaching-document.lesson-handout[data-handout="v1"] .article .co-workflow-chart li { grid-template-columns: 84px minmax(0, 1fr) 26px; gap: 8px; font-size: 12px; }
  .co-chart-scale { margin-left: 92px; margin-right: 34px; }
}
@media print {
  .co-readable-flow, .co-branch-diagram { break-inside: avoid; }
  .co-lesson-visual { break-inside: avoid; }
  .co-workflow-chart { break-inside: avoid; }
  .co-chart-track > span { background: #444; print-color-adjust: exact; }
}

/* Key-phrase highlight shared with weeks 5–8. Takeaway labels stay plain. */
body.teaching-document.lesson-handout[data-handout="v1"].week-09 :is(.article mark, .article :is(p, li) strong) {
  background: #ffe34a;
  color: #0d110e;
  padding: 0.05em 0.12em;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
body.teaching-document.lesson-handout[data-handout="v1"].week-09 .article :is(.handout-takeaway, figcaption) > strong,
body.teaching-document.lesson-handout[data-handout="v1"].week-09 .article :is(.handout-flow, .co-workflow-chart, .co-hero-diagram, .co-branch-diagram, .session-grid, .public-data-flow, .depth-panels) strong {
  background: transparent;
  padding: 0;
}
body.teaching-document.lesson-handout[data-handout="v1"].week-09 .article :is(mark, p strong, li strong) code {
  border-color: transparent;
  background: transparent;
  color: inherit;
}
