:root{color-scheme:dark;--bg: #0b1020;--card: #151d30;--card-2: #161f34;--line: #2c3954;--text: #e8edf7;--muted: #9eabc4;--dim: #7b8ca7;--accent: #7dd3fc;--mint: #34d399;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(1000px 420px at 0% -10%,rgba(56,189,248,.16),transparent 55%),radial-gradient(800px 380px at 100% 0%,rgba(52,211,153,.1),transparent 50%),var(--bg)}button,input,textarea{font:inherit}button{background:#243451;color:#e7efff;border:1px solid #395071;border-radius:10px;padding:11px 15px;cursor:pointer}button:hover{background:#30476b}button:disabled{opacity:.55;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}main{max-width:1040px;margin:auto;padding:36px 20px 70px}.boot,.auth-wrap{min-height:100vh;display:grid;place-items:center}.auth-card{width:min(460px,100%);background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px}.eyebrow{color:var(--accent);font-weight:700;letter-spacing:.13em;font-size:12px}h1{font-size:clamp(30px,5vw,52px);line-height:1.05;margin:12px 0}p{color:var(--muted);line-height:1.55}.top,.who,.side,.actions,.levels{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.top{justify-content:space-between;align-items:flex-start}.side{flex-direction:column;align-items:stretch}.stat{background:var(--card-2);border:1px solid var(--line);border-radius:18px;padding:18px 24px;min-width:210px}.stat strong{font-size:32px;color:var(--accent)}.stat div,.who span,footer,.sync{color:var(--muted)}.who{justify-content:space-between}.who span{overflow-wrap:anywhere}.levels{margin-top:8px}.level.active{background:linear-gradient(90deg,#0e7490,#0f766e);border-color:#67e8f9;color:#fff}.bar{height:12px;background:#263149;border-radius:30px;overflow:hidden;margin:22px 0 10px}.fill{height:100%;background:linear-gradient(90deg,#38bdf8,var(--mint));width:0;transition:width .25s}.sync{margin-top:0}.error-text{color:#f0a8a8}.banner{background:#12283a;border:1px solid #26506b;padding:12px 14px;border-radius:12px;margin-top:14px}.banner.error{border-color:#7f3b46;background:#2a1720;color:#ffd5dc}.note{background:#12283a;border:1px solid #26506b;padding:17px 20px;border-radius:14px;margin-top:18px;color:var(--muted)}.note strong{color:#8bdcfb}.weeks{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-top:28px}.week{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}.week h2{font-size:20px;margin:0 0 7px}.week small{color:#8fa1be}.item{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #27324a}.item input{width:19px;height:19px;accent-color:var(--mint);flex:none;margin-top:2px}.topic-name{flex:1;background:transparent;border:0;padding:0;color:inherit;text-align:left;line-height:1.4}.topic-name:hover{background:transparent;color:#fff}.item input:checked+.topic-name span{text-decoration:line-through;color:var(--dim)}.pill{font-size:11px;background:#273b53;color:#b6d9f7;border-radius:20px;padding:3px 8px;white-space:nowrap}.drill{margin:0 0 8px 31px;padding:12px 14px;background:#10192b;border:1px solid #27324a;border-radius:12px}.question{color:var(--text);margin:0 0 10px}.ghost{padding:7px 10px}.drill ul{margin:12px 0;padding-left:18px;color:var(--muted)}.drill li+li{margin-top:6px}.note-label,.auth-card label{display:grid;gap:6px;color:var(--muted);font-size:14px}.auth-card label{margin-top:12px}.auth-card input,.drill textarea{width:100%;background:#0d1526;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:12px}.primary{width:100%;margin-top:16px;background:linear-gradient(90deg,#0284c7,#0f766e);border:0;color:#fff;font-weight:700}.actions,footer{margin-top:24px}footer{font-size:13px}
