/* Print — reports and certificates (S10). Loaded with media="print". */
@page { size: A4; margin: 14mm; }
/* html carries the app's dark teal, and the page canvas takes its colour from the root element — not
   from body. Without this every printed sheet came out with a dark band down the side. */
html, body { background: #fff !important; }
body { color: #000; padding: 0 !important; font-size: 12pt; }
.topbar, .bottom-nav, .footer, .splash, .toast-region, .banner-slot, .no-print, .skip-link { display: none !important; }
.main { max-width: none; padding: 0; }
.card { box-shadow: none; border-color: #999; break-inside: avoid; }
.table-wrap { overflow: visible; border-color: #999; }
.table th, .table td { white-space: normal; border-color: #999; }
a { color: inherit; text-decoration: none; }
.print-only { display: block !important; }
.page-break { break-before: page; }
.tabs, .report-body > .card:not(.report), .form.no-print { display: none !important; }
.report { border: 0; padding: 0; }
.print-week { grid-template-columns: repeat(2, 1fr); }
.certificate { padding: 0; background: #fff; }
.cert-frame { min-height: 240mm; display: flex; flex-direction: column; justify-content: center; }
.grid-cell, .tile, .badge { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
