.noise{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.noise--fixed{position:fixed}.noise__grain{position:absolute;top:0;right:0;bottom:0;left:0;background-repeat:repeat;image-rendering:pixelated}.noise__dust{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.noise__lines{position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(to bottom,rgba(0,0,0,.55) 0,rgba(0,0,0,.55) 1px,transparent 1px,transparent 3px)}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jetbrains-mono-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/jetbrains-mono-800.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/nunito-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #101014;--fg: #ffffff;--surface: #1a1a1e;--line-strong: #2b2b31;--accent: #2b63d9;--accent-2: #94b4ff;--danger: #ff4b5c;--mute: rgba(255, 255, 255, .55);--mute-2: rgba(255, 255, 255, .38);--hair: rgba(255, 255, 255, .11);--hair-soft: rgba(255, 255, 255, .055);--font-display: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-body: "Nunito", "Segoe UI", system-ui, sans-serif;--font-num: "Montserrat", "Segoe UI", system-ui, sans-serif;--fs-display: clamp(2.05rem, 7.4vw, 5.5rem);--fs-title: clamp(1.7rem, 4.3vw, 3.4rem);--fs-note: clamp(.9rem, 1.2vw, 1rem);--fs-mono: .6875rem;--ease: cubic-bezier(.22, 1, .36, 1);--page-pad: clamp(18px, 5vw, 64px);--nav-h: 56px;--max: 1440px}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img,svg{display:block;max-width:100%}h1,h2,h3{font-family:var(--font-display);font-weight:700;margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}::selection{background:var(--accent);color:var(--fg)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--line-strong);border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}:focus-visible{outline:1px solid var(--accent-2);outline-offset:4px}.margin-rules{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.margin-rules:before,.margin-rules:after{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--hair-soft)}.margin-rules:before{left:var(--page-pad)}.margin-rules:after{right:var(--page-pad)}.nav{position:fixed;top:0;left:0;right:0;z-index:60;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 var(--page-pad);background:#101014e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--hair-soft)}.nav-brand{display:flex;align-items:center;gap:10px}.nav-brand .logomark{height:18px;width:auto}.nav-brand .logotype{height:12px;width:auto}.nav-right{display:flex;align-items:center;gap:16px}.nav-meta{display:none;font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2)}.nav-link{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);transition:color .2s var(--ease)}.nav-link:hover{color:var(--fg)}.nav-progress{position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--accent);transform-origin:left center}@media(min-width:720px){.nav-meta{display:inline}.nav-right{gap:clamp(16px,3vw,36px)}.nav-brand .logomark{height:20px}.nav-brand .logotype{height:13px}}.chapter-index{display:none;position:fixed;top:50%;right:14px;transform:translateY(-50%);z-index:55;flex-direction:column;gap:16px}.ci-item{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--mute-2);transition:color .3s var(--ease)}.ci-num{font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.08em}.ci-stub{width:10px;height:1px;background:currentColor;transition:width .3s var(--ease)}.ci-item:hover{color:var(--fg)}.ci-item.active{color:var(--accent-2)}.ci-item.active .ci-stub{width:24px}.ci-item:after{content:attr(data-label);position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;color:var(--mute);opacity:0;transition:opacity .25s var(--ease);pointer-events:none}.ci-item:hover:after{opacity:1}@media(min-width:900px){.chapter-index{display:flex}}.s-hair{height:1px;background:var(--hair);transform-origin:left center}.scenes{position:relative;z-index:1}.scene{position:relative;min-height:100svh;display:grid;align-content:center;padding:calc(var(--nav-h) + 40px) var(--page-pad) 72px}.scene-inner{width:100%;max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr;row-gap:clamp(20px,3.5vh,36px)}.s-num{font-family:var(--font-display);font-weight:800;font-size:46px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.2);-webkit-user-select:none;user-select:none}.s-main{display:flex;flex-direction:column;gap:clamp(14px,2.4vh,24px);min-width:0}.kicker{display:flex;align-items:center;gap:10px;margin:0;min-width:0}.k-prompt{flex:none;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--accent-2)}.kicker-text{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);min-width:0}.s-title{font-family:var(--font-display)!important;font-weight:700;font-size:var(--fs-title);line-height:1.04;letter-spacing:-.02em;text-transform:uppercase;overflow:hidden}.s-note{font-family:var(--font-body);font-size:var(--fs-note);line-height:1.65;color:var(--mute);max-width:46ch}.s-meta{display:flex;flex-direction:column;gap:10px;font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2);border-left:1px solid var(--hair);padding-left:14px;min-width:0}.s-meta span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-hero{padding-bottom:56px}.hero-inner{row-gap:clamp(16px,2.6vh,26px)}.hero-title{font-family:var(--font-display)!important;font-weight:800;font-size:var(--fs-display);line-height:1.02;letter-spacing:-.03em;text-transform:uppercase;overflow:hidden}.hero-title:after{content:"_";color:var(--accent-2);animation:caret-blink 1.05s steps(2) infinite;margin-left:.06em}@keyframes caret-blink{50%{opacity:0}}.hero-sub{font-family:var(--font-body);font-size:var(--fs-note);line-height:1.65;color:var(--mute);max-width:42ch}.hero-cta{display:inline-flex;align-items:center;gap:10px;justify-self:start;font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);transition:color .25s var(--ease)}.hero-cta:hover{color:var(--fg)}.pinned{position:relative}.pinned-inner{position:sticky;top:0;min-height:100svh;height:auto;overflow:hidden;display:grid;align-content:center;padding:calc(var(--nav-h) + 40px) var(--page-pad) 64px}.site-foot{position:relative;z-index:1;display:flex;justify-content:space-between;gap:10px 20px;flex-wrap:wrap;padding:20px var(--page-pad) 26px;border-top:1px solid var(--hair-soft);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2)}@media(min-width:720px){.site-foot{font-size:var(--fs-mono)}.s-num{font-size:64px}}@media(min-width:900px){.scene-inner{grid-template-columns:repeat(12,1fr);column-gap:clamp(14px,2vw,28px);row-gap:clamp(22px,4vh,44px)}.s-num{font-size:clamp(56px,6vw,96px)}.scene--left .s-num{grid-column:1 / 3;grid-row:1}.scene--left .s-main{grid-column:2 / 10;grid-row:2}.scene--left .s-meta{grid-column:10 / 13;grid-row:2;align-self:end}.scene--indent .s-num{grid-column:1 / 2;grid-row:2;align-self:start}.scene--indent .s-main{grid-column:3 / 11;grid-row:2}.scene--indent .s-meta{grid-column:11 / 13;grid-row:2;align-self:start}.scene--split .s-num{grid-column:1 / 2;grid-row:1}.scene--split .s-main{grid-column:1 / 7;grid-row:2}.scene--split .s-meta{grid-column:8 / 12;grid-row:2;align-self:start;padding-top:6px}.hero-inner .kicker{grid-column:1 / 8;grid-row:1}.hero-num{grid-column:10 / 13;grid-row:1;justify-self:end;font-size:clamp(56px,6vw,96px)}.hero-title{grid-column:1 / 11;grid-row:2}.hero-hair{grid-column:1 / 10;grid-row:3}.hero-sub{grid-column:1 / 6;grid-row:4;margin-top:8px}.hero-cta{grid-column:9 / 13;grid-row:4;justify-self:end;align-self:end}}.prob-layout{width:100%;max-width:var(--max);margin:0 auto;display:flex;flex-direction:column;gap:clamp(16px,2.6vh,28px)}.prob-top{display:grid;grid-template-columns:1fr;gap:clamp(18px,3vw,40px);align-items:start}.prob-head{display:flex;flex-direction:column;gap:clamp(12px,2vh,18px);min-width:0}.prob-hair{width:100%}.diagram-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.prob-svg{width:100%;min-width:640px;height:auto}.prob-status{display:flex;align-items:baseline;gap:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.ps-label{color:var(--mute-2);flex:none}.ps-stack{position:relative;display:block;min-height:1.3em;flex:1;overflow:hidden}.ps-item{position:absolute;left:0;top:0;white-space:nowrap;color:var(--mute)}.ps-danger{color:var(--danger)}@media(min-width:760px){.prob-status{font-size:var(--fs-mono);gap:18px}}@media(min-width:900px){.prob-top{grid-template-columns:minmax(0,1fr) auto;align-items:end}.prob-meta{justify-self:end;align-self:end}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
