@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{color-scheme:dark;font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #07101c;--bg-deep: #050b14;--surface: #0c1827;--surface-2: #101e30;--surface-3: #142438;--line: rgba(154, 177, 210, .14);--line-strong: rgba(154, 177, 210, .25);--text: #f4f8fd;--muted: #91a0b7;--muted-2: #64748b;--violet: #8b7cff;--violet-bright: #a99fff;--sky: #4db8ff;--mint: #43d7a5;--amber: #ffbf54;--orange: #ff855e;--red: #ff6577;--pink: #e77cda;--blue: #5a8dff;--purple: #b270ef;--cyan: #43d9e7;--shadow: 0 24px 70px rgba(0, 0, 0, .28);--radius-sm: 10px;--radius: 16px;--radius-lg: 24px;--type-xs: 12px;--type-sm: 13px;--type-base: 14px;--type-md: 15px;--type-lg: 16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);font-size:var(--type-base);line-height:1.5}body:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 76% -20%,rgba(102,94,255,.11),transparent 36%),radial-gradient(circle at 12% 92%,rgba(23,180,170,.055),transparent 27%)}body:after{content:"";position:fixed;inset:0;z-index:-1;opacity:.22;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 86%);mask-image:linear-gradient(to bottom,black,transparent 86%)}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}:where(a[href],button,input,textarea,select,summary,[role=tab],[role=radio],[tabindex]):focus-visible{outline:3px solid var(--sky);outline-offset:3px;box-shadow:0 0 0 6px #4db8ff2e}:where(input,textarea,select):focus-visible{border-color:var(--sky)}p,h1,h2,h3,h4{margin-top:0}::selection{background:#8b7cff57;color:#fff}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:99px;background:#2b3b52;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}.app-shell{min-height:100vh}.app-error-page{display:grid;min-height:100vh;place-items:center;padding:clamp(20px,6vw,72px)}.app-error-card{width:min(100%,560px);padding:clamp(26px,6vw,48px);border:1px solid var(--line-strong);border-radius:var(--radius-lg);text-align:center;background:linear-gradient(145deg,#101e30fa,#081320fa);box-shadow:var(--shadow)}.app-error-brand{display:grid;place-items:center;grid-auto-flow:column;width:48px;height:48px;margin:0 auto 24px;border:1px solid rgba(139,124,255,.45);border-radius:13px;color:var(--violet-bright);background:#8b7cff1f;font:800 17px/1 DM Mono,monospace}.app-error-brand i{color:var(--mint);font-style:normal;margin:0 -1px}.app-error-eyebrow{margin-bottom:9px;color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1.25px;text-transform:uppercase}.app-error-card h1{margin-bottom:12px;font-size:clamp(27px,6vw,38px);line-height:1.15;letter-spacing:-.8px}.app-error-card>p:not(.app-error-eyebrow){max-width:430px;margin:0 auto 25px;color:var(--muted);font-size:var(--type-md)}.app-error-reload{min-width:160px}.app-main{min-height:100vh;margin-left:264px;transition:margin-left .25s ease}.sidebar-compact .app-main{margin-left:88px}.page-shell{width:100%;max-width:1580px;margin:0 auto;padding:34px 42px 70px}.sidebar{position:fixed;inset:0 auto 0 0;z-index:50;display:flex;flex-direction:column;width:264px;padding:20px 14px 16px;border-right:1px solid var(--line);background:#060e19f5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:width .25s ease,transform .25s ease}.brand-row{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 24px 8px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-mark{display:grid;place-items:center;grid-auto-flow:column;flex:0 0 39px;height:39px;border:1px solid rgba(139,124,255,.45);border-radius:11px;color:var(--violet-bright);background:linear-gradient(145deg,#8b7cff33,#4b41b417);font:800 var(--type-md)/1 "DM Mono",monospace;box-shadow:inset 0 0 14px #8b7cff17,0 5px 20px #5945e31a}.brand-mark i{color:var(--mint);font-style:normal;margin:0 -1px}.brand-copy{display:flex;flex-direction:column;white-space:nowrap;overflow:hidden}.brand-copy strong{font-size:var(--type-lg);letter-spacing:-.2px}.brand-copy small{margin-top:2px;color:var(--muted-2);font-size:var(--type-base);font-weight:800;letter-spacing:1.45px;text-transform:uppercase}.sidebar-collapse{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:8px;color:var(--muted-2);background:transparent;cursor:pointer;transition:.2s}.sidebar-collapse:hover{color:var(--text);background:var(--surface-2)}.sidebar-nav{display:flex;flex:1;flex-direction:column;gap:4px;overflow-y:auto}.nav-label{margin:18px 12px 7px;color:#516278;font-size:var(--type-base);font-weight:800;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;overflow:hidden}.nav-label:first-child{margin-top:0}.sidebar-link{position:relative;display:flex;align-items:center;gap:12px;min-height:43px;padding:0 13px;border:1px solid transparent;border-radius:10px;color:#8493a8;font-size:var(--type-md);font-weight:600;white-space:nowrap;overflow:hidden;transition:.18s ease}.sidebar-link svg{flex:0 0 auto}.sidebar-link:hover{color:#dce7f7;background:#ffffff06}.sidebar-link.active{color:#eeefff;border-color:#8b7cff21;background:linear-gradient(90deg,#8b7cff29,#8b7cff0a)}.sidebar-link.active:before{content:"";position:absolute;left:-1px;width:3px;height:22px;border-radius:3px;background:var(--violet);box-shadow:0 0 16px #8b7cffb3}.sidebar-link.active svg{color:var(--violet-bright)}.sidebar-streak{display:flex;align-items:center;gap:10px;margin:15px 4px 12px;padding:12px 10px;border:1px solid rgba(255,133,94,.14);border-radius:12px;background:linear-gradient(120deg,#ff855e1a,#ffbf5408);overflow:hidden}.streak-fire{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:9px;color:var(--orange);background:#ff855e1f}.sidebar-streak>div:nth-child(2){display:flex;flex:1;flex-direction:column;min-width:0;white-space:nowrap}.sidebar-streak strong{font-size:var(--type-md)}.sidebar-streak span{margin-top:2px;color:var(--muted-2);font-size:var(--type-base)}.sidebar-streak>svg{color:var(--muted-2)}.sidebar-profile{display:flex;align-items:center;gap:10px;padding:14px 8px 2px;border-top:1px solid var(--line);overflow:hidden}.avatar{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(67,215,165,.26);border-radius:50%;color:#dffdf3;background:linear-gradient(145deg,#1c6b5b,#18374a);font-size:var(--type-md);font-weight:800}.avatar--small{width:32px;height:32px;flex-basis:32px}.sidebar-profile>div:nth-child(2){display:flex;flex:1;flex-direction:column;min-width:0;white-space:nowrap}.sidebar-profile strong{font-size:var(--type-md)}.sidebar-profile span{margin-top:2px;color:var(--muted-2);font-size:var(--type-base)}.sidebar-profile button{display:grid;place-items:center;border:0;color:var(--muted-2);background:transparent;cursor:pointer}.sidebar-compact .sidebar{width:88px}.sidebar-compact .brand-copy,.sidebar-compact .nav-label,.sidebar-compact .sidebar-link span,.sidebar-compact .sidebar-streak>div:nth-child(2),.sidebar-compact .sidebar-streak>svg,.sidebar-compact .sidebar-profile>div:nth-child(2),.sidebar-compact .sidebar-profile button{display:none}.sidebar-compact .brand-row{flex-direction:column;gap:12px;padding-left:0}.sidebar-compact .sidebar-link{justify-content:center;padding:0}.sidebar-compact .sidebar-streak{justify-content:center;padding:10px}.sidebar-compact .sidebar-profile{justify-content:center;padding-left:0;padding-right:0}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;height:70px;padding:0 42px;border-bottom:1px solid var(--line);background:#07101cd6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.top-search{display:flex;align-items:center;gap:9px;width:min(390px,36vw);height:38px;padding:0 10px 0 13px;border:1px solid var(--line);border-radius:9px;color:var(--muted-2);background:#0c1827a6;cursor:pointer;transition:.2s}.top-search:hover{border-color:var(--line-strong);color:var(--muted);background:var(--surface)}.top-search span{flex:1;text-align:left;font-size:var(--type-md)}kbd{display:inline-flex;align-items:center;gap:2px;padding:3px 6px;border:1px solid var(--line-strong);border-radius:5px;color:var(--muted-2);background:#0b1421;font:600 var(--type-base)/1 "DM Mono",monospace;box-shadow:0 1px #ffffff0f}.topbar-actions{display:flex;align-items:center;gap:18px}.top-streak{display:flex;align-items:center;gap:5px;color:var(--orange);font-size:var(--type-md)}.top-streak span{color:var(--muted-2)}.level-pill{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:var(--type-base);font-weight:800;letter-spacing:.4px}.level-pill>span{color:var(--violet-bright)}.mini-progress{width:60px;height:4px;border-radius:99px;background:#1b293a;overflow:hidden}.mini-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--mint))}.notification-button{position:relative;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface);cursor:pointer}.notification-button i{position:absolute;top:6px;right:6px;width:5px;height:5px;border:1px solid var(--surface);border-radius:50%;background:var(--red)}.mobile-menu{display:none;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.mobile-bottom-nav{display:none}.page-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--violet-bright);font-size:var(--type-base);font-weight:800;letter-spacing:1.75px;text-transform:uppercase}.page-kicker i{width:16px;height:1px;background:currentColor;box-shadow:0 0 9px currentColor}.eyebrow{color:var(--violet-bright);font-size:var(--type-sm);font-weight:800;letter-spacing:1.45px;text-transform:uppercase}.page-title-row,.welcome-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:7px 0 25px}.page-title-row>div:first-child,.welcome-row>div:first-child{max-width:810px}.page-title-row h1,.welcome-row h1,.page-hero h1,.reference-hero h1,.debug-hero h1{margin-bottom:10px;font-size:clamp(29px,3vw,42px);line-height:1.1;letter-spacing:-1.65px}.page-title-row h1 span,.welcome-row h1 span,.page-hero h1 span,.reference-hero h1 span,.debug-hero h1 span{color:var(--violet-bright)}.page-title-row p,.welcome-row p,.page-hero>div:first-child>p,.reference-hero>div:first-child>p,.debug-hero>div:first-child>p{max-width:760px;margin-bottom:0;color:var(--muted);font-size:var(--type-md);line-height:1.75}.active-learning-path{display:inline-flex;align-items:center;gap:6px;margin-top:9px;padding:6px 9px;border:1px solid rgba(139,124,255,.14);border-radius:8px;color:var(--violet-bright);background:#8b7cff0d;font-size:var(--type-sm);font-weight:750}.date-chip{display:flex;align-items:center;gap:10px;flex:0 0 auto;padding:10px 14px;border:1px solid rgba(255,133,94,.15);border-radius:11px;color:var(--orange);background:#ff855e0e}.date-chip span{display:flex;flex-direction:column;color:var(--muted-2);font-size:var(--type-base)}.date-chip strong{margin-bottom:2px;color:var(--text);font-size:var(--type-md)}.primary-button,.ghost-button,.hero-button,.complete-lesson-button,.complete-project-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 17px;border:1px solid transparent;border-radius:9px;font-size:var(--type-md);font-weight:800;cursor:pointer;transition:.2s ease}.primary-button,.hero-button{color:#fff;background:linear-gradient(135deg,#7768f6,#6657e8);box-shadow:0 10px 25px #6454e633}.primary-button:hover,.hero-button:hover{transform:translateY(-1px);background:linear-gradient(135deg,#8b7cff,#7163ed)}.primary-button:disabled{opacity:.42;cursor:not-allowed;transform:none}.ghost-button{border-color:var(--line-strong);color:var(--muted);background:var(--surface)}.ghost-button:hover{color:var(--text);border-color:#8b7cff59}.primary-button.small,.ghost-button.small{min-height:34px;padding:0 12px;font-size:var(--type-base)}.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--violet-bright);font-size:var(--type-base);font-weight:700}.panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#101e30db,#0a1421e6);box-shadow:0 16px 50px #00000014}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.panel-heading h2,.panel-heading h3{margin:3px 0 0;font-size:17px;letter-spacing:-.4px}.panel-heading h3{font-size:var(--type-lg)}.panel-heading>a{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--type-base);font-weight:700}.panel-heading>a:hover{color:var(--violet-bright)}.panel-heading.compact>strong{color:var(--mint);font-size:var(--type-md)}.continue-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);min-height:312px;margin-bottom:18px;border:1px solid rgba(139,124,255,.2);border-radius:var(--radius-lg);background:radial-gradient(circle at 82% 28%,rgba(139,124,255,.17),transparent 30%),linear-gradient(122deg,#131b39,#10182b 46%,#0c1728);overflow:hidden;box-shadow:var(--shadow)}.continue-hero:before{content:"";position:absolute;inset:0;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:30px 30px;-webkit-mask-image:linear-gradient(90deg,transparent 25%,black);mask-image:linear-gradient(90deg,transparent 25%,black)}.continue-hero__content{position:relative;z-index:2;align-self:center;padding:34px 38px 57px}.continue-meta{display:flex;align-items:center;gap:12px;margin-bottom:17px}.continue-meta span{color:var(--mint);font-size:var(--type-sm);font-weight:800;letter-spacing:1.5px}.continue-meta small{color:var(--muted-2);font-size:var(--type-base)}.continue-hero h2{margin-bottom:10px;font-size:clamp(24px,2.3vw,33px);letter-spacing:-1px}.continue-hero__content>p{max-width:600px;margin-bottom:16px;color:#a7b4c6;font-size:var(--type-md);line-height:1.65}.lesson-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.lesson-badges span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid rgba(255,255,255,.07);border-radius:6px;color:#8796ad;background:#ffffff06;font-size:var(--type-base)}.hero-button{min-height:40px;padding:0 15px}.continue-hero__visual{position:relative;z-index:2;display:grid;place-items:center;min-height:255px}.code-window{position:relative;z-index:2;width:min(420px,88%);border:1px solid rgba(139,124,255,.25);border-radius:13px;background:#08111f;transform:perspective(900px) rotateY(-4deg) rotateX(2deg);box-shadow:0 24px 50px #00000059,0 0 60px #705ef514;overflow:hidden}.code-window__bar{display:flex;align-items:center;gap:5px;height:31px;padding:0 11px;border-bottom:1px solid rgba(255,255,255,.06);background:#0d1827}.code-window__bar i{width:5px;height:5px;border-radius:50%;background:#43516a}.code-window__bar i:first-child{background:var(--red)}.code-window__bar i:nth-child(2){background:var(--amber)}.code-window__bar i:nth-child(3){background:var(--mint)}.code-window__bar span{margin-left:7px;color:#596a82;font:var(--type-sm) "DM Mono",monospace}.code-window pre{margin:0;padding:19px 22px 22px;color:#d1dae8;font:var(--type-base)/1.9 "DM Mono",monospace}.c-purple{color:#c49cff}.c-blue{color:#62c9ff}.c-green{color:#75dba9}.floating-xp{position:absolute;z-index:3;right:8%;bottom:48px;display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid rgba(67,215,165,.3);border-radius:8px;color:#98f0d1;background:#092221eb;font-size:var(--type-base);font-weight:800;box-shadow:0 10px 30px #00000040}.hero-orbit{position:absolute;border:1px solid rgba(139,124,255,.12);border-radius:50%}.hero-orbit--one{width:250px;height:250px}.hero-orbit--two{width:340px;height:340px}.continue-progress{position:absolute;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;gap:14px;height:40px;padding:0 38px;border-top:1px solid rgba(255,255,255,.055);color:var(--muted-2);background:#040a1359;font-size:var(--type-sm);font-weight:700;text-transform:uppercase;letter-spacing:.8px}.continue-progress div{flex:1;height:3px;border-radius:99px;background:#263149;overflow:hidden}.continue-progress div i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--mint))}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.stat-card{position:relative;display:flex;align-items:center;gap:12px;min-height:91px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#0d1a2ac2;overflow:hidden}.stat-card__icon,[class^=tone-]:not(.output-line),[class*=" tone-"]:not(.output-line){display:grid;place-items:center}.stat-card__icon{flex:0 0 38px;height:38px;border-radius:10px}.tone-violet{color:var(--violet-bright);background:#8b7cff1f}.tone-sky{color:var(--sky);background:#4db8ff1c}.tone-mint{color:var(--mint);background:#43d7a51a}.tone-amber{color:var(--amber);background:#ffbf541a}.tone-orange{color:var(--orange);background:#ff855e1a}.tone-red{color:var(--red);background:#ff65771a}.tone-blue{color:var(--blue);background:#5a8dff1a}.tone-pink{color:var(--pink);background:#e77cda1a}.tone-purple{color:var(--purple);background:#b270ef1a}.tone-cyan{color:var(--cyan);background:#43d9e71a}.stat-card__copy{display:flex;flex-direction:column;min-width:0}.stat-card__copy>span{color:var(--muted-2);font-size:var(--type-sm);font-weight:700;text-transform:uppercase;letter-spacing:.8px}.stat-card__copy strong{margin:3px 0 1px;font-size:17px}.stat-card__copy small{color:#6f7f96;font-size:var(--type-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-card__progress{position:absolute;right:0;bottom:0;left:0;height:2px;background:#1e2b3d}.stat-card__progress i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--mint))}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.dashboard-primary{display:flex;flex-direction:column;gap:18px;min-width:0}.dashboard-aside{display:flex;flex-direction:column;gap:14px}.course-panel,.recommendations-panel,.activity-panel,.weak-panel,.achievements-preview{padding:20px}.module-progress-list{display:flex;flex-direction:column;margin-top:14px}.module-progress-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 4px;border-top:1px solid rgba(255,255,255,.045)}.module-progress-row:first-child{border-top:0}.module-number{display:grid;place-items:center;flex:0 0 31px;height:31px;border:1px solid rgba(139,124,255,.2);border-radius:8px;color:var(--violet-bright);background:#8b7cff14;font:700 var(--type-base) "DM Mono",monospace}.module-sky{color:var(--sky);border-color:#4db8ff38;background:#4db8ff14}.module-violet{color:var(--violet-bright)}.module-amber{color:var(--amber);border-color:#ffbf5438;background:#ffbf5414}.module-mint{color:var(--mint);border-color:#43d7a538;background:#43d7a514}.module-pink{color:var(--pink);border-color:#e77cda38;background:#e77cda14}.module-orange{color:var(--orange);border-color:#ff855e38;background:#ff855e14}.module-red{color:var(--red);border-color:#ff657738;background:#ff657714}.module-blue{color:var(--blue);border-color:#5a8dff38;background:#5a8dff14}.module-purple{color:var(--purple);border-color:#b270ef38;background:#b270ef14}.module-cyan{color:var(--cyan);border-color:#43d9e738;background:#43d9e714}.module-progress-copy{flex:1;min-width:0}.module-progress-copy>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.module-progress-copy strong{font-size:var(--type-base)}.module-progress-copy small{color:var(--muted-2);font-size:var(--type-sm)}.module-line{height:3px;margin-top:7px;border-radius:99px;background:#1d2b3d;overflow:hidden}.module-line i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),#6d9cff)}.module-progress-row>span:last-child{color:var(--muted-2);font-size:var(--type-sm)}.module-progress-row .complete-icon{color:var(--mint)}.active-pill{padding:3px 7px;border:1px solid rgba(139,124,255,.22);border-radius:99px;color:var(--violet-bright)!important;background:#8b7cff17;font-size:var(--type-xs)!important;text-transform:uppercase}.module-progress-row.locked{opacity:.45}.journey-links{display:flex;flex-wrap:wrap;gap:16px;margin:14px 4px 0}.recommendation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:15px}.recommendation-card{display:flex;align-items:center;gap:10px;min-width:0;padding:13px;border:1px solid var(--line);border-radius:11px;background:#ffffff05;transition:.2s}.recommendation-card:hover{transform:translateY(-2px);border-color:#8b7cff47;background:#8b7cff0a}.recommendation-icon{flex:0 0 35px;height:35px;border-radius:9px}.recommendation-card>div{display:flex;flex:1;flex-direction:column;min-width:0}.recommendation-empty{display:flex;align-items:center;gap:9px;padding:13px;color:var(--muted-2);border:1px dashed var(--line);border-radius:11px;font-size:var(--type-sm)}.recommendation-card small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.recommendation-card strong{margin:3px 0;font-size:var(--type-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recommendation-card p{margin:0;color:var(--muted-2);font-size:var(--type-xs)}.recommendation-card>svg{color:var(--muted-2)}.daily-card{padding:17px;border:1px solid rgba(255,191,84,.19);border-radius:15px;background:radial-gradient(circle at 90% 5%,rgba(255,191,84,.1),transparent 34%),#111c2b}.daily-card.complete{border-color:#43d7a540;background:radial-gradient(circle at 90% 5%,rgba(67,215,165,.11),transparent 34%),#101d2a}.daily-card.incorrect{border-color:#ff6a7b40;background:radial-gradient(circle at 90% 5%,rgba(255,106,123,.1),transparent 34%),#151b29}.daily-card__top{display:flex;align-items:center;gap:9px}.daily-card__top>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:var(--amber);background:#ffbf541a}.daily-card.complete .daily-card__top>span{color:var(--mint);background:#43d7a51a}.daily-card.incorrect .daily-card__top>span{color:var(--red);background:#ff6a7b1a}.daily-card__top>div{display:flex;flex:1;flex-direction:column}.daily-card__top small{color:var(--amber);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.daily-card__top strong{margin-top:2px;font-size:var(--type-base)}.daily-card__top b{color:var(--amber);font-size:var(--type-sm)}.daily-card pre{margin:14px 0 11px;padding:13px;border:1px solid rgba(255,255,255,.055);border-radius:9px;color:#d6deea;background:#09121f;font:var(--type-base)/1.7 "DM Mono",monospace}.daily-card pre span{color:#bd9aff}.daily-card pre em{color:#6ac8ff;font-style:normal}.daily-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.daily-options button{height:31px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:#ffffff05;cursor:pointer;font-size:var(--type-base)}.daily-options button:hover:not(:disabled){color:var(--violet-bright);border-color:#8b7cff59;background:#8b7cff14}.daily-options button.correct{color:var(--mint);border-color:#43d7a547;background:#43d7a514}.daily-options button.incorrect{color:var(--red);border-color:#ff6a7b52;background:#ff6a7b14}.daily-options button:disabled{cursor:default}.daily-card>p{margin:9px 0 0;color:var(--muted-2);font-size:var(--type-sm);line-height:1.5}.activity-panel,.weak-panel{padding:17px}.week-chart{display:flex;align-items:flex-end;gap:9px;height:90px;margin:14px 0 7px}.week-chart>div{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}.week-chart i{width:100%;max-width:18px;min-height:4px;border-radius:4px 4px 2px 2px;background:#31415a}.week-chart .best i{background:linear-gradient(to top,#6559d9,#9d91ff);box-shadow:0 0 18px #8b7cff33}.week-chart .empty i{height:2px!important;min-height:2px;opacity:.45}.week-chart .today span{color:var(--violet-bright);font-weight:800}.week-chart span{color:var(--muted-2);font-size:var(--type-xs)}.week-summary{display:flex;align-items:center;gap:7px;padding-top:10px;border-top:1px solid var(--line);color:var(--orange)}.week-summary span{color:var(--muted-2);font-size:var(--type-sm)}.week-summary strong{color:var(--text)}.weak-item{display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.045);color:inherit;text-decoration:none}.weak-item:hover strong{color:var(--violet-bright)}.weak-item>span{flex:0 0 31px;height:31px;border-radius:8px}.weak-item>div{display:flex;flex:1;flex-direction:column}.weak-item strong{font-size:var(--type-base)}.weak-item small{margin-top:2px;color:var(--muted-2);font-size:var(--type-xs)}.weak-item b{color:var(--amber);font-size:var(--type-base)}.weak-panel .text-link{margin-top:12px}.coach-empty{display:flex;align-items:flex-start;gap:10px;margin-top:10px;padding:13px;border:1px dashed var(--line);border-radius:10px;background:#ffffff04}.coach-empty>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;color:var(--violet-bright);background:#8b7cff1a}.coach-empty strong{font-size:var(--type-base)}.coach-empty p{margin:4px 0 0;color:var(--muted-2);font-size:var(--type-xs);line-height:1.5}.achievements-preview{margin-top:18px}.achievement-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:15px}.achievement-mini{display:flex;align-items:center;gap:9px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:#ffffff04}.achievement-mini.locked{opacity:.42;filter:saturate(.3)}.achievement-mini .badge{flex:0 0 37px;height:37px;border-radius:10px}.achievement-mini>div{display:flex;flex:1;flex-direction:column;min-width:0}.achievement-mini strong{font-size:var(--type-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.achievement-mini small{margin-top:3px;color:var(--muted-2);font-size:var(--type-xs)}.achievement-mini>svg{color:var(--mint)}.progress-ring{position:relative;flex:0 0 auto}.progress-ring svg{display:block}.progress-ring__track{stroke:#ffffff12}.progress-ring__value{stroke:var(--violet);filter:drop-shadow(0 0 5px rgba(139,124,255,.3));transition:stroke-dashoffset .5s ease}.progress-ring__content{position:absolute;inset:0;display:grid;place-items:center;text-align:center}.progress-ring__content strong{font-size:var(--type-md)}.progress-ring__content>div{display:flex;flex-direction:column}.progress-ring__content>div strong{font-size:22px}.progress-ring__content>div span{color:var(--muted-2);font-size:var(--type-xs);text-transform:uppercase;letter-spacing:.7px}.page-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:45px;min-height:240px;margin-bottom:22px;padding:30px 36px;border:1px solid var(--line);border-radius:var(--radius-lg);background:radial-gradient(circle at 92% 12%,rgba(139,124,255,.12),transparent 32%),linear-gradient(135deg,#101d2ff5,#091320f5);overflow:hidden}.page-hero:after{content:"";position:absolute;right:-50px;bottom:-120px;width:360px;height:360px;border:1px solid rgba(139,124,255,.08);border-radius:50%;box-shadow:0 0 0 45px #8b7cff06,0 0 0 90px #8b7cff05}.page-hero>div{position:relative;z-index:2}.page-hero h1{max-width:850px}.hero-metrics{display:flex;gap:25px;margin-top:20px}.hero-metrics span{display:flex;align-items:baseline;gap:5px;color:var(--muted-2);font-size:var(--type-sm);text-transform:uppercase;letter-spacing:.7px}.hero-metrics strong{color:var(--text);font-size:var(--type-lg)}.curriculum-progress-card{display:flex;align-items:center;gap:18px;flex:0 0 auto;min-width:300px;padding:18px;border:1px solid rgba(139,124,255,.16);border-radius:16px;background:#070f1b99}.curriculum-progress-card>div:last-child{display:flex;flex-direction:column}.curriculum-progress-card>div:last-child span{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1.2px}.curriculum-progress-card>div:last-child strong{margin:5px 0 3px;font-size:var(--type-md)}.curriculum-progress-card>div:last-child p{margin:0;color:var(--muted-2);font-size:var(--type-sm)}.curriculum-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.filter-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:#0b1624a6}.filter-tabs button{min-height:31px;padding:0 13px;border:0;border-radius:7px;color:var(--muted-2);background:transparent;font-size:var(--type-base);font-weight:700;cursor:pointer}.filter-tabs button.active{color:#eeeaff;background:#8b7cff24;box-shadow:inset 0 0 0 1px #8b7cff26}.inline-search{display:flex;align-items:center;gap:8px;width:250px;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:9px;color:var(--muted-2);background:var(--surface)}.inline-search input{min-width:0;flex:1;border:0;outline:0;color:var(--text);background:transparent;font-size:var(--type-base)}.inline-search input::placeholder{color:var(--muted-2)}.skill-legend{display:flex;align-items:center;gap:18px;margin:14px 2px 12px;color:var(--muted-2);font-size:var(--type-sm)}.skill-legend span{display:flex;align-items:center;gap:5px}.skill-legend i{width:6px;height:6px;border-radius:50%}.skill-legend i.complete{background:var(--mint)}.skill-legend i.current{background:var(--violet);box-shadow:0 0 7px var(--violet)}.skill-legend i.locked{background:#415067}.skill-legend a{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--violet-bright);font-weight:700}.lesson-status{color:var(--violet-bright)}.module-stack{display:flex;flex-direction:column;gap:11px}.module-card{--module-color: var(--violet);border:1px solid var(--line);border-radius:15px;background:#0b1624c7;overflow:hidden}.module-card--sky{--module-color: var(--sky)}.module-card--violet{--module-color: var(--violet)}.module-card--amber{--module-color: var(--amber)}.module-card--mint{--module-color: var(--mint)}.module-card--pink{--module-color: var(--pink)}.module-card--orange{--module-color: var(--orange)}.module-card--red{--module-color: var(--red)}.module-card--blue{--module-color: var(--blue)}.module-card--purple{--module-color: var(--purple)}.module-card--cyan{--module-color: var(--cyan)}.module-card__header{display:grid;grid-template-columns:53px minmax(0,1fr) minmax(160px,.35fr) 95px;align-items:center;gap:18px;width:100%;min-height:112px;padding:18px 22px;border:0;color:inherit;text-align:left;background:linear-gradient(90deg,color-mix(in srgb,var(--module-color) 7%,transparent),transparent 34%);cursor:pointer}.module-card__number{display:grid;place-items:center;width:49px;height:49px;border:1px solid color-mix(in srgb,var(--module-color) 30%,transparent);border-radius:12px;color:var(--module-color);background:color-mix(in srgb,var(--module-color) 9%,transparent);font:700 var(--type-md) "DM Mono",monospace}.module-card__title>span{color:var(--module-color);font-size:var(--type-xs);font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.module-card__title h2{margin:4px 0;font-size:17px;letter-spacing:-.45px}.module-card__title p{max-width:650px;margin:0;color:var(--muted-2);font-size:var(--type-base);line-height:1.5}.module-card__project{display:flex;flex-direction:column;padding-left:18px;border-left:1px solid var(--line)}.module-card__project small{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.module-card__project strong{margin-top:4px;font-size:var(--type-base)}.module-card__progress{display:flex;align-items:center;justify-content:flex-end;gap:10px}.module-card__progress>svg{color:var(--muted-2)}.module-card .progress-ring__value{stroke:var(--module-color)}.module-lessons{padding:0 22px 17px 93px;border-top:1px solid var(--line);background:#050c1647}.lesson-list-item{position:relative;display:grid;grid-template-columns:33px minmax(0,1fr) auto 20px;align-items:center;gap:13px;min-height:75px;padding:10px 6px;border-bottom:1px solid rgba(255,255,255,.045);transition:.18s}a.lesson-list-item:hover{padding-left:10px;background:#ffffff05}.lesson-list-item:before{content:"";position:absolute;left:16px;top:53px;bottom:-22px;width:1px;background:#223146}.lesson-list-item:nth-last-child(2):before{display:none}.lesson-node{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:1px solid #324057;border-radius:50%;color:var(--muted-2);background:#0a1524;font:600 var(--type-sm) "DM Mono",monospace}.lesson-node.complete{color:#08281d;border-color:var(--mint);background:var(--mint)}.lesson-node.current{color:#fff;border-color:var(--violet);background:#8b7cff3b;box-shadow:0 0 0 4px #8b7cff12,0 0 18px #8b7cff26}.lesson-node.locked{color:#4d5a6c}.lesson-list-copy{min-width:0}.lesson-list-copy>div{display:flex;align-items:center;gap:5px}.lesson-list-copy>div span{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.lesson-list-copy>div b{padding:2px 5px;border-radius:4px;color:var(--amber);background:#ffbf5414;font-size:var(--type-xs)}.lesson-list-copy strong{display:block;margin:3px 0;font-size:var(--type-base)}.lesson-list-copy p{margin:0;color:var(--muted-2);font-size:var(--type-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-list-item.current .lesson-list-copy strong{color:#c8c1ff}.lesson-list-meta{display:flex;gap:12px;color:var(--muted-2)}.lesson-list-meta span{display:flex;align-items:center;gap:4px;font-size:var(--type-xs)}.lesson-arrow{color:var(--muted-2)}.lesson-list-item.locked{opacity:.42}.module-completion-note{display:flex;align-items:center;gap:9px;margin-top:12px;padding:11px 13px;border:1px dashed color-mix(in srgb,var(--module-color) 25%,transparent);border-radius:9px;color:var(--module-color);background:color-mix(in srgb,var(--module-color) 5%,transparent)}.module-completion-note span{flex:1;font-size:var(--type-sm)}.module-completion-note small{color:var(--muted-2);font-size:var(--type-xs)}.no-results{display:grid;place-items:center;min-height:260px;padding:30px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted-2);text-align:center}.no-results h3{margin:10px 0 5px;color:var(--text);font-size:var(--type-lg)}.no-results p{margin:0;font-size:var(--type-base)}.lesson-page,.lesson-content,.lesson-section,.lesson-hero,.lesson-hero>*,.studio-assignment,.concept-demo{min-width:0}.lesson-content :where(h1,h2,h3,p,strong,small,label,summary,a,button){overflow-wrap:anywhere}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0;color:var(--muted-2);font-size:var(--type-sm)}.breadcrumbs a:hover{color:var(--violet-bright)}.breadcrumbs strong{color:var(--muted)}.breadcrumbs svg{flex:0 0 auto}.lesson-topline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-bottom:18px}.lesson-top-actions{display:flex;flex:0 0 auto;align-items:center;gap:7px}.lesson-top-actions button,.lesson-top-actions a{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:7px;color:var(--muted-2);background:var(--surface);font-size:var(--type-sm);cursor:pointer}.lesson-top-actions button.bookmarked{color:var(--amber);border-color:#ffbf5438}.lesson-layout{display:grid;grid-template-columns:210px minmax(0,880px);justify-content:center;gap:34px}.lesson-toc{position:sticky;top:94px;align-self:start;max-height:calc(100vh - 120px)}.lesson-toc__module{display:flex;align-items:center;gap:10px;padding-bottom:17px;border-bottom:1px solid var(--line)}.lesson-toc__module>div{display:flex;flex-direction:column}.lesson-toc__module small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;text-transform:uppercase;letter-spacing:1px}.lesson-toc__module strong{margin-top:3px;font-size:var(--type-base)}.lesson-toc nav{display:flex;flex-direction:column;padding:17px 0}.lesson-toc nav>span{margin:0 0 8px 9px;color:#4c5d72;font-size:var(--type-xs);font-weight:800;letter-spacing:1.2px}.lesson-toc nav a{display:flex;align-items:center;gap:9px;min-height:31px;padding:0 9px;border-radius:7px;color:var(--muted-2);font-size:var(--type-sm)}.lesson-toc nav a:hover{color:var(--text);background:#ffffff06}.lesson-toc nav i{color:#4d5d72;font:normal var(--type-xs) "DM Mono",monospace}.lesson-xp-card{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid rgba(139,124,255,.16);border-radius:9px;color:var(--violet-bright);background:#8b7cff0f}.lesson-xp-card>div{display:flex;flex-direction:column}.lesson-xp-card strong{font-size:var(--type-base)}.lesson-xp-card span{margin-top:2px;color:var(--muted-2);font-size:var(--type-xs)}.need-help{display:flex;align-items:center;gap:7px;margin-top:10px;padding:8px 10px;color:var(--muted-2);font-size:var(--type-sm)}.lesson-content{min-width:0;font-size:16px}.lesson-hero{padding:30px 34px;border:1px solid var(--line);border-radius:19px;background:radial-gradient(circle at 92% 8%,rgba(139,124,255,.13),transparent 28%),linear-gradient(145deg,#111e31,#0b1625)}.lesson-hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.lesson-hero__meta span{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.lesson-hero__meta small{display:flex;align-items:center;gap:4px;color:var(--muted-2);font-size:var(--type-xs)}.lesson-hero h1{margin:13px 0 9px;font-size:clamp(31px,4vw,48px);line-height:1.1;letter-spacing:-1.7px;text-wrap:balance}.lesson-hero>p{max-width:700px;margin-bottom:0;color:#a7b5c7;font-size:17px;line-height:1.72}.objective-card{display:flex;align-items:flex-start;gap:12px;margin-top:22px;padding:15px;border:1px solid rgba(67,215,165,.15);border-radius:11px;background:#43d7a50b}.objective-card>span{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:9px;color:var(--mint);background:#43d7a51a}.objective-card>div{min-width:0}.objective-card small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.objective-card p{margin:4px 0 0;color:#bac8d8;font-size:15px;line-height:1.65}.lesson-bridge{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:8px;margin-top:13px}.lesson-bridge>div{min-width:0;padding:11px 12px;border:1px solid rgba(154,177,210,.12);border-radius:9px;background:#050c154d}.lesson-bridge>svg{align-self:center;color:#4b5b70}.lesson-bridge small{color:var(--muted-2);font-size:12px;font-weight:800;letter-spacing:.65px}.lesson-bridge>div:nth-of-type(2) small{color:var(--violet-bright)}.lesson-bridge>div:nth-of-type(3) small{color:var(--mint)}.lesson-bridge p{margin:4px 0 0;color:#8f9fb2;font-size:12px;line-height:1.55}.lesson-section{scroll-margin-top:78px;padding:42px 7px 10px}.lesson-section__heading{display:flex;align-items:center;gap:13px;margin-bottom:17px}.lesson-section__heading>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border:1px solid rgba(139,124,255,.2);border-radius:8px;color:var(--violet-bright);background:#8b7cff12;font:700 var(--type-sm) "DM Mono",monospace}.lesson-section__heading>div{display:flex;min-width:0;flex-direction:column}.lesson-section__heading small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1.15px}.lesson-section__heading h2{margin:3px 0 0;font-size:22px;line-height:1.25;letter-spacing:-.6px}.lead-copy,.section-intro{color:#aebccc;font-size:17px;line-height:1.82}.section-intro{margin-bottom:15px;font-size:15px}.subsection-title{margin:26px 0 5px;font-size:var(--type-md)}.explanation-copy{display:grid;gap:12px}.explanation-copy .lead-copy{margin:0}.key-terms{margin-top:20px;border:1px solid rgba(77,184,255,.17);border-radius:13px;background:#4db8ff09;overflow:hidden}.key-terms__heading{display:flex;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid rgba(77,184,255,.12)}.key-terms__heading>svg{color:var(--sky)}.key-terms__heading>div{min-width:0}.key-terms__heading small{color:var(--sky);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.key-terms__heading p{margin:2px 0 0;color:var(--muted-2);font-size:var(--type-sm)}.key-terms__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.key-terms__grid>div{min-width:0;padding:14px 15px;border-right:1px solid rgba(154,177,210,.09);border-bottom:1px solid rgba(154,177,210,.09)}.key-terms__grid>div:nth-child(2n){border-right:0}.key-terms__grid>div:nth-last-child(-n+2){border-bottom:0}.key-terms__grid strong{color:#dce8f6;font-size:var(--type-base)}.key-terms__grid p{margin:5px 0 0;color:#91a2b6;font-size:var(--type-base);line-height:1.62}.example-scope{display:flex;align-items:flex-start;gap:10px;margin:0 0 11px;padding:12px 14px;border:1px solid rgba(77,184,255,.16);border-radius:10px;background:#4db8ff0b}.example-scope>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;color:var(--sky);background:#4db8ff1a}.example-scope small{color:var(--sky);font-size:var(--type-xs);font-weight:850;letter-spacing:.9px}.example-scope p{margin:3px 0 0;color:var(--muted);font-size:var(--type-sm);line-height:1.55}.example-scope--excerpt{border-color:#ffbf5433;background:#ffbf540b}.example-scope--excerpt>span,.example-scope--excerpt small{color:var(--amber)}.example-scope--excerpt>span{background:#ffbf541a}.why-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:20px 0 0}.why-grid>div{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:11px;background:#ffffff04}.why-grid>div>span{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:8px;color:var(--violet-bright);background:#8b7cff17}.why-grid>div>div{min-width:0}.why-grid small{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.why-grid p{margin:4px 0 0;color:#9dacbf;font-size:15px;line-height:1.68}.prediction-callout{display:flex;align-items:flex-start;gap:11px;margin:20px 0 11px;padding:13px 15px;border:1px solid rgba(255,191,84,.16);border-radius:10px;background:#ffbf540a}.prediction-callout>span{display:grid;place-items:center;flex:0 0 33px;height:33px;border-radius:8px;color:var(--amber);background:#ffbf541a}.prediction-callout>div{min-width:0}.prediction-callout small{color:var(--amber);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.prediction-callout p{margin:4px 0 0;color:#a7b4c4;font-size:15px;line-height:1.6}.deep-dive{margin-top:17px;border:1px solid rgba(139,124,255,.18);border-radius:13px;background:#8b7cff09;overflow:hidden}.deep-dive>summary{display:flex;align-items:center;gap:11px;padding:14px 15px;cursor:pointer;list-style:none}.deep-dive>summary::-webkit-details-marker{display:none}.deep-dive>summary>span{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:9px;color:var(--violet-bright);background:#8b7cff1c}.deep-dive>summary>div{display:flex;min-width:0;flex:1;flex-direction:column}.deep-dive>summary small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:.9px}.deep-dive>summary strong{margin-top:2px;color:#dce5f2;font-size:var(--type-base)}.deep-dive>summary>svg{color:var(--muted-2);transition:transform .2s ease}.deep-dive[open]>summary>svg{transform:rotate(180deg)}.deep-dive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(139,124,255,.13)}.deep-dive__grid article{min-width:0;padding:16px;border-right:1px solid rgba(139,124,255,.1)}.deep-dive__grid article:last-child{border-right:0}.deep-dive__grid h3{margin:0;color:#dce6f4;font-size:var(--type-md);line-height:1.4}.deep-dive__grid p{margin:7px 0 0;color:#93a4b8;font-size:var(--type-base);line-height:1.67}.lesson-checkpoint{display:flex;align-items:flex-start;gap:11px;margin-top:17px;padding:14px 15px;border:1px solid rgba(67,215,165,.18);border-radius:11px;background:#43d7a50b}.lesson-checkpoint>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;color:var(--mint);background:#43d7a51a}.lesson-checkpoint>div{min-width:0}.lesson-checkpoint small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:.9px}.lesson-checkpoint p{margin:4px 0 0;color:#a4b5c7;font-size:var(--type-base);line-height:1.65}.concept-demo{border:1px solid var(--line);border-radius:14px;background:#0b1625;overflow:hidden}.concept-demo__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 19px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(139,124,255,.065),transparent)}.concept-demo__header>div{display:flex;align-items:center;gap:10px;min-width:0}.concept-demo__header>div>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;color:var(--violet-bright);background:#8b7cff1a}.concept-demo__header>div>div{min-width:0}.concept-demo__header small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.concept-demo__header h3{margin:3px 0 0;font-size:17px;line-height:1.35}.concept-demo__header>p{flex:0 1 280px;margin:2px 0 0;color:var(--muted-2);font-size:13px;line-height:1.55}.concept-map{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:22px 20px;isolation:isolate}.concept-map button{position:relative;z-index:2;display:flex;min-width:0;min-height:116px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:12px 8px;border:1px solid var(--line);border-radius:11px;color:var(--muted);text-align:center;background:#0e1b2c;cursor:pointer;transition:border-color .2s,color .2s,background .2s,transform .2s}.concept-map button:hover{color:#c4cede;border-color:var(--line-strong);transform:translateY(-2px)}.concept-map button:focus-visible{outline:2px solid var(--violet-bright);outline-offset:2px}.concept-map button>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:10px;color:#8190a5;background:#122237;transition:.2s}.concept-map button strong{max-width:100%;font-size:14px;line-height:1.3}.concept-map button small{max-width:100%;color:#73839a;font-size:12px;font-weight:800;letter-spacing:.45px;line-height:1.25}.concept-map button i{position:absolute;top:50%;right:-15px;color:#42526a;font-style:normal;transform:translateY(-50%)}.concept-map button:last-child i{display:none}.concept-map button.active{color:#e5e1ff;border-color:#8b7cff75;background:linear-gradient(145deg,#8b7cff29,#8b7cff0f);box-shadow:0 10px 28px #00000029}.concept-map button.active>span{color:var(--violet-bright);border-color:#8b7cff7a;background:#8b7cff26;box-shadow:0 0 20px #8b7cff1f}.concept-map button.active small{color:#9d93ee}.concept-map--compare{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-map--compare button,.concept-map--stack button{min-height:94px;align-items:flex-start;padding:13px 15px;text-align:left}.concept-map--compare button>span,.concept-map--stack button>span{width:35px;height:35px}.concept-map--compare button i,.concept-map--stack button i{display:none}.concept-map--lookup-boundary{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-map--lookup-boundary button{min-height:104px;align-items:flex-start;padding:13px 15px;text-align:left}.concept-map--lookup-boundary button:nth-child(2),.concept-map--lookup-boundary button:nth-child(3){border-color:#43d7a53d}.concept-map--lookup-boundary button:last-child{border-color:#ff657761;background:#ff65770d}.concept-map--lookup-boundary button i{display:none}.concept-map--script-placement{grid-template-columns:repeat(3,minmax(0,1fr))}.concept-map--script-placement button{min-height:122px;align-items:flex-start;padding:14px;text-align:left}.concept-map--script-placement button:nth-child(1){border-color:#43d7a547}.concept-map--script-placement button:nth-child(2){border-color:#72c9f44d}.concept-map--script-placement button:nth-child(3){border-color:#8b7cff61}.concept-map--script-placement button i{display:none}.concept-map--test-modes{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-map--test-modes button{min-height:108px;align-items:flex-start;padding:13px 15px;text-align:left}.concept-map--test-modes button:last-child{border-color:#ffbf5457}.concept-map--test-modes button i{display:none}.concept-map--stack{grid-template-columns:1fr;gap:8px}.concept-map--stack button{min-height:72px;display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px}.concept-map--stack button>span{grid-row:1 / 3}.concept-map--stack button small,.concept-map--stack button strong{grid-column:2}.concept-map--hierarchy,.concept-map--branch{grid-template-columns:repeat(3,minmax(0,1fr));padding-top:20px}.concept-map--hierarchy:before,.concept-map--branch:before{content:"";position:absolute;z-index:0;top:47%;right:18%;left:18%;height:1px;background:#2b3b51}.concept-map--hierarchy button:first-child,.concept-map--branch button:first-child{grid-column:1 / -1;justify-self:center;width:min(260px,100%)}.concept-map--hierarchy button:first-child:after,.concept-map--branch button:first-child:after{content:"";position:absolute;top:100%;left:50%;width:1px;height:14px;background:#2b3b51}.concept-map--hierarchy button i,.concept-map--branch button i{display:none}.concept-map--cycle{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px 24%}.concept-map--cycle:before{content:"↻";position:absolute;z-index:1;top:50%;left:50%;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(139,124,255,.25);border-radius:50%;color:var(--violet-bright);background:#0b1625;font:26px/1 DM Mono,monospace;transform:translate(-50%,-50%)}.concept-map--cycle button{min-height:92px}.concept-map--cycle button i{display:none}.concept-map--timeline:before{content:"";position:absolute;z-index:0;top:50%;right:9%;left:9%;height:2px;background:linear-gradient(90deg,#8b7cff1f,#8b7cff66,#43d7a53d)}.concept-map--boundary:before{content:"TRUST BOUNDARY";position:absolute;z-index:0;top:8px;bottom:8px;left:50%;width:0;padding-left:6px;border-left:1px dashed rgba(255,101,119,.35);color:#ff6577b3;font-size:12px;font-weight:800;letter-spacing:.45px;writing-mode:vertical-rl}.concept-map--boundary button:nth-child(2){border-color:#ff65772e}.concept-map--boundary button:nth-child(3){border-color:#43d7a52e}.lesson-visual{margin-top:22px;border:1px solid rgba(77,184,255,.22);border-radius:14px;background:linear-gradient(145deg,#0d1f30f5,#0a1523f5);overflow:visible}.lesson-visual__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:17px 19px;border-bottom:1px solid var(--line)}.lesson-visual__heading small{color:var(--sky);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.lesson-visual__heading h3{margin:3px 0 0;font-size:18px}.lesson-visual__heading p{max-width:390px;margin:0;color:var(--muted);font-size:var(--type-sm);line-height:1.55}.lesson-visual__equivalent{margin:0 17px 17px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:#ffffff05;font-size:var(--type-sm)}.lesson-visual__equivalent summary{color:var(--text);font-weight:800;cursor:pointer}.lesson-visual__equivalent p,.lesson-visual__equivalent ul{margin:10px 0 0}.lesson-visual__equivalent li+li{margin-top:6px}.lesson-visual__studio-map{display:grid;grid-template-columns:1fr minmax(170px,2fr) 1fr;gap:8px;min-height:230px;padding:17px;color:#cdd9e8;font-size:var(--type-sm);font-weight:800}.lesson-visual__studio-map>div{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:12px;border:1px solid var(--line-strong);border-radius:9px;background:#0a1523}.lesson-visual__studio-map small{margin-top:4px;color:var(--muted-2);font-weight:600}.studio-map__explorer{grid-row:1 / span 2}.studio-map__viewport{grid-row:1 / span 2;min-height:188px;border-color:#43d7a552!important;background:radial-gradient(circle at 52% 45%,rgba(67,215,165,.14),transparent 45%),#0a1523!important}.studio-map__properties{grid-row:1}.studio-map__editor{grid-column:1 / span 2}.studio-map__output{grid-column:3;border-color:#ffbf5442!important}.lesson-visual__hierarchy{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px;padding:22px 17px}.lesson-visual__hierarchy>div{min-width:0;padding:13px;border:1px solid var(--line-strong);border-radius:9px;background:#0a1523}.lesson-visual__hierarchy code{display:block;color:var(--mint);font:700 var(--type-sm) "DM Mono",monospace;overflow-wrap:anywhere}.lesson-visual__hierarchy span{display:block;margin-top:4px;color:var(--muted-2);font-size:var(--type-xs)}.lesson-visual__hierarchy i{color:var(--sky);font-style:normal}.lesson-visual__hierarchy i:before{content:"→"}.lesson-visual__hierarchy p{grid-column:1 / -1;margin:6px 0 0;padding:12px;border-left:3px solid var(--amber);color:var(--muted);background:#ffbf540d;font-size:var(--type-sm)}.lesson-visual__hierarchy p code{display:inline;color:var(--text)}.lesson-visual__flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:8px;padding:19px 17px}.flow-lane{display:flex;min-width:0;flex-direction:column;gap:6px;padding:13px;border:1px solid var(--line-strong);border-radius:9px;background:#0a1523}.flow-lane strong{color:var(--sky);font-size:var(--type-sm)}.flow-lane span{color:var(--text);font-size:var(--type-sm);font-weight:700}.flow-lane small{color:var(--muted-2);font-size:var(--type-xs)}.flow-lane--server{border-color:#ffbf5459}.flow-lane--server strong{color:var(--amber)}.flow-lane--result{border-color:#43d7a552}.flow-lane--result strong{color:var(--mint)}.flow-arrow{align-self:center;color:var(--sky);font-size:23px;font-weight:800}.lesson-visual__viewports{display:grid;grid-template-columns:1.3fr 1fr .72fr;align-items:end;gap:12px;padding:19px 17px}.viewport-card{display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px;border:1px solid var(--line-strong);border-radius:9px;background:#0a1523}.viewport-card>strong{color:var(--sky);font-size:var(--type-sm)}.viewport-card small{color:var(--muted-2);font-size:var(--type-xs)}.hud{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:48px;padding:8px;border:1px solid rgba(139,124,255,.32);border-radius:8px;background:#8b7cff1a;font-size:var(--type-xs)}.hud-action{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 7px;border:1px solid rgba(67,215,165,.45);border-radius:6px;color:#dffdf3;background:#43d7a521;font-size:var(--type-xs);font-weight:800}.viewport-card--phone .hud{flex-wrap:wrap}.viewport-card--phone .hud-action{width:100%;min-height:40px}.lesson-visual__migration{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:19px 17px}.lesson-visual__migration>div{position:relative;display:flex;min-height:100px;min-width:0;flex-direction:column;justify-content:center;gap:5px;padding:12px;border:1px solid var(--line-strong);border-radius:9px;background:#0a1523}.lesson-visual__migration>div:not(:last-child):after{content:"→";position:absolute;top:50%;right:-16px;z-index:1;color:var(--sky);font-size:19px;font-weight:800;transform:translateY(-50%)}.lesson-visual__migration span{color:var(--sky);font:700 var(--type-xs) "DM Mono",monospace}.lesson-visual__migration strong{font-size:var(--type-sm)}.lesson-visual__migration small{color:var(--amber);font-size:var(--type-xs);line-height:1.3}.concept-detail{display:flex;align-items:flex-start;gap:14px;min-height:112px;padding:16px 20px;border-top:1px solid var(--line);background:#8b7cff09}.concept-detail>span{flex:0 0 auto;padding-top:2px;color:#8b7cff61;font:800 25px DM Mono,monospace}.concept-detail>div{min-width:0}.concept-detail small{display:block;color:var(--violet-bright);font-size:12px;font-weight:800;letter-spacing:.65px}.concept-detail strong{display:block;margin-top:3px;font-size:16px}.concept-detail p{margin:3px 0 0;color:#9cabbc;font-size:15px;line-height:1.62}.concept-detail em{display:flex;align-items:center;gap:5px;margin-top:8px;color:var(--muted-2);font-size:12px;font-style:normal}.code-block{border:1px solid rgba(132,155,189,.18);border-radius:12px;background:#070e18;overflow:hidden;box-shadow:0 14px 36px #00000024}.code-block__bar{display:flex;align-items:center;justify-content:space-between;height:36px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.06);color:var(--muted-2);background:#0d1724;font-size:var(--type-sm)}.code-block__bar>span{display:flex;align-items:center;gap:7px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 7px #43d7a580}.icon-text-button{display:inline-flex;align-items:center;gap:5px;border:0;color:var(--muted-2);background:transparent;font-size:var(--type-sm);cursor:pointer}.icon-text-button:hover{color:var(--text)}.cm-editor{background:#070e18!important;font:var(--type-md)/1.75 "DM Mono",monospace}.cm-editor.cm-focused{outline:none!important}.cm-gutters{color:#3d4b5f!important;border:0!important;background:#070e18!important}.cm-activeLine,.cm-activeLineGutter{background:#8b7cff0b!important}.cm-content{padding:13px 0!important;caret-color:var(--violet-bright)!important}.cm-line{padding-left:8px!important}.ͼb{color:#c69bf5!important}.ͼd{color:#80d6a9!important}.ͼe{color:#72c9f4!important}.ͼc{color:#f0bd68!important}.expected-output{display:flex;align-items:flex-start;gap:10px;min-width:0;margin-top:10px;padding:13px 14px;border:1px solid rgba(67,215,165,.13);border-radius:9px;background:#43d7a509}.expected-output>span{flex:0 0 auto;color:var(--mint)}.expected-output>div{min-width:0}.expected-output small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.expected-output pre{max-width:100%;margin:4px 0 0;color:#b2bfce;white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.58 DM Mono,monospace}.line-breakdown{display:flex;min-width:0;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden}.line-breakdown>div{display:grid;grid-template-columns:28px minmax(190px,.85fr) minmax(0,1.15fr);gap:13px;align-items:start;min-width:0;padding:12px 14px;border-top:1px solid rgba(255,255,255,.045);background:#ffffff03}.line-breakdown>div:first-child{border-top:0}.line-breakdown>div>span{padding-top:2px;color:#4d5f77;font:13px DM Mono,monospace}.line-breakdown code{min-width:0;color:#c2b3ff;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:13px/1.58 DM Mono,monospace}.line-breakdown p{min-width:0;margin:0;color:#91a0b3;font-size:14px;line-height:1.62}.takeaway-card{margin-top:13px;padding:16px;border:1px solid rgba(67,215,165,.14);border-radius:12px;background:linear-gradient(145deg,#43d7a50e,#43d7a505)}.takeaway-card>div{display:flex;align-items:center;gap:10px}.takeaway-card>div>span{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:9px;color:var(--mint);background:#43d7a51a}.takeaway-card small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.takeaway-card h3{margin:2px 0 0;font-size:16px}.takeaway-card ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 0;padding:0;list-style:none}.takeaway-card li{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:10px;border:1px solid rgba(154,177,210,.1);border-radius:8px;background:#040c1447}.takeaway-card li>span{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:6px;color:var(--mint);background:#43d7a51a;font:700 12px DM Mono,monospace}.takeaway-card li p{margin:1px 0 0;color:#9aabba;font-size:13px;line-height:1.55}.mistake-list{display:flex;flex-direction:column;gap:7px}.mistake-list details{border:1px solid var(--line);border-radius:10px;background:#ffffff04;overflow:hidden}.mistake-list summary{display:flex;align-items:center;gap:10px;min-height:47px;padding:0 13px;list-style:none;cursor:pointer}.mistake-list summary::-webkit-details-marker{display:none}.mistake-list summary>span{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;color:var(--red);background:#ff657714}.mistake-list summary strong{flex:1;font-size:var(--type-base)}.mistake-list summary>svg{color:var(--muted-2);transition:transform .2s}.mistake-list details[open] summary>svg{transform:rotate(180deg)}.mistake-list details>p{margin:0;padding:0 13px 13px 50px;color:#8b9aac;font-size:var(--type-base);line-height:1.6}.quiz-card{padding:19px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(145deg,#0f1c2d,#0b1523)}.quiz-card__heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:15px}.section-number{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:7px;color:var(--violet-bright);background:#8b7cff1a;font:700 var(--type-sm) "DM Mono",monospace}.quiz-card__heading h3{margin:4px 0 0;font-size:var(--type-md);line-height:1.45}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:13px}.quiz-option{display:flex;align-items:center;gap:9px;min-height:47px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;color:#9dabbc;text-align:left;background:#ffffff04;cursor:pointer}.quiz-option>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border:1px solid var(--line-strong);border-radius:6px;color:var(--muted-2);font:700 var(--type-sm) "DM Mono",monospace}.quiz-option p{flex:1;margin:0;font-size:var(--type-sm);line-height:1.45}.quiz-option:hover,.quiz-option.selected{border-color:#8b7cff4d;background:#8b7cff11}.quiz-option.selected>span{color:#fff;border-color:var(--violet);background:var(--violet)}.quiz-option.correct{color:#b9f3de;border-color:#43d7a54d;background:#43d7a50f}.quiz-option.correct>span{color:#07271c;border-color:var(--mint);background:var(--mint)}.quiz-option.correct>svg{color:var(--mint)}.quiz-option.incorrect{border-color:#ff657747;background:#ff65770d}.quiz-option.incorrect>svg{color:var(--red)}.quiz-feedback{display:flex;align-items:flex-start;gap:9px;margin-bottom:12px;padding:11px;border-radius:9px}.quiz-feedback.correct{color:var(--mint);background:#43d7a512}.quiz-feedback.incorrect{color:var(--amber);background:#ffbf5412}.quiz-feedback strong{font-size:var(--type-base)}.quiz-feedback p{margin:2px 0 0;color:#8f9fb1;font-size:var(--type-sm);line-height:1.5}.practice-prompt{display:flex;gap:11px;margin-bottom:11px;padding:14px;border:1px solid rgba(139,124,255,.15);border-radius:10px;background:#8b7cff0a}.practice-prompt>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:8px;color:var(--violet-bright);background:#8b7cff1a}.practice-prompt small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.practice-prompt p{margin:4px 0 7px;color:#a6b4c5;font-size:var(--type-base);line-height:1.6}.practice-prompt>div>div{color:var(--muted-2);font-size:var(--type-sm)}.practice-editor{border:1px solid var(--line);border-radius:13px;background:#0a1422;overflow:hidden}.practice-editor__header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:10px 13px;border-bottom:1px solid var(--line);background:#0e1a2a}.practice-editor__header h3{margin:3px 0 0;font-size:var(--type-md)}.editor-actions{display:flex;gap:6px}.editor-shell .cm-editor{min-height:290px}.practice-editor--compact .editor-shell .cm-editor{min-height:210px}.output-panel{min-height:75px;padding:10px 13px;border-top:1px solid var(--line);background:#060d16;font:var(--type-sm)/1.6 "DM Mono",monospace}.output-panel__title{display:flex;align-items:center;gap:6px;margin-bottom:7px;color:var(--muted-2);font-family:Manrope,sans-serif;font-weight:700}.output-muted{margin:0;color:var(--muted-2)}.output-line{color:#aebccd}.output-line.warn{color:var(--amber)}.output-line.return{color:var(--mint)}.output-error{margin:5px 0 0;color:#ff8c9a;white-space:pre-wrap;font:inherit}.feedback-strip{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border-top:1px solid}.feedback-strip.success{color:var(--mint);border-color:#43d7a521;background:#43d7a50d}.feedback-strip.needs-work{color:var(--amber);border-color:#ffbf5421;background:#ffbf540d}.feedback-strip strong{font-size:var(--type-base)}.feedback-strip p{margin:2px 0 0;color:var(--muted);font-size:var(--type-sm)}.hint-stack{padding:11px 13px;border-top:1px solid var(--line)}.hint-card{margin-bottom:7px;padding:9px 10px;border-left:2px solid var(--amber);border-radius:0 7px 7px 0;background:#ffbf540e}.hint-card span{color:var(--amber);font-size:var(--type-xs);font-weight:800;text-transform:uppercase;letter-spacing:.8px}.hint-card p{margin:3px 0 0;color:#a1adbc;font-size:var(--type-sm);line-height:1.5}.hint-button{display:inline-flex;align-items:center;gap:6px;min-height:31px;padding:0 10px;border:1px solid rgba(255,191,84,.18);border-radius:7px;color:var(--amber);background:#ffbf540d;font-size:var(--type-sm);cursor:pointer}.studio-only-callout{display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid rgba(77,184,255,.16);border-radius:12px;background:#4db8ff0a}.studio-only-callout>span{display:grid;place-items:center;flex:0 0 45px;height:45px;border-radius:11px;color:var(--sky);background:#4db8ff1a}.studio-only-callout small{color:var(--sky);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.studio-only-callout h3{margin:4px 0 5px;font-size:var(--type-md)}.studio-only-callout p{margin:0 0 12px;color:var(--muted);font-size:var(--type-base);line-height:1.6}.studio-assignment{min-width:0;border:1px solid var(--line);border-radius:14px;background:#0c1726;overflow:hidden}.studio-assignment__header{display:flex;align-items:center;gap:12px;min-width:0;padding:17px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(77,184,255,.065),transparent)}.studio-assignment__header>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:10px;color:var(--sky);background:#4db8ff1a}.studio-assignment__header>div{min-width:0}.studio-assignment__header small{color:var(--sky);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.studio-assignment__header h3{margin:3px 0;font-size:16px;line-height:1.4}.studio-assignment__header p{margin:0;color:var(--muted-2);font-size:13px}.studio-starting-point{display:flex;align-items:flex-start;gap:10px;margin:14px 15px 0;padding:11px 12px;border:1px solid rgba(139,124,255,.15);border-radius:9px;background:#8b7cff0b}.studio-starting-point>svg{flex:0 0 auto;margin-top:1px;color:var(--violet-bright)}.studio-starting-point>div{min-width:0}.studio-starting-point small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:.8px}.studio-starting-point p{margin:3px 0 0;color:#a8b5c6;font-size:var(--type-base);line-height:1.5}.studio-preflight{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 15px 0}.studio-preflight>span{margin-right:2px;color:#73839a;font-size:var(--type-xs);font-weight:800;letter-spacing:.7px}.studio-preflight b{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid rgba(154,177,210,.11);border-radius:7px;color:#9aabbe;background:#ffffff05;font-size:var(--type-xs);font-weight:700}.studio-preflight b svg{color:var(--sky)}.studio-object-list{display:flex;min-width:0;flex-direction:column;gap:7px;padding:15px 15px 12px}.studio-object-list>span{color:#73839a;font-size:12px;font-weight:800;letter-spacing:.65px}.object-path{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(115px,auto) auto;align-items:center;gap:8px;min-width:0;margin:0;padding:11px 13px;border:1px solid var(--line);border-radius:8px;color:#8f9db0;background:#08121f;font:13px/1.45 DM Mono,monospace}.object-path>span,.object-path strong{min-width:0;overflow-wrap:anywhere}.object-path>svg{flex:0 0 auto;color:#4d6078}.object-path strong{color:var(--sky)}.object-path b{justify-self:end;max-width:180px;padding:4px 7px;border-radius:5px;color:var(--mint);text-align:right;background:#43d7a514;font:700 12px/1.3 Manrope,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}.studio-steps{display:flex;flex-direction:column;gap:9px;margin:0;padding:0 17px 15px;list-style:none}.studio-steps li{display:flex;align-items:flex-start;gap:10px}.studio-steps span{display:grid;place-items:center;flex:0 0 24px;height:24px;border:1px solid rgba(77,184,255,.18);border-radius:6px;color:var(--sky);background:#4db8ff0f;font:700 var(--type-xs) "DM Mono",monospace}.studio-steps p{margin:2px 0 0;color:#91a0b2;font-size:var(--type-base);line-height:1.55}.studio-step-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:1px 17px 10px}.studio-step-label span{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:.7px}.studio-step-label p{margin:0;color:var(--muted-2);font-size:var(--type-xs);text-align:right}.studio-results{display:grid;grid-template-columns:1fr 1fr;gap:1px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--line)}.studio-results>div{padding:14px 17px;background:#0c1726}.studio-results small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.studio-results p{margin:4px 0 0;color:#8c9bae;font-size:var(--type-sm);line-height:1.55}.troubleshoot-box{margin:13px 15px;border:1px solid rgba(255,191,84,.14);border-radius:8px;background:#ffbf5408}.troubleshoot-box summary{display:flex;align-items:center;gap:7px;min-height:37px;padding:0 10px;color:var(--amber);list-style:none;font-size:var(--type-sm);cursor:pointer}.troubleshoot-box summary svg:last-child{margin-left:auto}.troubleshoot-box ul{margin:0;padding:0 12px 11px 29px;color:#8f9daf;font-size:var(--type-sm);line-height:1.65}.self-checks{display:flex;flex-direction:column;gap:7px;padding:0 15px 15px}.self-checks>span{margin-bottom:2px;color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.self-checks label,.challenge-confirm{display:flex;align-items:center;gap:8px;color:#8d9caf;font-size:var(--type-sm);cursor:pointer}.self-checks input,.challenge-confirm input,.milestone-list input,.test-matrix input{position:absolute;opacity:0;pointer-events:none}.self-checks i,.challenge-confirm i{display:grid;place-items:center;width:17px;height:17px;border:1px solid var(--line-strong);border-radius:5px;color:transparent;font-style:normal}.self-checks input:checked+i,.challenge-confirm input:checked+i{color:#07231a;border-color:var(--mint);background:var(--mint)}.final-challenge{position:relative;margin-top:38px;padding:30px;border:1px solid rgba(255,191,84,.2);border-radius:17px;background:radial-gradient(circle at 93% 5%,rgba(255,191,84,.1),transparent 31%),linear-gradient(145deg,#141e2d,#0c1725);overflow:hidden}.challenge-icon{display:grid;place-items:center;width:51px;height:51px;margin-bottom:14px;border:1px solid rgba(255,191,84,.28);border-radius:13px;color:var(--amber);background:#ffbf5417;box-shadow:0 0 30px #ffbf5414}.final-challenge .eyebrow{color:var(--amber)}.final-challenge h2{margin:6px 0 8px;font-size:23px}.final-challenge>p{color:#a8b4c4;font-size:var(--type-md);line-height:1.7}.challenge-brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 12px}.challenge-brief-grid>div{min-width:0;padding:15px;border:1px solid rgba(255,191,84,.15);border-radius:11px;background:#050d1761}.challenge-brief-grid small{display:block;margin-bottom:6px;color:var(--amber);font-size:var(--type-xs);font-weight:850;letter-spacing:.9px}.challenge-brief-grid p{margin:0;color:#c1cad6;font-size:var(--type-base);line-height:1.65}.challenge-independence{display:flex;align-items:flex-start;gap:8px;margin:0 0 17px!important;padding:10px 12px;border-left:2px solid var(--mint);color:var(--muted)!important;background:#43d7a509;font-size:var(--type-sm)!important;line-height:1.55!important}.challenge-independence svg{flex:0 0 auto;margin-top:2px;color:var(--mint)}.plan-field,.reflection-field{display:flex;flex-direction:column;gap:7px;margin:18px 0 13px}.plan-field>span,.reflection-field>span{color:var(--muted);font-size:var(--type-sm);font-weight:700}.plan-field textarea,.reflection-field textarea{min-height:94px;resize:vertical;padding:11px;border:1px solid var(--line);border-radius:9px;outline:0;color:#b8c5d4;background:#09131f;font:var(--type-base)/1.65 "DM Mono",monospace}.plan-field textarea:focus,.reflection-field textarea:focus{border-color:#8b7cff66}.challenge-confirm{padding:11px;border:1px solid var(--line);border-radius:8px;background:#ffffff05}.completion-requirements{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0}.completion-requirements span{display:flex;align-items:center;gap:5px;padding:5px 7px;border-radius:6px;color:var(--muted-2);background:#ffffff06;font-size:var(--type-xs)}.completion-requirements span.done{color:var(--mint);background:#43d7a50f}.complete-lesson-button{width:100%;min-height:58px;justify-content:flex-start;padding:0 14px;border-color:#8b7cff40;color:#fff;text-align:left;background:linear-gradient(135deg,#7768f6e6,#5b4ec9e6)}.complete-lesson-button:disabled{color:#66758a;border-color:var(--line);background:#152131;cursor:not-allowed}.complete-lesson-button>span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#ffffff1a}.complete-lesson-button>div{display:flex;flex:1;flex-direction:column}.complete-lesson-button strong{font-size:var(--type-base)}.complete-lesson-button small{margin-top:2px;font-size:var(--type-xs);opacity:.6}.lesson-footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.lesson-footer-nav a{display:flex;align-items:center;gap:10px;min-height:62px;padding:12px;border:1px solid var(--line);border-radius:10px;color:var(--muted-2);background:#ffffff03}.lesson-footer-nav a:last-child{justify-content:flex-end;text-align:right}.lesson-footer-nav a:hover{color:var(--text);border-color:#8b7cff40}.lesson-footer-nav a.disabled{opacity:.35;pointer-events:none}.lesson-footer-nav span{display:flex;flex-direction:column}.lesson-footer-nav small{font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.lesson-footer-nav strong{margin-top:3px;color:var(--text);font-size:var(--type-base)}.locked-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 180px);text-align:center}.locked-page h1{margin:7px 0;font-size:34px}.locked-page>p{max-width:520px;color:var(--muted);font-size:var(--type-md);line-height:1.7}.locked-page .text-link{margin-top:15px}.locked-visual{position:relative;display:grid;place-items:center;width:130px;height:130px;margin-bottom:17px}.locked-visual>span{position:relative;z-index:2;display:grid;place-items:center;width:70px;height:70px;border:1px solid rgba(139,124,255,.26);border-radius:20px;color:var(--violet-bright);background:#8b7cff1a}.locked-visual i{position:absolute;width:110px;height:110px;border:1px solid rgba(139,124,255,.1);border-radius:50%}.locked-visual i:last-child{width:130px;height:130px;border-style:dashed}.prerequisite-status-list{display:flex;flex-direction:column;gap:7px;width:min(620px,100%);margin:16px 0;text-align:left}.prerequisite-status-list>div{display:flex;align-items:center;gap:10px;min-height:58px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;color:var(--muted-2);background:#ffffff05}.prerequisite-status-list>div>svg{flex:0 0 auto;color:var(--amber)}.prerequisite-status-list>div>span{display:flex;flex:1;flex-direction:column}.prerequisite-status-list small{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:.7px}.prerequisite-status-list strong{margin-top:3px;color:var(--text);font-size:var(--type-base)}.prerequisite-status-list b{color:var(--amber);font-size:var(--type-xs)}.lesson-lock-reason{display:block;margin-top:5px;color:var(--amber);font-size:var(--type-xs)}.lesson-footer-nav .lesson-nav-locked{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:62px;padding:12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted-2);text-align:right;opacity:.7}.path-assessment{display:flex;align-items:center;gap:12px;flex:0 0 300px;padding:14px;border:1px solid rgba(67,215,165,.15);border-radius:12px;background:#43d7a50a}.path-assessment>span{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;color:var(--mint);background:#43d7a51a}.path-assessment small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.path-assessment strong{display:block;margin:3px 0;font-size:var(--type-base)}.path-assessment p{margin:0;color:var(--muted-2);font-size:var(--type-xs)}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.path-card{--path: var(--violet);display:flex;flex-direction:column;min-height:216px;padding:18px;border:1px solid var(--line);border-radius:14px;color:inherit;text-align:left;background:linear-gradient(145deg,color-mix(in srgb,var(--path) 5%,#101c2c),#0b1624);cursor:pointer;transition:.2s}.path-card--orange{--path: var(--orange)}.path-card--pink{--path: var(--pink)}.path-card--red{--path: var(--red)}.path-card--blue{--path: var(--blue)}.path-card--mint{--path: var(--mint)}.path-card--cyan{--path: var(--cyan)}.path-card--amber{--path: var(--amber)}.path-card--violet{--path: var(--violet)}.path-card:hover,.path-card.selected{transform:translateY(-2px);border-color:color-mix(in srgb,var(--path) 40%,transparent);box-shadow:0 15px 35px #00000024}.path-card.selected{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--path) 18%,transparent),0 15px 35px #00000024}.path-card__top{display:flex;align-items:center;justify-content:space-between}.path-card__top>span{display:grid;place-items:center;width:41px;height:41px;border-radius:10px;color:var(--path);background:color-mix(in srgb,var(--path) 10%,transparent)}.path-card__top>small{color:var(--path);font-size:var(--type-sm);font-weight:800}.path-card .progress-ring__value{stroke:var(--path)}.path-card .progress-ring__content strong{font-size:var(--type-sm)}.path-card h2{margin:16px 0 7px;font-size:var(--type-lg)}.path-card>p{flex:1;margin-bottom:13px;color:var(--muted);font-size:var(--type-base);line-height:1.6}.path-card>div:last-child{display:flex;align-items:center;gap:10px;padding-top:11px;border-top:1px solid var(--line);color:var(--muted-2);font-size:var(--type-xs)}.path-card>div:last-child svg{margin-left:auto}.path-card.active-path{border-color:color-mix(in srgb,var(--path) 30%,var(--line))}.active-path-label{display:inline-flex;align-items:center;align-self:flex-start;gap:5px;margin:-1px 0 7px;color:var(--path);font-size:var(--type-xs);font-weight:850;letter-spacing:.65px}.path-detail{--path: var(--violet);border:1px solid color-mix(in srgb,var(--path) 20%,var(--line));border-radius:18px;background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--path) 9%,transparent),transparent 30%),#0d1928;overflow:hidden}.path-detail--orange{--path: var(--orange)}.path-detail--pink{--path: var(--pink)}.path-detail--red{--path: var(--red)}.path-detail--blue{--path: var(--blue)}.path-detail--mint{--path: var(--mint)}.path-detail--cyan{--path: var(--cyan)}.path-detail--amber{--path: var(--amber)}.path-detail--violet{--path: var(--violet)}.path-detail__head{display:flex;align-items:center;gap:15px;padding:22px;border-bottom:1px solid var(--line)}.path-detail__icon{display:grid;place-items:center;flex:0 0 57px;height:57px;border-radius:14px;color:var(--path);background:color-mix(in srgb,var(--path) 10%,transparent)}.path-detail__head>div:nth-child(2){flex:1}.path-detail__head small{color:var(--path);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.path-detail__head h2{margin:4px 0;font-size:19px}.path-detail__head p{margin:0;color:var(--muted);font-size:var(--type-base)}.path-detail__stats{display:flex;align-items:center;gap:10px}.path-detail__stats .progress-ring__value{stroke:var(--path)}.path-detail__stats>span{display:flex;flex-direction:column;color:var(--muted-2);font-size:var(--type-xs)}.path-detail__stats>span strong{color:var(--text);font-size:var(--type-md)}.path-roadmap{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.path-roadmap__module{display:flex;align-items:center;gap:11px;min-height:80px;padding:13px 18px;background:#0c1726}.path-roadmap__module>div{flex:1}.path-roadmap__module small{color:var(--muted-2);font-size:var(--type-xs)}.path-roadmap__module strong{display:block;margin:2px 0;font-size:var(--type-base)}.path-roadmap__module p{margin:0 0 6px;color:var(--muted-2);font-size:var(--type-xs)}.path-roadmap__module>div>div{height:2px;border-radius:99px;background:#233146;overflow:hidden}.path-roadmap__module>div>div i{display:block;height:100%;background:var(--path)}.path-roadmap__module>svg{color:var(--mint)}.path-roadmap__module>strong{color:var(--muted-2);font-size:var(--type-sm)}.path-detail__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;border-top:1px solid var(--line)}.path-detail__footer>div{display:flex;align-items:center;gap:9px;color:var(--path)}.path-detail__footer span{display:flex;flex-direction:column;color:var(--muted-2);font-size:var(--type-sm)}.path-detail__footer strong{color:var(--text)}.path-sequence-note{display:flex;align-items:flex-start;gap:10px;margin:0 22px 16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--path) 16%,var(--line));border-radius:10px;color:var(--path);background:color-mix(in srgb,var(--path) 4%,transparent)}.path-sequence-note svg{flex:0 0 auto;margin-top:2px}.path-sequence-note p{margin:0;color:var(--muted);font-size:var(--type-sm);line-height:1.55}.path-sequence-note strong{color:var(--text)}.projects-hero__visual{position:relative;display:grid;place-items:center;flex:0 0 330px;height:180px}.projects-hero__visual>span{display:grid;place-items:center;width:76px;height:76px;border:1px solid rgba(139,124,255,.27);border-radius:20px;color:var(--violet-bright);background:#8b7cff1c;box-shadow:0 0 0 16px #8b7cff06,0 0 50px #8b7cff1c}.projects-hero__visual>i{position:absolute;width:210px;height:135px;border:1px solid rgba(139,124,255,.1);border-radius:50%;transform:rotate(-12deg)}.projects-hero__visual>i:last-child{transform:rotate(50deg)}.mini-system-card{position:absolute;z-index:2;display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#08121ff2;font-size:var(--type-sm);box-shadow:0 8px 20px #0003}.mini-system-card.one{top:13px;right:15px;color:var(--blue)}.mini-system-card.two{bottom:16px;left:10px;color:var(--mint)}.mini-system-card.three{bottom:1px;right:0;color:var(--amber)}.projects-progress-strip{display:flex;align-items:center;gap:16px;margin:0 0 16px;padding:13px 17px;border:1px solid var(--line);border-radius:12px;background:#0d1929bf}.projects-progress-strip>div:first-child{display:flex;align-items:center;gap:10px}.projects-progress-strip>div:first-child>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--mint);background:#43d7a517}.projects-progress-strip p{display:flex;flex-direction:column;margin:0}.projects-progress-strip p strong{font-size:var(--type-base)}.projects-progress-strip p small{margin-top:2px;color:var(--muted-2);font-size:var(--type-xs)}.projects-progress-line{flex:1;height:4px;border-radius:99px;background:#213047;overflow:hidden}.projects-progress-line i{display:block;height:100%;background:linear-gradient(90deg,var(--mint),var(--violet))}.projects-progress-strip>strong{font-size:var(--type-base)}.projects-filters{width:fit-content;margin-bottom:14px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.project-card{--project: var(--violet);position:relative;display:flex;flex-direction:column;min-height:373px;padding:18px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 98% 0,color-mix(in srgb,var(--project) 7%,transparent),transparent 29%),#0d1928;overflow:hidden}.project-card--sky{--project: var(--sky)}.project-card--red{--project: var(--red)}.project-card--amber{--project: var(--amber)}.project-card--pink{--project: var(--pink)}.project-card--violet{--project: var(--violet)}.project-card--mint{--project: var(--mint)}.project-card--orange{--project: var(--orange)}.project-card--blue{--project: var(--blue)}.project-card--purple{--project: var(--purple)}.project-card--cyan{--project: var(--cyan)}.project-card.locked{opacity:.52;filter:saturate(.55)}.project-card__number{position:absolute;top:11px;right:13px;color:#ffffff09;font:800 37px DM Mono,monospace}.project-card__top{position:relative;display:flex;align-items:center;gap:9px}.project-card__top>span{display:grid;place-items:center;width:41px;height:41px;border-radius:10px;color:var(--project);background:color-mix(in srgb,var(--project) 10%,transparent)}.project-card__top>div{display:flex;flex-direction:column}.project-card__top small{color:var(--project);font-size:var(--type-xs);font-weight:800;text-transform:uppercase;letter-spacing:1px}.project-card__top b{display:flex;align-items:center;gap:4px;margin-top:3px;color:var(--muted-2);font-size:var(--type-xs)}.project-card__top em{display:flex;align-items:center;gap:4px;margin-left:auto;padding:4px 6px;border-radius:5px;color:var(--mint);background:#43d7a514;font-size:var(--type-xs);font-style:normal}.project-card h2{margin:17px 0 7px;font-size:16px}.project-card>p{min-height:44px;margin-bottom:12px;color:var(--muted);font-size:var(--type-base);line-height:1.6}.skill-chips{display:flex;flex-wrap:wrap;gap:5px}.skill-chips span{padding:4px 6px;border:1px solid var(--line);border-radius:5px;color:var(--muted-2);background:#ffffff05;font-size:var(--type-xs)}.project-card__outcome{flex:1;margin-top:14px;padding:10px;border-left:2px solid color-mix(in srgb,var(--project) 50%,transparent);border-radius:0 7px 7px 0;background:color-mix(in srgb,var(--project) 4%,transparent)}.project-card__outcome small{color:var(--project);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.project-card__outcome p{margin:4px 0 0;color:#8493a6;font-size:var(--type-sm);line-height:1.55}.project-card__footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.project-card__footer span,.project-card__footer a{display:flex;align-items:center;gap:5px;color:var(--muted-2);font-size:var(--type-xs)}.project-card__footer a{color:var(--project);font-weight:800}.project-card.locked{opacity:1;filter:none;border-style:dashed;background:radial-gradient(circle at 98% 0,color-mix(in srgb,var(--project) 5%,transparent),transparent 29%),#0b1624}.project-card__requirements{flex:1;margin-top:13px;padding:11px;border:1px solid var(--line);border-radius:8px;background:#ffffff04}.project-card__requirements>small{color:var(--amber);font-size:var(--type-xs);font-weight:800;letter-spacing:.8px}.project-card__requirements p{display:flex;align-items:center;gap:7px;margin:9px 0 0;color:var(--muted);font-size:var(--type-sm)}.project-card__requirements p>span{flex:1}.project-card__requirements p>b{color:var(--amber);font-size:var(--type-xs)}.locked-project-requirements{width:min(720px,100%);margin:0 auto;padding:24px;border:1px solid var(--line);border-radius:15px;background:#0d1928}.locked-project-requirements>div:first-child{display:flex;align-items:flex-start;gap:12px}.locked-project-requirements>div:first-child>span{display:grid;place-items:center;flex:0 0 45px;height:45px;border-radius:11px;color:var(--violet-bright);background:#8b7cff17}.locked-project-requirements small{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:.8px}.locked-project-requirements h2{margin:4px 0;font-size:20px}.locked-project-requirements p{margin:0;color:var(--muted);line-height:1.6}.locked-project-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px}.locked-project-hero{max-width:820px;margin-right:auto;margin-left:auto}.portfolio-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;padding:22px;border:1px solid rgba(67,217,231,.18);border-radius:15px;background:radial-gradient(circle at 90% 0,rgba(67,217,231,.09),transparent 32%),#0e1a29}.portfolio-callout>div{display:flex;align-items:center;gap:14px}.portfolio-callout>div>span{display:grid;place-items:center;flex:0 0 51px;height:51px;border-radius:13px;color:var(--cyan);background:#43d9e71a}.portfolio-callout small{color:var(--cyan);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.portfolio-callout h2{margin:4px 0;font-size:16px}.portfolio-callout p{margin:0;color:var(--muted);font-size:var(--type-base)}.project-detail-hero{--project: var(--violet);display:flex;align-items:center;gap:18px;margin:16px 0 20px;padding:25px;border:1px solid color-mix(in srgb,var(--project) 22%,var(--line));border-radius:18px;background:radial-gradient(circle at 95% 0,color-mix(in srgb,var(--project) 10%,transparent),transparent 34%),#101c2c}.project-detail-hero--sky{--project: var(--sky)}.project-detail-hero--red{--project: var(--red)}.project-detail-hero--amber{--project: var(--amber)}.project-detail-hero--pink{--project: var(--pink)}.project-detail-hero--violet{--project: var(--violet)}.project-detail-hero--mint{--project: var(--mint)}.project-detail-hero--orange{--project: var(--orange)}.project-detail-hero--blue{--project: var(--blue)}.project-detail-hero--purple{--project: var(--purple)}.project-detail-hero--cyan{--project: var(--cyan)}.project-detail-hero__icon{display:grid;place-items:center;flex:0 0 70px;height:70px;border:1px solid color-mix(in srgb,var(--project) 27%,transparent);border-radius:17px;color:var(--project);background:color-mix(in srgb,var(--project) 10%,transparent)}.project-detail-hero>div:nth-child(2){flex:1}.project-detail-hero .page-kicker{color:var(--project)}.project-detail-hero h1{margin:5px 0;font-size:29px}.project-detail-hero>div:nth-child(2)>p{max-width:690px;margin-bottom:12px;color:var(--muted);font-size:var(--type-base)}.project-status{min-width:170px;padding-left:20px;border-left:1px solid var(--line)}.project-status span{color:var(--project);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.project-status strong{display:block;margin:5px 0 8px;font-size:var(--type-md)}.project-status>div{height:3px;border-radius:99px;background:#233148;overflow:hidden}.project-status i{display:block;height:100%;background:var(--project)}.project-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:22px}.project-brief-section{padding:20px 7px 28px;border-bottom:1px solid var(--line)}.project-outcome-large{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid rgba(139,124,255,.15);border-radius:10px;color:var(--violet-bright);background:#8b7cff0a}.project-outcome-large p{margin:1px 0 0;color:#a3b0c0;font-size:var(--type-base);line-height:1.65}.project-brief-section .skill-chips{margin-top:10px}.setup-table{border:1px solid var(--line);border-radius:11px;overflow:hidden}.setup-table>div{display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:12px;min-height:43px;align-items:center;padding:0 13px;border-top:1px solid var(--line)}.setup-table>div:first-child{min-height:31px;border-top:0;color:var(--muted-2);background:#101c2b;font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.setup-table code{color:var(--sky);font:var(--type-sm) "DM Mono",monospace}.setup-table strong{font-size:var(--type-base)}.setup-table>div>span:last-child{color:var(--muted-2);font-size:var(--type-sm)}.setup-note{display:flex;align-items:flex-start;gap:8px;margin-top:9px;padding:10px;border-radius:8px;color:var(--amber);background:#ffbf540d}.setup-note p{margin:0;color:#8f9daf;font-size:var(--type-sm);line-height:1.5}.milestone-list{display:flex;flex-direction:column;gap:7px}.milestone-list label{display:grid;grid-template-columns:22px 26px 1fr;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#ffffff03;cursor:pointer}.milestone-list label>i{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--line-strong);border-radius:6px;color:transparent;font-style:normal}.milestone-list label>span{color:var(--muted-2);font:var(--type-xs) "DM Mono",monospace}.milestone-list strong{font-size:var(--type-base)}.milestone-list p{margin:3px 0 0;color:var(--muted-2);font-size:var(--type-sm);line-height:1.45}.milestone-list label.checked{border-color:#43d7a52b;background:#43d7a509}.milestone-list label.checked>i{color:#07231a;border-color:var(--mint);background:var(--mint)}.milestone-list label.checked>div{opacity:.7}.test-matrix{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}.test-matrix label{display:flex;align-items:center;gap:10px;min-height:43px;padding:0 12px;border-top:1px solid var(--line);cursor:pointer}.test-matrix label:first-child{border-top:0}.test-matrix label>span{color:var(--muted-2)}.test-matrix label p{flex:1;margin:0;color:#8f9daf;font-size:var(--type-sm)}.test-matrix label b{color:var(--muted-2);font-size:var(--type-xs)}.test-matrix label.passed{background:#43d7a508}.test-matrix label.passed>span,.test-matrix label.passed b{color:var(--mint)}.stretch-card{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid rgba(255,191,84,.16);border-radius:10px;color:var(--amber);background:#ffbf540b}.stretch-card p{margin:0;color:#a3afbd;font-size:var(--type-base);line-height:1.65}.project-detail-aside{display:flex;flex-direction:column;gap:12px}.project-readiness,.project-progress-card{padding:16px;border:1px solid var(--line);border-radius:12px;background:#0d1928}.project-readiness>span,.project-progress-card>span{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.project-readiness>div{display:flex;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--violet-bright)}.project-readiness>div:last-child{border-bottom:0}.project-readiness p{display:flex;flex-direction:column;margin:0}.project-readiness small{color:var(--muted-2);font-size:var(--type-xs)}.project-readiness strong,.project-readiness a{margin-top:3px;color:var(--text);font-size:var(--type-sm)}.project-progress-card>div{display:inline-flex;flex-direction:column;width:48%;margin:14px 0}.project-progress-card>div strong{font-size:18px}.project-progress-card>div small{color:var(--muted-2);font-size:var(--type-xs)}.complete-project-button{width:100%;min-height:42px;color:#fff;background:linear-gradient(135deg,#6f61e8,#5b4ec9)}.complete-project-button:disabled{color:#66748a;background:#182437;cursor:not-allowed}.project-progress-card>p{margin:8px 0 0;color:var(--muted-2);text-align:center;font-size:var(--type-xs)}.debug-aside-link{display:flex;align-items:center;gap:9px;padding:13px;border:1px solid rgba(255,101,119,.13);border-radius:10px;color:var(--red);background:#ff65770a}.debug-aside-link>div{display:flex;flex:1;flex-direction:column}.debug-aside-link strong{font-size:var(--type-sm)}.debug-aside-link span{margin-top:2px;color:var(--muted-2);font-size:var(--type-xs)}.practice-title{align-items:center}.runtime-status{display:flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid rgba(67,215,165,.17);border-radius:11px;background:#43d7a50a}.runtime-status>i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 10px #43d7a580}.runtime-status>div{display:flex;flex-direction:column}.runtime-status small{color:var(--mint);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.runtime-status strong{margin:2px 0;font-size:var(--type-sm)}.runtime-status span{color:var(--muted-2);font-size:var(--type-xs)}.practice-layout{display:grid;grid-template-columns:210px minmax(0,1fr) 190px;gap:14px;align-items:start}.challenge-sidebar,.practice-cheatsheet{position:sticky;top:92px;border:1px solid var(--line);border-radius:12px;background:#0d1928;overflow:hidden}.challenge-sidebar{display:flex;flex-direction:column;max-height:calc(100vh - 110px)}.challenge-sidebar>div:first-child{display:flex;flex-direction:column;flex:0 0 auto;padding:14px;border-bottom:1px solid var(--line)}.challenge-sidebar>div:first-child span{color:var(--violet-bright);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.challenge-sidebar>div:first-child strong{margin:4px 0;font-size:var(--type-base)}.challenge-sidebar>div:first-child small{color:var(--muted-2);font-size:var(--type-xs)}.challenge-sidebar nav{display:flex;flex-direction:column;min-height:0;padding:6px;overflow-y:auto;scrollbar-width:thin}.challenge-sidebar nav button{display:grid;grid-template-columns:26px 1fr 15px;align-items:center;flex:0 0 auto;gap:8px;min-height:49px;padding:7px;border:1px solid transparent;border-radius:8px;color:var(--muted-2);text-align:left;background:transparent;cursor:pointer}.challenge-sidebar nav button:hover{background:#ffffff05}.challenge-sidebar nav button.active{color:var(--text);border-color:#8b7cff26;background:#8b7cff12}.challenge-sidebar nav button>span{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--line);border-radius:7px;font:var(--type-xs) "DM Mono",monospace}.challenge-sidebar nav button.complete>span{color:#062219;border-color:var(--mint);background:var(--mint)}.challenge-sidebar nav div{display:flex;min-width:0;flex-direction:column}.challenge-sidebar nav strong{color:inherit;font-size:var(--type-sm);overflow-wrap:anywhere}.challenge-sidebar nav small{margin-top:2px;font-size:var(--type-xs)}.browser-boundary{display:flex;flex:0 0 auto;gap:8px;margin:7px;padding:10px;border:1px solid rgba(67,215,165,.12);border-radius:8px;color:var(--mint);background:#43d7a509}.browser-boundary strong{font-size:var(--type-sm)}.browser-boundary p{margin:2px 0 0;color:var(--muted-2);font-size:var(--type-xs);line-height:1.45}.practice-workspace{min-width:0}.challenge-brief{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:10px;padding:17px;border:1px solid var(--line);border-radius:12px;background:#0e1a2a}.challenge-brief h2{margin:4px 0 3px;font-size:17px}.practice-prerequisite{display:block;margin-bottom:8px;color:var(--sky);font-size:var(--type-xs);font-weight:800;letter-spacing:.65px}.challenge-brief p{margin:0;color:var(--muted);font-size:var(--type-base);line-height:1.55}.challenge-brief>span{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:7px;color:var(--violet-bright);background:#8b7cff14;white-space:nowrap;font-size:var(--type-xs)}.challenge-brief>span.passed{color:var(--mint);background:#43d7a512}.expected-chip{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:9px 11px;border:1px solid rgba(67,215,165,.12);border-radius:8px;color:var(--mint);background:#43d7a509}.expected-chip span{display:flex;gap:8px;color:var(--muted);font:var(--type-sm) "DM Mono",monospace}.expected-chip small{color:var(--mint);font:800 var(--type-xs) "Manrope",sans-serif;letter-spacing:.8px}.practice-cheatsheet{padding:14px}.practice-cheatsheet details{border-bottom:1px solid var(--line)}.practice-cheatsheet summary{display:flex;align-items:center;justify-content:space-between;min-height:37px;color:var(--muted);list-style:none;font-size:var(--type-sm);cursor:pointer}.practice-cheatsheet pre{margin:0 0 10px;padding:8px;border-radius:7px;color:#afa0ef;background:#08111d;white-space:pre-wrap;font:var(--type-xs)/1.6 "DM Mono",monospace}.official-link{display:flex;align-items:center;gap:6px;margin-top:13px;color:var(--sky);font-size:var(--type-xs)}.reference-hero{display:flex;align-items:center;justify-content:space-between;gap:35px;margin:7px 0 24px;padding:24px 28px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 91% 0,rgba(77,184,255,.1),transparent 34%),#0e1a2a}.reference-hero>div:first-child{max-width:720px}.reference-search-large{display:flex;align-items:center;gap:9px;flex:0 0 370px;height:50px;padding:0 12px 0 15px;border:1px solid rgba(77,184,255,.22);border-radius:11px;color:var(--sky);background:#091420;box-shadow:0 14px 34px #00000026}.reference-search-large input{flex:1;min-width:0;border:0;outline:0;color:var(--text);background:transparent;font-size:var(--type-base)}.reference-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px}.reference-categories{position:sticky;top:92px;align-self:start;display:flex;flex-direction:column;padding:11px;border:1px solid var(--line);border-radius:12px;background:#0d1928}.reference-categories>span{margin:5px 8px 8px;color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.reference-categories button{display:flex;align-items:center;justify-content:space-between;min-height:33px;padding:0 8px;border:0;border-radius:7px;color:var(--muted-2);background:transparent;font-size:var(--type-sm);cursor:pointer}.reference-categories button.active{color:var(--text);background:#8b7cff17}.reference-categories button b{display:grid;place-items:center;min-width:20px;height:17px;border-radius:5px;color:var(--muted-2);background:#ffffff0a;font-size:var(--type-xs)}.reference-tip{display:flex;gap:7px;margin-top:12px;padding:9px;border:1px solid rgba(255,191,84,.12);border-radius:8px;color:var(--amber);background:#ffbf5409}.reference-tip p{margin:0;color:var(--muted-2);font-size:var(--type-xs);line-height:1.5}.reference-tip strong{color:var(--text)}.results-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.results-heading>span{color:var(--muted);font-size:var(--type-base);font-weight:700}.results-heading>div{display:flex;align-items:center;gap:10px}.results-heading button{display:flex;align-items:center;gap:5px;min-height:29px;padding:0 8px;border:1px solid var(--line);border-radius:7px;color:var(--muted-2);background:var(--surface);font-size:var(--type-xs)}.results-heading>div>span{color:#4f6076;font-size:var(--type-xs)}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.reference-card{display:flex;flex-direction:column;min-height:260px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#0d1928;transition:.2s}.reference-card:hover{transform:translateY(-2px);border-color:#8b7cff40;box-shadow:0 14px 30px #0000001f}.reference-card__top{display:flex;align-items:center;gap:6px}.reference-kind{display:inline-flex;align-items:center;min-height:20px;padding:0 6px;border-radius:5px;color:var(--sky);background:#4db8ff14;font-size:var(--type-xs);font-weight:800;text-transform:uppercase;letter-spacing:.6px}.reference-card__top b{color:var(--mint);font-size:var(--type-xs)}.reference-card__top svg{margin-left:auto;color:var(--muted-2)}.reference-card h2{margin:13px 0 2px;font-size:var(--type-lg)}.reference-card>small{color:var(--muted-2);font-size:var(--type-xs)}.reference-card>p{flex:1;margin:9px 0;color:var(--muted);font-size:var(--type-sm);line-height:1.55}.reference-card>code{padding:8px;border-radius:7px;color:#b6a7f1;background:#08121e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:var(--type-xs) "DM Mono",monospace}.reference-card>div:last-child{display:flex;flex-wrap:wrap;gap:4px;margin-top:9px}.reference-card>div:last-child span{padding:3px 5px;border-radius:4px;color:var(--muted-2);background:#ffffff08;font-size:var(--type-xs)}.reference-detail-hero{display:flex;align-items:center;gap:14px;margin:16px 0;padding:22px;border:1px solid var(--line);border-radius:15px;background:radial-gradient(circle at 93% 0,rgba(77,184,255,.08),transparent 30%),#0e1a2a}.reference-detail-icon{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:13px;color:var(--sky);background:#4db8ff1a}.reference-detail-hero>div{flex:1}.reference-detail-hero small{color:var(--sky);font-size:var(--type-xs);font-weight:800;text-transform:uppercase}.reference-detail-hero h1{margin:4px 0;font-size:29px}.reference-detail-hero p{margin:0;color:var(--muted);font-size:var(--type-base)}.reference-detail-hero>a{display:inline-flex;align-items:center;gap:5px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:var(--type-xs)}.modern-banner{display:flex;align-items:flex-start;gap:9px;margin-bottom:16px;padding:11px 14px;border:1px solid rgba(67,215,165,.14);border-radius:9px;color:var(--mint);background:#43d7a50a}.modern-banner strong{font-size:var(--type-sm)}.modern-banner p{margin:2px 0 0;color:var(--muted);font-size:var(--type-sm)}.reference-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:23px}.reference-detail-layout main>section{padding:20px 7px 28px;border-bottom:1px solid var(--line)}.syntax-callout{padding:17px;border:1px solid rgba(139,124,255,.16);border-radius:10px;background:#08121e}.syntax-callout code{color:#bdadfa;font:var(--type-base) "DM Mono",monospace}.use-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.use-case-grid>div{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:8px}.use-case-grid span{color:var(--violet-bright);font:var(--type-xs) "DM Mono",monospace}.use-case-grid p{margin:0;color:var(--muted);font-size:var(--type-sm)}.reference-errors{display:flex;flex-direction:column;gap:7px}.reference-errors>div{display:flex;gap:9px;padding:11px;border:1px solid rgba(255,101,119,.12);border-radius:8px;color:var(--red);background:#ff657708}.reference-errors p{margin:0;color:var(--muted);font-size:var(--type-sm)}.reference-detail-layout>aside{position:sticky;top:92px;align-self:start;display:flex;flex-direction:column;gap:11px}.related-lessons{padding:12px;border:1px solid var(--line);border-radius:11px;background:#0d1928}.related-lessons>span{display:block;margin:3px 4px 8px;color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.related-lessons a{display:flex;align-items:center;gap:8px;padding:9px 4px;border-top:1px solid var(--line)}.related-lessons a>span{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;color:var(--violet-bright);background:#8b7cff14}.related-lessons a>div{display:flex;flex:1;flex-direction:column}.related-lessons small{color:var(--muted-2);font-size:var(--type-xs)}.related-lessons strong{margin-top:2px;font-size:var(--type-sm)}.related-lessons a>svg{color:var(--muted-2)}.debug-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:7px 0 20px;padding:27px;border:1px solid rgba(255,101,119,.13);border-radius:18px;background:radial-gradient(circle at 92% 0,rgba(255,101,119,.09),transparent 34%),#0e1a29}.debug-hero>div:first-child{max-width:760px}.debug-loop{display:grid;grid-template-columns:repeat(4,1fr);flex:0 0 420px}.debug-loop>div{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px}.debug-loop span{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(255,101,119,.2);border-radius:9px;color:var(--red);background:#ff657712;font:700 var(--type-sm) "DM Mono",monospace}.debug-loop strong{color:var(--muted);font-size:var(--type-xs)}.debug-loop svg{position:absolute;top:8px;right:-8px;color:#3c4a5e}.error-decoder{padding:21px}.safe-note{display:flex;align-items:center;gap:5px;color:var(--mint);font-size:var(--type-xs)}.error-input{display:flex;align-items:center;gap:8px;height:44px;margin:15px 0;padding:0 13px;border:1px solid rgba(255,101,119,.19);border-radius:9px;color:var(--red);background:#08121e}.error-input input{flex:1;border:0;outline:0;color:#e6edf7;background:transparent;font:var(--type-base) "DM Mono",monospace}.decoded-error{display:grid;grid-template-columns:.8fr 1.1fr;gap:16px;align-items:start;padding-top:15px;border-top:1px solid var(--line)}.decoded-error__title{display:flex;gap:11px}.decoded-error__title>span{display:grid;place-items:center;flex:0 0 37px;height:37px;border-radius:9px;color:var(--red);background:#ff657717}.decoded-error__title small{color:var(--red);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.decoded-error__title h3{margin:4px 0;font-size:var(--type-md)}.decoded-error__title p{margin:0;color:var(--muted);font-size:var(--type-sm);line-height:1.5}.decoded-error ol{margin:0;padding:0;list-style:none}.decoded-error li{display:flex;gap:8px;margin-bottom:7px}.decoded-error li span{display:grid;place-items:center;flex:0 0 22px;height:22px;border:1px solid var(--line);border-radius:6px;color:var(--violet-bright);font:var(--type-xs) "DM Mono",monospace}.decoded-error li p{margin:2px 0 0;color:var(--muted);font-size:var(--type-sm);line-height:1.45}.decoded-error .code-block{grid-column:1 / -1}.debug-review-section{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;margin:25px 0}.debug-review-copy h2{margin:5px 0 8px;font-size:21px}.debug-review-copy>p{color:var(--muted);font-size:var(--type-base);line-height:1.65}.review-legend{display:flex;flex-direction:column;gap:6px;margin-top:14px}.review-legend span{display:flex;align-items:center;gap:6px;color:var(--muted-2);font-size:var(--type-xs)}.review-legend i{width:6px;height:6px;border-radius:50%}.review-legend i.danger{background:var(--red)}.review-legend i.warning{background:var(--amber)}.review-legend i.info{background:var(--sky)}.review-workspace{display:grid;grid-template-columns:1fr 1fr;min-width:0;border:1px solid var(--line);border-radius:13px;background:#08121d;overflow:hidden}.review-editor{display:flex;flex-direction:column;border-right:1px solid var(--line)}.review-editor>div{display:flex;align-items:center;justify-content:space-between;min-height:37px;padding:0 10px;border-bottom:1px solid var(--line);color:var(--muted-2);font-size:var(--type-xs)}.review-editor>div>span{display:flex;align-items:center;gap:6px}.review-editor>div i{width:6px;height:6px;border-radius:50%;background:var(--mint)}.review-editor>div button{display:flex;align-items:center;gap:4px;border:0;color:var(--muted-2);background:transparent;font-size:var(--type-xs);cursor:pointer}.review-editor textarea{flex:1;min-height:285px;resize:vertical;padding:13px;border:0;outline:0;color:#b7c3d1;background:#070f19;font:var(--type-sm)/1.75 "DM Mono",monospace}.review-editor>.primary-button{margin:10px}.review-findings{padding:12px}.review-findings>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.review-findings>div:first-child b{color:var(--text);font-size:var(--type-base)}.finding{display:flex;gap:8px;margin-bottom:7px;padding:9px;border:1px solid var(--line);border-radius:8px}.finding>span{flex:0 0 auto}.finding--danger{color:var(--red);border-color:#ff65771f;background:#ff657708}.finding--warning{color:var(--amber);border-color:#ffbf541f;background:#ffbf5408}.finding--info{color:var(--sky)}.finding--success{color:var(--mint)}.finding strong{font-size:var(--type-sm)}.finding p{margin:3px 0 0;color:var(--muted);font-size:var(--type-xs);line-height:1.45}.review-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;color:#46566b;text-align:center}.review-empty p{font-size:var(--type-sm)}.studio-tools{padding:21px;border:1px solid var(--line);border-radius:14px;background:#0d1928}.studio-tools>div:last-child{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:15px}.studio-tools article{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#ffffff03}.studio-tools article>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:8px;color:var(--violet-bright);background:#8b7cff14}.studio-tools small{color:var(--muted-2);font-size:var(--type-xs)}.studio-tools h3{margin:3px 0;font-size:var(--type-base)}.studio-tools p{margin:0;color:var(--muted-2);font-size:var(--type-xs);line-height:1.45}.debug-playbook{margin-top:18px;padding:20px;border:1px solid rgba(67,215,165,.15);border-radius:14px;background:#43d7a509}.debug-playbook>div{display:flex;align-items:center;gap:11px;color:var(--mint)}.debug-playbook small{font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.debug-playbook h2{margin:3px 0 0;color:var(--text);font-size:16px}.debug-playbook ol{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0 0;padding:0;list-style:none}.debug-playbook li{display:flex;gap:8px}.debug-playbook li span{color:var(--mint);font:800 var(--type-lg) "DM Mono",monospace}.debug-playbook li p{margin:0;color:var(--muted);font-size:var(--type-sm);line-height:1.55}.debug-playbook li strong{color:var(--text)}.achievement-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:7px 0 20px;padding:25px;border:1px solid rgba(139,124,255,.17);border-radius:18px;background:radial-gradient(circle at 90% 0,rgba(139,124,255,.11),transparent 35%),#0f1b2b}.achievement-profile{display:flex;align-items:center;gap:16px}.achievement-avatar{position:relative;display:grid;place-items:center;width:75px;height:75px;border:2px solid rgba(67,215,165,.35);border-radius:50%;color:#dffdf3;background:linear-gradient(145deg,#216c5d,#1a3d52);font-size:24px;font-weight:800;box-shadow:0 0 0 7px #43d7a50a}.achievement-avatar span{position:absolute;right:-2px;bottom:-1px;display:grid;place-items:center;width:25px;height:25px;border:2px solid #0f1b2b;border-radius:50%;color:#fff;background:var(--violet);font-size:var(--type-sm)}.achievement-profile h1{margin:3px 0;font-size:25px}.achievement-profile p{margin:0;color:var(--muted);font-size:var(--type-base)}.profile-level-line{position:relative;width:260px;height:4px;margin-top:11px;border-radius:99px;background:#27354a}.profile-level-line i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--mint))}.profile-level-line span{position:absolute;top:7px;right:0;color:var(--muted-2);font-size:var(--type-xs)}.achievement-hero-stats{display:flex;align-items:center;gap:24px}.achievement-hero-stats>div:not(.progress-ring){display:flex;flex-direction:column;align-items:center}.achievement-hero-stats>div:not(.progress-ring) strong{font-size:18px}.achievement-hero-stats>div:not(.progress-ring) span{color:var(--muted-2);font-size:var(--type-xs)}.badge-section{padding:21px;border:1px solid var(--line);border-radius:15px;background:#0d1928}.badge-section .panel-heading>span{color:var(--muted-2);font-size:var(--type-sm)}.badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:17px}.badge-card{--badge: var(--violet);display:flex;flex-direction:column;align-items:center;min-height:244px;padding:17px;border:1px solid var(--line);border-radius:12px;text-align:center;background:radial-gradient(circle at 50% 15%,color-mix(in srgb,var(--badge) 8%,transparent),transparent 35%),#0a1523}.badge-card--sky{--badge: var(--sky)}.badge-card--orange{--badge: var(--orange)}.badge-card--mint{--badge: var(--mint)}.badge-card--amber{--badge: var(--amber)}.badge-card--red{--badge: var(--red)}.badge-card--blue{--badge: var(--blue)}.badge-card--cyan{--badge: var(--cyan)}.badge-card.locked{opacity:.43;filter:saturate(.25)}.badge-large{position:relative;display:grid;place-items:center;width:83px;height:83px;margin:3px 0 15px}.badge-large>i{position:absolute;inset:0;border:1px solid color-mix(in srgb,var(--badge) 24%,transparent);transform:rotate(45deg);border-radius:20px;background:color-mix(in srgb,var(--badge) 5%,transparent)}.badge-large>span{position:relative;z-index:1;display:grid;place-items:center;width:57px;height:57px;border-radius:16px;color:var(--badge);background:color-mix(in srgb,var(--badge) 11%,#0a1523)}.badge-large>b{position:absolute;z-index:2;right:2px;bottom:2px;display:grid;place-items:center;width:21px;height:21px;border:2px solid #0a1523;border-radius:50%;color:#062218;background:var(--mint)}.badge-card>small{color:var(--badge);font-size:var(--type-xs);font-weight:800;letter-spacing:1px}.badge-card h3{margin:5px 0;font-size:var(--type-md)}.badge-card p{margin:0;color:var(--muted);font-size:var(--type-sm);line-height:1.5}.badge-card>div:last-child{display:flex;align-items:center;gap:5px;margin-top:auto;padding-top:12px;color:var(--muted-2);font-size:var(--type-xs)}.achievement-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.activity-log,.next-milestones{padding:17px}.activity-log>div:not(.panel-heading),.next-milestones>div:not(.panel-heading){display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid var(--line)}.activity-log>div>span,.next-milestones>div>span{flex:0 0 31px;height:31px;border-radius:8px}.activity-log p,.next-milestones p{display:flex;flex:1;flex-direction:column;margin:0}.activity-log strong,.next-milestones strong{font-size:var(--type-sm)}.activity-log small,.next-milestones small{margin-top:2px;color:var(--muted-2);font-size:var(--type-xs)}.activity-log b{color:var(--mint);font-size:var(--type-xs)}.empty-log{color:var(--muted-2);font-size:var(--type-sm)}.profile-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#0d1928b3}.profile-controls>div{display:flex;align-items:center;gap:9px;color:var(--muted-2)}.profile-controls span{display:flex;flex-direction:column}.profile-controls strong{color:var(--text);font-size:var(--type-base)}.profile-controls small{margin-top:2px;font-size:var(--type-xs)}.profile-controls--cloud-reset{border-color:#ff657729;background:#ff657706}.danger-outline{min-height:32px;padding:0 10px;border:1px solid rgba(255,101,119,.2);border-radius:7px;color:var(--red);background:#ff65770a;font-size:var(--type-xs);cursor:pointer}.danger-outline:hover{border-color:#ff657766;background:#ff657714}.danger-outline:disabled{opacity:.45;cursor:not-allowed}.reset-confirm-backdrop{align-items:center;padding:24px}.reset-confirm-dialog{width:min(510px,100%);padding:27px;border:1px solid rgba(255,101,119,.28);border-radius:17px;background:radial-gradient(circle at 88% 2%,rgba(255,101,119,.1),transparent 32%),#0b1726;box-shadow:0 35px 110px #00000085}.reset-confirm-icon{display:grid;place-items:center;width:47px;height:47px;border:1px solid rgba(255,101,119,.24);border-radius:13px;color:var(--red);background:#ff657714}.reset-confirm-dialog h2{margin:15px 0 8px;font-size:24px;letter-spacing:-.7px}.reset-confirm-dialog>p{margin:0;color:var(--muted);font-size:var(--type-base);line-height:1.65}.reset-confirm-dialog>label{display:flex;flex-direction:column;gap:7px;margin-top:20px;color:var(--muted);font-size:var(--type-sm)}.reset-confirm-dialog>label strong{color:var(--red);letter-spacing:.7px}.reset-confirm-dialog input{min-height:42px;padding:0 11px;border:1px solid var(--line);border-radius:9px;outline:0;color:var(--text);background:#060e19bf;font:700 var(--type-base) "DM Mono",monospace}.reset-confirm-dialog input:focus{border-color:#ff657773;box-shadow:0 0 0 3px #ff657712}.reset-confirm-note{display:flex;align-items:center;gap:8px;margin-top:12px;color:var(--amber);font-size:var(--type-sm)}.reset-confirm-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:21px}.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 15px;border:1px solid rgba(255,101,119,.35);border-radius:9px;color:#fff;background:#a93d4b;font-size:var(--type-base);font-weight:800;cursor:pointer}.danger-button:hover:not(:disabled){background:#bb4555}.danger-button:disabled{opacity:.42;cursor:not-allowed}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;background:#02070dbd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade-in .16s ease}.search-dialog{width:min(660px,calc(100vw - 28px));border:1px solid rgba(139,124,255,.25);border-radius:15px;background:#0c1726;box-shadow:0 35px 100px #0000007a;overflow:hidden;animation:dialog-in .2s ease}.search-dialog__input{display:flex;align-items:center;gap:10px;height:57px;padding:0 15px;border-bottom:1px solid var(--line);color:var(--violet-bright)}.search-dialog__input input{flex:1;border:0;outline:0;color:var(--text);background:transparent;font-size:var(--type-md)}.search-dialog__results{max-height:440px;padding:10px;overflow-y:auto}.search-section-label{display:block;margin:5px 7px 8px;color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1px;text-transform:uppercase}.search-result{display:flex;align-items:center;gap:10px;width:100%;min-height:51px;padding:7px;border:1px solid transparent;border-radius:9px;color:inherit;text-align:left;background:transparent;cursor:pointer}.search-result:hover{border-color:#8b7cff26;background:#8b7cff0f}.search-result__icon{flex:0 0 33px;height:33px;border-radius:8px}.search-result>span:nth-child(2){display:flex;flex:1;flex-direction:column}.search-result strong{font-size:var(--type-base)}.search-result small{margin-top:3px;color:var(--muted-2);font-size:var(--type-xs)}.search-result>svg{color:var(--muted-2)}.search-empty{display:grid;place-items:center;min-height:190px;color:var(--muted-2);text-align:center}.search-empty strong{margin-top:8px;color:var(--text);font-size:var(--type-base)}.search-empty p{margin:4px 0;font-size:var(--type-sm)}.search-dialog__footer{display:flex;align-items:center;gap:12px;min-height:35px;padding:0 12px;border-top:1px solid var(--line);color:var(--muted-2);background:#09131f;font-size:var(--type-xs)}.search-dialog__footer span{display:flex;align-items:center;gap:4px}.search-dialog__footer span:last-child{margin-left:auto}.search-result.locked{border-color:#ffbf5414;background:#ffbf5405}.search-result.locked .search-result__icon,.search-result.locked>svg{color:var(--amber)}.search-result.locked small{color:#9d8c6d}.toast{position:fixed;z-index:120;right:24px;bottom:24px;display:flex;align-items:center;gap:9px;min-height:46px;padding:0 14px;border:1px solid rgba(67,215,165,.25);border-radius:10px;color:var(--mint);background:#0a1e1ef5;box-shadow:0 18px 50px #00000059;font-size:var(--type-base);font-weight:700;animation:toast-in .25s ease}.toast--info{color:var(--sky);border-color:#4db8ff40;background:#091a27f5}.toast--error{color:var(--red);border-color:#ff657740;background:#270910f5}.progress-recovery-backdrop{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:#02070dd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.progress-recovery-dialog{width:min(580px,100%);max-height:calc(100vh - 48px);padding:28px;border:1px solid rgba(255,191,84,.4);border-radius:18px;color:var(--text);background:radial-gradient(circle at 85% 5%,rgba(255,191,84,.14),transparent 32%),#0b1726;box-shadow:0 35px 110px #0000008c;overflow-y:auto}.progress-recovery-dialog h1{margin:0 0 10px;font-size:25px;letter-spacing:-.7px}.progress-recovery-dialog p{margin:10px 0;color:var(--muted);line-height:1.6}.progress-recovery-dialog code{color:var(--amber);word-break:break-word}.progress-recovery-dialog__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.progress-recovery-dialog button{min-height:42px;padding:0 14px;border:1px solid var(--line-strong);border-radius:9px;color:var(--text);background:#142237;font-weight:800;cursor:pointer}.progress-recovery-dialog button:first-child{border-color:#ffbf5480;color:#241b08;background:var(--amber)}.progress-recovery-dialog button:focus-visible{outline:3px solid var(--violet-bright);outline-offset:3px}.page-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:13px;color:var(--muted);background:var(--bg);font-size:var(--type-base)}.page-loader span{width:30px;height:30px;border:2px solid rgba(139,124,255,.18);border-top-color:var(--violet);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(-12px) scale(.985)}}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.sidebar-profile{width:100%;color:inherit;text-align:left;background:transparent;cursor:pointer}.sidebar-profile:hover{background:#ffffff06}.sidebar-profile>.avatar{margin-top:0;color:#dffdf3;font-size:var(--type-md);font-weight:800}.sidebar-profile__copy{display:flex;flex:1;flex-direction:column;min-width:0;white-space:nowrap}.sidebar-profile__copy strong,.sidebar-profile__copy span{overflow:hidden;text-overflow:ellipsis}.sidebar-profile>svg{flex:0 0 auto;color:var(--muted-2)}.sidebar-compact .sidebar-profile__copy,.sidebar-compact .sidebar-profile>svg{display:none}.sync-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:78px;height:32px;padding:0 9px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface);font-size:var(--type-sm);font-weight:800;cursor:pointer;transition:.18s ease}.sync-chip:hover{border-color:var(--line-strong);color:var(--text)}.sync-chip--synced{color:var(--mint);border-color:#43d7a52e;background:#43d7a50e}.sync-chip--saving,.sync-chip--loading{color:var(--violet-bright)}.sync-chip--offline{color:var(--amber);border-color:#ffbf542e}.sync-chip--error{color:var(--red);border-color:#ff657733}.spin{animation:spin .8s linear infinite}.account-control{position:relative}.top-account-button{display:flex;align-items:center;gap:4px;padding:0;border:0;color:var(--muted-2);background:transparent;cursor:pointer}.top-account-button:hover{color:var(--text)}.account-menu{position:absolute;top:calc(100% + 12px);right:0;z-index:65;width:285px;padding:9px;border:1px solid var(--line-strong);border-radius:13px;background:#0a1523fa;box-shadow:0 24px 65px #0000006b;animation:dialog-in .18s ease}.account-menu__identity{display:flex;align-items:center;gap:10px;padding:8px 8px 12px;border-bottom:1px solid var(--line)}.account-menu__identity>div{display:flex;flex-direction:column;min-width:0}.account-menu__identity strong{font-size:var(--type-base)}.account-menu__identity small{margin-top:3px;color:var(--muted-2);font-size:var(--type-sm);overflow:hidden;text-overflow:ellipsis}.account-sync{display:flex;align-items:flex-start;gap:9px;margin:9px 3px;padding:10px;border:1px solid rgba(67,215,165,.13);border-radius:9px;color:var(--mint);background:#43d7a50b}.account-sync--error{color:var(--red);border-color:#ff657729;background:#ff65770b}.account-sync--offline{color:var(--amber);border-color:#ffbf5429;background:#ffbf540b}.account-sync>svg{flex:0 0 auto;margin-top:1px}.account-sync>div{display:flex;flex-direction:column;min-width:0}.account-sync strong{font-size:var(--type-sm)}.account-sync small{margin-top:3px;color:var(--muted-2);font-size:var(--type-xs);line-height:1.45;overflow-wrap:anywhere}.account-menu>button{display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:0 10px;border:0;border-radius:7px;color:var(--muted);text-align:left;background:transparent;font-size:var(--type-base);cursor:pointer}.account-menu>button:hover{color:var(--text);background:#ffffff09}.account-menu>button:last-child{color:#ff98a4}.auth-backdrop{align-items:center;padding:24px 0;overflow-y:auto}.auth-dialog{position:relative;width:min(470px,calc(100vw - 28px));max-height:calc(100vh - 48px);padding:28px 32px 24px;border:1px solid rgba(139,124,255,.24);border-radius:18px;background:radial-gradient(circle at 85% 4%,rgba(139,124,255,.13),transparent 30%),#0b1726;box-shadow:0 35px 110px #00000080;overflow-y:auto;animation:dialog-in .2s ease}.auth-close{position:absolute;top:17px;right:17px;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;color:var(--muted-2);background:#08111ebf;cursor:pointer}.auth-close:hover{color:var(--text);border-color:var(--line-strong)}.auth-dialog__brand{display:flex;align-items:center;gap:9px;margin-bottom:27px}.auth-dialog__brand .brand-mark{width:32px;height:32px;flex-basis:32px;font-size:var(--type-base)}.auth-dialog__brand strong{font-size:var(--type-md);letter-spacing:-.2px}.auth-heading h2,.auth-unconfigured h2{margin:7px 0 8px;font-size:25px;letter-spacing:-.9px}.auth-heading p,.auth-unconfigured>p{margin:0;color:var(--muted);font-size:var(--type-base);line-height:1.65}.auth-form{display:flex;flex-direction:column;gap:13px;margin-top:22px}.auth-form label{display:flex;flex-direction:column;gap:6px}.auth-form label>span{color:var(--muted);font-size:var(--type-sm);font-weight:800;letter-spacing:.3px}.auth-input{display:flex;align-items:center;gap:9px;min-height:43px;padding:0 11px;border:1px solid var(--line);border-radius:9px;color:var(--muted-2);background:#060e19b3;transition:.18s ease}.auth-input:focus-within{color:var(--violet-bright);border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff12}.auth-input input{flex:1;min-width:0;border:0;outline:0;color:var(--text);background:transparent;font-size:var(--type-base)}.auth-input input::placeholder{color:#4e5e73}.auth-input button{display:grid;place-items:center;padding:3px;border:0;color:var(--muted-2);background:transparent;cursor:pointer}.auth-text-action{align-self:flex-end;margin-top:-5px;padding:0;border:0;color:var(--violet-bright);background:transparent;font-size:var(--type-sm);font-weight:700;cursor:pointer}.auth-message{display:flex;align-items:flex-start;gap:8px;padding:10px 11px;border:1px solid;border-radius:8px;font-size:var(--type-sm);line-height:1.55}.auth-message svg{flex:0 0 auto;margin-top:1px}.auth-message--error{color:#ff9eaa;border-color:#ff657733;background:#ff657711}.auth-message--success{color:#91ebca;border-color:#43d7a533;background:#43d7a50f}.auth-submit{width:100%;margin-top:2px}.auth-switch{margin-top:19px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted-2);text-align:center;font-size:var(--type-sm)}.auth-switch button{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;color:var(--violet-bright);background:transparent;font-weight:800;cursor:pointer}.auth-privacy{display:flex;align-items:flex-start;justify-content:center;gap:6px;margin:14px 0 0;color:#56677e;font-size:var(--type-xs);line-height:1.5;text-align:center}.auth-privacy svg{flex:0 0 auto}.auth-unconfigured{display:flex;flex-direction:column;align-items:center;padding:4px 2px 2px;text-align:center}.auth-hero-icon{display:grid;place-items:center;width:53px;height:53px;margin-bottom:16px;border:1px solid rgba(139,124,255,.22);border-radius:14px;color:var(--violet-bright);background:#8b7cff17;box-shadow:0 0 30px #8b7cff14}.auth-setup-note{display:flex;align-items:center;gap:9px;width:100%;margin:20px 0 16px;padding:12px;border:1px solid var(--line);border-radius:9px;color:var(--muted);text-align:left;background:#060e198c;font-size:var(--type-sm);line-height:1.5}.auth-setup-note svg{flex:0 0 auto;color:var(--sky)}.reset-page{display:grid;place-items:center;min-height:calc(100vh - 145px);padding:35px 0}.reset-card{width:min(500px,100%);padding:35px}.reset-card h1{margin:9px 0;font-size:31px;letter-spacing:-1.2px}.reset-card>p{margin:0 0 22px;color:var(--muted);font-size:var(--type-base);line-height:1.7}.reset-form{margin-top:24px}@media(max-width:1280px){.page-shell{padding-right:28px;padding-left:28px}.topbar{padding:0 28px}.stats-grid{grid-template-columns:repeat(2,1fr)}.achievement-row{grid-template-columns:repeat(3,1fr)}.project-grid,.reference-grid{grid-template-columns:repeat(2,1fr)}.practice-layout{grid-template-columns:190px minmax(0,1fr)}.practice-cheatsheet{position:static;grid-column:2;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.practice-cheatsheet .panel-heading,.practice-cheatsheet .official-link{grid-column:1 / -1}.practice-cheatsheet details{border:1px solid var(--line);border-radius:7px;padding:0 8px}.debug-hero{flex-direction:column;align-items:flex-start}.debug-loop{width:100%;flex-basis:auto}}@media(max-width:1080px){.sidebar{transform:translate(-100%);box-shadow:var(--shadow)}.sidebar.open{transform:translate(0)}.sidebar-compact .sidebar{width:264px}.sidebar-compact .brand-copy,.sidebar-compact .nav-label,.sidebar-compact .sidebar-link span,.sidebar-compact .sidebar-streak>div:nth-child(2),.sidebar-compact .sidebar-streak>svg,.sidebar-compact .sidebar-profile>div:nth-child(2),.sidebar-compact .sidebar-profile button{display:flex}.sidebar-compact .brand-row{flex-direction:row}.sidebar-compact .sidebar-link{justify-content:flex-start;padding:0 13px}.sidebar-compact .sidebar-streak,.sidebar-compact .sidebar-profile{justify-content:flex-start}.sidebar-backdrop{position:fixed;inset:0;z-index:45;border:0;background:#01050aa6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-main,.sidebar-compact .app-main{margin-left:0}.mobile-menu{display:grid}.top-search{margin-left:13px}.lesson-layout{display:block}.lesson-toc{display:none}.lesson-content{max-width:900px;margin:0 auto}.dashboard-columns{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:repeat(3,1fr)}.daily-card,.activity-panel,.weak-panel{min-height:250px}.path-grid{grid-template-columns:repeat(2,1fr)}.badge-grid{grid-template-columns:repeat(3,1fr)}.reference-hero{flex-direction:column;align-items:stretch}.reference-search-large{flex-basis:auto;width:100%}.studio-tools>div:last-child{grid-template-columns:repeat(2,1fr)}.debug-playbook ol{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.page-shell{padding:22px 18px 92px}.topbar{height:60px;padding:0 18px}.top-search{width:auto;flex:1}.top-streak,.level-pill,.notification-button{display:none}.mobile-bottom-nav{position:fixed;right:10px;bottom:10px;left:10px;z-index:42;display:grid;grid-template-columns:repeat(4,1fr);height:60px;padding:5px;border:1px solid var(--line-strong);border-radius:15px;background:#09121eed;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 15px 45px #00000059}.mobile-bottom-nav .sidebar-link{flex-direction:column;justify-content:center;gap:3px;min-height:48px;padding:0;font-size:var(--type-xs)}.mobile-bottom-nav .sidebar-link.active:before{top:-5px;left:50%;width:22px;height:2px;transform:translate(-50%)}.mobile-bottom-nav .sidebar-link svg{width:18px}.continue-hero{grid-template-columns:1fr}.continue-hero__content{padding-bottom:25px}.continue-hero__visual{min-height:210px;padding-bottom:45px}.continue-progress{padding:0 24px}.stats-grid{grid-template-columns:1fr 1fr}.dashboard-aside{grid-template-columns:1fr}.daily-card,.activity-panel,.weak-panel{min-height:auto}.achievement-row{grid-template-columns:1fr 1fr}.recommendation-grid{grid-template-columns:1fr}.page-hero{flex-direction:column;align-items:stretch;padding:24px}.curriculum-progress-card{min-width:0;align-self:stretch}.module-card__header{grid-template-columns:48px 1fr 70px}.module-card__project{display:none}.module-lessons{padding-left:22px}.lesson-list-item{grid-template-columns:33px 1fr 18px}.lesson-list-meta{display:none}.path-assessment{flex-basis:auto}.path-detail__head{flex-wrap:wrap}.path-detail__stats{width:100%;justify-content:flex-end}.path-roadmap,.project-grid,.reference-grid{grid-template-columns:1fr}.project-detail-hero{align-items:flex-start;flex-wrap:wrap}.project-status{width:100%;padding:14px 0 0;border-top:1px solid var(--line);border-left:0}.project-detail-layout{grid-template-columns:1fr}.project-detail-aside{display:grid;grid-template-columns:1fr 1fr}.debug-aside-link{grid-column:1 / -1}.practice-layout{grid-template-columns:1fr}.challenge-sidebar{position:static;max-height:none}.challenge-sidebar nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.browser-boundary{display:none}.practice-cheatsheet{grid-column:1 / -1;grid-template-columns:1fr 1fr}.reference-layout{grid-template-columns:1fr}.reference-categories{position:static;flex-flow:row wrap}.reference-categories>span,.reference-tip{width:100%}.reference-categories button{flex:1 0 100px}.reference-detail-layout{grid-template-columns:1fr}.reference-detail-layout>aside{position:static}.debug-review-section,.review-workspace{grid-template-columns:1fr}.review-editor{border-right:0;border-bottom:1px solid var(--line)}.decoded-error{grid-template-columns:1fr}.decoded-error .code-block{grid-column:auto}.achievement-hero{flex-direction:column;align-items:stretch}.achievement-hero-stats{justify-content:space-between}.badge-grid{grid-template-columns:repeat(2,1fr)}.lesson-bridge{grid-template-columns:1fr}.lesson-bridge>svg{justify-self:center;transform:rotate(90deg)}.deep-dive__grid{grid-template-columns:1fr}.deep-dive__grid article{border-right:0;border-bottom:1px solid rgba(139,124,255,.1)}.deep-dive__grid article:last-child{border-bottom:0}.concept-map:not(.concept-map--hierarchy):not(.concept-map--branch){grid-template-columns:repeat(2,minmax(0,1fr))}.concept-map--cycle{padding-right:18%;padding-left:18%}.lesson-visual__heading{flex-direction:column;gap:7px}.lesson-visual__heading p{max-width:none}.lesson-visual__flow{grid-template-columns:1fr}.flow-arrow{justify-self:center;transform:rotate(90deg)}.lesson-visual__migration{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-visual__migration>div:nth-child(3):after{display:none}}@media(max-width:680px){.challenge-brief-grid,.why-grid,.quiz-options,.studio-results,.use-case-grid,.key-terms__grid{grid-template-columns:1fr}.key-terms__grid>div,.key-terms__grid>div:nth-child(2n),.key-terms__grid>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid rgba(154,177,210,.09)}.key-terms__grid>div:last-child{border-bottom:0}.studio-step-label{align-items:flex-start;flex-direction:column;gap:3px}.studio-step-label p{text-align:left}.concept-demo__header{flex-direction:column;gap:8px}.concept-demo__header>p{flex-basis:auto;max-width:520px}.concept-map,.concept-map:not(.concept-map--hierarchy):not(.concept-map--branch),.concept-map--hierarchy,.concept-map--branch{grid-template-columns:1fr;padding:16px}.concept-map button,.concept-map--compare button,.concept-map--stack button{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;column-gap:11px;min-height:76px;align-items:center;justify-items:start;padding:11px 13px;text-align:left}.concept-map button>span,.concept-map--compare button>span,.concept-map--stack button>span{grid-row:1 / 3;width:38px;height:38px}.concept-map button small,.concept-map button strong{grid-column:2}.concept-map button i,.concept-map:before,.concept-map button:first-child:after{display:none}.concept-map--hierarchy button:first-child,.concept-map--branch button:first-child{grid-column:auto;justify-self:stretch;width:100%}.takeaway-card ol{grid-template-columns:1fr}.line-breakdown>div{grid-template-columns:24px minmax(0,1fr)}.line-breakdown p,.line-breakdown code{grid-column:2}.object-path{grid-template-columns:minmax(0,1fr) auto}.object-path>span{grid-column:1 / -1}.object-path>svg{display:none}.object-path strong{grid-column:1}.object-path b{grid-column:2;max-width:150px}.lesson-visual__studio-map{grid-template-columns:1fr 1fr}.studio-map__explorer,.studio-map__viewport,.studio-map__properties,.studio-map__editor,.studio-map__output{grid-row:auto;grid-column:auto;min-height:0}.studio-map__viewport{grid-column:1 / -1;min-height:116px}.lesson-visual__hierarchy{grid-template-columns:1fr}.lesson-visual__hierarchy i{justify-self:center;transform:rotate(90deg)}.lesson-visual__viewports{grid-template-columns:1fr}.viewport-card{min-height:0}.lesson-visual__migration{grid-template-columns:1fr}.lesson-visual__migration>div{min-height:70px}.lesson-visual__migration>div:not(:last-child):after{inset:auto auto -17px 50%;transform:translate(-50%) rotate(90deg)}.lesson-visual__migration>div:nth-child(3):after{display:block}}@media(max-width:560px){.page-title-row,.welcome-row{align-items:flex-start;flex-direction:column;gap:14px}.date-chip,.runtime-status,.path-assessment{width:100%}.page-title-row h1,.welcome-row h1,.page-hero h1,.reference-hero h1,.debug-hero h1{font-size:29px;letter-spacing:-1px}.continue-hero__content{padding:25px 20px 20px}.continue-hero__visual{min-height:185px}.code-window{width:92%}.floating-xp{right:3%;bottom:46px}.stats-grid,.achievement-row{grid-template-columns:1fr}.top-search span{display:none}.top-search{justify-content:space-between;max-width:80px}.curriculum-toolbar{align-items:stretch;flex-direction:column}.inline-search{width:100%}.skill-legend{flex-wrap:wrap}.skill-legend a{width:100%;margin-left:0}.module-card__header{grid-template-columns:40px 1fr 20px;padding:15px 13px}.module-card__number{width:38px;height:38px}.module-card__progress .progress-ring,.module-card__title p{display:none}.module-lessons{padding:0 10px 10px}.lesson-list-copy p,.module-completion-note small{display:none}.lesson-topline{align-items:flex-start}.lesson-top-actions a{display:none}.lesson-hero{padding:23px 19px}.lesson-hero h1{font-size:clamp(29px,9vw,34px);line-height:1.13;letter-spacing:-1.1px}.lesson-hero>p,.lead-copy{font-size:16px}.lesson-section{padding:36px 0 8px}.lesson-section__heading h2{font-size:20px}.objective-card{padding:13px}.lesson-bridge p{font-size:13px}.concept-demo__header{padding:15px}.concept-detail{min-height:0;padding:15px}.concept-detail>span{font-size:21px}.concept-detail p{font-size:14px}.prediction-callout{padding:12px}.final-challenge{padding:22px 17px}.lesson-footer-nav{grid-template-columns:1fr}.lesson-footer-nav a{min-width:0}.lesson-footer-nav a strong{overflow-wrap:anywhere}.complete-lesson-button{min-height:68px;padding:10px 12px}.complete-lesson-button>div{min-width:0}.complete-lesson-button>svg{flex:0 0 auto}.challenge-confirm{align-items:flex-start}.challenge-confirm i{flex:0 0 17px;margin-top:2px}.studio-only-callout{padding:15px}.studio-only-callout>span{flex-basis:40px;height:40px}.studio-object-list{padding-right:12px;padding-left:12px}.studio-steps{padding-right:14px;padding-left:14px}.studio-steps p{font-size:14px}.mistake-list summary{min-height:52px;padding:8px 11px}.mistake-list summary>span{flex:0 0 27px}.mistake-list details>p{padding:0 12px 13px 49px}.path-grid{grid-template-columns:1fr}.path-detail__stats{justify-content:flex-start}.path-detail__footer{align-items:flex-start;flex-direction:column}.path-detail__footer .primary-button{width:100%}.project-card{min-height:350px}.portfolio-callout{align-items:flex-start;flex-direction:column}.portfolio-callout>div{align-items:flex-start}.project-detail-aside{grid-template-columns:1fr}.setup-table>div{grid-template-columns:1.4fr 1fr}.setup-table>div>span:last-child{display:none}.locked-project-requirements{padding:18px}.locked-project-actions{align-items:stretch;flex-direction:column}.locked-project-actions .primary-button{width:100%}.prerequisite-status-list>div{align-items:flex-start;flex-wrap:wrap}.prerequisite-status-list b{width:100%;padding-left:26px}.challenge-sidebar nav{grid-template-columns:1fr}.practice-cheatsheet{display:flex;flex-direction:column}.editor-actions{flex-direction:column}.practice-editor__header{align-items:flex-start}.expected-chip span{flex-direction:column;gap:2px}.reference-hero,.debug-hero{padding:20px}.reference-detail-hero{align-items:flex-start;flex-wrap:wrap}.reference-detail-hero>a{width:100%;justify-content:center}.debug-loop{grid-template-columns:repeat(2,1fr);gap:18px 0}.debug-loop svg{display:none}.studio-tools>div:last-child,.debug-playbook ol{grid-template-columns:1fr}.achievement-profile{align-items:flex-start}.achievement-avatar{width:60px;height:60px;flex:0 0 60px}.profile-level-line{width:180px}.achievement-hero-stats{flex-wrap:wrap}.badge-grid,.achievement-columns{grid-template-columns:1fr}.profile-controls{align-items:flex-start;flex-direction:column}.danger-outline{width:100%}.reset-confirm-dialog{padding:22px 18px}.reset-confirm-actions{flex-direction:column-reverse}.reset-confirm-actions button{width:100%}.dialog-backdrop{padding-top:5vh}.search-dialog__footer span:last-child{display:none}.toast{right:12px;bottom:82px;left:12px;justify-content:center}}@media(max-width:380px){.page-shell{padding-right:12px;padding-left:12px}.lesson-top-actions{width:100%}.lesson-top-actions button{flex:1;justify-content:center}.lesson-hero{padding:20px 16px}.lesson-hero h1{font-size:28px}.objective-card>span,.prediction-callout>span{flex-basis:31px;width:31px;height:31px}.concept-map,.concept-map:not(.concept-map--hierarchy):not(.concept-map--branch),.concept-map--hierarchy,.concept-map--branch{padding:12px}.concept-detail{gap:10px}.concept-detail>span{font-size:18px}.line-breakdown>div{gap:8px;padding:10px}.object-path{padding:10px}.object-path b{max-width:118px}.final-challenge{padding:20px 14px}}@media(max-width:1080px){.sync-chip span{display:none}.sync-chip{min-width:34px;width:34px;padding:0}}@media(max-width:820px){.sync-chip{display:inline-flex}.top-account-button>svg{display:none}.topbar-actions{gap:9px}.account-menu{position:fixed;top:68px;right:12px;width:min(285px,calc(100vw - 24px))}}@media(max-width:560px){.auth-backdrop{align-items:flex-end;padding:0}.auth-dialog{width:100%;max-height:92vh;padding:24px 20px 20px;border-right:0;border-bottom:0;border-left:0;border-radius:18px 18px 0 0}.auth-dialog__brand{margin-bottom:22px}.auth-heading h2,.auth-unconfigured h2{font-size:23px}.reset-card{padding:25px 19px}.progress-recovery-backdrop{align-items:end;padding:0}.progress-recovery-dialog{width:100%;max-height:92vh;padding:24px 20px;border-right:0;border-bottom:0;border-left:0;border-radius:18px 18px 0 0}.progress-recovery-dialog__actions{flex-direction:column}.progress-recovery-dialog button{width:100%}.reset-card h1{font-size:27px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--bg: #070a10;--bg-deep: #04060a;--surface: #0e141d;--surface-2: #131b27;--surface-3: #192434;--line: rgba(190, 211, 239, .11);--line-strong: rgba(190, 211, 239, .2);--text: #f5f7fb;--muted: #9ba9ba;--muted-2: #8192a7;--violet: #907cff;--violet-bright: #b4a8ff;--sky: #59c8ff;--mint: #50dfa9;--amber: #ffc565;--shadow: 0 26px 80px rgba(0, 0, 0, .34);--radius-sm: 12px;--radius: 18px;--radius-lg: 26px}body{background:var(--bg-deep);background-image:radial-gradient(circle at 82% -12%,rgba(111,91,255,.16),transparent 31%),radial-gradient(circle at 20% 110%,rgba(55,218,173,.08),transparent 32%),linear-gradient(180deg,#080c13,#06090e)}body:before{background:linear-gradient(115deg,rgba(255,255,255,.018),transparent 32%,rgba(89,200,255,.02) 68%,transparent)}body:after{opacity:.16;background-size:56px 56px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 72%);mask-image:linear-gradient(to bottom,black,transparent 72%)}.app-main{margin-left:264px}.sidebar{width:264px;padding:18px 13px 15px;border-right-color:#bed3ef17;background:#06090ee6;box-shadow:24px 0 70px #00000024}.brand-row{gap:8px;padding-bottom:20px}.brand{flex:1 1 auto}.sidebar-collapse{flex:0 0 30px}.brand-mark{border-radius:13px;border-color:#907cff61;background:linear-gradient(145deg,#907cff3d,#59c8ff12);box-shadow:inset 0 1px #ffffff1a,0 10px 28px #563fda26}.brand-copy small{margin-top:3px;color:#77879a;font-size:var(--type-xs);letter-spacing:1.15px}.sidebar-nav{gap:5px}.nav-label{margin:19px 12px 6px;font-size:var(--type-xs);letter-spacing:1.35px}.sidebar-link{min-height:45px;border-radius:12px;color:#8795a8}.sidebar-link:hover{color:#edf3fb;border-color:#bed3ef12;background:#ffffff09;transform:translate(2px)}.sidebar-link.active{color:#fff;border-color:#907cff2e;background:linear-gradient(100deg,#907cff2e,#59c8ff0b);box-shadow:inset 0 1px #ffffff09}.sidebar-link.active:before{left:3px;width:3px;height:19px}.sidebar-streak{align-items:flex-start;border-radius:14px;background:linear-gradient(120deg,#ff855e1b,#ffc56506)}.sidebar-streak>div:nth-child(2){white-space:normal}.sidebar-streak strong{line-height:1.35}.sidebar-streak span{line-height:1.35;overflow-wrap:anywhere}.sidebar-streak>svg{flex:0 0 auto;margin-top:8px}.sidebar-profile{min-height:64px;padding:10px;border:1px solid rgba(190,211,239,.16);border-radius:9px;background:#ffffff05;transition:border-color .18s ease,background-color .18s ease}.topbar{height:76px;padding:0 36px;gap:24px;border-bottom-color:#bed3ef17;background:#070a10c2;-webkit-backdrop-filter:blur(24px) saturate(135%);backdrop-filter:blur(24px) saturate(135%)}.workspace-context{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:170px}.workspace-context>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(144,124,255,.2);border-radius:11px;color:var(--violet-bright);background:#907cff14}.workspace-context>div{display:flex;flex-direction:column}.workspace-context small{color:var(--muted-2);font-size:var(--type-xs);font-weight:800;letter-spacing:1.25px}.workspace-context strong{margin-top:1px;font-size:var(--type-sm)}.top-search{flex:1;max-width:440px;height:42px;margin-right:auto;border-radius:12px;background:#0f1620b8;box-shadow:inset 0 1px #ffffff06}.top-search:hover{border-color:#907cff47;box-shadow:0 0 0 3px #907cff0f}.topbar-actions{gap:15px}.level-pill,.sync-chip,.top-account-button{min-height:36px}.page-shell{max-width:1540px;padding:40px 40px 80px}.page-enter{animation:workspace-enter .34s cubic-bezier(.2,.75,.25,1) both}.page-kicker,.eyebrow{letter-spacing:1.55px}.page-title-row h1,.welcome-row h1,.page-hero h1,.reference-hero h1,.debug-hero h1{letter-spacing:-1.8px;text-wrap:balance}.page-title-row p,.welcome-row p,.page-hero>div:first-child>p,.reference-hero>div:first-child>p,.debug-hero>div:first-child>p{color:#9aa9bc}.active-learning-path{padding:7px 10px;border-radius:10px;background:#907cff12}.panel,.stat-card,.module-card,.path-card,.project-card,.reference-card,.daily-card,.activity-panel,.weak-panel,.challenge-sidebar,.practice-cheatsheet{border-color:#bed3ef1b;background-color:#0d131ce0;box-shadow:inset 0 1px #ffffff06,0 18px 54px #0000001a}.panel{background:linear-gradient(145deg,#121b27e6,#0a1018f0)}.stat-card,.path-card,.project-card,.reference-card{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.stat-card:hover,.path-card:hover,.project-card:not(.locked):hover,.reference-card:hover{transform:translateY(-3px);border-color:#907cff3b;box-shadow:inset 0 1px #ffffff0a,0 22px 55px #0003}.primary-button,.hero-button{border-color:#ffffff14;border-radius:11px;background:linear-gradient(135deg,#8c78ff,#6959de);box-shadow:inset 0 1px #ffffff26,0 12px 28px #6959de3d}.primary-button:hover,.hero-button:hover{background:linear-gradient(135deg,#a18fff,#7969e9);box-shadow:inset 0 1px #ffffff2e,0 16px 34px #6959de4d}.ghost-button{border-radius:11px;background:#111924d6}.continue-hero{min-height:326px;border-color:#907cff3b;background:radial-gradient(circle at 82% 26%,rgba(89,200,255,.12),transparent 28%),radial-gradient(circle at 44% 110%,rgba(80,223,169,.06),transparent 30%),linear-gradient(125deg,#171a37,#11182b 47%,#0b1420);box-shadow:inset 0 1px #ffffff0d,var(--shadow)}.continue-hero:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff05}.code-window{transform:perspective(900px) rotateY(-3deg) rotateX(1deg);box-shadow:0 28px 60px #0000006b,0 0 70px #59c8ff12}.module-progress-row{border-radius:12px}.module-progress-row.active{background:linear-gradient(90deg,#907cff1a,#59c8ff06)}.lesson-hero,.page-hero,.reference-hero,.debug-hero,.achievement-hero,.project-detail-hero,.path-detail{box-shadow:inset 0 1px #ffffff09,0 24px 70px #00000021}.lesson-section__heading h2{text-wrap:balance}.concept-detail>span{color:#9f91ff}.code-block,.practice-editor,.review-workspace{box-shadow:inset 0 1px #ffffff05,0 18px 45px #00000024}.dialog-backdrop,.auth-backdrop,.progress-recovery-backdrop{background:#020408c7;-webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%)}.search-dialog,.auth-dialog,.progress-recovery-dialog,.reset-confirm-dialog{border-color:#907cff40;background:#0d141e;box-shadow:0 40px 120px #00000094}@keyframes workspace-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1280px){.workspace-context{min-width:150px}.topbar{padding-right:28px;padding-left:28px}}@media(max-width:1080px){.app-main{margin-left:0}.workspace-context{min-width:0}.workspace-context>div{display:none}}@media(max-width:820px){.topbar{height:64px;padding:0 16px;gap:9px}.workspace-context{display:none}.page-shell{padding:24px 17px calc(102px + env(safe-area-inset-bottom))}.mobile-bottom-nav{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));left:max(10px,env(safe-area-inset-left));border-color:#bed3ef2e;background:#080c12eb;box-shadow:inset 0 1px #ffffff0a,0 18px 55px #00000073}}@media(max-width:560px){.top-search{max-width:66px;height:38px}.continue-hero{border-radius:22px}.page-title-row h1,.welcome-row h1,.page-hero h1,.reference-hero h1,.debug-hero h1{letter-spacing:-1.15px}}@media(prefers-reduced-motion:reduce){.page-enter{animation:none}.sidebar-link:hover,.stat-card:hover,.path-card:hover,.project-card:not(.locked):hover,.reference-card:hover{transform:none}}.pricing-page,.legal-page,.billing-success,.pro-gate{max-width:1180px;margin:0 auto;padding:52px 28px 90px}.pricing-hero{text-align:center;max-width:850px;margin:0 auto 36px}.pricing-hero h1{font-size:clamp(2.35rem,5vw,4.8rem);line-height:1.02;margin:16px 0}.pricing-hero h1 span{color:var(--blue,#2f6df6)}.pricing-hero p{font-size:1.08rem;line-height:1.7;color:var(--text-muted,#7a8395)}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}.price-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px;border:1px solid var(--border,#273147);border-radius:22px;background:var(--surface,#111827);box-shadow:0 18px 45px #0000001f}.price-card--pro{border-color:color-mix(in srgb,var(--blue,#2f6df6) 55%,var(--border,#273147))}.price-card.featured{transform:translateY(-10px);box-shadow:0 24px 70px #2f6df633}.price-card__badge{position:absolute;right:18px;top:16px;padding:6px 10px;border-radius:999px;background:var(--blue,#2f6df6);color:#fff;font-size:.68rem;letter-spacing:.08em}.price-card>small{font-weight:800;letter-spacing:.11em;color:var(--blue,#2f6df6)}.price-card h2{font-size:1.45rem;margin:0}.price-card__price{display:flex;align-items:baseline;gap:7px}.price-card__price strong{font-size:2.65rem}.price-card__price span,.price-card>p{color:var(--text-muted,#7a8395)}.price-card ul{list-style:none;padding:0;margin:4px 0 10px;display:grid;gap:11px;flex:1}.price-card li{display:flex;align-items:center;gap:9px}.price-card li svg{color:#23b26d}.price-card .primary-button,.price-card .settings-secondary{justify-content:center;width:100%;text-decoration:none}.billing-notice{max-width:720px;margin:0 auto 24px;padding:14px 18px;border:1px solid #d8a62c;border-radius:12px;background:#d8a62c1f;text-align:center}.billing-notice--error{border-color:#ef5757;background:#ef57571a}.pricing-faq{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:60px 0 22px}.pricing-faq>h2{grid-column:1/-1}.pricing-faq div{padding:22px;border-top:2px solid var(--border,#273147)}.pricing-faq h3{margin:0 0 9px}.pricing-faq p,.pricing-legal{color:var(--text-muted,#7a8395);line-height:1.65}.pricing-legal{text-align:center}.pricing-legal a,.legal-page a{color:var(--blue,#2f6df6)}.price-card.featured{transform:none}.pro-gate,.billing-success{text-align:center;max-width:680px;min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.pro-gate__icon,.billing-success>span:first-child{display:grid;place-items:center;width:76px;height:76px;border-radius:24px;background:#2f6df621;color:var(--blue,#2f6df6);margin-bottom:20px}.pro-gate h1,.billing-success h1{font-size:clamp(2rem,5vw,3.6rem);margin:12px 0}.pro-gate>p,.billing-success>p{color:var(--text-muted,#7a8395);line-height:1.7}.pro-gate__benefits{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 18px;margin:20px 0 26px}.pro-gate__benefits span{display:flex;gap:7px;align-items:center}.pro-gate .text-link{margin-top:18px}.lesson-list-item.pro-locked{cursor:pointer;text-decoration:none}.lesson-list-item.pro-locked:hover{border-color:var(--blue,#2f6df6)}.legal-page{max-width:820px}.legal-page>span{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:var(--blue,#2f6df6)}.legal-page h1{font-size:clamp(2.3rem,5vw,4rem);margin:12px 0 4px}.legal-page h2{margin:35px 0 10px;font-size:1.3rem}.legal-page p{line-height:1.75;color:var(--text-muted,#7a8395)}.plan-summary{padding:18px 0}.plan-summary strong{font-size:1.35rem}.plan-summary p{color:var(--text-muted,#7a8395)}.plan-summary small{display:block;color:#ef7777;margin-top:8px}@media(max-width:900px){.pricing-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.pricing-faq{grid-template-columns:1fr}.pricing-faq>h2{grid-column:auto}}@media(max-width:620px){.pricing-page,.legal-page,.billing-success,.pro-gate{padding:34px 18px 100px}.price-card{padding:22px}.pro-gate__benefits{align-items:flex-start;flex-direction:column}}.feedback-page{max-width:1060px;margin:0 auto;padding:18px 0 80px}.feedback-hero{position:relative;overflow:hidden;padding:46px;border:1px solid var(--border);border-radius:26px;background:radial-gradient(circle at 86% 18%,rgba(89,200,255,.14),transparent 32%),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--surface) 80%,#6959de));box-shadow:var(--shadow)}.feedback-hero:after{content:"";position:absolute;width:260px;height:260px;right:-110px;bottom:-150px;border:1px solid rgba(144,124,255,.24);border-radius:50%}.feedback-hero h1{max-width:760px;margin:16px 0 14px;font-size:clamp(2.35rem,6vw,5rem);line-height:1;letter-spacing:-.045em;text-wrap:balance}.feedback-hero h1 span{color:var(--violet-bright)}.feedback-hero>p{max-width:720px;color:var(--muted);font-size:var(--type-lg);line-height:1.75}.beta-steps{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.beta-steps span{display:flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--surface) 76%,transparent);font-size:var(--type-sm);font-weight:700}.beta-steps strong{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:var(--violet);color:#fff;font-size:var(--type-xs)}.feedback-form{display:grid;gap:18px;margin-top:24px}.feedback-form>section{padding:30px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:inset 0 1px #ffffff06}.feedback-section-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.feedback-section-heading>span{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:#907cff1f;color:var(--violet-bright);font-size:var(--type-xs);font-weight:900}.feedback-section-heading h2{margin:0 0 4px;font-size:1.28rem}.feedback-section-heading p{margin:0;color:var(--muted);font-size:var(--type-sm)}.feedback-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.feedback-categories button{display:flex;min-height:72px;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;padding:12px;border:1px solid var(--border);border-radius:13px;color:var(--muted);background:var(--surface-2);text-align:left;font-weight:700}.feedback-categories button:hover,.feedback-categories button.active{border-color:#907cff8c;color:var(--text);background:#907cff1a}.feedback-categories button.active svg{color:var(--violet-bright)}.feedback-rating{display:flex;gap:8px;margin:0 0 20px;padding:0;border:0}.feedback-rating legend{width:100%;margin-bottom:9px;color:var(--muted);font-size:var(--type-sm);font-weight:700}.feedback-rating button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--border);border-radius:11px;color:var(--muted-2);background:var(--surface-2)}.feedback-rating button:hover,.feedback-rating button.active{border-color:#ffbf548c;color:var(--amber);background:#ffbf5417}.feedback-rating button.active svg{fill:currentColor}.feedback-field{display:grid;gap:8px}.feedback-field>span{font-size:var(--type-sm);font-weight:800}.feedback-field em{color:var(--muted);font-style:normal;font-weight:500}.feedback-field textarea,.feedback-field input{width:100%;border:1px solid var(--border);border-radius:12px;padding:13px 15px;color:var(--text);background:var(--surface-2);font:inherit}.feedback-field textarea{resize:vertical;line-height:1.6}.feedback-field textarea:focus,.feedback-field input:focus{outline:3px solid rgba(144,124,255,.14);border-color:var(--violet)}.feedback-field small{justify-self:end;color:var(--muted-2);font-size:var(--type-xs)}.feedback-trap{position:absolute;left:-10000px}.feedback-notice{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:12px}.feedback-notice--sent{border-color:#43d7a559;color:var(--mint);background:#43d7a514}.feedback-notice--error{border-color:#ef575759;color:#ef7777;background:#ef575714}.feedback-submit{justify-self:start;min-width:240px}.feedback-submit:disabled{cursor:not-allowed;filter:saturate(.35);opacity:.6}.feedback-privacy{display:flex;align-items:center;gap:7px;margin:0;color:var(--muted);font-size:var(--type-xs)}@media(max-width:900px){.feedback-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-hero{padding:34px}}@media(max-width:560px){.feedback-page{padding-top:0}.feedback-hero{padding:28px 22px;border-radius:20px}.feedback-form>section{padding:22px 18px}.feedback-categories{grid-template-columns:1fr}.feedback-categories button{min-height:54px;flex-direction:row;align-items:center;justify-content:flex-start}.feedback-submit{width:100%;min-width:0;justify-content:center}.beta-steps{align-items:stretch;flex-direction:column}.beta-steps span{border-radius:12px}}:root{--bg: #f7f2e8;--bg-deep: #eee6d7;--surface: #fffdf7;--surface-2: #f7f2e8;--surface-3: #eee6d7;--line: #ded5c6;--line-strong: #161b22;--text: #161b22;--muted: #4c5561;--muted-2: #68717d;--violet: #2457d6;--violet-bright: #2457d6;--sky: #2457d6;--mint: #a7c957;--amber: #d94a32;--orange: #d94a32;--red: #d94a32;--pink: #b63f69;--blue: #2457d6;--purple: #6845a5;--cyan: #187f8b;--shadow: 0 3px 12px rgba(22, 27, 34, .1);--radius-sm: 4px;--radius: 8px;--radius-lg: 12px;color-scheme:light}html{background:var(--bg)}body{background:var(--bg);color:var(--text)}body:before{display:none}::selection{background:#dce7ff;color:#10295f}.app-shell{grid-template-columns:224px minmax(0,1fr);background:var(--bg)}.app-main{min-width:0}.sidebar{background:#161b22;border-right:0;box-shadow:none;color:#fffdf7}.brand-row{border-bottom:1px solid rgba(255,255,255,.12)}.brand,.brand-copy strong{color:#fffdf7}.brand-copy small{color:#aeb6c0;letter-spacing:.03em}.brand-mark{background:#2457d6;border:0;color:#fff;box-shadow:none}.nav-label{color:#89929e;font-family:DM Mono,monospace;letter-spacing:.1em}.sidebar-link{color:#c8ced6;border-radius:4px}.sidebar-link:hover{background:#ffffff12;color:#fff;transform:none}.sidebar-link.active{background:#fffdf7;color:#161b22;box-shadow:none}.sidebar-link.active:before{background:#d94a32;width:4px;border-radius:0}.sidebar-collapse{color:#b8c0ca}.sidebar-streak{background:transparent;border:1px solid rgba(255,255,255,.13);border-radius:4px}.sidebar-streak span,.sidebar-profile__copy span{color:#9ea7b2}.sidebar-profile{border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;background:#ffffff06}.sidebar-profile__copy strong{color:#eef3f8}.sidebar-profile:hover{border-color:#ffffff57;background:#ffffff12}.topbar{min-height:64px;background:#fffdf7f0;border-bottom:1px solid var(--line);box-shadow:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.workspace-context,.top-streak,.level-pill{display:none}.top-search{max-width:480px;margin-right:auto;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:4px}.top-search:hover{border-color:#2457d6;background:#fff}.top-search kbd{background:#f1eadf;border-color:#d8cebe;color:#4c5561}.sync-chip{border-radius:999px;background:transparent;border-color:var(--line);color:var(--muted)}.top-account-button{border-radius:4px}.page-shell{width:min(100%,1460px);margin:0 auto;padding:52px 52px 88px}.page-enter{animation:fieldbook-enter .28s ease-out both}@keyframes fieldbook-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}h1,h2,h3,h4{color:var(--text);letter-spacing:-.035em}p{color:var(--muted)}.page-kicker,.eyebrow{color:#2457d6;font-family:DM Mono,monospace;letter-spacing:.09em}.page-kicker i{background:#d94a32;border-radius:0}.page-title-row h1,.page-hero h1,.reference-hero h1{max-width:860px;font-size:clamp(2.6rem,5vw,4.9rem);line-height:.99}.page-title-row h1 span,.page-hero h1 span,.reference-hero h1 span,.welcome-row h1 span{color:#2457d6}.page-title-row>div>p,.page-hero>div>p,.reference-hero>div>p{max-width:720px;font-size:17px;line-height:1.65}.panel,.stat-card,.module-card,.path-card,.project-card,.reference-card,.continue-hero,.curriculum-progress-card,.path-detail,.studio-assignment,.objective-card,.why-grid>div,.concept-demo,.quiz-card,.final-challenge{background:var(--surface);border-color:var(--line);box-shadow:none;border-radius:8px}.panel:before,.stat-card:before,.module-card:before{display:none}.welcome-row{align-items:end;margin-bottom:28px;border-bottom:1px solid var(--line-strong);padding-bottom:30px}.welcome-row h1{font-size:clamp(2.7rem,5vw,5.1rem);line-height:.98;margin-bottom:14px}.welcome-row p{max-width:690px;font-size:16px;line-height:1.6}.welcome-row p,.continue-hero__content>p{color:#4c5561}.date-chip{background:transparent;border:0;border-left:4px solid #d94a32;border-radius:0;padding:4px 0 4px 18px}.date-chip>svg{color:#d94a32}.active-learning-path{border-radius:3px;background:#dce7ff;color:#163879;border:0}.current-stage-strip{display:grid;grid-template-columns:52px 150px 1fr auto;align-items:center;gap:18px;padding:17px 20px;margin-bottom:18px;background:#161b22;color:#fffdf7;border-radius:4px}.current-stage-strip>span{display:grid;place-items:center;width:42px;height:42px;background:#d94a32;font:700 13px DM Mono,monospace}.current-stage-strip small{color:#91a0b0;font:500 11px DM Mono,monospace;letter-spacing:.08em}.current-stage-strip strong{display:block;color:#fff}.current-stage-strip p{margin:0;color:#c6ccd4}.current-stage-strip a{color:#fff;font-weight:700}.continue-hero{grid-template-columns:1fr;min-height:0;border-left:8px solid #2457d6;padding:38px 42px 30px;overflow:visible}.continue-hero__visual{display:none}.continue-hero__content{max-width:850px;padding:0}.continue-hero__content h2{font-size:clamp(2rem,3vw,3.25rem)}.continue-meta span{color:#4f6f10}.continue-meta small,.lesson-badges span,.continue-progress{color:#586270}.continue-progress{background:transparent}.continue-progress strong{color:var(--text)}.hero-button,.primary-button{border-radius:4px;background:#2457d6;color:#fff;box-shadow:none}.hero-button:hover,.primary-button:hover{background:#163f9f;transform:translateY(-1px)}.continue-progress{position:static;margin-top:28px;border-top:1px solid var(--line);padding:18px 0 0}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.stat-card{border:0;border-radius:0;min-height:128px}.dashboard-more{margin-top:22px}.dashboard-more>summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;background:#161b22;color:#fffdf7;border-left:5px solid #d94a32;cursor:pointer;list-style:none}.dashboard-more>summary::-webkit-details-marker{display:none}.dashboard-more>summary small{display:block;margin-bottom:3px;color:#8fa0b4;font:600 10px DM Mono,monospace;letter-spacing:.1em}.dashboard-more>summary strong{color:#fff;font-size:17px}.dashboard-more>summary>span:last-child{display:flex;align-items:center;gap:8px;color:#dce7ff;font-weight:700}.dashboard-more[open]>summary svg{transform:rotate(180deg)}.dashboard-more .dashboard-columns,.dashboard-more .achievements-preview{margin-top:22px}.dashboard-columns{align-items:start}.daily-card strong,.daily-card h2,.daily-card h3,.daily-card small{color:#eef3f8}.daily-card p{color:#bec8d3}.module-progress-row{border-radius:0;border-bottom:1px solid var(--line);background:transparent}.module-progress-row:hover{background:#f8f3e9;transform:none}.page-hero--curriculum{background:transparent;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;padding:0 0 40px}.page-hero--curriculum>div>p{color:#4c5561}.curriculum-progress-card{min-width:330px}.proficiency-ladder{display:grid;grid-template-columns:minmax(240px,.65fr) 1.35fr;gap:46px;margin:46px 0}.proficiency-ladder__intro{padding-top:10px}.proficiency-ladder__intro>span{color:#d94a32;font:600 12px DM Mono,monospace;letter-spacing:.1em}.proficiency-ladder__intro h2{margin:12px 0;font-size:32px;line-height:1.12}.proficiency-ladder__intro p{line-height:1.6}.proficiency-ladder ol{margin:0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}.proficiency-ladder li{display:grid;grid-template-columns:54px 1fr 118px;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.proficiency-ladder__number{color:#2457d6;font:600 12px DM Mono,monospace}.proficiency-ladder__copy small{color:#68717d;font:600 11px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.proficiency-ladder__copy h3{margin:3px 0 5px;font-size:22px}.proficiency-ladder__copy p{margin:0;line-height:1.5}.proficiency-ladder details{margin-top:10px}.proficiency-ladder summary{color:#2457d6;cursor:pointer;font-weight:700}.proficiency-ladder details p{margin-top:7px;font-size:14px}.proficiency-ladder__progress{text-align:right}.proficiency-ladder__progress strong{font-size:19px}.proficiency-ladder__progress>span{display:block;height:5px;margin:8px 0;background:#e5ddcf}.proficiency-ladder__progress i{display:block;height:100%;background:#2457d6}.proficiency-ladder li.complete .proficiency-ladder__progress i{background:#86a83d}.curriculum-toolbar{background:#161b22;border-radius:4px;border:0}.filter-tabs button{color:#bdc5cf;border-radius:3px}.filter-tabs button.active{background:#fffdf7;color:#161b22}.inline-search{background:#252c35;border-color:#3a444f}.inline-search input{color:#fff}.skill-legend{border:0;background:transparent}.module-stack{gap:14px}.module-card{overflow:hidden}.module-card__header{min-height:140px}.module-card__number,.module-number{border-radius:3px}.module-card__title p{max-width:640px}.module-lessons{background:#f8f3e9;border-top-color:var(--line)}.lesson-list-item{border-radius:0;border-left:4px solid transparent;background:transparent}.lesson-list-item:hover{background:#fffdf7;transform:none;border-left-color:#2457d6}.lesson-list-item strong{color:var(--text)}.lesson-list-item p,.lesson-lock-reason{color:#596371}.lesson-status{color:#9b321f}.lesson-node{border-radius:999px}.lesson-topline{border-bottom:1px solid var(--line);padding-bottom:16px}.lesson-layout{display:block}.lesson-toc{display:none}.lesson-content{width:min(100%,980px);margin:0 auto}.lesson-hero{padding:48px 0 38px;background:transparent!important;border:0;border-radius:0;box-shadow:none}.lesson-hero h1{max-width:900px;font-size:clamp(3rem,6vw,5.6rem);line-height:.97}.lesson-hero>p{max-width:720px;font-size:19px;line-height:1.6}.lesson-hero h1,.lesson-hero>p{color:var(--text)}.lesson-hero__meta>span{background:#dce7ff;color:#153876;border-radius:3px}.objective-card{max-width:760px;border:0;border-left:5px solid #d94a32;border-radius:0;padding-left:22px;background:transparent}.objective-card>span{color:#d94a32;background:transparent}.objective-card small{color:#9b321f}.objective-card p,.section-intro{color:#4c5561}.lesson-bridge{background:#161b22;border:0;border-radius:4px}.lesson-bridge p{color:#d8dde4}.lesson-bridge small{color:#8fa0b4}.lesson-phase-nav{position:sticky;top:76px;z-index:15;display:grid;grid-template-columns:repeat(3,1fr) 150px;background:#fffdf7;border:1px solid var(--line-strong);box-shadow:0 4px #161b2214}.lesson-phase-nav button{display:flex;align-items:center;gap:12px;min-height:68px;padding:10px 16px;background:transparent;border:0;border-right:1px solid var(--line);color:var(--muted);text-align:left}.lesson-phase-nav button:hover{background:#f2ecdf}.lesson-phase-nav button.active{background:#2457d6;color:#fff}.lesson-phase-nav button>span{font:600 11px DM Mono,monospace}.lesson-phase-nav button strong,.lesson-phase-nav button small{display:block;color:inherit}.lesson-phase-nav button small{margin-top:2px;opacity:.78}.lesson-phase-nav__stage{display:grid;align-content:center;padding:10px 16px;background:#161b22;color:#fff}.lesson-phase-nav__stage small{color:#9aa7b5;font:600 10px DM Mono,monospace;text-transform:uppercase}.lesson-section{padding:62px 0;border-bottom:1px solid var(--line)}.lesson-section__heading>span{color:#d94a32;background:transparent;border:1px solid #d94a32;border-radius:999px}.lesson-section__heading h2{font-size:32px}.lead-copy{max-width:760px;font-size:18px;line-height:1.72;color:#303843}.explanation-more{max-width:760px;margin-top:18px;border-left:3px solid #2457d6;padding-left:18px}.explanation-more summary{cursor:pointer;color:#2457d6;font-weight:800}.explanation-more p{font-size:16px;line-height:1.7}.key-terms,.prediction-callout,.practice-prompt{border-radius:4px}.key-terms__heading p,.key-terms__grid p,.why-grid p,.prediction-callout p,.lesson-checkpoint p,.example-scope p,.line-breakdown p,.mistake-list details>p{color:#4c5561}.key-terms__grid strong,.deep-dive>summary strong,.deep-dive__grid h3{color:var(--text)}.deep-dive__grid p{color:#4c5561}.lesson-checkpoint small,.expected-output small,.takeaway-card small{color:#4f6f10}.expected-output pre{color:#34404d}.takeaway-card li{background:#fffdf7;border-color:var(--line)}.takeaway-card li p{color:#34404d}.takeaway-card li>span{color:#4f6f10;background:#edf3dc}.line-breakdown>div{background:#fffdf7;border-top-color:var(--line)}.line-breakdown code{color:#55388d}.concept-demo{background:#fffdf7}.concept-map button{border-radius:4px}.concept-map button.active{background:#161b22;border-color:#161b22}.concept-detail{background:#dce7ff;border-color:#b8cdfd}.why-grid>div{border-radius:0;border-top:3px solid #161b22}.code-window,.cm-editor,.output-panel{background:#0d1219;color:#e9eef5}.lesson-phase-learn #check,.lesson-phase-learn #practice,.lesson-phase-learn #studio,.lesson-phase-learn #challenge,.lesson-phase-practice #concept,.lesson-phase-practice #example,.lesson-phase-practice #breakdown,.lesson-phase-practice #mistakes,.lesson-phase-practice #challenge,.lesson-phase-prove #concept,.lesson-phase-prove #example,.lesson-phase-prove #breakdown,.lesson-phase-prove #mistakes,.lesson-phase-prove #check,.lesson-phase-prove #practice,.lesson-phase-prove #studio{display:none}.final-challenge{border:0;border-top:10px solid #d94a32;background:#161b22;color:#fff}.final-challenge h2,.final-challenge strong{color:#fff}.final-challenge p,.final-challenge small,.challenge-confirm span{color:#cbd2db}.complete-lesson-button{border-radius:4px;background:#a7c957;color:#161b22}.route-practice{background:#0d1219}.route-practice .topbar{background:#0d1219f2;border-bottom-color:#283544}.route-practice .top-search,.route-practice .sync-chip{border-color:#344150;color:#b8c2ce}.route-practice .top-account-button{color:#fff}.route-practice .page-shell{max-width:none;background:#0d1219}.practice-page{color:#eef3f8}.practice-page h1,.practice-page h2,.practice-page h3,.practice-page strong{color:#fff}.practice-page p,.practice-page small{color:#aeb9c5}.practice-page .page-kicker,.practice-page .eyebrow,.practice-page .text-link,.practice-page .official-link,.practice-page .practice-cheatsheet summary{color:#8eb0ff}.practice-page .challenge-sidebar nav button strong{color:#c7d0da}.practice-page .challenge-sidebar nav button.active strong{color:#fff}.practice-title{border-bottom:1px solid #344150;padding-bottom:34px}.practice-title h1{line-height:1.08}.practice-title h1 span{color:#8eb0ff}.runtime-status{background:#18222e;border-color:#354557;border-radius:4px}.practice-layout{gap:0;border:1px solid #354557}.challenge-sidebar,.practice-cheatsheet{background:#111923;border-color:#354557;border-radius:0}.challenge-sidebar nav button{border-radius:0;border-left:3px solid transparent}.challenge-sidebar nav button.active{background:#1b2a3a;border-left-color:#d94a32}.practice-workspace{background:#0d1219;border-radius:0}.challenge-brief{border-bottom-color:#354557}.expected-chip{background:#1a2634;border-color:#354557}.reference-hero{padding:0 0 40px;background:transparent!important;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;box-shadow:none}.reference-hero h1{color:var(--text)}.reference-hero p{color:var(--muted)}.reference-search-large{background:#fffdf7;border:2px solid #161b22;border-radius:4px;box-shadow:6px 6px #2457d6}.reference-layout{align-items:start}.reference-categories{position:sticky;top:86px;background:transparent;border:0;border-right:1px solid var(--line);border-radius:0}.reference-categories button{border-radius:0;border-bottom:1px solid var(--line)}.reference-categories button.active{background:#161b22;color:#fff}.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}.reference-card{border:0;border-top:1px solid var(--line-strong);border-radius:0;padding:24px 0}.reference-card:hover{transform:none;background:transparent;border-top-color:#2457d6}.reference-card>p,.reference-card>small,.reference-card>div:last-child span{color:#4c5561}.reference-card__top b{color:#4f6f10}.reference-card code{border-radius:3px;background:#161b22;color:#eef3f8}.paths-page .path-grid{grid-template-columns:repeat(3,1fr);gap:14px}.path-card{border-top:5px solid #2457d6;text-align:left}.path-card.selected{border-color:#d94a32;box-shadow:6px 6px #d94a32;transform:translate(-3px,-3px)}.path-roadmap__module{border-radius:0;border-left:4px solid #2457d6}.projects-page .project-grid{gap:18px}.project-card{border-radius:4px;border-top:8px solid #161b22}.route-debug{background:#111923}.route-debug .page-shell,.route-debug .debug-page h1,.route-debug .debug-page h2,.route-debug .debug-page h3{color:#fff}@media(max-width:1100px){.page-shell{padding:40px 28px 72px}.stats-grid{grid-template-columns:repeat(2,1fr)}.current-stage-strip{grid-template-columns:46px 130px 1fr}.current-stage-strip a{grid-column:3}.proficiency-ladder{grid-template-columns:1fr}.lesson-phase-nav{grid-template-columns:repeat(3,1fr)}.lesson-phase-nav__stage{display:none}.reference-grid{grid-template-columns:1fr}.paths-page .path-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.app-shell{display:block}.page-shell{padding:28px 18px 96px}.topbar{min-height:58px}.top-search{margin-left:8px}.topbar-actions .sync-chip{display:none}.welcome-row{align-items:start}.welcome-row h1{font-size:3rem}.date-chip{margin-top:10px}.current-stage-strip{grid-template-columns:42px 1fr}.current-stage-strip p,.current-stage-strip a{grid-column:1 / -1}.continue-hero{padding:28px 22px}.stats-grid{grid-template-columns:1fr}.dashboard-more>summary{align-items:flex-start}.dashboard-more>summary>span:last-child{font-size:0}.proficiency-ladder li{grid-template-columns:42px 1fr}.proficiency-ladder__progress{grid-column:2;text-align:left}.lesson-hero{padding-top:30px}.lesson-hero h1{font-size:3.15rem}.lesson-phase-nav{top:58px;grid-template-columns:repeat(3,1fr)}.lesson-phase-nav button{justify-content:center;min-height:54px;padding:8px}.lesson-phase-nav button div{display:none}.lesson-section{padding:42px 0}.reference-layout{display:block}.reference-categories{position:static;border-right:0;margin-bottom:28px}.paths-page .path-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.page-enter{animation:none}}.theme-toggle{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:transparent;cursor:pointer}.theme-toggle:hover{border-color:var(--violet);color:var(--violet);background:var(--surface)}.settings-page{width:min(100%,1180px);margin:0 auto}.settings-hero{max-width:800px;padding:10px 0 42px;border-bottom:1px solid var(--line-strong)}.settings-hero h1{margin:12px 0 14px;font-size:clamp(2.8rem,6vw,5.2rem);line-height:.98}.settings-hero h1 span{color:var(--violet)}.settings-hero>p{max-width:680px;margin:0;font-size:17px;line-height:1.65}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.settings-card{min-width:0;padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.settings-card--wide{grid-column:1 / -1}.settings-card__heading{display:flex;align-items:center;gap:12px}.settings-card__heading>span{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid color-mix(in srgb,var(--violet) 28%,transparent);border-radius:6px;color:var(--violet);background:color-mix(in srgb,var(--violet) 9%,transparent)}.settings-card__heading>div{min-width:0}.settings-card__heading small{display:block;color:var(--muted-2);font:600 11px DM Mono,monospace;letter-spacing:.1em}.settings-card__heading h2{margin:3px 0 0;font-size:22px}.settings-card__intro{margin:20px 0;line-height:1.6}.profile-identity{display:flex;align-items:center;gap:16px;margin:25px 0 22px}.profile-avatar{display:grid;place-items:center;flex:0 0 64px;height:64px;border-radius:50%;color:#fff;background:var(--violet);font-size:26px;font-weight:800}.profile-identity>div{min-width:0}.profile-identity strong{display:block;font-size:20px;overflow-wrap:anywhere}.profile-identity p{margin:3px 0 8px;overflow-wrap:anywhere}.profile-status{display:inline-flex;align-items:center;gap:6px;color:var(--muted-2);font:600 11px DM Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.profile-status i{width:7px;height:7px;border-radius:50%;background:var(--amber)}.profile-status--cloud i{background:#6d9324}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-stats>div{padding:17px 8px;text-align:center;border-right:1px solid var(--line)}.profile-stats>div:last-child{border-right:0}.profile-stats strong{display:block;color:var(--text);font-size:19px}.profile-stats span{color:var(--muted-2);font-size:11px}.settings-actions{display:flex;gap:10px;margin-top:22px}.settings-actions button,.settings-sign-in{min-height:42px}.settings-sign-in{display:inline-flex;margin-top:22px}.settings-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 15px;border:1px solid var(--line-strong);border-radius:4px;color:var(--text);background:transparent;font-weight:800;cursor:pointer}.settings-secondary:hover{border-color:var(--violet);color:var(--violet)}.theme-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.theme-options>button{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;padding:12px;border:2px solid var(--line);border-radius:7px;color:var(--text);text-align:left;background:transparent;cursor:pointer}.theme-options>button:hover{border-color:color-mix(in srgb,var(--violet) 55%,var(--line))}.theme-options>button.active{border-color:var(--violet);box-shadow:0 0 0 3px color-mix(in srgb,var(--violet) 12%,transparent)}.theme-options>button>span:last-of-type{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 7px}.theme-options>button>span:last-of-type svg{grid-row:1 / span 2;color:var(--violet)}.theme-options>button strong,.theme-options>button small{display:block}.theme-options>button small{color:var(--muted-2);font-size:11px}.theme-options>button>svg{position:absolute;right:12px;bottom:17px;color:var(--violet)}.theme-preview{display:grid;grid-template-columns:28% 1fr;grid-template-rows:19px 1fr;width:100%;height:92px;overflow:hidden;border:1px solid #cfc7b9;border-radius:4px;background:#f7f2e8}.theme-preview i:first-child{grid-row:1 / span 2;background:#161b22}.theme-preview i:nth-child(2){background:#fffdf7;border-bottom:1px solid #ded5c6}.theme-preview i:nth-child(3){margin:10px;border:1px solid #ded5c6;background:#fffdf7}.theme-preview--dark{border-color:#34404f;background:#080b10}.theme-preview--dark i:first-child{background:#05070b;border-right:1px solid #283342}.theme-preview--dark i:nth-child(2){background:#0d131c;border-bottom-color:#283342}.theme-preview--dark i:nth-child(3){border-color:#34404f;background:#111a25}.save-summary{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:24px;padding:22px;border:1px solid var(--line);background:var(--surface-2)}.save-summary>div:first-child{min-width:0}.save-summary>div:first-child>strong{color:var(--text);font-size:17px}.save-summary p{margin:5px 0 0;overflow-wrap:anywhere}.save-summary__counts{display:flex;flex:0 0 auto;gap:22px}.save-summary__counts span{color:var(--muted);font-size:13px}.save-summary__counts strong{display:block;color:var(--text);font-size:22px}.privacy-note{display:flex;align-items:flex-start;gap:10px;margin-top:16px;color:#54731d}.privacy-note svg{flex:0 0 auto;margin-top:2px}.privacy-note p{margin:0;font-size:13px;line-height:1.55}.privacy-note strong{color:inherit}html[data-theme=dark]{--bg: #080b10;--bg-deep: #05070b;--surface: #0f151d;--surface-2: #141c26;--surface-3: #1a2430;--line: #283341;--line-strong: #596779;--text: #f4f1e9;--muted: #b2bcc8;--muted-2: #8c98a7;--violet: #6f9cff;--violet-bright: #8fb1ff;--sky: #6f9cff;--mint: #a7c957;--amber: #ff775f;--orange: #ff775f;--red: #ff775f;--shadow: 0 12px 38px rgba(0, 0, 0, .32);color-scheme:dark}html[data-theme=dark] body{background:var(--bg);color:var(--text)}html[data-theme=dark] ::selection{background:#24477c;color:#fff}html[data-theme=dark] .sidebar{background:#090e14;border-right:1px solid #202a36}html[data-theme=dark] .sidebar-link.active{color:#fff;background:#1b2633}html[data-theme=dark] .topbar{background:#080b10f0}html[data-theme=dark] .top-search:hover,html[data-theme=dark] .top-search kbd{color:var(--text);background:var(--surface-2);border-color:var(--line)}html[data-theme=dark] .module-progress-row:hover,html[data-theme=dark] .lesson-list-item:hover,html[data-theme=dark] .lesson-phase-nav button:hover{background:var(--surface-2)}html[data-theme=dark] .module-lessons,html[data-theme=dark] .lesson-phase-nav,html[data-theme=dark] .takeaway-card li,html[data-theme=dark] .line-breakdown>div,html[data-theme=dark] .concept-demo,html[data-theme=dark] .reference-search-large{background:var(--surface)}html[data-theme=dark] .filter-tabs button.active{color:var(--text);background:var(--surface-3)}html[data-theme=dark] .proficiency-ladder__progress>span{background:#263240}html[data-theme=dark] .lesson-hero__meta>span,html[data-theme=dark] .concept-detail{color:#dce7ff;background:#172b49;border-color:#355c92}html[data-theme=dark] .page-hero--curriculum>div>p,html[data-theme=dark] .proficiency-ladder__copy small,html[data-theme=dark] .lesson-list-item p,html[data-theme=dark] .lesson-lock-reason,html[data-theme=dark] .objective-card p,html[data-theme=dark] .section-intro,html[data-theme=dark] .lead-copy,html[data-theme=dark] .key-terms__heading p,html[data-theme=dark] .key-terms__grid p,html[data-theme=dark] .why-grid p,html[data-theme=dark] .prediction-callout p,html[data-theme=dark] .lesson-checkpoint p,html[data-theme=dark] .example-scope p,html[data-theme=dark] .line-breakdown p,html[data-theme=dark] .mistake-list details>p,html[data-theme=dark] .deep-dive__grid p,html[data-theme=dark] .takeaway-card li p,html[data-theme=dark] .reference-card>p,html[data-theme=dark] .reference-card>small,html[data-theme=dark] .reference-card>div:last-child span{color:var(--muted)}html[data-theme=dark] .expected-output pre{color:#d2dbe5}html[data-theme=dark] .takeaway-card li>span{color:#cae995;background:#26351d}html[data-theme=dark] .line-breakdown code{color:#b9a1eb}html[data-theme=dark] .privacy-note{color:#b8d986}@media(max-width:760px){.theme-toggle{width:34px;height:34px}.settings-grid{grid-template-columns:1fr}.settings-card--wide{grid-column:auto}.settings-card{padding:22px 18px}.settings-hero{padding-bottom:30px}.settings-hero h1{font-size:3rem}.profile-stats{grid-template-columns:repeat(2,1fr)}.profile-stats>div:nth-child(2){border-right:0}.profile-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.theme-options{grid-template-columns:1fr}.save-summary{align-items:flex-start;flex-direction:column}}@media(max-width:480px){.topbar-actions{gap:6px}.settings-actions{flex-direction:column}.settings-actions button,.settings-sign-in{width:100%}.save-summary__counts{width:100%;justify-content:space-between}}
