:root{color-scheme:light;--bg:#f5f7fa;--card:#ffffff;--line:#d9e1ea;--text:#10243e;--sub:#4c6078;--brand:#0f64c8;--brand-dark:#0b4f9f;--danger:#b42318;--ok:#18794e}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:PingFang SC,Noto Sans SC,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}main.page{max-width:1100px;margin:0 auto;padding:24px 16px 32px}.header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--card);margin-bottom:16px}.brand{margin:0;font-size:20px}.header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:16px}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:16px}.auth-card{width:min(420px,100%);border:1px solid var(--line);border-radius:12px;background:var(--card);padding:20px}.auth-card h2{margin-top:0}.stack{display:grid;grid-gap:12px;gap:12px}.stack-sm{display:grid;grid-gap:6px;gap:6px}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;padding:10px 12px}.btn,input,select,textarea{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text)}.btn{padding:8px 14px;cursor:pointer}.btn:hover{filter:brightness(.98)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn-primary:hover{background:var(--brand-dark)}.btn-ghost{background:#fff}.paper-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:12px;gap:12px}.paper-card{display:grid;grid-gap:10px;gap:10px}.muted,.paper-card h3{margin:0}.muted{color:var(--sub)}.error-text{color:var(--danger)}.ok-text{color:var(--ok)}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-gap:16px;gap:16px}.exam-main{display:grid;grid-gap:12px;gap:12px}.exam-side{position:-webkit-sticky;position:sticky;top:16px;height:-moz-fit-content;height:fit-content}.question-card{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:14px;display:grid;grid-gap:10px;gap:10px}.question-title{margin:0;font-size:16px}.block-list{display:grid;grid-gap:8px;gap:8px}.text-block{margin:0;line-height:1.65}.code-block,.formula-block{margin:0;padding:10px;border-radius:8px;background:#0f172a;color:#e2e8f0;overflow-x:auto;white-space:pre-wrap}.question-image{max-width:100%;border:1px solid var(--line);border-radius:8px}.option-list{display:grid;grid-gap:8px;gap:8px}.option-item{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:flex-start;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px}.tf-row{display:flex;gap:8px}.status-panel{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:14px;display:grid;grid-gap:10px;gap:10px}.timer{font-size:22px;font-weight:700;margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:var(--card)}td,th{border:1px solid var(--line);padding:8px;text-align:left}.result-ok{color:var(--ok)}.result-bad{color:var(--danger)}@media (max-width:900px){.exam-layout{grid-template-columns:1fr}.exam-side{position:static}.header{flex-direction:column}}