/* Print: only the storybook, printables or lesson plan; everything else is hidden. */
@page { margin: 0; }
html, body { background: #fff !important; }
body { display: block; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.top, .foot, .no-print, .book-bar, .print-bar, .toast, dialog { display: none !important; }

/* Storybook: A5 pages. A locked (free) book prints nothing. */
.book { display: block; padding: 0; gap: 0; }
.book .page { width: 148mm; height: 210mm; aspect-ratio: auto; box-shadow: none; border-radius: 0; break-after: page; margin: 0; }
.book.locked { display: none !important; }

/* Printables: one sheet per page. */
.sheets { display: block; padding: 0; }
.sheet { box-shadow: none; width: auto !important; break-after: page; margin: 0; height: 296mm; overflow: hidden; }
.paper-letter .sheet { height: 278mm; }
.sheet:last-child { break-after: auto; }
.card-sheet { align-content: start; }
.pcard, .strip, .cert { break-inside: avoid; }

/* Lesson plans: normal flowing pages with margins. */
.lesson { padding: 0 !important; max-width: none !important; font-size: 10.5pt; }
.lesson h1 { font-size: 20pt; }
.lesson h2 { font-size: 13pt; break-after: avoid; }
.lesson-steps li { break-inside: avoid; }
.rubric { font-size: 8.5pt; }
