@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
:root{color-scheme:light;--ink:#193d34;--muted:#607269;--paper:#f7f8f2;--line:#d9e2d9;--green:#1d5c46;--accent:#dcef96}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;line-height:1.6}header{display:flex;justify-content:space-between;align-items:center;padding:25px max(5vw,20px);border-bottom:1px solid var(--line);background:#fff}a{color:var(--green);text-underline-offset:4px}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{text-decoration:none;font-size:14px;font-weight:600}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;font-size:21px;line-height:1.3}.mark{background:var(--ink);color:var(--accent);border-radius:14px;display:grid;place-items:center;width:48px;height:48px;font-size:26px;letter-spacing:-3px}.subbrand{display:block;font-size:10px;letter-spacing:3px;margin-top:4px}main{max-width:1120px;margin:0 auto;padding:50px 24px 80px;min-height:75vh}h1,h2,h3{line-height:1.25}h1,h2{font-family:'Libre Baskerville',Georgia,serif}h1{font-size:clamp(32px,5vw,57px);letter-spacing:-1.5px;max-width:760px;margin:20px 0}h2{font-size:28px}h3{font-size:20px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700}.lead{font-size:18px;color:var(--muted);max-width:650px}.hero{padding:25px 0 50px;position:relative}.pill{display:inline-block;background:#e6efd9;border-radius:30px;padding:5px 13px;font-size:12px;font-weight:700}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}.card p{color:var(--muted)}.card.feature{background:var(--ink);color:white}.card.feature p{color:#d6e0d8}.feature .pill{color:var(--ink);background:var(--accent)}.meta{display:flex;gap:20px;margin:24px 0;font-size:13px}button,.button{border:0;background:var(--green);color:#fff;padding:12px 20px;border-radius:9px;cursor:pointer;font:600 14px 'DM Sans',system-ui;display:inline-block;text-decoration:none}button:hover,.button:hover{background:#123f30}.secondary{background:#e9efe7;color:var(--ink);border:1px solid var(--line)}.secondary:hover{background:#dbe7d7}.danger{background:#fbe9e5;color:#8a3326}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:24px 0}label{display:block;font-weight:600;margin-bottom:7px}input,textarea,select{font:inherit;border:1px solid #abbdb0;border-radius:8px;padding:11px 12px;width:100%;color:var(--ink);background:white}textarea{min-height:95px;resize:vertical}input[type=radio],input[type=checkbox]{width:auto;accent-color:var(--green)}.field{margin:20px 0}.hint,.muted{font-size:14px;color:var(--muted)}.narrow{max-width:720px;margin:0 auto}fieldset{border:1px solid var(--line);border-radius:14px;padding:20px;margin:22px 0}legend{font-weight:700;padding:0 8px}.choice{display:flex;gap:13px;align-items:flex-start;border:1px solid var(--line);padding:13px;border-radius:9px;margin:10px 0;font-weight:400;cursor:pointer}.choice:has(input:checked){border-color:var(--green);background:#edf4e6}.choice input{margin-top:6px}.progress{height:7px;border-radius:10px;background:#e0e8db;overflow:hidden;margin:12px 0 30px}.progress{display:block;width:100%;border:0;accent-color:var(--green)}.progress::-webkit-progress-bar{background:#e0e8db}.progress::-webkit-progress-value{background:var(--green)}.progress::-moz-progress-bar{background:var(--green)}.score{font-family:Georgia,serif;font-size:76px;line-height:1.2;margin:25px 0}.notice{border-left:4px solid #719048;padding:15px 20px;background:#eef3df;border-radius:4px}.error{border-color:#a44733;background:#fff0eb;color:#853322}.topline{display:flex;justify-content:space-between;gap:20px;align-items:center}details{margin:16px 0}summary{cursor:pointer;font-weight:600}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px;vertical-align:top}.table-wrap{overflow:auto}.qcard{margin:20px 0}.qcard h3{margin-top:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}footer{padding:25px max(5vw,20px);border-top:1px solid var(--line);font-size:13px;display:flex;justify-content:space-between;gap:15px;color:var(--muted)}:focus-visible{outline:3px solid #a37200;outline-offset:4px}.skip{position:fixed;top:-100px;left:15px;background:white;z-index:10;padding:10px}.skip:focus{top:10px}#status{position:fixed;bottom:20px;right:20px;max-width:350px;background:var(--ink);color:white;border-radius:10px;padding:12px 18px;z-index:5}#status:empty{display:none}button:disabled{opacity:.55;cursor:wait}@media(max-width:650px){header{align-items:flex-start;flex-direction:column;gap:20px}nav{gap:18px}main{padding-top:25px}.split{grid-template-columns:1fr}footer{flex-direction:column}.card{padding:22px}h1{letter-spacing:-.8px}.topline{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.access-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:720px;margin:28px 0}.access-button{text-align:center;padding:20px 24px;font-size:18px;min-height:68px;display:flex;align-items:center;justify-content:center}@media(max-width:500px){.access-options{grid-template-columns:1fr}}
.summary-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:28px 0}.summary-list>div{background:#fff;border:1px solid var(--line);padding:20px;border-radius:12px}.summary-list dt{font-size:14px;color:var(--muted)}.summary-list dd{margin:8px 0 0;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.answer-card{margin:20px 0}.answer-card dt{font-weight:700;margin-top:14px}.answer-card dd{margin-left:0}.share-card{border:2px solid var(--green)}button,.button,summary{min-height:44px}h1,h2,h3{scroll-margin-top:20px;text-wrap:balance}p,td,th,dd{overflow-wrap:anywhere}.table-wrap:focus-visible{outline:3px solid #a37200}input[type=checkbox],input[type=radio]{min-width:18px;min-height:18px}section{scroll-margin-top:20px}

.timer-display{font-variant-numeric:tabular-nums;font-weight:700}audio{display:block;width:100%;margin:1rem 0}input[aria-invalid="true"]{border:2px solid #9d2626}.grade-answer{margin-top:1rem}input[type="file"]{max-width:100%}.card{overflow-wrap:anywhere}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
[hidden]{display:none!important}

/* Preserve supplied placement passages and instructions. */
.question-text,.lead { white-space: pre-line; }
fieldset legend { white-space: pre-line; }
