@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-cyrillic-ext-400-normal-FAIU8e3o.woff2)format("woff2"),url(/assets/fira-mono-cyrillic-ext-400-normal-Co4MVjrD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-cyrillic-400-normal-BJkDdjbt.woff2)format("woff2"),url(/assets/fira-mono-cyrillic-400-normal-DUd3efVn.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-greek-ext-400-normal-Be4g_LSk.woff2)format("woff2"),url(/assets/fira-mono-greek-ext-400-normal-BQ5yw6bY.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-greek-400-normal-ftNhKy_S.woff2)format("woff2"),url(/assets/fira-mono-greek-400-normal-B_0AmgK7.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-symbols2-400-normal-C6JptOil.woff2)format("woff2"),url(/assets/fira-mono-symbols2-400-normal-CpeG9ob9.woff)format("woff");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-latin-ext-400-normal-B2gPvaNr.woff2)format("woff2"),url(/assets/fira-mono-latin-ext-400-normal-CbD3vWRE.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-mono-latin-400-normal-DVTTRLHv.woff2)format("woff2"),url(/assets/fira-mono-latin-400-normal-C3FQ26ho.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080a09;--panel:#0e1210;--panel-2:#121713;--text:#f2f5f1;--muted:#929c95;--line:#273029;--signal:#b8f742;--ui:"Inter Variable", sans-serif;--mono:"Fira Mono", monospace;--lab-line:var(--line);--lab-mono:var(--mono)}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--ui);margin:0}a{color:inherit;text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}button,textarea{font:inherit}img{max-width:100%}.site-header,.site-footer{width:min(1480px,100% - 2.4rem);font:400 .68rem/1.2 var(--mono);align-items:center;margin-inline:auto;display:flex}.site-header{border-bottom:1px solid var(--line);gap:2rem;min-height:58px}.site-header .brand{color:var(--text);letter-spacing:.05em;font-weight:700}.site-header nav{color:#a9b2ac;gap:1.2rem;display:flex}.shell-status{color:var(--muted);align-items:center;gap:.5rem;margin-left:auto;display:flex}.shell-status i{background:var(--signal);border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #b8f74299}.site-footer{border-top:1px solid var(--line);color:#778079;justify-content:space-between;gap:1rem;min-height:92px}.course-home,.learning-path{width:min(1320px,100% - 2.4rem);margin-inline:auto}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr);min-height:680px;display:grid}.hero-copy{border-right:1px solid var(--line);flex-direction:column;justify-content:center;padding:5rem clamp(2rem,5vw,5.8rem) 5rem 0;display:flex}.eyebrow,.section-number{color:var(--muted);font:500 .7rem/1.2 var(--mono);letter-spacing:.09em;text-transform:uppercase}.eyebrow{align-items:center;gap:.65rem;display:flex}.eyebrow span{background:var(--signal);border-radius:50%;width:.45rem;height:.45rem;box-shadow:0 0 18px #b8f74280}.hero h1{max-width:10ch;font:500 clamp(3.4rem,6.5vw,6.6rem)/.95 var(--ui);letter-spacing:-.07em;margin:0 0 1.5rem}.lede{color:#b7c0ba;max-width:34rem;margin:0;font-size:1.1rem;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}.button{border:1px solid var(--line);font:500 .78rem/1 var(--mono);align-items:center;gap:2rem;padding:.86rem 1rem;display:inline-flex}.button:hover{border-color:#526057;text-decoration:none}.button.primary{border-color:var(--signal);background:var(--signal);color:#0b0e0c}.button.primary:hover{background:#cdfc74}.course-stats{gap:2.4rem;margin:3.6rem 0 0;display:flex}.course-stats div{gap:.15rem;display:grid}.course-stats dt{font:500 1.45rem/1 var(--mono)}.course-stats dd{color:var(--muted);font:400 .66rem/1.2 var(--mono);text-transform:uppercase;margin:0}.hero-visual{background:#07100c;min-width:0;position:relative;overflow:hidden}.hero-static,.shader-layer{width:100%;height:100%;position:absolute;inset:0}.hero-static{object-fit:cover;opacity:.9}.shader-layer{z-index:1;opacity:.38;mix-blend-mode:screen}.hero-visual:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#080a0947,#0000 30%),linear-gradient(#0000 60%,#080a0966);position:absolute;inset:0}.scan-line{z-index:3;background:linear-gradient(90deg,transparent,var(--signal),transparent);height:1px;box-shadow:0 0 18px var(--signal);animation:6s ease-in-out infinite alternate scan;position:absolute;top:24%;left:0;right:0}@keyframes scan{to{transform:translateY(330px)}}.visual-readout{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#aeb8b1;font:400 .64rem/1 var(--mono);background:#070a08c7;border:1px solid #ffffff26;align-items:center;gap:1.2rem;padding:.75rem;display:flex;position:absolute;bottom:1rem;left:1rem;right:1rem}.visual-readout strong{color:var(--signal);margin-left:auto;font-weight:500}.method,.path-preview,.runner-callout{border-bottom:1px solid var(--line);padding:7rem 0}.method{grid-template-columns:.72fr 1.28fr;gap:4rem;display:grid}.course-home h2{max-width:14ch;font:500 clamp(2.2rem,4vw,4.2rem)/1 var(--ui);letter-spacing:-.055em;margin:.5rem 0 0}.method ol{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.method li{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;gap:.8rem;padding:1.5rem 1.25rem;display:grid}.method li:nth-child(2n){border-right:0}.method li>span{color:var(--signal);font:.68rem var(--mono)}.method li strong{font-weight:500}.method li p{color:var(--muted);grid-column:2;margin:0;font-size:.88rem;line-height:1.55}.path-preview>header{justify-content:space-between;align-items:end;gap:2rem;display:flex}.path-preview>header a,.text-link{color:var(--signal);font:500 .72rem/1.3 var(--mono)}.module-strip{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:3rem;display:grid}.module-strip a{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:190px;padding:1.2rem;display:grid}.module-strip a:hover{background:var(--panel);text-decoration:none}.module-strip span{color:var(--signal);font:.68rem var(--mono)}.module-strip strong{align-self:end;font-size:1.05rem;font-weight:500}.module-strip small{color:var(--muted);font:.65rem var(--mono);margin-top:.4rem}.runner-callout{grid-template-columns:minmax(240px,.7fr) 1.3fr;align-items:center;gap:clamp(2rem,7vw,8rem);display:grid}.mascot-slot{border:1px solid var(--line);background:radial-gradient(circle at center,#b8f7421a,transparent 55%),var(--panel);place-items:center;min-height:320px;display:grid;overflow:hidden}.mascot-slot img{object-fit:contain;max-width:78%;max-height:290px}.runner-callout>div:last-child>p:not(.section-number){max-width:38rem;color:var(--muted);line-height:1.7}.path-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:2rem;padding:6rem 0 4rem;display:flex}.path-head p,.path-module header p,.path-grid>aside>p{color:var(--muted);font:500 .68rem/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase}.path-head h1{max-width:10ch;font:500 clamp(3.2rem,7vw,6.4rem)/.96 var(--ui);letter-spacing:-.065em;margin:.7rem 0 0}.overall-progress{border-left:1px solid var(--signal);gap:.45rem;min-width:260px;padding-left:1.25rem;display:grid}.overall-progress strong{color:var(--signal);font:500 2.2rem/1 var(--mono)}.overall-progress span{color:var(--muted);font-size:.78rem}.path-grid{grid-template-columns:210px minmax(0,1fr);gap:clamp(2rem,7vw,7rem);padding:4rem 0 8rem;display:grid}.path-grid>aside{align-self:start;position:sticky;top:1.5rem}.path-grid>aside ol{margin:1rem 0 0;padding:0;list-style:none}.path-grid>aside li{border-top:1px solid var(--line)}.path-grid>aside a{color:#9aa39d;font:400 .66rem/1.45 var(--mono);padding:.75rem 0;display:block}.path-module{margin-bottom:6rem;scroll-margin-top:1.5rem}.path-module>header{border-bottom:1px solid #485149;grid-template-columns:64px 1fr auto;align-items:center;gap:1.3rem;padding-bottom:1.35rem;display:grid}.module-index{width:52px;height:52px;color:var(--signal);font:500 .8rem var(--mono);border:1px solid #39433c;place-items:center;display:grid}.path-module header p{margin:0 0 .25rem}.path-module h2{letter-spacing:-.025em;margin:0;font-size:1.55rem;font-weight:500}.module-progress{gap:.5rem;min-width:110px;display:grid}.module-progress span{color:var(--muted);font:.65rem var(--mono);text-align:right}.module-progress i{background:var(--line);height:3px;display:block}.path-module ol{margin:0;padding:0;list-style:none}.path-module li{border-bottom:1px solid #202722}.path-module li a{grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:1.3rem;padding:1.1rem 0;display:grid}.path-module li a:hover{background:linear-gradient(90deg,#0000,#0f1411 12% 88%,#0000);text-decoration:none}.node{color:#88928b;width:32px;height:32px;font:.63rem var(--mono);border:1px solid #39433c;border-radius:50%;place-items:center;margin-left:10px;display:grid}.node.current{border-color:var(--signal);color:var(--signal);box-shadow:0 0 20px #b8f7421f}.path-module li div{gap:.3rem;min-width:0;display:grid}.path-module li strong{color:#e8ece8;font-size:.93rem;font-weight:500}.path-module li small{color:#89928c;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.path-module li em{color:#69736d;font:normal .61rem var(--mono);text-transform:uppercase}.lesson-workspace{grid-template-columns:minmax(150px,190px) minmax(0,760px) minmax(300px,390px);gap:clamp(1.25rem,2.8vw,3rem);width:min(1480px,100% - 2.4rem);margin:1.4rem auto 4rem;display:grid}.course-rail{font-family:var(--mono);align-self:start;padding-top:.3rem;position:sticky;top:1.25rem}.back-path{font-size:.7rem}.rail-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:2.1rem 0 .35rem;font-size:.65rem}.rail-title{font-size:.86rem;font-weight:500;line-height:1.35;display:block}.rail-progress{background:#202722;height:3px;margin-top:1.1rem;overflow:hidden}.rail-progress span{background:var(--signal);height:100%;display:block}.rail-count{color:var(--muted);margin:.45rem 0 1.5rem;font-size:.63rem}.rail-nav{gap:.55rem;display:grid}.rail-nav a,.rail-nav .disabled{border-top:1px solid var(--line);justify-content:space-between;padding:.65rem 0;font-size:.65rem;display:flex}.rail-nav .disabled{color:#59625c}.lesson-paper{border:1px solid var(--line);background:#0d110ef5;min-width:0;padding:clamp(1.2rem,3vw,3rem);box-shadow:0 20px 70px #00000040}.lesson-meta{border-bottom:1px solid var(--line);color:var(--muted);font:400 .65rem/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:1rem;margin-bottom:2.4rem;padding-bottom:.8rem;display:flex}.lesson-meta div{gap:1rem;display:flex}.lesson-body h1,.lesson-body h2,.lesson-body h3,.lesson-body h4{letter-spacing:-.045em;font-weight:500;line-height:1.08}.lesson-body h1{max-width:14ch;margin-top:0;font-size:clamp(2.4rem,5.6vw,4.7rem)}.lesson-body h2{margin-top:3.2rem;font-size:clamp(1.55rem,2.7vw,2.25rem)}.lesson-body h3{margin-top:2.2rem;font-size:1.28rem}.lesson-body p,.lesson-body li{color:#c3cbc5;font-size:1rem;line-height:1.72}.lesson-body strong{color:var(--text)}.lesson-body a{color:#c9fa6d;text-underline-offset:3px;-webkit-text-decoration:underline #607b2e;text-decoration:underline #607b2e}.lesson-body pre{border:1px solid #303a33;border-left:3px solid var(--signal);color:#e5ebe6;max-width:100%;font:.8rem/1.72 var(--mono);background:#080b09;margin:1.4rem min(-1rem,-2vw);padding:1.25rem;overflow-x:auto}.lesson-body :not(pre)>code{color:#e1e9e2;font-family:var(--mono);background:#1a211c;border-radius:3px;padding:.1rem .3rem}.lesson-body img,.lesson-body svg{max-width:100%;height:auto;margin:1.6rem auto;display:block}.lesson-body table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.lesson-body th,.lesson-body td{border:1px solid var(--line);text-align:left;padding:.55rem .7rem}.lesson-body details{border:1px solid var(--line);background:var(--panel-2);margin:1rem 0;padding:.85rem 1rem}.lesson-body summary{cursor:pointer;font:500 .78rem/1.4 var(--mono)}.lesson-footer{border-top:1px solid var(--line);font:400 .7rem/1.4 var(--mono);justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.2rem;display:flex}.lesson-footer a{color:#c9fa6d}.lesson-footer .next{text-align:right;margin-left:auto}.not-found{width:min(900px,100% - 2rem);min-height:70vh;margin:0 auto;padding:10rem 0}.not-found h1{letter-spacing:-.06em;max-width:12ch;font-size:clamp(3rem,8vw,7rem);line-height:.95}@media (width<=980px){.hero{grid-template-columns:1fr}.hero-copy{border-right:0;min-height:570px}.hero-visual{border-top:1px solid var(--line);min-height:480px}.method{grid-template-columns:1fr}.module-strip{grid-template-columns:1fr 1fr}.lesson-workspace{grid-template-columns:minmax(0,760px);max-width:760px}.course-rail{grid-template-columns:1fr auto;gap:.35rem 1rem;padding:.65rem 0;display:grid;position:static}.course-rail .rail-label,.course-rail .rail-progress,.course-rail .rail-count,.course-rail .rail-nav{display:none}.course-rail .rail-title{text-align:right}}@media (width<=760px){.site-header,.site-footer,.course-home,.learning-path{width:min(100% - 1.7rem,1320px)}.site-header{flex-wrap:wrap;align-items:flex-start;gap:.7rem 1rem;padding:.9rem 0}.site-header nav{order:3;width:100%;overflow-x:auto}.shell-status{font-size:.58rem}.hero-copy{min-height:0;padding:4.5rem 0 3.5rem}.hero h1{font-size:3.5rem}.hero-visual{min-height:390px;margin-inline:-.85rem}.course-stats{gap:1.35rem}.method,.path-preview,.runner-callout{padding:4.5rem 0}.method ol,.module-strip,.runner-callout{grid-template-columns:1fr}.method li{border-right:0}.path-preview>header{flex-direction:column;align-items:start}.path-head{flex-direction:column;align-items:start;padding:4.5rem 0 3rem}.path-head h1{font-size:3.65rem}.overall-progress{min-width:0}.path-grid{grid-template-columns:1fr;padding-top:2.5rem}.path-grid>aside{display:none}.path-module{margin-bottom:4rem}.path-module>header{grid-template-columns:52px 1fr}.module-progress{display:none}.path-module li a{grid-template-columns:48px minmax(0,1fr);gap:.7rem}.path-module li em{display:none}.lesson-workspace{width:min(100% - 1rem,760px);margin-top:.65rem}.lesson-paper{padding:1.05rem}.lesson-body h1{font-size:2.55rem}.lesson-meta{align-items:flex-start}.lesson-footer{display:grid}.lesson-footer .next{text-align:left;margin-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shader-layer{display:none}.scan-line{animation:none;top:52%}}
