@media print {
  @page { margin: 15mm; }
  html, body { background: #fff; color: #000; }
  body { font-size: 12pt; line-height: 1.35; }
  .mast, .tabs, .plate, .skip, .foot, .margin, .print-act, .next { display: none !important; }
  .w { width: 100%; }
  .intro { display: block; padding: 0 0 16pt; }
  .intro .tag { font-size: 10pt; margin: 0 0 8pt; }
  .intro h1 { font-size: 28pt; max-width: none; margin-bottom: 10pt; }
  .intro > div > p:not(.tag) { font-size: 12pt; }
  .read { display: block; }
  .prose { max-width: none; }
  .prose h2, .prose .chapter-heading { font-size: 17pt; margin-bottom: 6pt; break-after: avoid; }
  .prose section + section, .prose section > section { margin-top: 18pt; }
  .prose p + p { margin-top: 8pt; }
  .ck label { min-height: 0; padding: 7pt 0; gap: 10pt; break-inside: avoid; }
  .ck input { appearance: none; width: 13pt; height: 13pt; border: 1pt solid #333; margin-top: 2pt; }
  .ck input:checked::after { content: "✓"; display: block; font-size: 13pt; line-height: 1; }
  .ck label span { padding: 0; }
  .notes { break-inside: avoid; }
  .note-lines { height: 70pt; }
  a { color: #000; }
}
