@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_bc57af2e-module__StJfJa__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_bc57af2e-module__StJfJa__variable{--font-space:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_8be3b53a-module__CxiPNW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_8be3b53a-module__CxiPNW__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--ink:#141323;--muted:#66647a;--paper:#f6f5fb;--card:#fff;--purple:#6c5ce7;--purple-dark:#4d3cc8;--mint:#23d5ab;--yellow:#ffd166;--red:#ff5c7a;--line:#e5e2ef;--shadow:0 18px 55px #1f19491f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-space),sans-serif;margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{transition:all .2s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #6c5ce759}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-weight:800;display:flex}.brand>span{background:var(--purple);color:#fff;width:38px;height:38px;font-family:var(--font-mono);box-shadow:5px 5px 0 var(--mint);border-radius:11px;place-items:center;font-size:14px;display:grid}.primary-button,.secondary-button,.ghost-button{cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;padding:11px 18px;font-weight:750;display:inline-flex}.primary-button{background:var(--purple);color:#fff;box-shadow:0 7px 0 var(--purple-dark)}.primary-button:hover{box-shadow:0 9px 0 var(--purple-dark);transform:translateY(-2px)}.primary-button:active{box-shadow:0 3px 0 var(--purple-dark);transform:translateY(4px)}.primary-button:disabled{opacity:.65;cursor:not-allowed}.secondary-button{border:1px solid var(--line);background:#fff}.ghost-button{border:1px solid var(--line);background:0 0}.large{padding:15px 23px}.full{width:100%}.eyebrow,.section-kicker{font-family:var(--font-mono);letter-spacing:.12em;color:var(--purple);font-size:12px;font-weight:800}.landing{background:linear-gradient(135deg,#fbfaff 0 62%,#efedff 62%);min-height:100vh}.landing-nav{justify-content:space-between;align-items:center;max-width:1180px;margin:auto;padding:25px 24px;display:flex}.landing-nav>div:last-child{gap:12px;display:flex}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;max-width:1180px;margin:auto;padding:70px 24px 90px;display:grid}.hero h1{letter-spacing:-.07em;margin:16px 0 25px;font-size:clamp(48px,7vw,82px);line-height:.95}.hero h1 em{color:var(--purple);font-style:normal}.hero-copy>p:not(.eyebrow){color:var(--muted);max-width:620px;font-size:19px;line-height:1.65}.hero-actions{gap:13px;margin:32px 0;display:flex}.hero-stats{color:var(--muted);gap:28px;font-size:13px;display:flex}.hero-stats span{flex-direction:column;display:flex}.hero-stats b{color:var(--ink);font-size:20px}.hero-console{color:#eee;background:#171626;border-radius:20px;overflow:hidden;transform:rotate(1deg);box-shadow:22px 25px #d7d1ff,0 28px 70px #16124045}.console-bar{background:#242238;align-items:center;gap:7px;height:46px;padding:0 15px;display:flex}.console-bar i{background:#ff6b6b;border-radius:50%;width:11px;height:11px}.console-bar i:nth-child(2){background:#ffd166}.console-bar i:nth-child(3){background:#23d5ab}.console-bar span{font:12px var(--font-mono);color:#aaa6c2;margin-left:10px}.hero-console pre{font:15px/1.9 var(--font-mono);white-space:pre-wrap;margin:0;padding:26px 30px 35px}.purple{color:#c792ea}.blue{color:#82aaff}.green{color:#c3e88d}.orange{color:#f78c6c}.muted{color:#68647f}.console-output{font-family:var(--font-mono);border-top:1px solid #35324d;flex-direction:column;gap:12px;padding:17px 30px 24px;display:flex}.console-output span{color:#77738e;font-size:10px}.console-output b{color:var(--mint)}.console-output i{animation:1s infinite blink}@keyframes blink{50%{opacity:0}}.feature-strip{grid-template-columns:repeat(4,1fr);max-width:1180px;margin:0 auto 70px;padding:0 24px;display:grid}.feature-strip article{border:1px solid var(--line);background:#ffffffbf;padding:27px}.feature-strip article:first-child{border-radius:16px 0 0 16px}.feature-strip article:last-child{border-radius:0 16px 16px 0}.feature-strip article>b{font-family:var(--font-mono);color:var(--purple)}.feature-strip h2{margin:14px 0 7px;font-size:18px}.feature-strip p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.auth-shell{grid-template-columns:minmax(400px,640px) 1fr;min-height:100vh;display:grid;position:relative}.auth-brand{z-index:2;position:absolute;top:28px;left:35px}.auth-card{background:#fff;padding:130px clamp(35px,7vw,110px) 60px}.auth-card h1{letter-spacing:-.05em;margin:12px 0;font-size:46px}.auth-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.auth-form{margin-top:34px}.field{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.field label{font-size:14px;font-weight:750}.field input,.field select{border:1px solid var(--line);background:#faf9fe;border-radius:12px;padding:14px 15px}.field small{color:var(--muted)}.field-error,.form-message{color:#b42d4b!important}.form-message{font-size:14px}.form-switch{text-align:center!important;font-size:14px!important}.form-switch a{color:var(--purple);font-weight:800}.auth-aside{color:#fff;text-align:center;background:linear-gradient(145deg,#17152e,#40358d);flex-direction:column;justify-content:center;align-items:center;padding:60px;display:flex;overflow:hidden}.auth-aside>span{font:12px var(--font-mono);letter-spacing:.2em;color:var(--mint)}.auth-aside h2{letter-spacing:-.05em;max-width:650px;font-size:clamp(30px,4vw,54px);line-height:1.05}.auth-aside.trainer{background:linear-gradient(145deg,#11352f,#175c50)}.pixel-orb{background:var(--yellow);width:130px;height:130px;color:var(--ink);font:800 34px var(--font-mono);box-shadow:18px 18px 0 var(--mint);border-radius:32px;place-items:center;margin-top:35px;display:grid;transform:rotate(-7deg)}.app-header{border-bottom:1px solid var(--line);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 max(25px,50vw - 590px);display:flex;position:sticky;top:0}.header-user{align-items:center;gap:18px;display:flex}.header-user>span{text-align:right;flex-direction:column;font-size:13px;display:flex}.header-user small{color:var(--muted)}.dashboard{max-width:1180px;margin:auto;padding:52px 24px 90px}.dashboard-hero{justify-content:space-between;align-items:flex-end;margin-bottom:34px;display:flex}.dashboard-hero h1{letter-spacing:-.05em;margin:7px 0;font-size:46px}.dashboard-hero p{color:var(--muted)}.trainer-hero{color:#fff;background:#17162a;border-radius:20px;align-items:center;padding:35px}.trainer-hero p{color:#b9b5d2}.class-badge{text-align:center;color:var(--mint);font-size:54px;font-weight:800}.class-badge small{color:#fff;font-size:12px;display:block}.stat-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:58px;display:grid}.stat-grid article{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;padding:24px;display:flex}.stat-grid span{font:11px var(--font-mono);color:var(--muted);letter-spacing:.1em}.stat-grid b{margin:9px 0 2px;font-size:30px}.stat-grid small{color:var(--muted)}.section-title{justify-content:space-between;align-items:flex-end;display:flex}.section-title h2{margin:5px 0;font-size:32px}.section-title>span{font:800 24px var(--font-mono);color:var(--purple)}.progress-track{background:#dedbea;border-radius:99px;height:8px;margin:18px 0 27px;overflow:hidden}.progress-track i{background:linear-gradient(90deg,var(--purple),var(--mint));border-radius:99px;height:100%;display:block}.lesson-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.level-card{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px;display:grid}.level-card:hover{box-shadow:var(--shadow);border-color:#c7c0f7;transform:translateY(-3px)}.level-card.done{background:#f2fffb;border-color:#b8efdf}.level-icon{background:#f0eeff;border-radius:15px;place-items:center;width:58px;height:58px;font-size:27px;display:grid}.level-card small,.level-card em{font:10px var(--font-mono);color:var(--purple);letter-spacing:.08em}.level-card h3{margin:4px 0;font-size:18px}.level-card p{color:var(--muted);margin:0 0 7px;font-size:13px}.level-card em{color:var(--muted);font-style:normal}.level-card>b{color:var(--purple);font-size:22px}.roster{margin-top:20px}.student-table{border:1px solid var(--line);background:#fff;border-radius:16px;margin-top:20px;overflow:hidden}.table-row{border-top:1px solid var(--line);grid-template-columns:1.4fr .8fr .5fr 1fr;align-items:center;gap:20px;padding:18px 22px;font-size:14px;display:grid}.table-row:first-child{border:0}.table-row>span:first-child{flex-direction:column;display:flex}.table-row small{color:var(--muted)}.table-head{font:700 11px var(--font-mono);color:var(--muted);background:#f4f2fb}.mini-progress{background:#ddd9eb;border-radius:99px;width:70px;height:6px;margin-right:9px;display:inline-block;overflow:hidden}.mini-progress u{background:var(--mint);height:100%;display:block}.empty-state{text-align:center;color:var(--muted);background:#fff;border:1px dashed #c8c3d9;border-radius:18px;padding:60px}.empty-state span{font-size:50px}.empty-state h3{color:var(--ink)}.lesson-page{max-width:920px;margin:auto;padding:45px 24px 90px}.lesson-hero{grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin-bottom:30px;display:grid}.lesson-big-icon{background:#ebe8ff;border-radius:22px;place-items:center;width:82px;height:82px;font-size:40px;display:grid;box-shadow:9px 9px #d2ccff}.lesson-hero h1{letter-spacing:-.05em;margin:3px 0;font-size:42px}.lesson-hero p{color:var(--muted);margin:0}.lesson-meta{text-align:right;font-family:var(--font-mono);flex-direction:column;font-size:12px;display:flex}.lesson-meta b{color:var(--purple);font-size:16px}.lesson-card,.explode-card{border:1px solid var(--line);background:#fff;border-radius:18px;margin-bottom:18px;padding:28px}.lesson-card h2,.explode-card h2{letter-spacing:-.03em;margin:8px 0 12px;font-size:25px}.lesson-card p{color:var(--muted);line-height:1.65}.mission-card{border-left:6px solid var(--yellow)}.code-toolbar{color:#aaa6c2;font:11px var(--font-mono);background:#242238;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:10px 15px;display:flex}.code-toolbar button{color:#fff;cursor:pointer;background:#39364f;border:0;border-radius:7px;padding:7px 10px}.lesson-card pre{color:#e9e7f4;font:14px/1.7 var(--font-mono);background:#171626;border-radius:0 0 12px 12px;margin:0 0 18px;padding:22px;overflow:auto}.quiz-options{gap:10px;display:grid}.quiz-options button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#faf9fe;border-radius:11px;padding:14px}.quiz-options button:hover{border-color:var(--purple)}.quiz-options .correct{border-color:var(--mint);background:#e9fff8}.quiz-options .wrong{border-color:var(--red);background:#fff0f3}.quiz-feedback{background:#f4f2ff;border-radius:10px;padding:14px;color:var(--ink)!important}.challenge-card{border-left:6px solid var(--mint)}details{margin:20px 0}summary{cursor:pointer;color:var(--purple);font-weight:800}details pre{margin-top:15px!important}.lesson-footer{text-align:center;padding:20px}.lesson-footer a{color:var(--purple);font-weight:800}.explode-card{color:#fff;box-shadow:var(--shadow);background:#171626;border:0;overflow:hidden}.explode-card .section-kicker{color:var(--mint)}.explode-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.explode-heading p{color:#aaa6c2;margin:0}.explode-toggle{color:#fff;cursor:pointer;background:#2d2a44;border:1px solid #4c4869;border-radius:10px;padding:11px 16px}.explode-stage{grid-template-columns:1.4fr .6fr;align-items:center;gap:28px;min-height:390px;padding:30px 0;display:grid}.device-core{perspective:800px;place-items:center;height:300px;display:grid;position:relative}.device-piece{border:2px solid #ffffffbf;border-radius:13px;align-items:center;gap:8px;padding:12px 15px;font-size:13px;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .3s;display:flex;position:absolute;box-shadow:0 12px 25px #0000004d}.device-piece b{width:23px;height:23px;font:12px var(--font-mono);background:#ffffff38;border-radius:7px;place-items:center;display:grid}.device-piece.screen{z-index:5;background:#6653e4;width:270px;height:115px;transform:translateY(-48px)}.device-piece.input{z-index:4;background:#e45278;width:220px;height:75px;transform:translateY(60px)}.device-piece.memory{z-index:3;background:#168f7b;width:150px;height:70px;transform:translate(-55px,5px)}.device-piece.logic{z-index:2;background:#d99b27;width:150px;height:70px;transform:translate(55px,5px)}.device-piece.output{z-index:1;background:#315eaa;width:190px;height:75px;transform:translateY(35px)}.step-1 .screen,.step-2 .screen,.step-3 .screen,.step-4 .screen,.step-5 .screen{transform:translate(-115px,-105px)rotate(-5deg)}.step-2 .input,.step-3 .input,.step-4 .input,.step-5 .input{transform:translate(-125px,105px)rotate(5deg)}.step-3 .memory,.step-4 .memory,.step-5 .memory{transform:translate(130px,-105px)rotate(6deg)}.step-4 .logic,.step-5 .logic{transform:translate(135px,5px)rotate(-5deg)}.step-5 .output{transform:translate(125px,105px)rotate(5deg)}.device-piece.active{filter:brightness(1.18);box-shadow:0 0 0 4px #23d5ab38,0 15px 30px #00000059}.explode-note{background:#242238;border:1px solid #393650;border-radius:14px;flex-direction:column;justify-content:center;min-height:145px;padding:20px;display:flex}.explode-note b{color:var(--mint);margin-bottom:8px;font-size:20px}.explode-note span{color:#c5c1d7;line-height:1.6}.explode-controls{justify-content:space-between;align-items:center;gap:15px;display:flex}.explode-controls>button{color:#fff;cursor:pointer;background:#2b2841;border:1px solid #494565;border-radius:9px;padding:9px 12px}.explode-controls button:disabled{opacity:.4;cursor:not-allowed}.step-dots{gap:8px;display:flex}.step-dots button{cursor:pointer;background:#514d69;border:0;border-radius:50%;width:10px;height:10px;padding:0}.step-dots button.current{background:var(--mint);transform:scale(1.35)}.save-status{text-align:center;color:#77738f;margin-top:12px;display:block}.not-found{text-align:center;place-content:center;min-height:100vh;padding:30px;display:grid}.not-found>span{font:800 100px var(--font-mono);color:var(--purple)}.not-found h1{margin:0;font-size:40px}.not-found p{color:var(--muted)}.not-found a{margin:20px auto}@media (max-width:900px){.hero{grid-template-columns:1fr;padding-top:35px}.hero-console{max-width:600px}.feature-strip{grid-template-columns:1fr 1fr}.feature-strip article:first-child{border-radius:16px 0 0}.feature-strip article:last-child{border-radius:0 0 16px}.auth-shell{grid-template-columns:1fr}.auth-aside{display:none}.lesson-grid,.explode-stage{grid-template-columns:1fr}.table-row{grid-template-columns:1.2fr .8fr .5fr}.table-row>span:last-child{display:none}}@media (max-width:620px){.landing-nav .ghost-button{display:none}.hero{padding-bottom:55px}.hero h1{font-size:50px}.hero-actions,.hero-stats{flex-direction:column}.feature-strip{grid-template-columns:1fr}.feature-strip article{border-radius:0!important}.app-header{padding:0 14px}.app-header .brand{font-size:0}.header-user>span{display:none}.dashboard{padding:34px 16px}.dashboard-hero{flex-direction:column;align-items:flex-start;gap:16px}.dashboard-hero h1{font-size:36px}.stat-grid{grid-template-columns:1fr}.lesson-hero{grid-template-columns:auto 1fr}.lesson-meta{display:none}.lesson-hero h1{font-size:34px}.lesson-page{padding:30px 14px}.explode-heading{flex-direction:column;align-items:flex-start}.explode-stage{padding-top:10px}.device-core{margin:-20px;transform:scale(.8)}.explode-controls{flex-wrap:wrap}.step-dots{order:3;justify-content:center;width:100%}.auth-card{padding:115px 24px 50px}.auth-brand{left:24px}.table-row{grid-template-columns:1fr .7fr}.table-row>span:nth-child(3),.table-head>span:nth-child(3){display:none}}
