*{box-sizing:border-box}
body{margin:0;background:#f3f7fb;color:#172033;font-family:Arial,sans-serif}
header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #dce4ef;padding:12px max(14px,calc((100% - 1160px)/2));display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:900;color:#748196}
.brand{font-size:22px;color:#1558d6;text-decoration:none}.brand span{color:#111}
main{max-width:1160px;margin:auto}
.hero{text-align:center;padding:32px 15px 18px}.eyebrow{font-size:9px;font-weight:900;letter-spacing:2px;color:#1558d6}
.hero h1{font-size:clamp(30px,5vw,50px);margin:8px}.hero p{max-width:850px;margin:auto;color:#68768b;line-height:1.8;font-size:14px}
.card{margin:10px 0;background:#fff;border:1px solid #dce4ef;border-radius:17px;padding:20px;box-shadow:0 10px 30px #12345a0b}
.controls{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.settings{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.settings label{font-size:9px;font-weight:900}.settings select{width:100%;height:42px;margin-top:5px;border:1px solid #d3ddeb;border-radius:8px;padding:8px;background:#fff}
.actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}.actions button,.finish button,.pdf,.check,.show{border:0;background:#1558d6;color:#fff;border-radius:9px;padding:12px 8px;font-weight:900;font-size:9px;cursor:pointer}
.secondary{background:#334155!important}.outline{background:#fff!important;color:#334155!important;border:1px solid #d3ddeb!important}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:center}.stats div{border:1px solid #e0e6ee;border-radius:11px;padding:10px}
.stats small{display:block;color:#7b8798;font-size:8px}.stats strong{display:block;margin-top:4px;color:#1558d6;font-size:18px}
.progressHead{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.progressHead span{color:#1558d6;font-weight:900}
.track{height:14px;background:#e8edf4;border-radius:20px;overflow:hidden}.track div{height:100%;width:0;background:#1558d6;transition:.3s}
.head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e4e9f0;padding-bottom:12px;gap:10px}.head h2{margin:0 0 4px;font-size:19px}.head small{color:#7c899b}
.pdf{background:#087f45}
.startNotice{display:none;margin:10px 0;padding:12px;border-radius:9px;background:#fff4d6;border:1px solid #f0d28b;color:#725a00;font-size:10px;font-weight:900}.startNotice.show{display:block}
.graphics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.graphic{border-radius:13px;padding:14px;background:#f5f8ff;border:1px solid #e1e8f5;text-align:center;min-height:150px}
.graphic h3{margin:10px 0 4px;font-size:14px}.graphic p{margin:0;color:#738097;font-size:9px}.graphicIcon{font-size:48px;height:70px;display:flex;align-items:center;justify-content:center}
.tip{margin:12px 0;padding:11px;text-align:center;background:#fff7df;color:#725a00;border-radius:8px;font-size:10px;line-height:1.7}
.question{border-bottom:1px solid #e7ebf1;padding:20px 5px}.qtop{display:flex;gap:12px;align-items:flex-start}.qnum{min-width:30px;color:#1558d6;font-weight:900;font-size:16px}
.prompt{font-size:18px;font-weight:800;color:#27354b;line-height:1.7;width:100%}
.equation{margin-top:12px;padding:17px;text-align:center;background:#f8fbff;border:1px solid #dce7f5;border-radius:10px;font-size:28px;font-weight:900;letter-spacing:2px}
.word{margin-top:12px;padding:14px;background:#f7faff;border-left:5px solid #1558d6;border-radius:9px;font-size:16px;line-height:1.8}
.hint{font-size:9px;color:#8a96a7;margin:7px 0 0 42px}.answerRow{display:flex;gap:8px;max-width:760px;margin:12px 0 0 42px;flex-wrap:wrap}
.answer{height:45px;flex:1;min-width:170px;border:2px solid #ccd6e4;border-radius:8px;padding:8px 12px;font-size:18px;font-weight:900;outline:0}
.answer.correct{border-color:#16834b;background:#eaf8f0;color:#08763e}.answer.wrong{border-color:#d73a49;background:#fff0f1;color:#c52235}
.feedback{margin:7px 0 0 42px;font-size:9px;font-weight:900;min-height:13px}.good{color:#0b7a43}.bad{color:#c52235}
.reveal{margin:9px 0 0 42px;padding:10px 12px;border-radius:8px;background:#eef5ff;border:1px solid #cfe0fb;color:#174f9f;font-size:10px}.reveal strong{font-size:14px}
.answerKey h2{margin-top:0}.answerKey>p{font-size:10px;color:#718096}.answerKeyGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.answerKeyGrid>div{padding:9px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;font-size:9px;line-height:1.5}.answerKeyGrid span{display:block;margin-top:4px;color:#08763e}
.seo h2{font-size:20px}.seo h3{font-size:15px;margin-top:24px}.seo p,.seo li{font-size:11px;color:#637085;line-height:1.9}.seo ol{padding-left:20px}
footer{padding:20px 15px 40px;display:flex;justify-content:space-between;color:#788497;font-size:9px}
.final{text-align:center;margin:15px auto 0;max-width:550px;border-radius:12px;padding:18px;background:#edf8f1;border:1px solid #bfe4cd}.final strong{display:block;font-size:30px;color:#08763e}.final span{font-size:10px;color:#64748b}.hidden{display:none}
.pop{animation:pop .45s}.shake{animation:shake .42s}@keyframes pop{45%{transform:scale(1.12)}}@keyframes shake{20%{transform:translateX(-7px)}40%{transform:translateX(7px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}
@media(max-width:900px){.controls{grid-template-columns:1fr}.settings{grid-template-columns:repeat(2,1fr)}.graphics{grid-template-columns:1fr}}
@media(max-width:600px){header{padding:10px 12px}.brand{font-size:18px}header>span{font-size:6px}.hero{padding:27px 10px 18px}.hero h1{font-size:31px}.hero p{font-size:12px}.card{margin:7px;padding:13px}.settings,.actions{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr 1fr}.head{align-items:flex-start;flex-direction:column}.pdf{width:100%}.prompt{font-size:16px}.equation{font-size:23px}.answerRow{margin-left:37px}.answer,.check,.show{width:100%}.hint,.feedback,.reveal{margin-left:37px}.answerKeyGrid{grid-template-columns:1fr}.seo p,.seo li{font-size:10px}footer{display:block;text-align:center}footer span{display:block;margin-top:6px}}