@page { size: A4; margin: 16mm 14mm 18mm; }
html { scroll-behavior: auto; }
body { background: #fff; color: #111; font-size: 10.5pt; line-height: 1.45; }
:root { --bg: #fff; --bg-subtle: #f4f4f4; --ink: #111; --ink-soft: #333; --muted: #666; --border: #bbb; --border-soft: #ddd; --accent: #8a1c15; --series-1: #2a5fa8; --track: #e6e6e6; }
.masthead, .print-btn, .section-nav, .skip, .site-footer, .report-links, .report-footer a { display: none !important; }
main { padding: 0; }
.report { max-width: none; }
.report-body { display: block; }
.report-header { border-bottom: 1px solid #000; }
.report-title { font-size: 26pt; }
.report-lede { font-size: 11.5pt; }
.headline-strip { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); }
.hn-value { font-size: 16pt; }
.report-section { page-break-before: always; break-before: page; border-bottom: 0; padding-top: 0; }
.report-section:first-of-type { page-break-before: auto; break-before: auto; }
.report-section h2 { font-size: 18pt; margin-bottom: 8pt; }
h3 { page-break-after: avoid; break-after: avoid-page; }
p, li { orphans: 3; widows: 3; }
.prose { max-width: none; }
.table-wrap { overflow: visible; }
table { min-width: 0; font-size: 8.5pt; page-break-inside: auto; }
tr, .profile, .src, .hn { page-break-inside: avoid; break-inside: avoid; }
thead { display: table-header-group; }
.chart, .fig { page-break-inside: avoid; break-inside: avoid; }
.chart text { fill: #333; }
.ev { border-color: #999; color: #333; font-size: 7pt; }
.ev-dot { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.c-fill, .c-cell, .c-dot, .meter-fill { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
a { text-decoration: none; color: inherit; }
.sources a::after { content: ' ' attr(href); font-size: 7.5pt; color: #555; word-break: break-all; }
.brief { border-left: 1px dashed #999; }
.page-index .report-row { page-break-inside: avoid; }
.hero { margin: 0 0 8pt; aspect-ratio: 16 / 6; max-height: 70mm; border-radius: 0; }
.hero-credit { color: #fff; }
.table-tools, .tip { display: none !important; }
details.profile { display: block; }
details.profile summary::before { content: ''; }
details.profile > * { display: block; }
.callout, .pull, .diagram, .tl-item { page-break-inside: avoid; break-inside: avoid; }
.callout { background: #f4f4f4; }
.node-rax, .row-rax td { background: #f1e0de; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.tile-fill, .c-pt, .c-price, .mini-bar span, .c-line, .c-mark, .tl-mark { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.page-summary .summary-grid { grid-template-columns: 1fr 1fr; gap: 8pt; }
.page-summary .report-section { page-break-before: auto; }

.pl-dot, .pl-range, .pos-n, .c-area { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.growth-n2, .growth-n3 { grid-template-columns: 1fr 1fr !important; }
.pos-wrap { grid-template-columns: 1fr 1fr !important; }

.fig img { max-height: 175mm; width: auto; max-width: 100%; margin: 0 auto; }
.fig figcaption { page-break-before: avoid; break-before: avoid; }
/* Trailing margins at the end of a section spill onto a new page before the next forced break. */
.report-section { padding-bottom: 0 !important; margin-bottom: 0 !important; }
.report-section > :last-child, .data-blocks > :last-child, .data-blocks > :last-child > :last-child, .prose > :last-child { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.table-wrap { margin-bottom: 6pt; border-bottom: 0; }
