:root{font-family:"Inter","Segoe UI",sans-serif;color:#172938;background:#f3f6f7;font-synthesis:none;--ink:#142f3c;--muted:#4e6572;--line:#d8e2e5;--teal:#00695e;--white:#fff}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
.shell{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.masthead{background:#122d39;color:white}
.masthead-inner,.intro,.report-heading,.member-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.masthead-inner{min-height:72px}
.brand,.release{color:inherit;text-decoration:none}
.brand{display:flex;align-items:center;gap:13px;font-weight:650}
.mark{background:#b9ead8;color:#102e37;padding:7px 9px;border-radius:6px;font-size:.83rem;letter-spacing:.06em;font-weight:800}
.release{font-size:.88rem}
.release span,.footer span{margin-left:7px;color:#afc7cd}
.intro{padding:48px 0 25px;align-items:end}
h1,h2,h3,p{margin:0}
h1{font-size:clamp(2rem,5vw,3.1rem);letter-spacing:-.045em;line-height:1.08;color:var(--ink)}
h2{font-size:clamp(1.55rem,4vw,2.15rem);letter-spacing:-.035em}
h3{font-size:1.05rem}
p,small{color:var(--muted)}
.intro p,.report-heading p{margin-top:9px}
.privacy{white-space:nowrap;color:#285c50;font-size:.82rem;font-weight:650;padding-bottom:2px}
.privacy span{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#348a71}
.panel{background:var(--white);border:1px solid var(--line);border-radius:13px}
.setup{padding:25px}
fieldset{padding:0;border:0;margin:0}
legend{font-weight:750;margin-bottom:11px}
.modes,.uploads,.breakdowns{display:grid;gap:12px}
.modes,.breakdowns{grid-template-columns:repeat(2,minmax(0,1fr))}
.uploads{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px}
.mode,.upload{padding:14px;border:1px solid var(--line);border-radius:9px;min-width:0}
.mode{display:flex;align-items:start;gap:9px;cursor:pointer}
.mode:has(input:checked){background:#eaf6f1;border-color:#4d9a87}
.mode input{accent-color:var(--teal);margin-top:4px}
small{display:block;margin-top:4px;font-size:.81rem}
.upload{background:#f7f9fa;border-style:dashed;display:grid;align-content:start}
.upload strong span{font-weight:400;color:var(--muted);font-size:.75rem;margin-left:5px}
input,select,button{font:inherit}
input[type=file]{width:100%;min-width:0;margin-top:13px;font-size:.82rem}
::file-selector-button{font:inherit;background:white;border:1px solid #bdccd1;border-radius:6px;padding:6px 8px;margin-right:6px;color:var(--ink);cursor:pointer}
.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:21px}
button{padding:10px 15px;border:1px solid transparent;border-radius:8px;background:var(--teal);color:white;font-weight:650;cursor:pointer}
button:hover{background:#00574e}
button:disabled{opacity:.55;cursor:wait}
button span{margin-left:6px}
.secondary{background:#fff;color:var(--ink);border-color:#bdccd1}
.secondary:hover{background:#eaf6f1}
:focus-visible{outline:3px solid #337ab3;outline-offset:3px}
#results{margin-top:20px}
.checks,.data{padding:17px 20px;margin-bottom:15px}
summary{font-weight:700;cursor:pointer}
summary span{font-weight:400;color:var(--muted);margin-left:8px}
.checks ul{margin-bottom:0;padding-left:21px}
.checks li+li{margin-top:5px}
.report-heading{padding:17px 0}
.report-heading>div:last-child{text-align:right}
#export-status{font-size:.78rem}
.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:14px 16px}
.filters label,.member-heading label{display:grid;gap:5px;font-size:.83rem;font-weight:650}
select,input[type=date],input[type=search]{border:1px solid #bdccd1;border-radius:7px;background:white;padding:8px;color:var(--ink);min-height:40px}
#filter-note{font-size:.83rem}
.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:10px;margin:15px 0}
.metric{padding:13px 14px;display:grid;gap:7px}
.metric span{font-size:.81rem;color:var(--muted)}
.metric strong{font-size:1.35rem;font-variant-numeric:tabular-nums}
.data h3{margin-bottom:9px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;font-size:.88rem;text-align:left}
td,th{padding:9px 8px;border-bottom:1px solid var(--line)}
th{color:var(--muted);font-weight:650;white-space:nowrap}
td{overflow-wrap:anywhere}
td.number{text-align:right;font-variant-numeric:tabular-nums}
td button{color:var(--teal);background:none;border:0;padding:0;text-align:left;text-decoration:underline}
td button:hover{color:var(--ink);background:none}
.empty{padding:10px 0}
#more-members{margin-top:12px}
.footer{padding:24px 0 34px;color:var(--muted);font-size:.83rem}
.footer span{color:var(--muted)}
.error{color:#a12929}
.notes{padding:25px;margin-top:24px}
.notes h2,.notes h3{margin:16px 0 8px}
.notes li+li{margin-top:6px}
@media(max-width:720px){.uploads,.breakdowns{grid-template-columns:1fr}.intro,.report-heading{align-items:start;flex-direction:column}.report-heading>div:last-child{text-align:left}.intro{padding-top:33px}.shell{width:calc(100% - 28px)}.setup{padding:17px}}
@media(max-width:420px){.modes{grid-template-columns:1fr}.member-heading{align-items:start;flex-direction:column}.masthead-inner{gap:8px}.release span{display:none}}
