:root{font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Arial,sans-serif;color:#e8edf9;background:#0c1221;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{padding:18px max(22px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #2a364d;gap:15px;flex-wrap:wrap;background:#111a2b}.brand{font-weight:850;letter-spacing:.12em;color:#8fb8ff}.muted,.sub{color:#9faec4;font-size:13px}nav{display:flex;gap:7px;flex-wrap:wrap}button,input,textarea,select{font:inherit}button{border:1px solid #3b4a65;border-radius:9px;padding:10px 13px;background:#1c2a40;color:#e8edf9;cursor:pointer}button:hover{background:#273b58}button.primary{background:#4379e6;border-color:#4379e6;color:white;font-weight:700}button.warn{background:#773c3c}button.active{background:#2c4c81}button:disabled{opacity:.5;cursor:default}main{max-width:1200px;margin:auto;padding:26px 20px 80px}h1{font-size:29px;margin:0 0 9px}h2{font-size:19px;margin:0 0 13px}h3{margin:0 0 12px}p{line-height:1.55}.top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:22px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:15px}.card,.panel{background:#152137;border:1px solid #2c3a54;border-radius:15px;padding:20px}.card{display:flex;flex-direction:column;gap:9px}.card p{margin:0}.badge{display:inline-block;background:#283e61;color:#b8d2ff;font-size:12px;border-radius:20px;padding:5px 10px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.small{font-size:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;margin:10px 0}.field label{font-size:13px;color:#acbdd8;font-weight:600}input,textarea,select{background:#0e192b;border:1px solid #40516f;border-radius:9px;padding:10px;color:#f3f6ff;width:100%;outline:none}textarea{min-height:85px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:#76a4ff}.question{font-size:18px;line-height:1.6;white-space:pre-wrap}.option{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid #3c4a62;border-radius:10px;cursor:pointer;margin:9px 0}.option:has(input:checked){border-color:#7ca8fb;background:#23375a}.option input{width:auto}.exam{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:15px}.exam.no-notes{grid-template-columns:1fr}.nb{min-width:0}.canvaswrap{overflow:hidden;background:white;border-radius:9px;touch-action:none}.canvaswrap canvas{display:block;width:100%;height:380px;touch-action:none}.tools{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}.tools input[type=color]{width:46px;height:38px;padding:4px}.tools input[type=range]{max-width:80px}.qnav{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.qnav button{min-width:42px}.qnav .answered{border-color:#48b48c}.qnav .current{background:#4379e6}.columns{display:grid;grid-template-columns:2fr 1fr;gap:17px}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid #34435a;text-align:left;padding:12px 8px}.good{color:#81ddb4}.bad{color:#ff9b9b}.warning{background:#3b2d21;border:1px solid #806144;padding:12px;border-radius:10px}.empty{padding:50px 20px;text-align:center;color:#a7b6ce}.pill{font-size:12px;background:#293d5e;border-radius:6px;padding:3px 8px;margin-right:5px}.inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.hr{border:0;border-top:1px solid #2c3a54;margin:20px 0}.solution{background:#0f1c30;border:1px solid #354760;border-radius:10px;padding:13px;margin-top:12px;white-space:pre-wrap}#toast{position:fixed;right:20px;bottom:20px;background:#285b4b;color:white;padding:12px 17px;border-radius:10px;display:none;z-index:5}.danger{color:#ffb0b0}@media(max-width:850px){.exam,.exam.no-notes,.grid2,.columns{grid-template-columns:1fr}.nb{order:2}header{padding:15px 20px}main{padding:18px 12px}.canvaswrap canvas{height:300px}}

/* Version 0.2: notebook, profiles, theme */
[hidden]{display:none!important}header{max-width:none} .userbar{display:flex;gap:7px;align-items:center;font-size:12px;color:var(--muted,#9faec4)}
.auth{min-height:75vh;display:grid;place-items:center}.auth>.panel{width:min(100%,510px);padding:34px}.auth .brand{margin-bottom:25px}
#splash{position:fixed;inset:0;background:#0c1221;color:#e8edf9;z-index:100;display:grid;place-items:center;text-align:center}.welcome h1{font-size:clamp(29px,6vw,60px);margin-top:24px}.welcome p{opacity:.7}
main:has(.exam){max-width:1800px}.exam{grid-template-columns:minmax(360px, 1fr) minmax(560px, 1.25fr);align-items:start}.exam.wide-notes{grid-template-columns:minmax(340px,.65fr) minmax(700px,1.7fr)}.nb{position:sticky;top:12px}.canvaswrap{overflow:auto;max-height:80vh}.canvaswrap canvas{width:100%;height:780px;min-width:460px;cursor:crosshair}.tools input[type=range]{max-width:130px}
html[data-theme="light"]{color:#19273b;background:#f3f6fa}html[data-theme="light"] body{color:#19273b}html[data-theme="light"] header{background:#fff;border-color:#d7e0ea}html[data-theme="light"] .card,html[data-theme="light"] .panel{background:white;border-color:#d8e1eb}html[data-theme="light"] button{color:#1d3148;background:#ecf1f7;border-color:#c6d3df}html[data-theme="light"] button.primary,html[data-theme="light"] .jump.current{color:white;background:#376ac9}html[data-theme="light"] button.active{background:#c9ddff}html[data-theme="light"] input,html[data-theme="light"] textarea,html[data-theme="light"] select{background:#f9fbfe;color:#20354d;border-color:#b8c8d8}html[data-theme="light"] .sub,html[data-theme="light"] .muted,html[data-theme="light"] .field label{color:#536781}html[data-theme="light"] .option{border-color:#ccd8e4}html[data-theme="light"] .option:has(input:checked){background:#e5efff}html[data-theme="light"] .badge,html[data-theme="light"] .pill{background:#e4edfa;color:#244475}html[data-theme="light"] .solution{background:#f3f7ff;border-color:#ccd8e4}html[data-theme="light"] .hr,html[data-theme="light"] .table th,html[data-theme="light"] .table td{border-color:#dde5ed}html[data-theme="light"] .warning{background:#fff4d8;color:#5a4020;border-color:#e4ca8f}
@media(max-width:1050px){.exam,.exam.wide-notes{grid-template-columns:1fr}.nb{position:static}.canvaswrap canvas{min-width:0}}

/* v0.3 polished welcome experience */
#splash{background:radial-gradient(circle at 50% 30%, #1f3763, #0c1221 65%);padding:24px}
.welcome{width:min(92vw,610px);text-align:center;animation:appear .5s ease-out}
.splash-logo{color:#92b8ff;letter-spacing:.22em;font-size:15px;font-weight:850}
.splash-kicker{font-size:11px;letter-spacing:.18em;margin-top:16px;opacity:.7}
.welcome h1{font-size:clamp(32px,6vw,62px);margin:28px 0 10px}
.welcome .splash-description{font-size:15px;opacity:.8;margin:0 0 40px}
.splash-status{display:flex;justify-content:space-between;font-size:12px;color:#a5c0ec;gap:12px;text-align:left}
.splash-track{height:8px;background:#293e64;border-radius:20px;overflow:hidden;margin:12px 0 20px}
.splash-fill{height:100%;width:0;background:linear-gradient(90deg,#427ef1,#83c6ff);border-radius:20px;transition:width .55s ease}
.splash-steps{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;font-size:11px;color:#8ca5cc}
@keyframes appear{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
