[data-role="page-body"] {
  width: min(100% - 4rem, 1152px);
  margin: 0 auto;
  padding-bottom: 4rem;
}
[data-role="page-body"] > * + * { margin-top: 3rem; }
[data-role="reading"], [data-role="takeaway"] { max-width: var(--reading); }
[data-role="reading"] > * + *, [data-role="takeaway"] > * + * { margin-top: 1.25rem; }
[data-role="reading"] h2, [data-role="takeaway"] h2 { margin-bottom: var(--space); }
[data-role="reading-band"] { padding: var(--space); background: var(--warm); }
[data-role="reading-band"] > * { max-width: var(--reading); }
[data-role="reading-band"] > * + * { margin-top: 1.25rem; }
[data-role="takeaway"] { border-left: 8px solid var(--red); padding-left: 1.5rem; }
[data-role="comparison-section"] > h2 { max-width: 24ch; margin-bottom: var(--space); }
[data-role="comparison"] { border-top: 2px solid var(--ink); }
[data-role="comparison-row"] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2.6fr);
  gap: var(--space);
  padding: var(--space);
  border-bottom: 1px solid var(--ink);
}
[data-role="comparison-row"]:nth-child(odd) { background: var(--warm); }
[data-role="comparison-row"]:nth-child(even) { background: var(--paper); }
[data-role="row-label"] { line-height: 1.3; max-width: 17ch; }
[data-role="comparison-row"] > div { min-width: 0; max-width: var(--reading); }
[data-role="comparison-row"] h3 { margin-bottom: 1rem; }
[data-role="comparison-section"] > [data-role="caption"] { margin-top: 1rem; max-width: var(--reading); }
[data-role="steps"] { list-style: none; padding: 0; border-top: 2px solid var(--ink); }
[data-role="steps"] li { padding: 1.5rem 0; border-bottom: 1px solid var(--ink); }
[data-role="steps"] li > h3 { margin-bottom: 0.75rem; }
[data-role="steps"] li > h3::before { content: "→ "; color: var(--red); }
[data-role="source-group"] > h2 { margin-bottom: var(--space); max-width: 24ch; }
[data-role="source-entry"] {
  border-top: 1px solid var(--ink);
  padding: var(--space) 0;
  max-width: var(--reading);
}
[data-role="source-entry"] > * + * { margin-top: 1rem; }
[data-role="source-label"] { max-width: 56ch; }
[data-role="source-link"] { border-bottom: 1px solid var(--red); text-decoration: none; }
[data-role="page-body"] > [data-role="atmosphere"] { width: 100%; max-width: 900px; }

@media (max-width: 760px) {
  [data-role="page-body"] { width: calc(100% - 2rem); padding-bottom: var(--space); }
  [data-role="page-body"] > * + * { margin-top: var(--space); }
  [data-role="comparison-row"] { grid-template-columns: 1fr; gap: 1rem; padding: 1.5rem 1rem; }
  [data-role="row-label"] { max-width: none; color: var(--red); }
  [data-role="reading-band"] { padding: 1.5rem 1rem; }
  [data-role="source-label"] { overflow-wrap: anywhere; }
}
