:root{color-scheme:dark;--bg:#111e2e;--card:#17283b;--fg:#e5edf6;--muted:#b4c5d9;--grid:#3a4e64;--link:#8bc1ff}
body{margin:0;background:var(--bg);color:var(--fg);font:16px system-ui,sans-serif}
body.light{color-scheme:light;--bg:#f7fafc;--card:#fff;--fg:#172b44;--muted:#475c73;--grid:#ccd7e2;--link:#07559c}
main{max-width:1500px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:start;gap:15px}h1{font-size:1.9rem;margin:0 0 10px}h2{font-size:1.4rem;margin-top:0}h3{font-size:1.15rem;margin-top:0}p{line-height:1.55;color:var(--muted)}a{color:var(--link)}button,select{font:inherit;color:var(--fg);background:var(--card);border:1px solid #7a90a8;border-radius:5px;padding:9px}button{cursor:pointer}label{display:flex;flex-direction:column;gap:7px;font-weight:600}select{max-width:100%}.inline{flex-direction:row;align-items:center}.card,.report{background:var(--card);border-radius:8px;padding:20px;margin:22px 0}.reports{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.report{margin:0}.report a{display:inline-block;border:1px solid #7a90a8;border-radius:5px;padding:9px 13px;text-decoration:none;font-weight:600}.report .count{font-weight:600}.controls{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.plot{width:100%;min-width:0;height:420px}.legend{display:flex;flex-wrap:wrap;gap:10px 20px;margin:15px 0}.swatch{display:inline-block;width:18px;height:4px;vertical-align:middle;margin-right:7px}.note{font-size:.9rem}summary{cursor:pointer;font-weight:700;padding:8px 0}.tablewrap{overflow:auto;max-height:500px}table{width:100%;border-collapse:collapse;font-size:.9rem}td,th{text-align:right;padding:10px;border-bottom:1px solid var(--grid);white-space:nowrap}th{background:var(--card);position:sticky;top:0}td:first-child,th:first-child{text-align:left}.downloads{display:flex;flex-wrap:wrap;gap:18px;margin:24px 0}
@media(max-width:1000px){.reports{grid-template-columns:1fr}.report{margin:0}.plot{height:380px}}@media(max-width:600px){main{padding:12px}.card,.report{padding:14px}h1{font-size:1.5rem}header{align-items:center}.plot{height:350px}}
