@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,system-ui,sans-serif;color:#e8ecf7;background:#0a0e1a;font-synthesis:none;--bg:#0a0e1a;--panel:#111728;--line:#283248;--muted:#8c98b3;--accent:#a78bfa;--cyan:#5eead4;--white:#f6f7fb}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% -20%,#1c2548 0,#0a0e1a 46%);min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.app{display:flex;min-height:100vh}aside{width:244px;flex-shrink:0;border-right:1px solid #202940;background:#0c1120;display:flex;flex-direction:column;padding:28px 16px;position:relative;z-index:4}.brand{display:flex;align-items:center;gap:10px;margin:0 12px 56px}.brand-mark{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#b49cff,#5eead4);color:#11152a;display:grid;place-items:center;font-weight:800;font-size:19px}.brand b{display:block;font-size:14px;letter-spacing:-.3px}.brand span{display:block;font:10px DM Mono;letter-spacing:2px;color:var(--muted);margin-top:3px}nav{display:grid;gap:7px}.nav-item{height:46px;background:transparent;border:0;border-radius:10px;padding:0 14px;display:flex;align-items:center;gap:13px;color:var(--muted);text-align:left;position:relative}.nav-item svg{width:18px}.nav-item:hover,.nav-item.active{background:#171e33;color:var(--white)}.nav-item.active{color:var(--cyan)}.nav-item i{position:absolute;right:0;width:3px;height:19px;border-radius:3px;background:var(--cyan)}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding:18px 7px 0}.avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#273253;color:#c7bbff;font-size:12px;font-weight:800}.user-mini{display:grid;flex:1;font-size:11px}.user-mini span{color:var(--muted);font:10px DM Mono;margin-top:3px}.icon-btn{border:0;background:transparent;color:var(--muted);display:grid;place-items:center;padding:7px}.icon-btn:hover{color:var(--white)}main{flex:1;min-width:0}header{height:78px;border-bottom:1px solid #202940;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.breadcrumb span{color:var(--white)}.header-actions{display:flex;align-items:center;gap:18px}.xp-chip{display:flex;gap:6px;align-items:center;color:#f4c875;font:11px DM Mono}.page{max-width:1320px;margin:auto;padding:48px 54px 90px}.eyebrow,.tag{font:10px DM Mono;letter-spacing:1.8px;color:var(--cyan)}.tag{font-size:9px;letter-spacing:1px;color:#c0b2ff}.hero{display:flex;justify-content:space-between;align-items:center;min-height:250px}.hero h1{font-size:58px;line-height:1.02;letter-spacing:-3px;margin:12px 0 18px}.hero h1 em{font-style:normal;color:var(--accent)}.hero-copy,.page-title p{color:var(--muted);font-size:15px;max-width:490px;line-height:1.7}.hero-orbit{width:270px;height:190px;position:relative;display:grid;place-items:center;border:1px dashed #34405c;border-radius:50%;transform:rotate(-11deg)}.orbit-core{width:108px;height:108px;border-radius:50%;background:#25204c;box-shadow:0 0 55px #6b51c955;display:grid;place-items:center;align-content:center;color:#d6c8ff}.orbit-core span{font:9px DM Mono;margin-top:7px}.hero-orbit>b{position:absolute;font:9px DM Mono;color:var(--muted);background:var(--bg);padding:4px 7px}.hero-orbit>b:first-of-type{top:12px;right:9px}.hero-orbit>b:last-of-type{bottom:15px;left:8px}.welcome{display:flex;justify-content:space-between;align-items:center;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}h2,h3,p{margin-top:0}.welcome h2{margin:8px 0 0;font-size:21px}.button{border:1px solid var(--line);border-radius:8px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:700;background:transparent}.button.primary{background:var(--white);color:#12172a;border-color:var(--white)}.button.dark{background:#262d45;border-color:#4b5672}.button.ghost{color:var(--white)}.button:disabled{opacity:.45;cursor:not-allowed}.text-btn{border:0;background:transparent;color:var(--cyan);font-size:11px;display:inline-flex;align-items:center;gap:4px}.center{justify-content:center;width:100%;margin-top:17px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 55px}.stat,.panel,.module-card,.course-row,.practice-card,.glossary-card,.achievement{background:linear-gradient(145deg,#131b2e,#101525);border:1px solid var(--line);border-radius:12px}.stat{padding:20px}.stat-top{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.stat-top svg{color:#f4c875}.stat strong{display:block;font-size:29px;margin:13px 0 5px;letter-spacing:-1px}.stat small,.muted{color:var(--muted);font-size:11px}.progress{height:5px;background:#252e45;border-radius:9px;overflow:hidden;margin-top:16px}.progress i,.big-progress i{display:block;height:100%;background:linear-gradient(90deg,#a78bfa,#5eead4);border-radius:9px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px}.section-head h2{margin:7px 0 0;font-size:22px}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.module-card{padding:19px;text-align:left;min-height:225px;transition:.2s;display:flex;flex-direction:column}.module-card:hover,.course-row:hover,.practice-card:hover,.glossary-card:hover{border-color:#566280;transform:translateY(-2px)}.module-number{font:11px DM Mono;width:37px;height:37px;border-radius:9px;display:grid;place-items:center;margin-bottom:28px}.c-0{background:#38286a;color:#c9b7ff}.c-1{background:#124658;color:#8af3de}.c-2{background:#5d4420;color:#ffd48e}.c-3{background:#562d58;color:#f7a8ef}.module-card h3{margin:7px 0 8px;font-size:16px}.module-card p{color:var(--muted);font-size:11px;line-height:1.55;margin-bottom:auto}.card-foot{border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.card-foot span{display:flex;gap:5px;align-items:center}.bottom-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:14px;margin-top:52px}.panel{padding:22px}.next-panel{display:flex;align-items:center;gap:15px}.panel-icon{width:45px;height:45px;border-radius:10px;background:#24325a;display:grid;place-items:center;color:var(--cyan)}.next-panel h3{margin:7px 0 5px}.next-panel p,.quote p{color:var(--muted);font-size:12px}.next-panel .button{margin-left:auto}.quote{display:flex;align-items:center;gap:14px}.quote svg{color:#f4c875;flex-shrink:0}.quote p{line-height:1.6;margin:0}.quote span{font:9px DM Mono;color:#58647f;white-space:nowrap}.page-title{margin-bottom:36px}.page-title h1{font-size:42px;letter-spacing:-2px;margin:9px 0}.course-list{display:grid;gap:12px}.course-row{display:flex;align-items:center;gap:24px;padding:24px}.course-row .module-number{margin:0;width:48px;height:48px;flex-shrink:0}.course-main{flex:1}.course-row-top{display:flex;justify-content:space-between}.course-row h2{font-size:20px;margin:10px 0 5px}.course-row p{color:var(--muted);font-size:12px;margin-bottom:16px}.lesson-links{display:flex;gap:7px;flex-wrap:wrap}.lesson-links button{background:#1a2338;border:1px solid #2b3854;border-radius:7px;padding:8px 10px;color:#cbd4e9;font-size:10px;display:flex;gap:6px;align-items:center}.round-arrow{width:39px;height:39px;border:1px solid var(--line);background:transparent;border-radius:50%;display:grid;place-items:center}.back{border:0;background:transparent;color:var(--muted);font-size:12px;margin-bottom:24px}.lesson-layout{display:grid;grid-template-columns:minmax(0,760px) 250px;gap:42px}.lesson h1{font-size:42px;letter-spacing:-2px;margin:18px 0 10px}.lesson-meta{display:flex;gap:17px;color:var(--muted);font-size:11px;align-items:center}.lesson-meta span:last-child{display:flex;gap:5px;align-items:center}.lead{font-size:17px;color:#c7d0e4;line-height:1.6}.callout{border:1px solid #3c386e;background:#1c1a3d;padding:16px;display:flex;gap:12px;color:#d8d0ff;border-radius:9px;margin:27px 0}.callout svg{color:#b49cff}.callout p{margin:4px 0 0;color:#b5add4;font-size:12px}.lesson h2{font-size:21px;margin:32px 0 12px}.lesson article p{color:#aab5cd;line-height:1.8;font-size:14px}.example{padding:20px;border:1px solid #293752;background:#0d1424;border-radius:9px;margin:24px 0}.example code{display:block;color:#9fe6d8;font:12px DM Mono;margin-top:12px;line-height:1.7}.split-notes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.split-notes>div{background:#151e32;padding:17px;border-radius:8px}.split-notes b{font-size:11px;color:#f4c875}.split-notes p{margin:7px 0 0!important;font-size:12px!important}.exercise{margin-top:38px;padding:23px;border:1px solid #39445d;background:#141d30;border-radius:12px}.exercise-head{display:flex;justify-content:space-between;font:10px DM Mono;color:#f4c875}.exercise h2{margin:18px 0;font-size:18px}.options{display:grid;gap:8px}.options button{background:#1b263e;border:1px solid #2e3b57;border-radius:7px;padding:13px;text-align:left;display:flex;align-items:center;gap:11px;font-size:12px}.options button:hover,.options button.selected{border-color:#a78bfa;background:#2a2750}.options button span{width:22px;height:22px;border-radius:5px;background:#303b58;display:grid;place-items:center;font:10px DM Mono}.answer{display:flex;gap:7px;align-items:flex-start;margin-top:13px;padding:12px;border-radius:7px;font-size:11px;line-height:1.5}.answer.correct{background:#143b36;color:#9fe6d8}.answer.wrong{background:#442533;color:#ffb3ba}.coach-box{margin-top:24px;padding:20px;background:linear-gradient(135deg,#211c48,#16283d);border:1px solid #514c88;border-radius:12px}.coach-box>div:first-child{display:flex;align-items:center;gap:8px}.coach-box>div:first-child svg{color:#c9b7ff}.coach-box>div:first-child span{color:#9aa6bf;font-size:10px;margin-left:auto}.coach-box textarea,.project-editor textarea{width:100%;min-height:96px;resize:vertical;background:#10162a;border:1px solid #3c416a;border-radius:7px;margin:17px 0 10px;padding:12px;color:var(--white);font-size:12px}.coach-result{margin-top:18px}.coach-result>strong{font-size:35px;color:#c9b7ff}.coach-result>strong small{font:11px DM Mono;color:#8995ac}.coach-result p{font-size:12px;color:#c0cadc}.dimension{display:flex;align-items:center;gap:9px;margin:8px 0;font-size:10px}.dimension span:first-child{width:78px}.dimension span:last-child{width:25px;text-align:right}.dimension i{height:4px;background:#39425b;flex:1}.dimension b{display:block;height:100%;background:#5eead4}.lesson-side{padding-top:95px}.side-card{padding:18px;border:1px solid var(--line);border-radius:10px;margin-bottom:12px;background:#101728}.side-card strong{display:block;font-size:13px;margin:11px 0}.side-card p{color:var(--muted);font-size:11px;line-height:1.6}.side-card small{color:var(--muted);font-size:10px}.lesson-actions{display:flex;justify-content:space-between;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);max-width:1052px}.practice-grid,.glossary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.practice-card,.glossary-card{padding:20px}.practice-card h3{font-size:15px;margin:15px 0 8px}.practice-card p,.glossary-card p{color:var(--muted);font-size:11px;line-height:1.7}.practice-card .button{margin-top:12px}.project-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}.project-editor h2{margin:15px 0 7px}.project-editor p{font-size:12px;color:var(--muted);line-height:1.6}.checklist .eyebrow{display:block;margin-bottom:13px}.check-row{display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line);padding:13px 0}.check-row b{font-size:12px;flex:1}.check-row>span:last-child{font:10px DM Mono;color:var(--muted)}.check{width:19px;height:19px;border:1px solid #43506c;border-radius:5px}.check.done{background:#5eead4;color:#101c2b;display:grid;place-items:center;border:0;font-size:12px}.search-box{display:flex;align-items:center;gap:10px;background:#111a2d;border:1px solid var(--line);border-radius:9px;padding:0 15px;margin-bottom:17px;max-width:470px}.search-box svg{color:var(--muted)}.search-box input{flex:1;background:transparent;border:0;padding:13px 0;color:var(--white);font-size:12px}.glossary-card h3{font-size:15px;color:#e5d9ff}.progress-hero{display:flex;align-items:center;gap:50px}.progress-hero strong{display:block;font-size:55px;letter-spacing:-3px;margin-top:7px}.progress-hero p{color:var(--muted);font-size:11px}.big-progress{height:13px;background:#252e45;border-radius:9px;flex:1}.achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:15px}.achievement{display:flex;align-items:center;gap:13px;padding:15px}.achievement>span{font-size:26px;color:#f4c875}.achievement h3{font-size:13px;margin:0 0 4px}.achievement p{font-size:10px;color:var(--muted);margin:0}.achievement svg{margin-left:auto;color:#5eead4}.xp-panel{display:flex;gap:15px;align-items:center;margin-top:15px}.xp-panel>svg{color:#f4c875}.xp-panel h2{margin:6px 0;font-size:18px}.empty-admin{text-align:center;margin-top:17px;color:var(--muted)}.empty-admin svg{color:var(--cyan)}.empty-admin h2{color:var(--white);font-size:18px;margin:14px 0 6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050813cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10;display:grid;place-items:center}.auth-modal{width:min(410px,calc(100% - 32px));background:#131b2e;border:1px solid #3b4866;border-radius:13px;padding:30px;position:relative;box-shadow:0 25px 80px #0008}.close{position:absolute;right:16px;top:16px;background:transparent;border:0;color:var(--muted)}.auth-modal h2{margin:10px 0 6px}.auth-modal p{font-size:12px;color:var(--muted);line-height:1.6}.auth-modal input{width:100%;padding:12px;margin:5px 0;background:#0d1424;border:1px solid #34415c;color:var(--white);border-radius:7px;font-size:12px}.full{width:100%;margin-top:8px}.notice,.error{padding:10px;border-radius:7px;font-size:11px;margin:12px 0}.notice{background:#322c16;color:#f6d58b}.error{background:#472638;color:#ffbec1}.mobile-menu{display:none}@media(max-width:1050px){aside{width:210px}.page{padding:38px 30px}.module-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:47px}.hero-orbit{transform:scale(.8) rotate(-11deg)}}@media(max-width:700px){aside{position:fixed;left:-245px;top:0;bottom:0;transition:.2s;box-shadow:15px 0 50px #0008}aside.open{left:0}.mobile-menu{display:grid;margin-right:10px}header{padding:0 18px}.breadcrumb{flex:1}.header-actions{gap:8px}.header-actions .text-btn{display:none}.page{padding:28px 18px 60px}.hero{display:block;min-height:auto}.hero h1{font-size:40px;letter-spacing:-2px}.hero-orbit{display:none}.welcome{display:block}.welcome h2{margin-bottom:18px}.stats-grid{grid-template-columns:1fr;margin-bottom:37px}.module-grid,.practice-grid,.glossary-grid,.achievement-grid,.bottom-grid,.project-grid{grid-template-columns:1fr}.next-panel{flex-wrap:wrap}.next-panel .button{margin-left:60px}.page-title h1{font-size:34px}.course-row{padding:18px;gap:14px;align-items:flex-start}.course-row .module-number{width:39px;height:39px}.course-row h2{font-size:17px}.round-arrow{display:none}.lesson-layout{display:block}.lesson h1{font-size:34px}.lesson-side{padding-top:25px}.split-notes{grid-template-columns:1fr}.lesson-actions{position:sticky;bottom:0;background:#0a0e1a;padding:14px 0;z-index:3}.progress-hero{display:block}.big-progress{margin-top:24px}.quote{display:block}.quote svg{margin-bottom:10px}}.track-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.track-card{padding:24px;background:linear-gradient(145deg,#151e33,#101626);border:1px solid var(--line);border-radius:14px}.track-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#28234f;color:var(--cyan);margin-bottom:20px}.track-card h2{margin:10px 0 8px;font-size:21px}.track-card p{color:var(--muted);font-size:12px;line-height:1.7;min-height:42px}.track-meta{display:flex;justify-content:space-between;color:var(--muted);font:10px DM Mono;margin:20px 0 8px}.track-meta span:first-child{display:flex;align-items:center;gap:5px}.track-modules{display:grid;gap:6px;margin-top:18px}.track-modules button{display:flex;justify-content:space-between;align-items:center;padding:11px 12px;background:#1a253c;border:1px solid #2d3b58;border-radius:7px;text-align:left;font-size:11px}.track-modules button:hover{border-color:var(--accent)}.track-outcome{display:flex;gap:7px;align-items:flex-start;border-top:1px solid var(--line);margin-top:18px;padding-top:15px;color:#b9c5da;font-size:11px;line-height:1.5}.track-outcome svg{color:var(--cyan);flex-shrink:0}.lesson-journey{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:35px}.journey-map{display:flex;align-items:center;gap:10px;padding:15px 18px;border:1px solid var(--line);border-radius:12px;background:#11182a}.journey-map>i{width:35px;height:1px;background:#34405b}.journey-node{display:grid;justify-items:center;gap:6px;color:var(--muted);font-size:10px}.journey-node b{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#27314c;font:11px DM Mono}.journey-node.active{color:var(--cyan)}.journey-node.active b{background:#244b51;color:var(--cyan)}.lesson-rich{min-width:0}.learning-section{padding:20px 0;border-bottom:1px solid var(--line)}.section-kicker{display:flex;align-items:center;gap:10px;margin-bottom:10px}.section-kicker span{color:var(--accent);font:10px DM Mono}.section-kicker b{font-size:14px}.learning-section>p{color:#b6c1d6;line-height:1.75;font-size:13px}.learning-section .example{margin:15px 0 0}.warning{display:flex;gap:8px;align-items:center;margin-top:15px;padding:11px;background:#322817;border:1px solid #624c23;border-radius:7px;color:#f2cc86;font-size:11px}.practice-lab{margin-top:30px;padding:22px;border:1px solid #3a416f;border-radius:12px;background:linear-gradient(135deg,#1b193d,#142536)}.lab-heading,.section-heading{display:flex;justify-content:space-between;align-items:flex-start}.lab-heading svg{color:var(--cyan)}.practice-lab h2,.section-heading h2{font-size:19px;margin:8px 0}.practice-lab p{color:#b7c1d3;font-size:12px;line-height:1.6}.practice-lab textarea,.checkpoint textarea{width:100%;min-height:92px;resize:vertical;background:#0d1424;border:1px solid #3d4866;border-radius:8px;color:var(--white);padding:12px;font-size:12px}.success-criteria{display:flex;gap:7px;align-items:flex-start;color:#9fe6d8;font-size:11px;margin-top:12px;line-height:1.5}.checkpoints{margin-top:35px}.checkpoint-count{font:11px DM Mono;color:var(--cyan)}.checkpoint{padding:18px 0;border-bottom:1px solid var(--line)}.checkpoint-top{display:flex;align-items:center;gap:9px}.checkpoint-top>svg{margin-left:auto;color:var(--cyan)}.checkpoint-number{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#2b2752;color:#c9b7ff;font:10px DM Mono}.checkpoint h3{font-size:14px;line-height:1.5;margin:14px 0}.checkpoint-options{display:grid;gap:7px}.checkpoint-options button{display:flex;align-items:center;gap:10px;background:#172238;border:1px solid #2b3956;border-radius:7px;padding:11px;text-align:left;font-size:11px}.checkpoint-options button:hover,.checkpoint-options button.selected{border-color:var(--accent);background:#29264d}.checkpoint-options button span{width:22px;height:22px;display:grid;place-items:center;border-radius:5px;background:#2a3652;font:10px DM Mono}.checkpoint .answer{margin-top:10px}.action-pair{display:flex;gap:8px}.saved-note{color:var(--cyan);font-size:11px}.side-challenge{margin-top:12px}.side-challenge h3{font-size:14px;line-height:1.4;margin:10px 0}.side-challenge .text-btn{padding:0}@media(max-width:700px){.track-grid{grid-template-columns:1fr}.lesson-journey{display:block}.journey-map{margin-top:22px;justify-content:center}.journey-map>i{width:22px}.action-pair{flex-wrap:wrap;justify-content:flex-end}}.module-number.c-4{background:#214b62;color:#91e8ff}.module-number.c-5{background:#49365f;color:#e0b8ff}.module-number.c-6{background:#245146;color:#a5f2d4}.module-number.c-7{background:#624027;color:#ffd48e}.admin-students{margin-top:42px}.student-grid{display:grid;gap:9px}.student-card{width:100%;display:flex;align-items:center;gap:13px;text-align:left;padding:15px 17px;background:#131b2e;border:1px solid var(--line);border-radius:10px}.student-card:hover,.student-card.selected{border-color:#68759b;background:#1a2440}.student-main{display:grid;gap:4px;flex:1}.student-main b{font-size:12px}.student-main small,.student-stat small{color:var(--muted);font-size:10px}.student-stat{display:grid;justify-items:end;gap:3px;min-width:55px}.student-stat strong{font-size:14px;color:var(--cyan)}.student-card>svg{color:var(--muted)}.student-detail{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.student-detail h2{margin:8px 0 4px}.student-detail p{color:var(--muted);font-size:12px}.detail-stats{display:flex;gap:24px;color:var(--muted);font-size:11px}.detail-stats b{display:block;color:var(--white);font-size:20px;margin-bottom:4px}.admin-activity{margin-top:18px}.admin-activity .eyebrow{display:block;margin-bottom:10px}@media(max-width:700px){.student-card{flex-wrap:wrap}.student-main{min-width:calc(100% - 55px)}.student-detail{display:block}.detail-stats{display:grid;gap:14px;margin-top:18px}}
