.reflection-opening,
.week-record,
.reflection-reading { max-width: 760px; margin: var(--s-home) auto 0; }
.reflection-main h2 { font-size: 24px; font-weight: 600; line-height: 1.28; letter-spacing: -0.015em; }
.reflection-opening p,
.week-record p,
.reflection-reading p,
.reflection-sheet p { font-size: var(--t-body); line-height: 1.72; color: var(--text-2); }
.reflection-main p + p { margin-top: 18px; }
.week-record > h2 { margin-bottom: var(--s-section); }
.week-note { border-top: 1px solid var(--hair-2); padding: 28px 0; }
.week-note h3 { font-size: var(--t-body); font-weight: 500; color: var(--text-2); }
.week-note blockquote,
.reading-step blockquote { margin: 16px 0 0; font-size: var(--t-body); line-height: 1.72; color: var(--text); }
.week-note .reading-note { margin-top: 16px; padding-left: 18px; border-left: 1px solid var(--hair-2); }
.reading-step + .reading-step,
.evidence-pair + .reading-step { margin-top: var(--s-home); }
.reading-step > p { margin-top: 18px; }
.reflection-main .claim-line,
.reflection-main .next-question { color: var(--text); font-size: 24px; line-height: 1.45; }
.evidence-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; margin-top: var(--s-home); }
.evidence-pair .reading-step { margin: 0; border-top: 1px solid var(--hair-2); padding-top: 24px; }
#revised-claim { border-left: 2px solid var(--text); padding-left: 24px; }
.reflection-sheet { display: grid; grid-template-columns: 1fr 0.85fr; gap: 48px; align-items: start; margin-top: calc(var(--s-home) * 1.5); }
.reflection-sheet p { margin-top: 18px; }
.reflection-sheet img { display: block; width: 100%; height: auto; }
.reflection-main a:focus-visible { outline: 2px solid var(--text); outline-offset: 5px; }
@media (max-width: 640px) {
  .evidence-pair, .reflection-sheet { grid-template-columns: 1fr; gap: 32px; }
  .reflection-main .claim-line, .reflection-main .next-question { font-size: 22px; }
  #revised-claim { padding-left: 16px; }
}
@media print {
  body { background: #fff; color: #111; }
  .nav, footer, .reflection-sheet img { display: none; }
  .editorial-main { padding: 0; }
  .reflection-main { --text: #111; --text-2: #333; --hair-2: #888; }
  .reflection-main .page-title, .reflection-main .page-intro { color: #111; }
  .week-note, .reading-step { break-inside: avoid; }
  .evidence-pair, .reflection-sheet { display: block; }
  .evidence-pair .reading-step + .reading-step { margin-top: 24px; }
}
