:root{--green:#103c2a;--deep:#072719;--gold:#c59b44;--ivory:#faf8f0;--line:#dcded3;--muted:#58665d;--red:#a12e25}*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:#183428;font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}header{background:var(--deep);color:#f3e2b6;display:flex;align-items:center;justify-content:space-between;padding:14px max(20px,calc((100vw - 1160px)/2));gap:20px}header img{display:block;width:260px;max-width:42vw}header span{text-align:right}small{display:block;font-size:13px;color:inherit}main{max-width:1160px;margin:32px auto;padding:0 20px;min-height:65vh}h1{font:600 34px/1.2 Georgia,serif;margin:0 0 16px}h2{font:600 26px/1.3 Georgia,serif}h3{margin:16px 0 8px}p{margin:8px 0 18px}a{color:var(--green)}button,.button{display:inline-block;background:var(--green);color:white;border:1px solid var(--green);border-radius:8px;padding:12px 20px;font:600 16px system-ui;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#20583e}button:disabled{opacity:.55;cursor:wait}.secondary{background:white;color:var(--green)}.secondary:hover{background:#e8eee8}.danger{background:var(--red)}label{display:block;margin:14px 0 8px}input,select,textarea{display:block;width:100%;border:1px solid #b6c2b8;border-radius:7px;padding:12px;background:#fff;color:#173629;font:16px system-ui}textarea{min-height:140px;resize:vertical}input[type=checkbox],input[type=radio]{width:auto;display:inline-block;accent-color:var(--green)}input:focus,select:focus,textarea:focus,button:focus,a:focus{outline:3px solid #d3ad56;outline-offset:2px}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 8px 28px #0c342709}.install{max-width:620px}.logo{width:260px;max-width:100%;height:150px;object-fit:contain}.intro{max-width:800px;margin:auto}.tag{display:inline-block;background:#edf1e7;color:var(--green);padding:4px 10px;border-radius:30px;font-size:14px}.muted{color:var(--muted)}.error{color:var(--red)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.metric{border-top:3px solid var(--gold);padding:18px;background:#fff;border-radius:8px}.metric strong{font:600 30px Georgia;display:block}.tablewrap{overflow:auto;margin-top:24px}table{border-collapse:collapse;width:100%;font-size:15px}th{text-align:left;background:#f1f3ec}th,td{padding:13px;border-bottom:1px solid var(--line);vertical-align:top}.workspace{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px}.navcard{align-self:start;position:sticky;top:18px}.qnav{display:flex;gap:7px;flex-wrap:wrap}.qnav button{padding:6px;min-width:36px;background:white;color:var(--green);font-size:14px}.qnav .filled{background:#e0eadc}.qnav .current{background:var(--green);color:white}.timer{font:600 32px Georgia;color:var(--green)}progress{width:100%;accent-color:var(--green);height:12px}.question{white-space:pre-line;font-size:18px}.option{display:flex;gap:12px;padding:15px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.option:has(input:checked){border-color:var(--green);background:#eff5ed}.option input{flex:none}.option span{display:block}.notice{border-left:4px solid var(--gold);padding:12px 16px;background:#faf5e6;margin:16px 0}.scorebar{height:8px;background:#e6eadf;border-radius:6px}.scorebar i{display:block;height:100%;background:var(--green);border-radius:6px}.gradeitem{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}details{padding:12px 0}summary{cursor:pointer;font-weight:600}.answer{white-space:pre-line;background:#f4f6ef;padding:12px;border-radius:7px}.badge{font-size:14px;color:var(--muted)}footer{text-align:center;color:var(--muted);padding:24px;border-top:1px solid var(--line)}@media(max-width:760px){header img{width:190px;max-width:45vw}header span{font-size:14px}main{margin:20px auto;padding:0 12px}h1{font-size:28px}.card{padding:20px}.workspace{grid-template-columns:1fr}.navcard{position:static}.grid{grid-template-columns:1fr}.gradeitem{grid-template-columns:minmax(0,1fr) 80px}.timer{font-size:26px}}@media print{header,footer,button,.button,.navcard{display:none}main{max-width:none}.card{box-shadow:none;border:0}details{display:block}details>*{display:block}}
