@page { margin: 16mm; }
body { background: #fff; font-size: 11pt; }
.topbar, .foot, .no-print, .print-head, .back, .btn, .stage-foot, .cta-panel, .cta-stuck, .live, .plan-actions, .fine { display: none !important; }
main { padding: 0; max-width: none; }
.print-cover { page-break-after: always; padding-top: 30vh; }
.print-stage, .print-plan { page-break-before: always; border: 0; margin: 0 auto; padding: 0; }
.exercises, .card, .case { border: 1px solid #ccc; break-inside: avoid; }
.note, .case { break-inside: avoid; }
/* Answers print as typed; empty fields print as lines to write on */
input:placeholder-shown, textarea:placeholder-shown { display: none; }
input:placeholder-shown + .print-line, textarea:placeholder-shown + .print-line { display: block; border-bottom: 1px solid #999; height: 26px; }
.print-line.tall { height: 72px !important; }
input, textarea, select { border: 0; padding: 2px 0; font-size: 11pt; resize: none; }
.task-table { min-width: 0; }
.task-table input, .task-table select { border-bottom: 1px solid #999; border-radius: 0; }
.task-table input::placeholder { color: transparent; }
pre.prompt { font-size: 9.5pt; }
a { color: inherit; text-decoration: none; }
.task-table input:placeholder-shown { display: block; }
