/* print.css -- paper. Linked with media="print", so a screen never waits for it and a printer gets it on top of seb.css, doc.css and report.css.
 * The documents (census, sample report, how scanning works, privacy, terms) print as ink on white: browsers leave backgrounds out by default, which
 * would turn this dark site's pale grey text into pale grey on white. The home page is an interactive instrument panel, not a document, so it prints
 * as it looks (dark, colours forced on) with its scroll-pinned stages released. On every page the chrome goes (menu, search, progress bar, rail,
 * watermark), the motion goes, blocks stay in one piece, and a link shows where it points. Nothing here changes how the site looks on a screen. */
@page{margin:14mm;}
html{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
body{overflow:visible;}

/* chrome that does nothing on paper */
.skip,.progress,.statusbar,.nav__links,.nav__search,.menu,.palette,.toast,.rail,.seb-watermark,.foot-doc__links,.rpt-cta-row,.dx{display:none !important;}
.site-header{position:static;}
.nav__brand{border-right:0;}
.is-dx{color:inherit !important;}

/* nothing animates and nothing waits for a scroll: every animation jumps to its end state, scroll reveals are open, pinned stages are released */
*,*::before,*::after{animation-duration:.001s !important;animation-delay:0s !important;animation-iteration-count:1 !important;animation-timeline:auto !important;transition:none !important;}
.scan-in{clip-path:none !important;}
.scan-in::after{display:none !important;}
#top,#map-track{height:auto !important;}
#hero-stage,#map-sticky{position:relative !important;top:auto !important;height:auto !important;overflow:visible !important;padding:24px 0 !important;}
#map-sticky{display:block !important;}

/* documents: ink on white */
:root:not(:has(#hero-stage)){
  --bg:#fff; --bg-2:#fff; --surface:#fff; --surface-2:#f3f3f3; --surface-hover:#fff;
  --border:#8f8f8f; --border-soft:#bdbdbd; --border-hair:#d6d6d6;
  --text:#111; --text-2:#222; --text-dim:#444; --text-faint:#555; --text-vfaint:#555;
  --accent:#a8481f; --accent-hover:#a8481f; --accent-light:#a8481f; --accent-lighter:#a8481f; --accent-dark-border:#d8b9a9; --accent-rgb:168,72,31;
  --good:#2e6b2e; --crit:#b4232f; --high:#b34a12; --med:#8a6a00; --low:#1f6f63;
  color-scheme:light; background:#fff; color:#111;
}
:root:not(:has(#hero-stage)) body{background:#fff;color:#111;}
:root:not(:has(#hero-stage)) .nav{border-bottom:2px solid #8f8f8f;}

/* documents: whole blocks, readable tables and code, and where a link goes */
h1,h2,h3{break-after:avoid;}
.doc-card,.doc-box,.doc blockquote,.rpt-card,.rpt-finding,.rpt-road,.rpt-chain,.rpt-sample-banner,.rpt-sevrows,tr,figure{break-inside:avoid;}
thead{display:table-header-group;}
.tablewrap,.rpt-tbl-wrap,.rpt-chain,.doc pre{overflow:visible;}
.doc table{min-width:0;}
.doc pre,.rpt-chain,.rpt-finding .rpt-ev{white-space:pre-wrap;}
.doc a:not([class]),.rpt-main a:not([class]){text-decoration:underline;text-decoration-color:#8f8f8f;}
.doc a[href^="http"]:not([class])::after,.rpt-main a[href^="http"]:not([class])::after{content:" (" attr(href) ")";font-size:.84em;color:#444;overflow-wrap:anywhere;}

/* the sample report: severity colours that read on white */
.rpt-p-crit,.rpt-c-crit{color:#b4232f;} .rpt-p-high,.rpt-c-high{color:#b34a12;} .rpt-p-med,.rpt-c-med{color:#8a6a00;} .rpt-p-low,.rpt-c-low{color:#1f6f63;}
.rpt-p-crit{border-color:#b4232f;} .rpt-p-high{border-color:#b34a12;} .rpt-p-med{border-color:#8a6a00;} .rpt-p-low{border-color:#1f6f63;}
.rpt-sample-banner{background:#fbf1ec;}
.rpt-sample-banner .rpt-stamp{background:none;color:#a8481f;border:1.5px solid #a8481f;}
