:root { --sr-ink:#172b3a; --sr-muted:#536777; --sr-bg:#f5f8fa; --sr-panel:#fff; --sr-accent:#b54a18; --sr-focus:#075fa8; --sr-border:#c7d1d8; }
.sloshing-report { color:var(--sr-ink); background:var(--sr-bg); min-height:100vh; }
.sloshing-report[data-theme="contrast"] { --sr-ink:#fff; --sr-muted:#e6edf2; --sr-bg:#08141d; --sr-panel:#102634; --sr-accent:#ffb36b; --sr-focus:#7dccff; --sr-border:#8da7b7; }
.sloshing-header { background:#173d57; color:#fff; padding:2.5rem max(1.5rem,calc((100% - 1180px)/2)); }
.sloshing-header h1 { margin:.2rem 0; }
.report-kicker,.section-number { text-transform:uppercase; letter-spacing:.12em; font-size:.74rem; font-weight:800; }
.report-kicker { color:#ffbd86; }
.section-number { color:var(--sr-accent); margin:0 0 .25rem; }
.report-verdict { display:flex; flex-wrap:wrap; gap:.4rem 1rem; margin-top:1.25rem; padding:.8rem 1rem; max-width:760px; background:rgba(255,255,255,.1); border-left:4px solid #ffbd86; }
.report-verdict strong { text-transform:uppercase; letter-spacing:.05em; }
.sloshing-shell { max-width:1180px; margin:auto; padding:2rem 1.5rem 4rem; }
.sloshing-nav-wrap { padding:.7rem max(1.5rem,calc((100% - 1180px)/2)); background:#102f45; }
.sloshing-nav-wrap .capability-report-nav { display:flex; flex-wrap:wrap; gap:.25rem; padding:0; }
.sloshing-nav-wrap .capability-report-nav a { color:#e8f4fb; padding:.45rem .7rem; text-decoration:none; border:0; border-radius:.25rem; background:transparent; font-size:.9rem; }
.sloshing-nav-wrap .capability-report-nav a:hover,.sloshing-nav-wrap .capability-report-nav a:focus-visible { color:#fff; background:#b54a18; }
.sloshing-nav-wrap .capability-report-nav a[aria-current="page"] { color:#fff; background:#1d6f86; }
.sloshing-nav-wrap .capability-report-nav .nav-group-label { align-self:center; padding:0 .3rem; color:#9db6c4; font-size:.66rem; font-weight:800; text-transform:uppercase; letter-spacing:.09em; }
.sloshing-nav-wrap .capability-report-nav .nav-sep { align-self:center; flex:none; width:1px; height:1.3rem; background:rgba(255,255,255,.25); margin:0 .3rem; }
.sloshing-nav-wrap .capability-report-nav .nav-ext { margin-left:auto; }
.report-controls,.report-panel { background:var(--sr-panel); border:1px solid var(--sr-border); border-radius:.5rem; padding:1.25rem; margin-bottom:1.5rem; }
.control-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:1rem; }
.control-grid label { display:block; font-weight:700; }
.control-grid select { width:100%; margin-top:.3rem; padding:.55rem; color:var(--sr-ink); background:var(--sr-panel); border:1px solid var(--sr-border); }
.report-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1rem; }
.report-actions button { padding:.55rem .8rem; border:2px solid var(--sr-accent); color:var(--sr-ink); background:var(--sr-panel); border-radius:.3rem; }
.sloshing-report :focus-visible { outline:3px solid var(--sr-focus); outline-offset:3px; }
.report-status { min-height:1.5em; color:var(--sr-muted); }
.report-error { border-left:5px solid #a32222; background:#fff0f0; color:#681414; padding:1rem; margin-bottom:1rem; }
.plot { width:100%; min-height:420px; }
.accessible-data { width:100%; border-collapse:collapse; }
.accessible-data th,.accessible-data td { border:1px solid var(--sr-border); padding:.5rem; text-align:left; }
.evidence-key span { display:inline-block; margin-right:1rem; }
.evidence-key span::before { content:""; display:inline-block; width:2rem; border-top:3px solid currentColor; margin-right:.4rem; vertical-align:middle; }
.evidence-key .methodology::before { border-top-style:dashed; }
.evidence-key .verification::before { border-top-style:dotted; }
.report-lead { border-top:4px solid var(--sr-accent); }
.study-kpis { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:.75rem; margin:1rem 0; }
.study-kpis>div { padding:1rem; background:var(--sr-bg); border:1px solid var(--sr-border); border-radius:.35rem; }
.study-kpis strong { display:block; color:var(--sr-accent); font-size:1.45rem; line-height:1.15; font-variant-numeric:tabular-nums; }
.study-kpis span { display:block; margin-top:.3rem; color:var(--sr-muted); font-size:.86rem; }
.engineering-verdict { margin:1rem 0; padding:1rem 1.15rem; background:#edf8f0; border:1px solid #b8ddc1; border-left:5px solid #287a3e; border-radius:.35rem; }
[data-theme="contrast"] .engineering-verdict { background:#143c2a; border-color:#4b9a62; }
.finding-grid,.method-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; margin-top:1.25rem; }
.finding-grid>div,.method-grid>div { padding:1rem; background:var(--sr-bg); border-top:3px solid var(--sr-accent); }
.finding-grid h3,.method-grid h3 { margin:.05rem 0 .4rem; font-size:1rem; }
.finding-grid p,.method-grid p { margin:0; color:var(--sr-muted); }
.comparison-selectors { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1rem; }
.comparison-selectors label { font-weight:700; }
.comparison-selectors select { display:block; width:100%; margin-top:.35rem; padding:.6rem; color:var(--sr-ink); background:var(--sr-panel); border:1px solid var(--sr-border); }
.comparison-warning,.comparison-ok { padding:.75rem 1rem; border-left:5px solid #b26a00; background:#fff1c7; }
.comparison-ok { border-left-color:#287a3e; background:#edf8f0; }
[data-theme="contrast"] .comparison-warning { background:#5c3d00; color:#fff; }
.noscript-notice { padding:1rem; border:1px solid var(--sr-border); }
.export-note { color:var(--sr-muted); font-size:.9em; }
.qa-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:.75rem; margin:0; }
.qa-grid>div { border-left:4px solid var(--sr-accent); padding:.55rem .8rem; background:var(--sr-bg); }
.qa-grid dt { font-weight:700; color:var(--sr-muted); }
.qa-grid dd { margin:.2rem 0 0; font-variant-numeric:tabular-nums; }
.qa-preview img,.qa-preview video { display:block; width:100%; max-width:900px; max-height:32rem; object-fit:contain; background:#000; }
.qa-warning td { background:#fff1c7; color:#3c2a00; font-weight:600; }
[data-theme="contrast"] .qa-warning td { background:#5c3d00; color:#fff; }
.qa-legend { border-left:4px solid #b26a00; padding-left:.75rem; margin-top:1rem; }
[data-density="compact"] .report-panel { padding:.75rem; margin-bottom:.75rem; }
@media (prefers-reduced-motion: reduce) { .sloshing-report * { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
@media (max-width:600px) { .sloshing-header { padding:1.5rem 1rem; } .sloshing-shell { padding:1rem; } .plot { min-height:320px; } }
@media print {
  .sloshing-report { --sr-ink:#000; --sr-bg:#fff; --sr-panel:#fff; --sr-border:#777; background:#fff!important; }
  .site-nav,.navbar,.report-controls,.modebar,.report-actions,footer { display:none!important; }
  [data-print-excluded] { display:none!important; }
  .sloshing-header { color:#000; background:#fff!important; padding:0 0 1rem; border-bottom:2px solid #000; }
  .sloshing-shell { max-width:none; padding:0; }
  .report-panel { border:0; break-inside:avoid; page-break-inside:avoid; }
  .plot { width:100%!important; height:5.5in!important; min-height:0; }
  h2 { break-after:avoid; page-break-after:avoid; }
}
