:root{color-scheme:dark;--paper:#171f24;--panel:#202c34;--line:#3b505c;--ink:#edf2f4;--muted:#b9c9d2;--mint:#7bd6c8;--warm:#efc176}
.preview-download{border:1px solid var(--line);background:transparent;color:var(--mint);border-radius:999px;padding:12px 18px;font:inherit;cursor:pointer}.preview-download:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.preview-action-links{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:20px 0}.preview-action-links a{max-width:100%;overflow-wrap:anywhere;margin:0}.preview-action-links .primary-button{display:inline-flex;text-decoration:none}.preview-section{border-top:1px solid var(--line);padding:10px 0}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.6}
main,.utility-header{max-width:1100px;margin:auto;padding:24px}.utility-header{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}
a{color:var(--mint)}.brand{font-size:21px;font-weight:850;text-decoration:none}h1,h2,h3,h4,p{overflow-wrap:anywhere}h1{font-size:clamp(30px,4vw,48px);line-height:1.12;margin:12px 0}h2{font-size:24px;line-height:1.2}h3{font-size:15px;margin:22px 0 6px;color:var(--mint)}h4{font-size:15px;margin:12px 0 4px}p{margin:8px 0 16px}.muted,.score-caption{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--mint);font-weight:800}.report-address{color:var(--muted)}
.overall-score{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}.overall-score strong{font-size:clamp(42px,9vw,78px);line-height:1.2}.overall-score span{font-size:18px;color:var(--mint)}.score-caption{margin-top:0}.scope-notice{padding:16px 18px;border-left:4px solid var(--mint);background:var(--panel);border-radius:4px}.priority-notice{border-left:4px solid var(--warm);padding:14px;background:#3a3024}.result-verdict{font-weight:750;font-size:20px}.card-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:24px 0 36px}.primary-button{background:var(--mint);color:#102125;border:0;border-radius:8px;padding:12px 18px;font:700 15px/1.4 system-ui,sans-serif;cursor:pointer}.primary-button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--warm);outline-offset:5px}.report-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.report-topic,.card-section{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px}.topic-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.topic-heading h2{margin:0}.topic-score{white-space:nowrap;font-size:24px;color:var(--mint)}.topic-grade{color:var(--muted);font-size:14px}.card-criteria{border-top:1px solid var(--line);padding-top:14px;margin-top:24px}.card-criteria summary{cursor:pointer;color:var(--mint);font-weight:700}.criterion{padding:12px 0;border-bottom:1px solid var(--line)}.criterion:last-child{border:0}.criterion-points{font-size:13px;color:var(--warm)}.evidence-example{border-left:2px solid var(--line);padding-left:12px;font-size:14px}.card-section{margin-top:24px}.optional-help a{display:block;margin:16px 0}.report-notes{font-size:14px}#assessment-status{color:var(--muted)}#assessment-retention{font-size:14px;color:var(--muted);margin:24px 0}.utility-footer{padding:24px;color:var(--muted);font-size:13px;text-align:center}
@media(max-width:700px){main,.utility-header{padding:18px}.utility-header{align-items:flex-start;font-size:14px}.report-topics{grid-template-columns:1fr}.report-topic,.card-section{padding:20px}.topic-score{font-size:22px}.card-actions{gap:16px}.overall-score{gap:12px}}
.score-explanation .score-calculation {font-family: ui-monospace, monospace; overflow-wrap: anywhere; color: #c6d3dc;}
.reading-outcome {border-left: 4px solid #c7b87e;}
.diagnostic-url, .criterion-standard {overflow-wrap: anywhere;}
.earned-checks {list-style: none; padding: 0; margin: 1rem 0;}
.earned-check {border-top: 1px solid rgba(164, 185, 198, .18); padding: .75rem 0; overflow-wrap: anywhere;}
.earned-check strong {font-size: .94rem; line-height: 1.45;}
.check-found {display: block; color: #b6c3cc; margin-top: .3rem; font-size: .94rem;}
.criterion-standard {color: #c7d5dc; padding-left: .65rem; border-left: 2px solid #576b73; font-size: .92rem;}
.overall-score {flex-wrap: wrap;}
.overall-score strong.unscored-label {font-size: clamp(2rem, 6vw, 3.5rem); max-width: 100%;}
.reading-cause-preview {padding: .8rem; border-left: 3px solid #c7b87e; background: #242c31; color: #e1d49f; font-weight: 600; overflow-wrap: anywhere;}

.finding {padding: 1rem 0; border-bottom: 1px solid var(--line, #394348);}
.finding:last-child {border-bottom: 0;}
.detailed-findings p, .quality-coverage li {overflow-wrap: anywhere;}
.technical-score {font-weight: 700;}
.improvement-topics{grid-template-columns:1fr;margin-top:24px}
.improvement-check{padding:20px 0;border-top:1px solid var(--line)}
.improvement-check h3{font-size:19px;margin-top:4px;color:var(--ink)}
.improvement-check p{max-width:85ch}
.check-outcome{display:inline-block;border-radius:5px;padding:3px 9px;font-size:14px;font-weight:750;background:#263d3c;color:var(--mint)}
.outcome-not_met{background:#42302b;color:#ffd3b5}.outcome-unknown{background:#353a43;color:#e0e3ec}
.review-notice{color:var(--muted);border-left:3px solid var(--warm);padding:8px 16px}
.method-checks{padding-left:24px}.method-checks li{border-top:1px solid var(--line);padding:10px 0 18px}
.method-checks h3{font-size:19px;color:var(--ink)}
