@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2042050246a708c9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/0fdd058fab82a774-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/33553e7595b74ccf-s.p.woff2) format("woff2");unicode-range:u+00??,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:Bricolage Grotesque Fallback;src:local("Arial");ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.00%;size-adjust:105.43%}.__className_23d1a5{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.__variable_23d1a5{--font-display:"Bricolage Grotesque","Bricolage Grotesque Fallback"}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-body:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_8c25df{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_8c25df{--font-mono:"Geist Mono","Geist Mono Fallback"}:root{--bg:#EEF0F5;--surface:#FFFFFF;--ink:#10172A;--muted:#566079;--line:#D2D7E2;--accent:#3046FF;--accent-soft:#E1E5FF;--on-accent:#FFFFFF;--signal:#FF5A36;--shadow:rgba(16,23,42,.28);--display:var(--font-display),"Segoe UI",system-ui,sans-serif;--body:var(--font-body),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0D1120;--surface:#161B2D;--ink:#E7EBF5;--muted:#9AA3BB;--line:#283049;--accent:#7686FF;--accent-soft:#1F2652;--on-accent:#0D1120;--signal:#FF7752;--shadow:rgba(0,0,0,.55);color-scheme:dark}}:root[data-theme=dark]{--bg:#0D1120;--surface:#161B2D;--ink:#E7EBF5;--muted:#9AA3BB;--line:#283049;--accent:#7686FF;--accent-soft:#1F2652;--on-accent:#0D1120;--signal:#FF7752;--shadow:rgba(0,0,0,.55);color-scheme:dark}html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 64px);scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;overflow-x:clip;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0);z-index:10;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}a{color:inherit}img,svg{max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.wrap{max-width:1200px;margin:0 auto;padding:0 24px}h1,h2,h3,h4,h5{font-family:var(--display);margin:0;font-weight:700;letter-spacing:-.025em;line-height:1.05}h2{font-size:clamp(36px,5.2vw,64px);letter-spacing:-.035em;font-variation-settings:"opsz" 96}.lede{color:var(--muted);max-width:56ch;margin:14px 0 0}section{position:relative}.nav{position:fixed;top:0;left:0;right:0;z-index:20;padding-top:env(safe-area-inset-top,0);background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav-in{max-width:1200px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.mark{font-family:var(--display);font-weight:750;font-size:20px;text-decoration:none;letter-spacing:-.03em}.nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;font-size:15px}.nav ul a{text-decoration:none;color:var(--muted)}.nav ul a:hover{color:var(--ink)}.nav .hello{text-decoration:none;font-size:15px;font-weight:600;padding:8px 16px;border-radius:999px;background:var(--ink);color:var(--bg)}@media (max-width:760px){.nav ul{display:none}}.hero{min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:110px 0 70px}#net{position:absolute;inset:0;width:100%;height:100%;display:block}.hero-in{position:relative;z-index:1;width:100%;pointer-events:none}.hero-in a{pointer-events:auto}.status{display:inline-flex;align-items:center;gap:10px;font-size:15px;color:var(--muted);background:color-mix(in srgb,var(--surface) 80%,transparent);border:1px solid var(--line);padding:6px 14px;border-radius:999px;margin:0 0 26px}.status i{width:8px;height:8px;border-radius:50%;background:#22B573;box-shadow:0 0 0 0 rgba(34,181,115,.5);animation:pulse 2.2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(34,181,115,0)}to{box-shadow:0 0 0 0 rgba(34,181,115,0)}}#name{font-size:clamp(64px,13.5vw,196px);line-height:.86;letter-spacing:-.045em;font-weight:700;font-variation-settings:"opsz" 96,"wght" 700}#name span{display:inline-block;font-variation-settings:"opsz" 96,"wght" var(--w,700)}.stream{font-size:clamp(19px,2.1vw,26px);line-height:1.4;max-width:34ch;margin:30px 0 0;min-height:3em;font-family:var(--display);font-weight:450;letter-spacing:-.01em;font-variation-settings:"opsz" 24}.stream .caret{display:inline-block;width:.5em;height:1em;background:var(--accent);vertical-align:-.14em;margin-left:3px;animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.btn{display:inline-flex;align-items:center;padding:13px 22px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;border:1px solid var(--line);background:var(--surface);transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.hint{position:absolute;right:24px;bottom:28px;z-index:1;font-size:14px;color:var(--muted);max-width:22ch;text-align:right}@media (hover:none){.hint{display:none}}.impact{padding:40px 0 130px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden}.panel-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:18px 26px;border-bottom:1px solid var(--line);font-size:15px;color:var(--muted)}.live{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-weight:600}.live i{width:8px;height:8px;border-radius:50%;background:var(--signal);animation:pulse2 1.6s infinite}@keyframes pulse2{50%{opacity:.25}}.metrics{display:grid;grid-template-columns:repeat(4,1fr)}.metric{padding:28px 26px 24px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.metric:last-child{border-right:0}.m-val{font-family:var(--display);font-size:clamp(44px,4.6vw,64px);font-weight:700;letter-spacing:-.04em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric p{margin:0;color:var(--muted);font-size:15px;line-height:1.45;min-height:2.9em}.spark{width:100%;height:38px;margin-top:auto}.spark path{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s cubic-bezier(.3,.7,.2,1) .2s}.metric.on .spark path{stroke-dashoffset:0}@media (max-width:900px){.metrics{grid-template-columns:1fr 1fr}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media (max-width:480px){.metrics{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}.metric:last-child{border-bottom:0}}.work{padding:40px 0 110px}.work-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 40px;margin-bottom:34px}.work-head .lede{margin:0;max-width:36ch}.track{display:flex;gap:22px;padding:6px 24px 24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.track>*{scroll-snap-align:center}.work.pinned{padding:0}.work.pinned .pin{position:-webkit-sticky;position:sticky;top:0;height:100vh;height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-top:60px}.work.pinned .work-head{width:100%}.work.pinned .track{overflow:visible;will-change:transform;padding-left:max(24px,calc((100vw - 1152px)/2));scroll-snap-type:none}.progress{max-width:1152px;margin:20px auto 0;height:3px;background:var(--line);border-radius:3px;overflow:hidden;display:none}.work.pinned .progress{display:block;width:calc(100% - 48px)}.progress span{display:block;height:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(0)}.proj{flex:0 0 clamp(290px,31vw,400px);background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:26px 26px 22px;display:flex;flex-direction:column;gap:14px;transition:transform .25s ease-out,box-shadow .3s,border-color .3s;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.proj:focus-within,.proj:hover{border-color:var(--accent);box-shadow:0 26px 50px -30px var(--shadow)}.proj-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;color:var(--muted)}.award{font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);white-space:nowrap}.proj h3{font-size:31px;letter-spacing:-.03em}.proj-what{margin:0;font-size:16.5px;line-height:1.45}.pipe{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;padding:0;margin:4px 0 2px}.pipe li{position:relative;font-size:13px;padding:4px 11px;border-radius:999px;background:var(--bg);border:1px solid var(--line)}.pipe li:not(:last-child):after{content:"";position:absolute;left:100%;top:50%;width:16px;height:1px;background:var(--line)}.proj:focus-within .pipe li,.proj:hover .pipe li{animation:run .9s calc(var(--i) * .13s) both}@keyframes run{0%{background:var(--bg)}45%{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}to{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}}.proj-detail{margin:0;font-size:14.5px;color:var(--muted);line-height:1.5;padding-top:12px;border-top:1px dashed var(--line)}.proj-detail code{font-family:var(--mono);font-size:13px;color:var(--ink)}.tech{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:auto 0 0;padding:6px 0 0;font-size:13px;color:var(--muted)}.tech li:not(:last-child):after{content:","}.proj-link{font-size:15px;font-weight:600;color:var(--accent);text-decoration:none}.proj-link:hover{text-decoration:underline}.exp{padding:120px 0}.exp-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-gap:60px;gap:60px}.exp-side{position:-webkit-sticky;position:sticky;top:110px;align-self:start}.job{margin-top:34px;padding:20px 22px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.job h3{font-size:22px}.job p{margin:4px 0 0;color:var(--muted);font-size:15.5px}.job.edu{background:transparent}.flow{position:relative;padding-left:44px}.flow-line{position:absolute;left:11px;top:8px;bottom:8px;width:2px;background:var(--line);border-radius:2px}.flow-line span{position:absolute;inset:0;background:var(--accent);transform-origin:50% 0;transform:scaleY(0)}.node{position:relative;padding:0 0 46px;opacity:.38;transition:opacity .5s}.node:last-child{padding-bottom:0}.node:before{content:"";position:absolute;left:-41px;top:6px;width:16px;height:16px;border-radius:50%;background:var(--bg);border:2px solid var(--line);transition:all .4s}.node.on{opacity:1}.node.on:before{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 6px var(--accent-soft)}.node h4{font-size:24px;letter-spacing:-.02em}.node p{margin:8px 0 0;color:var(--muted);max-width:56ch}.node .num{font-family:var(--display);font-weight:700;color:var(--ink)}@media (max-width:860px){.exp-grid{grid-template-columns:1fr;gap:30px}.exp-side{position:static}}.badges{padding:120px 0 90px;overflow:hidden}.stage{position:relative;max-width:1260px;margin:40px auto 0;touch-action:pan-y}.rail{height:6px;border-radius:3px;background:var(--line);transform:translateY(-3px)}.peg,.rail{position:absolute}.peg{width:12px;height:12px;border-radius:50%;background:var(--ink);transform:translate(-50%,-50%);z-index:2}.pend{position:absolute;top:0;width:200px;margin-left:-100px;transform-origin:50% 0;display:flex;flex-direction:column;align-items:center;will-change:transform}.strap{width:16px;height:0;background:repeating-linear-gradient(0deg,var(--c) 0 7px,color-mix(in srgb,var(--c) 72%,#000) 7px 9px);border-radius:2px 2px 0 0;position:relative;flex:none}.strap:after{content:"";position:absolute;left:50%;bottom:-8px;width:24px;height:12px;margin-left:-12px;border-radius:3px;background:linear-gradient(180deg,#d9dde6,#8b93a5);box-shadow:0 1px 2px rgba(0,0,0,.3)}.card{position:relative;width:200px;height:292px;flex:none;transform-origin:50% 0;cursor:-webkit-grab;cursor:grab;touch-action:none;perspective:1000px;-webkit-tap-highlight-color:transparent;border-radius:14px}.card:active{cursor:-webkit-grabbing;cursor:grabbing}.card-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.8,.2,1)}.card.flipped .card-in{transform:rotateY(180deg)}.face{position:absolute;inset:0;border-radius:14px;background:var(--surface);border:1px solid var(--line);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;box-shadow:0 22px 40px -22px var(--shadow)}.front:before{content:"";position:absolute;top:10px;left:50%;width:42px;height:9px;margin-left:-21px;border-radius:5px;background:var(--bg);box-shadow:inset 0 1px 2px rgba(0,0,0,.25);z-index:3}.band{height:76px;background:var(--c);color:var(--on);padding:26px 16px 0;display:flex;justify-content:space-between;align-items:flex-start;font-weight:600;font-size:13.5px}.band b{font-family:var(--display);font-size:17px;letter-spacing:-.01em}.photo{width:78px;height:78px;margin:-30px auto 0;border-radius:18px;background:var(--surface);border:3px solid var(--surface);box-shadow:0 0 0 1px var(--line);display:grid;place-items:center;position:relative;z-index:1}.photo svg{width:42px;height:42px;stroke:var(--c);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.who{font-family:var(--display);font-weight:700;font-size:19px;margin-top:12px;letter-spacing:-.02em}.title,.who{text-align:center}.title{font-size:13.5px;color:var(--muted);padding:2px 16px 0;line-height:1.35}.foot{position:absolute;left:16px;right:16px;bottom:14px;display:flex;align-items:flex-end;justify-content:space-between}.bar{width:104px;height:26px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 4px,var(--ink) 4px 5px,transparent 5px 8px,var(--ink) 8px 11px,transparent 11px 12px);opacity:.85}.code{font-family:var(--mono);font-size:11px;color:var(--muted)}.glare,.holo{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .35s;z-index:4}.holo{background:repeating-linear-gradient(125deg,rgba(255,255,255,0) 0 3px,rgba(255,255,255,.12) 3px 4px),linear-gradient(115deg,transparent 22%,rgba(255,70,190,.42) 36%,rgba(70,215,255,.42) 48%,rgba(255,235,80,.42) 60%,rgba(120,255,160,.32) 70%,transparent 82%);background-size:100% 100%,260% 260%;background-position:0 0,calc(var(--mx,.5) * 100%) calc(var(--my,.5) * 100%);mix-blend-mode:hard-light}.glare{background:radial-gradient(circle at calc(var(--mx,.5) * 100%) calc(var(--my,.5) * 100%),rgba(255,255,255,.6),rgba(255,255,255,0) 45%)}.card.hot .holo{opacity:.75}.card.hot .glare{opacity:.55}.back{transform:rotateY(180deg);padding:30px 18px 16px;display:flex;flex-direction:column;gap:10px;border-top:6px solid var(--c)}.back h5{font-size:19px;letter-spacing:-.02em}.back p{margin:0;line-height:1.45;color:var(--muted)}.back a,.back p{font-size:13.5px}.back a{font-weight:600;color:var(--accent);text-decoration:none}.back small{margin-top:auto;font-size:12px}.back small,.leet{color:var(--muted)}.leet{font-size:15.5px;margin-top:20px}.leet b{color:var(--ink)}.skills{padding:110px 0}.space-wrap{margin-top:34px;border:1px solid var(--line);border-radius:22px;background:var(--surface);overflow-x:auto}#space{display:block;width:100%;min-width:720px;height:auto}#space .cl{font-family:var(--display);font-size:30px;font-weight:700;fill:var(--ink);opacity:.06;letter-spacing:-1px}#space .pt circle{transition:r .2s}#space .pt text{font-size:15px;fill:var(--ink);font-family:var(--body);transition:opacity .2s}#space .pt{cursor:pointer;outline:none}#space.focus .pt{opacity:.22}#space.focus .pt.hot{opacity:1}#space .pt.me circle{r:9}#space .pt.me text{font-weight:600}#space .lk{stroke:var(--ink);stroke-width:1.2;stroke-dasharray:4 4;opacity:.5}.space-info{margin:16px 0 0;min-height:1.6em;color:var(--muted)}.space-info b{color:var(--ink)}.k-agents{fill:var(--accent)}.k-ret{fill:#0FA3B1}.k-vis{fill:var(--signal)}.k-sp{fill:#C2399B}.k-be{fill:#2E9D5B}.k-data{fill:#B8860B}.k-lang{fill:#7B5BD6}.contact{padding:110px 0 80px}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:50px;gap:50px;align-items:start}.contact h2{max-width:14ch}.links{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-gap:10px;gap:10px}.links a{display:flex;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-decoration:none;font-weight:600;transition:border-color .2s,transform .2s}.links a span{color:var(--muted);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.links a:hover{border-color:var(--accent);transform:translateX(4px)}.term{background:#0B0F1C;color:#D7DDEC;border-radius:18px;overflow:hidden;font-family:var(--mono);font-size:14px;border:1px solid #232a40;box-shadow:0 30px 60px -36px var(--shadow)}.term-bar{display:flex;align-items:center;gap:7px;padding:12px 14px;background:#141A2C;color:#7D86A1;font-size:12.5px}.term-bar i{width:11px;height:11px;border-radius:50%;background:#384160}.term-bar i:first-child{background:#FF5F57}.term-bar i:nth-child(2){background:#FEBC2E}.term-bar i:nth-child(3){background:#28C840}.term-bar span{margin-left:8px}.term-out{height:300px;overflow-y:auto;padding:16px 18px 4px;white-space:pre-wrap;word-break:break-word}.term-out .cmd{color:#8F9BFF}.term-out .ok{color:#7BE3A8}.term-out a{color:#FFD27A}.term form{display:flex;gap:10px;padding:8px 18px 18px;align-items:center}.term label{color:#7BE3A8}.term input{flex:1 1;background:transparent;border:0;color:#fff;font:inherit;outline:none;caret-color:#7BE3A8;min-width:0}@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}footer{border-top:1px solid var(--line);padding:30px 0 40px;color:var(--muted);font-size:15px}footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}footer q{font-style:italic}@media (prefers-reduced-motion:reduce){.live i,.status i,.stream .caret{animation:none}.proj{transform:none!important}.proj:focus-within .pipe li,.proj:hover .pipe li{animation:none;background:var(--accent-soft);border-color:var(--accent)}.card-in,.spark path{transition:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-r{display:flex;align-items:center;gap:10px}.theme{width:36px;height:36px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);display:inline-grid;place-items:center;cursor:pointer;padding:0;transition:border-color .2s,transform .2s}.theme:hover{border-color:var(--accent);transform:translateY(-1px)}.theme svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.theme .sun{display:none}:root[data-theme=dark] .theme .sun{display:block}:root[data-theme=dark] .theme .moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme .sun{display:block}:root:not([data-theme=light]) .theme .moon{display:none}}.proj-links{display:flex;flex-wrap:wrap;gap:6px 18px}.node p a{color:var(--accent);text-decoration:none;font-weight:600}.node p a:hover{text-decoration:underline}.sk-groups{display:none;gap:12px;margin-top:24px}.sk-group{padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.sk-group h3{font-size:17px;display:flex;align-items:center;gap:9px;letter-spacing:-.01em}.sk-group h3 i{width:10px;height:10px;border-radius:50%}.sk-group ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0}.sk-group li{font-size:13.5px;padding:4px 11px;border-radius:999px;background:var(--bg);border:1px solid var(--line)}.i-agents{background:var(--accent)}.i-ret{background:#0FA3B1}.i-vis{background:var(--signal)}.i-sp{background:#C2399B}.i-be{background:#2E9D5B}.i-data{background:#B8860B}.i-lang{background:#7B5BD6}.list-only{display:none}@media (max-width:700px){.map-only,.space-info,.space-wrap{display:none}.sk-groups{display:grid}.list-only{display:inline}}.nf{min-height:100svh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;max-width:900px;margin:0 auto;padding:24px}.nf h1{font-size:clamp(44px,8vw,96px)}