:root { color-scheme: light; font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height: 1.5; --bg:#f4f8fa; --surface:#fff; --ink:#17252f; --muted:#526875; --border:#c8d5dc; --accent:#075985; }
* { box-sizing: border-box; }
html { background:var(--bg); color:var(--ink); }
body { margin:0; overflow-wrap:anywhere; }
a { color:var(--accent); }
a:focus-visible,summary:focus-visible,button:focus-visible,select:focus-visible { outline:3px solid #f59e0b; outline-offset:2px; }
.skip-link { left:.75rem; position:absolute; top:-5rem; z-index:2; }
.skip-link:focus { background:var(--surface); padding:.6rem; top:.75rem; }
.report-shell { margin-inline:auto; max-width:72rem; padding:clamp(1rem,3vw,2rem); }
.report-header,.report-section { background:var(--surface); border:1px solid var(--border); border-radius:.75rem; margin-block:1rem; padding:clamp(1rem,2vw,1.5rem); }
.report-header h1,.report-section h2,.report-subsection h3 { margin-block-start:0; }
.report-description,.report-source-note,.report-fact-date,.report-fact-meta,.report-status { color:var(--muted); }
.report-control,.report-load,.report-history-nav button,select { min-height:44px; padding:.55rem .9rem; }
.report-map svg { display:block; fill:#8bc2d6; max-height:22rem; width:100%; }
.report-map figure { margin:0; }
.report-map figcaption { color:var(--muted); margin-block-start:.5rem; }
.report-facts,.report-loaded-facts { display:grid; gap:.65rem 1rem; grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr); margin:0; }
.report-fact { display:contents; }
.report-facts dt,.report-loaded-facts dt { font-weight:650; }
.report-facts dd,.report-loaded-facts dd { margin:0; min-width:0; }
.report-fact-date,.report-fact-meta { display:block; font-size:.9rem; margin-block-start:.18rem; }
.report-subsection + .report-subsection { border-block-start:1px solid var(--border); margin-block-start:1.25rem; padding-block-start:1.25rem; }
details.report-lazy { border:1px solid var(--border); border-radius:.6rem; margin-block:1rem; }
details.report-lazy > summary { cursor:pointer; font-weight:700; min-height:44px; padding:.8rem 1rem; }
details.report-lazy > :not(summary) { margin-inline:1rem; }
.report-status[role="status"] { min-height:1.5em; }
.report-history-controls,.report-history-nav { display:flex; flex-wrap:wrap; gap:.6rem; margin-block:.75rem; }
.report-history-controls label { display:grid; gap:.25rem; }
.report-history-chart { color:#075985; display:block; height:auto; max-height:18rem; width:100%; }
.report-capability-geometry { color:#075985; display:block; height:auto; max-height:28rem; width:100%; }
.report-result table,.report-sources { border-collapse:collapse; table-layout:fixed; width:100%; }
.report-result th,.report-result td,.report-sources th,.report-sources td { border-block-end:1px solid var(--border); padding:.55rem; text-align:left; vertical-align:top; }
.report-result caption,.report-sources caption { font-weight:650; padding:.5rem; text-align:left; }
footer { padding-block:1rem; }

@media (max-width:40rem) {
  .report-facts,.report-loaded-facts { grid-template-columns:1fr; }
  .report-fact { display:block; }
  .report-facts dd,.report-loaded-facts dd { margin-block-end:.85rem; }
  .report-result { overflow-x:auto; }
  .report-sources,.report-sources tbody,.report-sources tr,.report-sources th,.report-sources td { display:block; width:100%; }
  .report-sources thead { clip:rect(0 0 0 0); clip-path:inset(50%); height:1px; overflow:hidden; position:absolute; white-space:nowrap; width:1px; }
  .report-sources tr { border:1px solid var(--border); border-radius:.5rem; margin-block:.75rem; padding:.35rem; }
  .report-sources th,.report-sources td { border:0; }
}

@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
@media (prefers-color-scheme:dark) { :root { color-scheme:dark; --bg:#10191f; --surface:#18262f; --ink:#eef7fa; --muted:#b8c9d1; --border:#48606c; --accent:#7dd3fc; } }
@media print {
  @page { margin:.55in; }
  html { background:#fff; color:#000; }
  .skip-link,.report-control,.report-load,.report-history-nav,.report-status,details.report-lazy:not([data-loaded="true"]) { display:none!important; }
  .report-shell { max-width:none; padding:0; }
  .report-header,.report-section { border:0; break-inside:avoid; padding-inline:0; }
  a { color:inherit; text-decoration:none; }
  a[href]::after { content:" (" attr(href) ")"; font-size:.8em; }
}
/* Phase 4 share/export controls extend the frozen Phase 3 presentation. */
.report-export-dialog{max-width:min(36rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;border:1px solid #7b8b91;border-radius:.65rem;padding:1.1rem;background:#fff;color:#172126}
.report-export-dialog::backdrop{background:rgba(15,28,34,.55)}
.report-export-dialog>label{display:block;padding:.45rem 0}
.report-export-dialog input{inline-size:44px;block-size:44px;vertical-align:middle}
.report-export-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:1rem 0}
.report-export-dialog button,.report-control{min-block-size:44px;min-inline-size:44px;padding:.55rem .8rem}
[data-export-status]{min-block-size:1.5rem}
[data-export-status][data-error="true"]{color:#8b1e1e}
.report-copy-fallback{position:fixed;inset:auto 1rem 1rem 1rem;z-index:10000}
.report-export-print{display:none}
@media(max-width:320px){.report-export-actions{grid-template-columns:1fr}.report-export-dialog{max-width:calc(100vw - 1rem);padding:.75rem}}
@media print{.report-export-dialog,.report-control,[data-report-load]{display:none!important}.report-export-print{display:block}.report-export-print p{overflow-wrap:anywhere}.report-shell a[href]::after{content:" (" attr(href) ")";overflow-wrap:anywhere}}
