@font-face{font-family:InterAK;src:url(/content/fonts/InterAK.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:InterAK;src:url(/content/fonts/InterAKBold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:JBMonoAK;src:url(/content/fonts/JetBrainsMonoAK.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:JBMonoAK;src:url(/content/fonts/JetBrainsMonoAKBold.ttf) format("truetype");font-weight:700;font-display:swap}:root{--bg: #070b18;--side: #0b1124;--card: #111a33;--card2: #17213f;--line: #233057;--fg: #eef1ff;--muted: #8d98c4;--dim: #5a6591;--accent: #ff8a3d;--accent2: #ffb36b;--accent-soft: #2a1608;--on-accent: #1a0d03;--ok: #34d399;--ok-soft: #062b1f;--err: #fb7185;--err-soft: #2d0a14;--info: #60a5fa;--info-soft: #0b1b3a;--code-bg: #0a1128;--c-python: #ff8a3d;--c-algebra: #38bdf8;--c-physics: #a78bfa;--c-space: #f472b6;--c-mind: #facc15;--f-ui: "InterAK", "Segoe UI", system-ui, -apple-system, sans-serif;--f-mono: "JBMonoAK", Consolas, ui-monospace, monospace;--r: 14px;color-scheme:dark}@media(prefers-color-scheme:light){:root{--bg: #eef1f8;--side: #ffffff;--card: #ffffff;--card2: #e9edf7;--line: #d3d9e8;--fg: #18203d;--muted: #59637f;--dim: #8a93ad;--accent: #ee6a1c;--accent2: #ff8a3d;--accent-soft: #ffe7d4;--on-accent: #ffffff;--ok: #0f9d6b;--ok-soft: #d9f4e8;--err: #e11d48;--err-soft: #fde4ea;--info: #2563eb;--info-soft: #e3ecff;--code-bg: #f3f5fb;--c-python: #ee6a1c;--c-algebra: #0284c7;--c-physics: #7c3aed;--c-space: #db2777;--c-mind: #b58900;color-scheme:light}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--fg);font:16px/1.55 var(--f-ui);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}a{color:var(--accent)}img{max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.top .wrap{display:flex;align-items:center;gap:12px;min-height:58px}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);font-weight:700;letter-spacing:-.01em;white-space:nowrap}.logo img{width:30px;height:30px}.top .grow{flex:1}.who{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;border-radius:999px;background:var(--card);border:1px solid var(--line);cursor:pointer}.who .ava{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);font-size:15px}.crumbs{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:14px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--fg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:10px;padding:10px 16px;cursor:pointer;font-weight:600;text-decoration:none;line-height:1.2}.btn:hover{border-color:var(--muted)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:hover{background:var(--accent2)}.btn.ok{background:var(--ok);border-color:var(--ok);color:#04130d}.btn.ghost{background:transparent}.btn.small{padding:6px 10px;font-size:14px;border-radius:8px}.btn.danger{color:var(--err)}.btn:disabled{opacity:.5;cursor:default}.field{display:grid;gap:6px}.field label{font-size:14px;color:var(--muted);font-weight:600}.input,textarea.input,select.input{width:100%;border:1px solid var(--line);background:var(--code-bg);border-radius:10px;padding:11px 13px;outline:none}.input:focus{border-color:var(--accent)}.err-box{background:var(--err-soft);color:var(--fg);border:1px solid color-mix(in srgb,var(--err) 40%,transparent);padding:10px 12px;border-radius:10px;font-size:14px}.ok-box{background:var(--ok-soft);border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);padding:10px 12px;border-radius:10px;font-size:14px}.muted{color:var(--muted)}.small{font-size:14px}.eyebrow{font:700 12px/1.2 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.hero{padding-block:56px 32px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:40px;align-items:center}.hero h1{font-size:clamp(32px,5vw,52px);line-height:1.05;letter-spacing:-.025em;margin:12px 0 16px;text-wrap:balance}.hero p.lead{font-size:18px;color:var(--muted);max-width:52ch;margin:0 0 24px}.hero .cta{display:flex;gap:10px;flex-wrap:wrap}.orbit{position:relative;aspect-ratio:1;max-width:420px;width:100%;justify-self:center}.orbit svg{width:100%;height:100%;display:block}.stats{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:28px;font:14px var(--f-mono);color:var(--muted)}.stats b{color:var(--fg);font-size:20px;display:block;font-family:var(--f-ui)}.section{padding-block:36px}.section h2{font-size:26px;letter-spacing:-.015em;margin:0 0 18px;text-wrap:balance}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.feature{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px}.feature h3{margin:8px 0 6px;font-size:17px}.feature p{margin:0;color:var(--muted);font-size:15px}.feature .ic{font-size:22px}footer.foot{border-top:1px solid var(--line);margin-top:40px;padding-block:24px 40px;color:var(--dim);font-size:14px}.auth{max-width:420px;margin:40px auto;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;display:grid;gap:14px}.auth h1{margin:0;font-size:24px}.auth .tabs{display:flex;gap:4px;background:var(--code-bg);padding:4px;border-radius:10px}.auth .tabs button{flex:1;border:0;background:transparent;padding:8px;border-radius:8px;cursor:pointer;font-weight:600;color:var(--muted)}.auth .tabs button[aria-selected=true]{background:var(--card2);color:var(--fg)}.linkbtn{background:none;border:0;color:var(--accent);cursor:pointer;padding:0;font-size:14px;text-align:left}.profiles{text-align:center;padding-block:48px}.profiles h1{font-size:30px;margin:0 0 6px}.kids{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:30px 0}.kid{width:150px;display:grid;justify-items:center;gap:10px;background:none;border:0;cursor:pointer;color:var(--fg);padding:8px;border-radius:16px}.kid:hover .big{border-color:var(--accent);transform:translateY(-2px)}.kid .big{width:108px;height:108px;border-radius:28px;display:grid;place-items:center;font-size:46px;background:var(--card);border:2px solid var(--line);transition:transform .15s,border-color .15s}.kid .name{font-weight:700}.kid .sub{font-size:13px;color:var(--muted);margin-top:-8px}.avatars{display:flex;flex-wrap:wrap;gap:8px}.avatars button{width:46px;height:46px;font-size:22px;border-radius:12px;border:2px solid var(--line);background:var(--card2);cursor:pointer}.avatars button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.page-head{padding-block:28px 8px;display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px}.page-head h1{margin:4px 0 0;font-size:28px;letter-spacing:-.015em}.courses{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;padding-block:16px 40px}.course-card{--c: var(--accent);text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;cursor:pointer;display:grid;gap:10px;color:var(--fg);text-decoration:none;position:relative;overflow:hidden}.course-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--c)}.course-card:hover{border-color:var(--c)}.course-card .row{display:flex;align-items:center;gap:12px}.course-card .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-weight:700;font-size:20px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}.course-card h3{margin:0;font-size:18px}.course-card .tag{font-size:13px;color:var(--muted)}.bar{height:8px;background:var(--card2);border-radius:99px;overflow:hidden}.bar>i{display:block;height:100%;background:var(--c, var(--accent));border-radius:99px}.course-card .meta{display:flex;justify-content:space-between;font:13px var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums}.badge{display:inline-block;font:700 11px/1 var(--f-mono);letter-spacing:.05em;text-transform:uppercase;padding:4px 6px;border-radius:5px;background:var(--card2);color:var(--muted)}.course-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;padding-block:12px 48px;align-items:start}.module{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:14px}.module h2{margin:0;font-size:18px}.module p{margin:4px 0 10px;color:var(--muted);font-size:14px}.lesson-row{display:flex;align-items:center;gap:12px;padding:10px;border-radius:10px;text-decoration:none;color:var(--fg)}.lesson-row:hover{background:var(--card2)}.lesson-row.locked{color:var(--dim);cursor:default}.lesson-row.locked:hover{background:none}.lesson-row .st{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;flex:none;border:2px solid var(--line);color:var(--muted)}.lesson-row.done .st{background:var(--ok);border-color:var(--ok);color:#04130d}.lesson-row.current .st{border-color:var(--accent);color:var(--accent)}.lesson-row .t{flex:1;min-width:0}.lesson-row .k{font:13px var(--f-mono);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.side-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;position:sticky;top:74px;display:grid;gap:12px}.rank{display:flex;align-items:center;gap:12px}.rank .xp{font:700 28px var(--f-ui)}.lesson-head{padding-block:18px 10px}.lesson-head h1{font-size:22px;margin:2px 0 12px;letter-spacing:-.01em}.steps{display:flex;flex-wrap:wrap;gap:6px}.stepbtn{width:34px;height:34px;border-radius:9px;border:2px solid var(--line);background:var(--card);cursor:pointer;display:grid;place-items:center;color:var(--muted);font-size:14px;padding:0}.stepbtn.text{border-style:dashed}.stepbtn.solved{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.stepbtn.failed{border-color:var(--err);color:var(--err)}.stepbtn[aria-current=step]{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent);color:var(--fg)}.step-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin-top:14px}.step-card h2{margin:0 0 10px;font-size:20px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.prose{max-width:74ch}.prose p{margin:0 0 12px}.prose h4{margin:18px 0 8px;font-size:17px}.prose ul{margin:0 0 12px;padding-left:22px}.prose li{margin:3px 0}.prose code{font:.9em var(--f-mono);background:var(--code-bg);border:1px solid var(--line);padding:1px 5px;border-radius:5px}.prose pre,pre.mono{font:14px/1.55 var(--f-mono);background:var(--code-bg);border:1px solid var(--line);padding:12px 14px;border-radius:10px;overflow-x:auto;margin:0 0 12px;white-space:pre}.prose blockquote{margin:0 0 12px;padding:10px 14px;border-left:3px solid var(--info);background:var(--info-soft);border-radius:0 10px 10px 0}.prose blockquote[data-kind=\446\456\43a\430\432\43e]{border-color:var(--c-space)}.prose blockquote[data-kind=\432\430\436\43b\438\432\43e],.prose blockquote[data-kind=\43f\430\441\442\43a\430]{border-color:var(--accent);background:var(--accent-soft)}.prose img.ill{display:block;margin:6px 0 14px;border-radius:12px;border:1px solid var(--line);max-height:340px;background:var(--code-bg)}.answer-zone{margin-top:18px;padding-top:18px;border-top:1px dashed var(--line);display:grid;gap:12px}.editor{width:100%;min-height:190px;font:15px/1.55 var(--f-mono);background:var(--code-bg);border:1px solid var(--line);border-radius:12px;padding:12px 14px;resize:vertical;tab-size:4;outline:none;white-space:pre;overflow:auto}.editor:focus{border-color:var(--accent)}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.actions .grow{flex:1}.result{border-radius:12px;padding:14px 16px;display:grid;gap:6px}.result.ok{background:var(--ok-soft);border:1px solid color-mix(in srgb,var(--ok) 45%,transparent)}.result.bad{background:var(--err-soft);border:1px solid color-mix(in srgb,var(--err) 45%,transparent)}.result.info{background:var(--card2);border:1px solid var(--line)}.result .h{font-weight:700}.result pre{margin:0;font:14px/1.5 var(--f-mono);white-space:pre-wrap;background:color-mix(in srgb,var(--bg) 40%,transparent);padding:8px 10px;border-radius:8px}.result .lbl{font-size:13px;color:var(--muted);font-weight:600;margin-top:4px}.options{display:grid;gap:8px}.option{display:flex;gap:10px;align-items:flex-start;text-align:left;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--card2);cursor:pointer;color:var(--fg)}.option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.option.right{border-color:var(--ok);background:var(--ok-soft)}.option .dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--muted);flex:none;margin-top:3px}.option[aria-pressed=true] .dot{border-color:var(--accent);background:radial-gradient(var(--accent) 45%,transparent 50%)}.ans-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ans-row .input{max-width:360px;font-family:var(--f-mono)}.hintbox{background:var(--info-soft);border-radius:12px;padding:12px 14px;font-size:15px}.lesson-nav{display:flex;justify-content:space-between;gap:10px;margin:16px 0 60px;flex-wrap:wrap}.py-status{font:13px var(--f-mono);color:var(--muted)}.trainer-q{font:17px/1.6 var(--f-mono);white-space:pre-wrap;background:var(--code-bg);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.trainer-q.prose-q{font-family:var(--f-ui)}.dots{display:flex;gap:5px;flex-wrap:wrap}.dots i{width:22px;height:8px;border-radius:4px;background:var(--card2)}.dots i.ok{background:var(--ok)}.dots i.bad{background:var(--err)}.dots i.cur{background:var(--accent)}.done-card{text-align:center;padding:28px 20px}.done-card .big{font-size:46px}.rate{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}.fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:30;border-radius:999px;box-shadow:0 8px 24px #00000059}.modal-bg{position:fixed;inset:0;background:#03060f99;z-index:40;display:grid;place-items:center;padding:16px}.modal{width:min(520px,100%);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;display:grid;gap:14px;max-height:90vh;overflow:auto}.modal h2{margin:0;font-size:20px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--card2);border-radius:999px;padding:7px 12px;cursor:pointer;font-size:14px}.chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.kid-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:14px;display:grid;gap:14px}.kid-panel .head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.kid-panel .head .ava{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:26px;background:var(--card2)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line)}.table th{color:var(--muted);font-weight:600}.table td.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.scroll-x{overflow-x:auto}.week{display:flex;gap:6px;align-items:flex-end;height:70px}.week div{flex:1;display:grid;gap:4px;justify-items:center;font-size:11px;color:var(--muted)}.week i{width:100%;max-width:30px;background:var(--accent);border-radius:4px 4px 0 0;min-height:2px}.center{display:grid;place-items:center;min-height:50vh;color:var(--muted)}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:3s}.kid .big{transition:none}}@media(max-width:860px){.hero{grid-template-columns:1fr;padding-top:32px}.orbit{max-width:260px;order:-1}.course-layout{grid-template-columns:1fr}.side-card{position:static;order:-1}.step-card{padding:18px 16px}.crumbs,.kbd-hint{display:none}.lesson-nav{margin-bottom:90px}}
/*# sourceMappingURL=app.css.map */
