/* The 3-Day Kit Planner — print: A4 portrait, 15 mm margins, black and white */
@page { size: A4 portrait; margin: 15mm; }

html, html.ts-large, html.ts-xl { font-size: 10.5pt !important; }
html.lowbattery { --bg: #fff; --surface: #fff; --text: #000; --muted: #000; --border: #000; }
* { color: #000 !important; background: transparent !important; box-shadow: none !important; text-shadow: none !important; }
body { background: #fff !important; font-size: 10.5pt; line-height: 1.35; }
a { text-decoration: none; }

/* Never print the site chrome */
.sos-bar, .site-header, .site-footer, .skip-link, .sample-banner, .no-print, .btn, .btn-row, .clear-control, .tabs, .chip, .filter, .crumb, .tick input, .step-btn { display: none !important; }

/* A small line with the book title when printing a normal page */
.print-book-line { display: block !important; font-size: 8pt; border-bottom: 0.3mm solid #000; padding-bottom: 1mm; margin-bottom: 4mm; }
main { padding: 0 !important; }
.wrap { max-width: none; padding: 0; }
.panel, .notice, .hero, .totals, .step, .never-box, .tile, .qcard-tile { border-color: #000 !important; break-inside: avoid; }
.never-box { border-width: 1mm !important; }
[role="tabpanel"][hidden] { display: block !important; }
.page-title { font-size: 20pt; }
.title-icon { display: none; }

/* Printing a chosen document: only #print-root */
body.has-print > *:not(#print-root) { display: none !important; }
body.has-print #print-root { display: block !important; }

.sheet { break-after: page; page-break-after: always; font-family: "Barlow", Arial, sans-serif; }
.sheet:last-child { break-after: auto; page-break-after: auto; }
.sheet-line { font-size: 7.5pt; margin: 0 0 2mm; border-bottom: 0.3mm solid #000; padding-bottom: 0.8mm; }
.sheet h2 { font-family: "Barlow Condensed", "Arial Narrow", Arial, sans-serif; font-weight: 700; text-transform: uppercase; font-size: 17pt; margin: 0 0 1.5mm; }
.sheet h3 { font-size: 12pt; margin: 2mm 0 1mm; }
.sheet-intro { font-size: 9.5pt; margin: 0 0 3mm; }
.sheet-table { width: 100%; border-collapse: collapse; margin: 0 0 3mm; }
.sheet-table th, .sheet-table td { border: 0.3mm solid #000 !important; padding: 1mm 1.6mm; text-align: left; vertical-align: top; font-size: 9.5pt; }
.sheet-table thead th { background: #E6E6E6 !important; font-family: "Barlow Condensed", "Arial Narrow", Arial, sans-serif; font-weight: 700; font-size: 10pt; }
.sheet-table .group-row th { background: #F0F0F0 !important; font-family: "Barlow Condensed", "Arial Narrow", Arial, sans-serif; text-transform: uppercase; font-size: 9.5pt; padding: 0.6mm 1.6mm; }
.sheet-table .tick-cell { width: 9mm; text-align: center; }
.sheet-table tr { break-inside: avoid; page-break-inside: avoid; }
.sheet-table.kv th { width: 42%; font-weight: 600; }
.sheet-table.compact th, .sheet-table.compact td { padding: 0.8mm 1.6mm; font-size: 9pt; }
.sheet-table.kv td { height: 7mm; }
.sheet-table.kv td.tall { height: 16mm; }
.sheet-table.grid td { height: 6.5mm; }
.print-note { display: block; font-size: 8pt; font-weight: 500; }
* { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

/* One-page sheets: rows tall enough to write in, short enough to fit */
.sheet-one tbody td { height: 8mm; }
.sheet-one.sheet-kit-checklist tbody td { height: 5.4mm; padding-top: 0.5mm; padding-bottom: 0.5mm; font-size: 9pt; }
.sheet-one.sheet-kit-checklist .group-row th { padding-top: 0.3mm; padding-bottom: 0.3mm; font-size: 8.5pt; }
.sheet-one.sheet-food-water-tracker tbody td { height: 12mm; }
.sheet-one.sheet-monthly-check tbody td { height: 15mm; }
.sheet-one.sheet-medicines tbody td { height: 13mm; }
.sheet-one.sheet-contacts tbody td { height: 10mm; }
.sheet-one.sheet-household-plan tbody td { height: 13mm; }
.sheet-one.sheet-grab-bag tbody td { height: 9mm; }
.write-box { border: 0.3mm solid #000 !important; min-height: 10mm; padding: 1mm; }
.write-box.tall { min-height: 28mm; }
.sheet-field-label { font-weight: 600; margin: 2mm 0 1mm; font-size: 10pt; }
.owner-line { margin: 3mm 0 1.5mm; font-size: 11pt; }
.write-line { display: inline-block; min-width: 60%; border-bottom: 0.3mm solid #000; }
.print-bag { break-inside: avoid; margin-bottom: 4mm; }
.print-ticks { list-style: none; padding: 0; columns: 2; column-gap: 8mm; margin: 1mm 0 0; font-size: 9.5pt; }
.print-ticks li { margin-bottom: 1.2mm; break-inside: avoid; }
.print-ticks .box { display: inline-block; width: 4mm; height: 4mm; border: 0.3mm solid #000; margin-right: 2mm; text-align: center; line-height: 4mm; vertical-align: middle; }

/* Quick card printout */
.card-print .sec-label { font-size: 13pt; margin: 3mm 0 1.5mm; }
.card-print .steps { list-style: none; padding: 0; }
.card-print .step { border: 0.3mm solid #000 !important; padding: 1.5mm 2mm; margin-bottom: 1.5mm; display: flex; gap: 2mm; }
.card-print .step-num { width: 6mm; height: 6mm; font-size: 10pt; border: 0.3mm solid #000; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.card-print .tick { display: none !important; }
.card-print .step-text { font-size: 10pt; }
.card-print .never-box { border: 1mm solid #000 !important; padding: 1mm 3mm 2mm; margin: 3mm 0; }
.card-print .call-list { list-style: none; padding: 0; }
.card-print .call-list li { margin-bottom: 1mm; }
.card-print .source-note { font-size: 8.5pt; }
.sheet-table.grid th[scope="row"] { width: 42%; font-weight: 600; }
