@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root,[data-theme=dark]{--bg:#06091C;--bg-elev:#0A1030;--bg-card:rgba(255,255,255,0.04);--bg-card-solid:#0E142E;--bg-glass:rgba(8,12,32,0.55);--bg-mesh-a:#1F3FB8;--bg-mesh-b:#4F46E5;--bg-mesh-c:#22D3EE;--bg-mesh-d:#7C3AED;--border:rgba(140,170,255,0.10);--border-strong:rgba(140,170,255,0.18);--border-hover:rgba(140,170,255,0.30);--text:#E7ECFF;--text-strong:#FFFFFF;--text-muted:#9AA4C7;--text-faint:#7C89B3;--blue-100:#DDE7FF;--blue-300:#93B4FF;--blue-400:#6390FF;--blue-500:#2E58E0;--blue-600:#2E58E0;--cyan:#22D3EE;--violet:#8B5CF6;--pink:#F472B6;--lime:#A7F3D0;--accent:var(--blue-400);--accent-strong:var(--blue-300);--accent-grad:linear-gradient(135deg,#6390FF,#22D3EE 50%,#8B5CF6);--hairline:rgba(255,255,255,0.06);--shadow-sm:0 1px 2px rgba(2,6,23,0.4);--shadow-md:0 12px 32px rgba(2,6,23,0.4),0 1px 0 rgba(255,255,255,0.04) inset;--shadow-lg:0 30px 80px rgba(2,6,23,0.55),0 1px 0 rgba(255,255,255,0.05) inset;--glow:0 0 0 1px rgba(99,144,255,0.25),0 12px 40px rgba(59,109,255,0.35);--ice-rim:rgba(126,160,255,0.6);--ice-mid:rgba(70,105,210,0.85);--ice-tip:rgba(140,175,255,0.4);--nav-glow:rgba(255,214,107,0.10);--sparkle-on:1;--sparkle-play:running;--ice-body:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><linearGradient id='b' x2='0' y2='1'><stop stop-color='rgb(8,13,40)'/><stop offset='.4' stop-color='rgb(70,105,210)' stop-opacity='.85'/><stop offset='1' stop-color='rgb(140,175,255)' stop-opacity='.4'/></linearGradient><linearGradient id='h'><stop offset='.3' stop-color='white' stop-opacity='0'/><stop offset='.38' stop-color='white' stop-opacity='.55'/><stop offset='.47' stop-color='white' stop-opacity='0'/></linearGradient><path d='M0 0H100L88 20 72 44 58 74 50 100 42 72 27 42 11 18Z' fill='url(%23b)'/><path d='M0 0H100L88 20 72 44 58 74 50 100 42 72 27 42 11 18Z' fill='url(%23h)'/></svg>");color-scheme:dark}[data-theme=light]{--bg:#F4F7FF;--bg-elev:#FFFFFF;--bg-card:rgba(255,255,255,0.7);--bg-card-solid:#FFFFFF;--bg-glass:rgba(255,255,255,0.65);--bg-mesh-a:#BDD3FF;--bg-mesh-b:#93B4FF;--bg-mesh-c:#A7E8F5;--bg-mesh-d:#C4B5FD;--border:rgba(20,50,120,0.10);--border-strong:rgba(20,50,120,0.16);--border-hover:rgba(20,50,120,0.28);--text:#0B1230;--text-strong:#050817;--text-muted:#4B567E;--text-faint:#58658D;--blue-100:#DDE7FF;--blue-300:#6390FF;--blue-400:#3B6DFF;--blue-500:#2E58E0;--blue-600:#1E40AF;--cyan:#0891B2;--violet:#7C3AED;--pink:#DB2777;--lime:#047857;--accent:var(--blue-400);--accent-strong:var(--blue-500);--accent-grad:linear-gradient(135deg,#3B6DFF,#06B6D4 55%,#8B5CF6);--hairline:rgba(20,50,120,0.06);--shadow-sm:0 1px 2px rgba(20,30,80,0.06);--shadow-md:0 12px 32px rgba(20,50,120,0.10),0 1px 0 rgba(255,255,255,0.6) inset;--shadow-lg:0 30px 80px rgba(20,50,120,0.15);--glow:0 0 0 1px rgba(59,109,255,0.20),0 12px 40px rgba(59,109,255,0.18);--ice-rim:rgba(120,165,245,0.9);--ice-mid:rgba(150,190,250,0.9);--ice-tip:rgba(110,160,245,0.45);--nav-glow:rgba(245,158,11,0.22);--sparkle-on:0;--sparkle-play:paused;--ice-body:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><linearGradient id='b' x2='0' y2='1'><stop stop-color='rgb(251,252,255)'/><stop offset='.4' stop-color='rgb(150,190,250)' stop-opacity='.9'/><stop offset='1' stop-color='rgb(110,160,245)' stop-opacity='.45'/></linearGradient><linearGradient id='h'><stop offset='.3' stop-color='white' stop-opacity='0'/><stop offset='.38' stop-color='white' stop-opacity='.55'/><stop offset='.47' stop-color='white' stop-opacity='0'/></linearGradient><path d='M0 0H100L88 20 72 44 58 74 50 100 42 72 27 42 11 18Z' fill='url(%23b)'/><path d='M0 0H100L88 20 72 44 58 74 50 100 42 72 27 42 11 18Z' fill='url(%23h)'/></svg>");color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-inter),system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:400;font-feature-settings:"ss01","cv08","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.011em;transition:background .32s ease,color .32s ease;overflow-x:hidden}a{text-decoration:none}a,button{color:inherit}button{font:inherit;cursor:pointer;border:0;background:none}img{display:block;max-width:100%}::selection{background:rgba(99,144,255,.35);color:var(--text-strong)}.particles{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;pointer-events:none;opacity:.7}[data-theme=light] .particles{opacity:.45}.about,.experience,.footer,.gh,.hero,.nav,.projects{z-index:2}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;display:inline-flex;align-items:center;gap:8px}.eyebrow:before{content:"";width:18px;height:1px;background:currentColor;opacity:.5}.h-display{font-size:clamp(48px,7vw,96px);line-height:.98;letter-spacing:-.04em}.h-display,.h-section{font-weight:700;color:var(--text-strong);margin:0}.h-section{font-size:clamp(36px,4.4vw,60px);line-height:1.02;letter-spacing:-.035em}.lede{font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:var(--text-muted);max-width:560px;margin:0;font-weight:400}.gradient-text{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.mono{font-family:var(--font-mono),ui-monospace,"SF Mono",Menlo,monospace}.shell{max-width:1153px;margin:0 auto;padding:0 32px}.about>.shell,.experience>.shell,.footer>.shell,.gh>.shell,.projects>.shell{max-width:min(1153px,80%)}section{position:relative}.about,.experience,.footer,.gh,.projects{content-visibility:auto}.about{contain-intrinsic-size:900px}.experience{contain-intrinsic-size:1200px}.projects{contain-intrinsic-size:2600px}.gh{contain-intrinsic-size:360px}.footer{contain-intrinsic-size:900px}.hairline{height:1px;background:linear-gradient(90deg,transparent,var(--border-strong) 20%,var(--border-strong) 80%,transparent);margin:0}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:5px;font-size:14.5px;font-weight:500;letter-spacing:-.005em;transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .2s ease,border-color .16s ease;white-space:nowrap;border:1px solid transparent}.btn-primary{background:var(--text-strong);color:var(--bg)}[data-theme=dark] .btn-primary{background:#FFFFFF;color:#06091C;box-shadow:0 0 0 1px rgba(255,255,255,0),0 6px 20px rgba(99,144,255,0)}[data-theme=dark] .btn-primary:hover{box-shadow:0 0 0 1px rgba(99,144,255,.5),0 10px 30px rgba(59,109,255,.35);transform:translateY(-1px)}[data-theme=light] .btn-primary{background:#050817;color:#FFFFFF}[data-theme=light] .btn-primary:hover{background:#1E40AF;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--border-strong)}.btn-ghost:hover{border-color:var(--border-hover);background:var(--bg-card)}.btn-accent{background:var(--blue-600);color:#FFFFFF}.btn-accent:hover{background:var(--blue-600);box-shadow:var(--glow);transform:translateY(-1px)}.btn .arrow,.footer-col a .arrow,.sec-head-link .arrow{display:inline-flex;flex-shrink:0;color:currentColor;transition:transform .2s ease}.btn:hover .arrow,.footer-col a:hover .arrow,.sec-head-link:hover .arrow{transform:translateX(3px)}.nav{position:fixed;top:16px;left:0;right:0;z-index:100;display:flex;justify-content:center;pointer-events:none}.nav-inner{position:relative;pointer-events:auto;display:flex;align-items:center;gap:24px;padding:8px 8px 8px 20px;background:var(--bg-glass);backdrop-filter:saturate(140%) blur(20px);-webkit-backdrop-filter:saturate(140%) blur(20px);border:1px solid var(--border-strong);border-radius:5px;box-shadow:inset 0 -1.5px 0 var(--ice-rim),var(--shadow-md);min-width:720px}.nav-logo{display:inline-flex;align-items:center;gap:10px;font-weight:600;letter-spacing:-.02em;color:var(--text-strong)}.nav-logo-img{width:28px;height:28px;border-radius:5px;object-fit:cover;box-shadow:var(--glow)}.nav-links{display:flex;align-items:center;gap:4px;margin-left:auto}.nav-link{padding:8px 14px;font-size:14px;font-weight:500;color:var(--text-muted);border-radius:5px;transition:color .16s ease,background .16s ease}.nav-link:hover{background:var(--bg-card)}.nav-link.active,.nav-link:hover{color:var(--text-strong)}.nav-inner,.nav-peek{--nav-paint:color-mix(in srgb,var(--bg-elev) 60%,var(--bg))}.theme-toggle-slot{position:relative;display:inline-flex;width:38px;height:38px;flex-shrink:0}.theme-toggle-slot>.theme-toggle{z-index:2}.theme-toggle-slot:before{content:"";z-index:-1;left:50%;top:50%;width:180px;height:64px;translate:-50% -50%;background:radial-gradient(closest-side,var(--nav-glow),transparent)}.nav-ice,.theme-toggle-slot:before{position:absolute;pointer-events:none}.nav-ice{top:100%;left:-1px;right:-1px;height:0}.nav-icicle{position:absolute;top:-1px;left:var(--x);width:var(--w);height:var(--h);transform-origin:top}.nav-icicle:after,.nav-icicle:before{content:"";position:absolute;inset:0;background:var(--ice-body) 0 0 /100% 100% no-repeat}.nav-icicle:after{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><linearGradient id='g' x2='0' y2='1'><stop offset='.2' stop-color='white' stop-opacity='0'/><stop offset='.45' stop-color='white' stop-opacity='.9'/><stop offset='.7' stop-color='white' stop-opacity='0'/></linearGradient><path d='M0 0H100L88 20 72 44 58 74 50 100 42 72 27 42 11 18Z' fill='url(%23g)'/></svg>");opacity:0;animation:nav-icicle-glint 7s ease-in-out var(--gd) infinite}.nav-icicle.i1{--x:5%;--w:9px;--h:13px;--gd:0.5s}.nav-icicle.i2{--x:6.6%;--w:6px;--h:7px;--gd:3.9s}.nav-icicle.i3{--x:18%;--w:12px;--h:22px;--gd:1.2s}.nav-icicle.i4{--x:20.1%;--w:7px;--h:10px;--gd:5.4s}.nav-icicle.i5{--x:33%;--w:8px;--h:15px;--gd:2.3s}.nav-icicle.i6{--x:46%;--w:13px;--h:26px;--gd:0.8s}.nav-icicle.i7{--x:48.2%;--w:6px;--h:9px;--gd:4.6s}.nav-icicle.i8{--x:60%;--w:9px;--h:17px;--gd:3.1s}.nav-icicle.i9{--x:73%;--w:11px;--h:20px;--gd:1.7s}.nav-icicle.i10{--x:75.1%;--w:6px;--h:8px;--gd:6.2s}.nav-icicle.i11{--x:90%;--w:10px;--h:14px;--gd:2.8s}@keyframes nav-icicle-glint{0%,14%,to{opacity:0}6%{opacity:1}}.nav-sparkle{position:absolute;z-index:-1;top:var(--y);left:var(--x);width:var(--s);height:var(--s);background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path d='M50 0 60 40 100 50 60 60 50 100 40 60 0 50 40 40Z' fill='rgb(201,214,255)'/></svg>") 0 0 /100% 100% no-repeat;opacity:var(--sparkle-on);pointer-events:none;animation:nav-sparkle var(--tw) ease-in-out var(--tw-delay) infinite;animation-play-state:var(--sparkle-play)}.nav-sparkle.k1{--x:29%;--y:22%;--s:7px;--d:200ms;--tw:1.8s;--tw-delay:-0.3s}.nav-sparkle.k2{--x:35%;--y:64%;--s:5px;--d:250ms;--tw:2.4s;--tw-delay:-1.2s;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path d='M50 0 60 40 100 50 60 60 50 100 40 60 0 50 40 40Z' fill='rgb(242,193,78)'/></svg>")}.nav-sparkle.k3{--x:42%;--y:28%;--s:4px;--d:280ms;--tw:1.6s;--tw-delay:-0.8s}.nav-sparkle.k4{--x:48%;--y:66%;--s:6px;--d:230ms;--tw:2.1s;--tw-delay:-1.5s;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path d='M50 0 60 40 100 50 60 60 50 100 40 60 0 50 40 40Z' fill='rgb(126,160,255)'/></svg>")}.nav-sparkle.k5{--x:53%;--y:20%;--s:5px;--d:180ms;--tw:2.7s;--tw-delay:-0.5s}.nav-sparkle.k6{--x:22%;--y:72%;--s:4px;--d:320ms;--tw:1.9s;--tw-delay:-1.1s;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path d='M50 0 60 40 100 50 60 60 50 100 40 60 0 50 40 40Z' fill='rgb(242,193,78)'/></svg>")}@keyframes nav-sparkle{0%,to{rotate:0deg;transform:scale(1)}50%{rotate:45deg;transform:scale(.6)}}.nav-peek{--peek-spring:cubic-bezier(0.34,1.56,0.64,1);--peek-spring:linear(0,0.095,0.322,0.599,0.861,1.067,1.196,1.25,1.243,1.194,1.126,1.057,0.999,0.959,0.939,0.936,0.946,0.962,0.98,0.996,1.007,1.014,1.016,1.015,1);position:absolute;inset:-1px;z-index:1;padding:inherit;gap:inherit;pointer-events:none}.nav-peek-row{-webkit-clip-path:inset(0 50% 0 50%);clip-path:inset(0 50% 0 50%)}.nav-peek-bar,.nav-peek-row{position:absolute;inset:0;padding:inherit;gap:inherit}.nav-peek-bar{will-change:transform;display:flex;align-items:center;border:1px solid var(--border-strong);border-radius:5px;background:var(--nav-paint);box-shadow:inset 0 -1.5px 0 var(--ice-rim);isolation:isolate}.nav-peek .btn-primary{transform:none}.nav-peek[data-theme=dark] .btn-primary{background:#FFFFFF;color:#06091C}.nav-peek[data-theme=light] .btn-primary{background:#050817;color:#FFFFFF}.nav-peek>.nav-ice{left:0;right:0;top:calc(100% - 1px)}.nav-peek .nav-icicle{transform:scaleY(0);transition:transform .14s ease-in}.nav-peek[data-peek=on] .nav-icicle{transform:none;transition:transform .42s cubic-bezier(.2,.9,.3,1) var(--dd,.12s)}.nav-peek:not([data-peek=on]) .nav-icicle:after{animation-play-state:paused}.nav-inner>.nav-ice .nav-icicle:before{transition:opacity .12s ease}.nav-inner:has(>.nav-peek[data-peek=on])>.nav-ice .nav-icicle:before{opacity:0;transition:opacity .16s ease var(--dd,.12s)}.nav-inner:has(>.nav-peek[data-peek=on])>.nav-ice .nav-icicle:after{visibility:hidden;transition:visibility 0s var(--dd,.12s)}.nav-peek .nav-sparkle{opacity:0;scale:.3;transition:opacity .15s ease,scale .15s ease;animation-play-state:paused}.nav-peek[data-peek=on] .nav-sparkle{opacity:var(--sparkle-on);scale:1;transition:opacity .25s ease var(--d),scale .6s var(--peek-spring) var(--d);animation-play-state:var(--sparkle-play)}@media (prefers-reduced-motion:reduce){.nav-peek{display:none}.nav-icicle:after,.nav-sparkle{animation:none}}.theme-toggle{--spring:cubic-bezier(0.34,1.56,0.64,1);--spring:linear(0,0.095,0.322,0.599,0.861,1.067,1.196,1.25,1.243,1.194,1.126,1.057,0.999,0.959,0.939,0.936,0.946,0.962,0.98,0.996,1.007,1.014,1.016,1.015,1);position:relative;width:38px;height:38px;border-radius:5px;background:var(--bg-card);border:1px solid var(--border-strong);display:inline-flex;align-items:center;justify-content:center;color:var(--text);overflow:visible;transition:border-color .22s ease,background .22s ease,scale .16s ease}.theme-toggle:focus-visible,.theme-toggle:hover{border-color:color-mix(in srgb,var(--theme-liquid) 55%,transparent)}.theme-toggle:hover{animation:theme-jelly .56s ease-out}.theme-toggle:active{scale:.92}.theme-toggle.is-to-dark{--theme-liquid:#FFD66B;--theme-glow:rgba(255,214,107,0.55);--theme-chip-border:rgba(140,170,255,0.30);color:#E7ECFF;background:#06091C;border-color:var(--theme-chip-border)}.theme-toggle.is-to-light{--theme-liquid:#F59E0B;--theme-glow:rgba(245,158,11,0.45);--theme-chip-border:rgba(20,50,120,0.28);color:#0B1230;background:#F4F7FF;border-color:var(--theme-chip-border)}@keyframes theme-jelly{0%{transform:none}30%{transform:scale(1.12,.9)}50%{transform:scale(.94,1.06)}70%{transform:scale(1.03,.98)}to{transform:none}}.theme-icon{position:relative;z-index:1;width:16px;height:16px;display:grid}.theme-glyph{grid-area:1/1;display:grid}.theme-toggle{--tilt:0deg}.theme-toggle.is-to-light:is(:hover,:focus-visible){--tilt:45deg}.theme-toggle.is-to-dark:is(:hover,:focus-visible){--tilt:-18deg}.theme-glyph,.theme-liquid-level,.theme-liquid-mask{transition:rotate .3s ease}.theme-toggle:is(:hover,:focus-visible) :is(.theme-glyph,.theme-liquid-mask,.theme-liquid-level){transition:rotate .9s var(--spring)}.theme-glyph,.theme-liquid-mask{rotate:var(--tilt)}.theme-liquid{grid-area:1/1;position:relative;filter:drop-shadow(0 0 1px var(--theme-glow))}.theme-liquid-mask{position:absolute;inset:0;-webkit-mask:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2m-7.07-17.07 1.41 1.41m11.32 11.32 1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/></svg>") 0 0 /100% 100% no-repeat;mask:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2m-7.07-17.07 1.41 1.41m11.32 11.32 1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/></svg>") 0 0 /100% 100% no-repeat}.theme-toggle.is-to-dark .theme-liquid-mask{-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/></svg>")}.theme-liquid-level{position:absolute;inset:0;transform:translateY(-30px);rotate:calc(var(--tilt) * -1)}.theme-liquid-wave{position:absolute;top:0;left:-32px;width:80px;height:46px;background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 46'><path fill='%23F59E0B' d='M0 2C2 2 2.5 0 4 0S6 2 8 2 10.5 0 12 0 14 2 16 2V25C14 25 13.5 29.5 12 29.5S10 25 8 25 5.5 27.5 4 27.5 2 25 0 25Z'/></svg>") 0 0 /16px 46px repeat-x;animation:theme-roll 1.3s linear infinite paused}.theme-toggle.is-to-dark .theme-liquid-wave{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 46'><path fill='%23FFD66B' d='M0 2C2 2 2.5 0 4 0S6 2 8 2 10.5 0 12 0 14 2 16 2V25C14 25 13.5 29.5 12 29.5S10 25 8 25 5.5 27.5 4 27.5 2 25 0 25Z'/></svg>")}.theme-toggle:is(:hover,:focus-visible) .theme-liquid-wave{animation-play-state:running}@keyframes theme-roll{to{transform:translateX(16px)}}.theme-sky{position:absolute;inset:0;pointer-events:none}.theme-cloud,.theme-star{position:absolute;opacity:0;transition:opacity .16s ease,transform .22s ease}.theme-star{display:flex;fill:#7EA0FF;transform:scale(.3) translateY(2px)}.theme-star svg{filter:drop-shadow(0 0 1px #fff);animation:theme-twinkle var(--tw) ease-in-out var(--tw-delay) infinite paused}.theme-star.s1{top:2px;left:3px;--d:180ms;--tw:1.7s;--tw-delay:-0.4s}.theme-star.s2{top:7px;right:2px;fill:#F2C14E;--d:280ms;--tw:2.3s;--tw-delay:-1.1s}.theme-star.s3{bottom:5px;right:5px;--d:360ms;--tw:1.9s;--tw-delay:-0.2s}.theme-star.s4{bottom:3px;left:7px;fill:#C9D6FF;--d:460ms;--tw:2.6s;--tw-delay:-1.6s}.theme-toggle.is-to-dark:is(:hover,:focus-visible) .theme-star{opacity:1;transform:none;transition:opacity .25s ease var(--d),transform .7s var(--spring) var(--d)}.theme-toggle.is-to-dark:is(:hover,:focus-visible) .theme-star svg{animation-play-state:running}@keyframes theme-twinkle{0%,to{transform:none}50%{transform:rotate(36deg) scale(.5)}}.theme-cloud{display:flex;fill:#fff;transform:translateY(3px) scale(.8)}.theme-cloud svg{animation:theme-drift var(--dr) ease-in-out infinite alternate paused}.theme-cloud.c1{top:1px;left:-2px;--d:160ms;--dr:2.4s}.theme-cloud.c2{bottom:4px;right:-1px;--d:300ms;--dr:3.1s}.theme-toggle.is-to-light:is(:hover,:focus-visible) .theme-cloud{opacity:.95;transform:none;transition:opacity .25s ease var(--d),transform .7s var(--spring) var(--d)}.theme-toggle.is-to-light:is(:hover,:focus-visible) .theme-cloud svg{animation-play-state:running}@keyframes theme-drift{0%{transform:translateX(-1.5px)}to{transform:translateX(2px)}}@media (prefers-reduced-motion:reduce){.theme-toggle:hover{animation:none}.theme-liquid,.theme-sky{display:none}}html.theme-painting,html.theme-painting *,html.theme-painting :after,html.theme-painting :before{transition:none!important}html::view-transition-old(root){animation:theme-paint-hold var(--paint-ms,.7s) linear both;mix-blend-mode:normal}html::view-transition-new(root){animation:theme-paint-hold var(--paint-ms,.7s) linear both;mix-blend-mode:normal;mask-image:var(--paint-mask);-webkit-mask-image:var(--paint-mask);mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-position:0 0;-webkit-mask-position:0 0;mask-mode:alpha}@keyframes theme-paint-hold{0%{opacity:1}to{opacity:1}}.mesh{position:absolute;inset:-10% -10% auto -10%;height:1100px;pointer-events:none;z-index:0;overflow:hidden}.mesh .blob,.mesh:after,.mesh:before{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.7;mix-blend-mode:screen}[data-theme=light] .mesh .blob,[data-theme=light] .mesh:after,[data-theme=light] .mesh:before{mix-blend-mode:multiply;opacity:.55}.mesh:before{width:720px;height:720px;top:-120px;left:-80px;background:radial-gradient(circle,var(--bg-mesh-b),transparent 70%);animation:float1 22s ease-in-out infinite}.mesh:after{width:620px;height:620px;top:80px;right:-80px;background:radial-gradient(circle,var(--bg-mesh-c),transparent 70%);animation:float2 28s ease-in-out infinite}.mesh .blob{width:540px;height:540px;top:320px;left:40%;background:radial-gradient(circle,var(--bg-mesh-d),transparent 70%);animation:float3 32s ease-in-out infinite}@keyframes float1{0%,to{transform:translate(0)}50%{transform:translate(120px,80px)}}@keyframes float2{0%,to{transform:translate(0)}50%{transform:translate(-80px,120px)}}@keyframes float3{0%,to{transform:translate(0)}50%{transform:translate(60px,-90px)}}.grain{inset:0;opacity:.5;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");z-index:1}.grain,.mesh-fade{position:absolute;pointer-events:none}.mesh-fade{inset:auto 0 0 0;height:240px;background:linear-gradient(180deg,transparent,var(--bg) 90%);z-index:2}.hero{padding:168px 0 96px;position:relative;z-index:1}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:0;gap:0;align-items:center}.hero-left{position:relative;z-index:4;width:calc(100% + 42%);pointer-events:none}.hero-left a,.hero-left button{pointer-events:auto}.hero-name{display:inline-block;white-space:nowrap}.hero h1{margin-top:22px;line-height:1.05;overflow:visible;padding-bottom:.04em}.hero h1 .role{display:flex;align-items:baseline;gap:.28em;line-height:1.15;padding-bottom:.08em;white-space:nowrap;overflow:visible;min-height:1.15em}.hero-typed{display:inline-block;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;white-space:nowrap;padding-bottom:.05em}.hero-typed:after{content:"";display:inline-block;width:.06em;height:.78em;background:var(--accent);margin-left:.06em;vertical-align:-.02em;animation:blink .95s steps(2) infinite;border-radius:2px;-webkit-text-fill-color:var(--accent)}@keyframes blink{50%{opacity:0}}.hero-sub{margin:8px 0 72px;max-width:520px;font-size:clamp(15px,1.15vw,17px)}.hero-ctas{gap:12px}.hero-ctas,.hero-meta{display:flex;flex-wrap:wrap}.hero-meta{margin-top:20px;gap:32px;color:var(--text-muted);font-size:13.5px}.hero-meta .meta-item{display:inline-flex;align-items:center;gap:8px}.hero-meta .pulse{position:relative;width:8px;height:8px;border-radius:999px;background:#22D3EE}.hero-meta .pulse:after{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(34,211,238,.6);animation:pulse 2.2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(3.5);opacity:0}}.hero-right{position:relative;z-index:2;height:540px}.float-card{position:absolute;background:var(--bg-card-solid);border:1px solid var(--border-strong);border-radius:5px;box-shadow:var(--shadow-lg);padding:18px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}[data-theme=dark] .float-card{background:linear-gradient(180deg,rgba(14,20,46,.95),rgba(8,12,32,.95))}[data-theme=light] .float-card{background:rgba(255,255,255,.92)}.card-code{top:60px;left:0;width:460px;padding:0;overflow:hidden;transform:rotate(-1deg);animation:floaty 8s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(-1deg)}}.card-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-muted)}.card-header .tab-dots{display:inline-flex;gap:6px;margin-right:8px}.card-header .tab-dots span{width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.12)}[data-theme=light] .card-header .tab-dots span{background:rgba(20,50,120,.12)}.card-header .tab-dots span:first-child{background:#FF5F57}.card-header .tab-dots span:nth-child(2){background:#FEBC2E}.card-header .tab-dots span:nth-child(3){background:#28C840}.code-body{padding:18px 20px 22px;font-family:var(--font-mono),ui-monospace,monospace;font-size:13px;line-height:1.7;white-space:pre}.code-body .ln{color:var(--text-faint);padding-right:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tok-k{color:#C792EA}.tok-fn{color:#82AAFF}.tok-s{color:#C3E88D}.tok-c{color:var(--text-faint);font-style:italic}.tok-n{color:#F78C6C}.tok-p{color:#89DDFF}[data-theme=light] .tok-k{color:#7C3AED}[data-theme=light] .tok-fn{color:#2563EB}[data-theme=light] .tok-s{color:#047857}[data-theme=light] .tok-n{color:#DB2777}[data-theme=light] .tok-p{color:#0E7490}.card-now{top:0;right:0;width:260px;display:flex;align-items:center;gap:12px;animation:floaty2 9s ease-in-out infinite}@keyframes floaty2{0%,to{transform:translateY(0) rotate(2deg)}50%{transform:translateY(-8px) rotate(2deg)}}.now-cover{width:44px;height:44px;border-radius:5px;background:linear-gradient(135deg,#22D3EE,#8B5CF6);position:relative;flex-shrink:0}.now-album-art{width:100%;height:100%;object-fit:cover;border-radius:3px}.now-cover:after{content:"♪";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.95);font-size:18px}.now-cover:has(img):after{display:none}.now-text{min-width:0}.now-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.now-title{font-size:13.5px;font-weight:500;color:var(--text-strong);margin-top:2px}.now-artist,.now-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.now-artist{font-size:11px;color:var(--text-muted);margin-top:1px}.now-bars{display:flex;gap:2px;align-items:flex-end;height:14px;margin-top:4px}.now-bars span{width:2px;height:14px;background:var(--accent);transform-origin:bottom;animation:eq 1s ease-in-out infinite}.now-bars span:first-child{animation-delay:0s}.now-bars span:nth-child(2){animation-delay:.15s}.now-bars span:nth-child(3){animation-delay:.3s}.now-bars span:nth-child(4){animation-delay:.45s}@keyframes eq{0%,to{transform:scaleY(.2857)}50%{transform:scaleY(1)}}.card-current{bottom:40px;left:60px;width:280px;display:flex;align-items:center;gap:12px;animation:floaty3 10s ease-in-out infinite}@keyframes floaty3{0%,to{transform:translateY(0) rotate(1deg)}50%{transform:translateY(-6px) rotate(1deg)}}.current-logo{width:40px;height:40px;border-radius:5px;background:linear-gradient(135deg,#1F3FB8,#22D3EE);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:16px;flex-shrink:0}[data-theme=light] .current-logo{background:linear-gradient(135deg,#3B6DFF,#06B6D4);color:#fff}.current-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.current-role{font-size:13.5px;color:var(--text-strong);font-weight:500;margin-top:2px}.current-where{font-size:12px;color:var(--text-muted);margin-top:2px}.card-stat{top:280px;right:30px;width:230px;animation:floaty4 11s ease-in-out infinite}@keyframes floaty4{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(-2deg)}}.stat-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.stat-row:last-child{margin-bottom:0}.stat-label{font-size:12px;color:var(--text-muted)}.stat-num{font-size:18px;font-weight:600;color:var(--text-strong);letter-spacing:-.02em}.stat-num small{font-size:11px;color:var(--accent);font-weight:500;margin-left:4px}.sec-head{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:56px}.sec-head .lede{margin-top:0;max-width:600px}.sec-head-link{color:var(--text-muted);font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:color .16s ease}.sec-head-link:hover{color:var(--text-strong)}.about{padding:120px 0;position:relative}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-gap:80px;gap:80px;align-items:start}.about-copy h2{margin-bottom:24px}.about-copy .lede{font-size:clamp(15px,1.2vw,18px);line-height:1.6}.about-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.about-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:5px;background:var(--bg-card);border:1px solid var(--border-strong);font-size:13.5px;color:var(--text);transition:all .2s ease}.about-tag:hover{border-color:var(--border-hover);transform:translateY(-2px)}.about-tag .ico{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center}.collage{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:62px;grid-gap:8px;gap:8px;overflow:visible}.collage-cell{border-radius:5px;overflow:hidden;position:relative;border:1px solid var(--border);background:var(--bg-card-solid);transition:transform .26s ease,box-shadow .26s ease}.collage-cell:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);z-index:3}.collage-cell img,.collage-cell video{width:100%;height:100%;object-fit:cover;display:block}.c-1{grid-column:1/4;grid-row:1/4}.c-2{grid-column:4/7;grid-row:1/3}.c-3{grid-column:4/6}.c-3,.c-4{grid-row:3/5}.c-4{grid-column:6/7}.c-5{grid-column:1/4;grid-row:4/7}.c-6{grid-column:4/7;grid-row:5/7}.c-7{grid-column:1/3}.c-7,.c-8{grid-row:7/9}.c-8{grid-column:3/6}.c-9{grid-column:6/7;grid-row:7/9}.c-2:hover{transform:rotate(1.5deg) translateY(-4px)}.c-7:hover{transform:rotate(-2deg) translateY(-4px)}.c-9:hover{transform:rotate(1.5deg) translateY(-4px)}.experience{padding:120px 0;position:relative}.exp-list{position:relative;display:flex;flex-direction:column;gap:14px}.exp-card{position:relative;border:1px solid var(--border);border-radius:16px;background:var(--bg-card);overflow:hidden;transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease,background .22s ease}.exp-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.exp-card[open]{border-color:var(--border-strong);background:var(--bg-card-solid);box-shadow:var(--shadow-lg)}.exp-head{width:100%;list-style:none;display:grid;grid-template-columns:auto 1fr auto;grid-gap:22px;gap:22px;align-items:center;padding:24px 26px;text-align:left;background:none;border:0;cursor:pointer;color:inherit;font:inherit}.exp-head::-webkit-details-marker{display:none}.exp-head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:16px}.exp-rail{position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0 3px 3px 0;background:var(--accent-grad);transform:scaleY(0);transform-origin:top;opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease}.exp-card:hover .exp-rail{transform:scaleY(.5);opacity:.6}.exp-card[open] .exp-rail{transform:scaleY(1);opacity:1}.exp-logo{width:56px;height:56px;border-radius:9px;background:var(--bg-card-solid);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;overflow:hidden}.exp-logo.o{background:linear-gradient(135deg,#16A34A,#059669);color:#fff}.exp-logo.v{background:linear-gradient(135deg,#00B86B,#00875A);color:#fff}.exp-logo.q{background:linear-gradient(135deg,#1A1A1A,#333);color:#fff}.exp-logo.b{background:linear-gradient(135deg,#1F2937,#111827);color:#fff}.exp-logo.f{background:linear-gradient(135deg,#2F3D34,#1A241D);color:#fff}.exp-meta{min-width:0}.exp-top{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.exp-company{font-size:21px;font-weight:600;color:var(--text-strong);letter-spacing:-.02em}.exp-date{font-family:var(--font-mono),ui-monospace,monospace;font-size:11.5px;color:var(--text-faint);letter-spacing:.04em}.exp-role{display:block;font-size:14.5px;color:var(--text-muted);margin-top:5px}.exp-loc{font-size:13px;color:var(--text-faint);margin-top:6px;display:inline-flex;align-items:center;gap:6px}.exp-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.exp-tag{padding:3px 9px;border-radius:6px;border:1px solid var(--border);font-size:11.5px;font-family:var(--font-mono),ui-monospace,monospace}.exp-tag,.exp-toggle{background:var(--bg-card);color:var(--text-muted)}.exp-toggle{align-self:center;flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);font-size:12.5px;font-weight:500;white-space:nowrap;transition:color .18s ease,border-color .18s ease,background .18s ease}.exp-card:hover .exp-toggle,.exp-card[open] .exp-toggle{color:var(--accent-strong);border-color:var(--border-hover)}.exp-card[open] .exp-toggle{background:transparent}.exp-chevron{color:currentColor;flex-shrink:0;transition:transform .28s ease}.exp-card[open] .exp-chevron{transform:rotate(180deg)}.exp-toggle-open{display:none}.exp-card[open] .exp-toggle-open{display:inline}.exp-card[open] .exp-toggle-closed{display:none}.exp-card::details-content{display:grid;grid-template-rows:0fr;overflow:clip;transition:grid-template-rows .2s ease,content-visibility allow-discrete .2s;transition-behavior:allow-discrete}.exp-card[open]::details-content{grid-template-rows:1fr}.exp-panel,.exp-panel-inner{min-height:0;overflow:hidden}.exp-panel-inner{opacity:0;transition:opacity .2s ease}.exp-card[open] .exp-panel-inner{opacity:1}.exp-panel ul{list-style:none;padding:4px 26px 26px 94px;margin:0;display:flex;flex-direction:column;gap:12px}.exp-panel li{display:grid;grid-template-columns:auto 1fr;align-items:start;grid-gap:10px;gap:10px;font-size:14.5px;color:var(--text);line-height:1.55}.exp-marker{display:block;width:14px;height:14px;margin-top:.28em;color:var(--accent);flex-shrink:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.exp-card,.exp-card::details-content,.exp-chevron,.exp-panel,.exp-panel-inner,.exp-rail,.exp-toggle{transition:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.projects{padding:120px 0;position:relative}.bento{column-count:3;column-gap:16px}.proj{position:relative;background:var(--bg-card-solid);border:1px solid var(--border);border-radius:5px;padding:28px;overflow:hidden;transition:all .26s ease;page-break-inside:avoid;break-inside:avoid;margin-bottom:16px}.proj,.proj-content{display:flex;flex-direction:column}.proj-content{flex:1 1;padding-top:20px}[data-theme=dark] .proj{background:linear-gradient(180deg,rgba(14,20,46,.6),rgba(8,12,32,.6))}[data-theme=light] .proj{background:rgba(255,255,255,.85)}.proj:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-md)}.proj-tag{position:absolute;top:22px;right:22px;font-size:11px;font-family:var(--font-mono),ui-monospace,monospace;color:var(--text-faint);letter-spacing:.04em}.proj h3{font-size:22px;font-weight:600;letter-spacing:-.022em;color:var(--text-strong);margin:0 0 8px;padding-right:120px}.proj p{font-size:14px;color:var(--text-muted);line-height:1.55;margin:0;max-width:36ch}.proj-stack{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}.proj-stack span{font-family:var(--font-mono),ui-monospace,monospace;font-size:10.5px;padding:3px 8px;border-radius:5px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-muted)}.proj-visual{margin-top:auto;padding-top:22px}.proj-visual video{width:100%;height:auto;border-radius:8px;display:block;object-fit:cover;background:var(--bg-card-solid)}.viz-terminal{background:#06091C;border:1px solid var(--border-strong);border-radius:5px;padding:12px 14px;font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;color:#93B4FF;line-height:1.8}.viz-terminal .prompt{color:var(--accent-strong)}.viz-terminal .out{color:#A7F3D0}.viz-terminal .dim{color:var(--text-faint)}.viz-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.viz-mini{background:var(--bg-card);border:1px solid var(--border);border-radius:5px;padding:12px;font-size:11px;color:var(--text-muted)}.viz-mini b{display:block;color:var(--text-strong);font-size:14px;margin-bottom:2px}.viz-engine{height:140px;border-radius:5px;background:linear-gradient(135deg,transparent 49%,rgba(99,144,255,.4) 50%,transparent 51%) 0 0/30px 30px,radial-gradient(circle at 50% 50%,rgba(34,211,238,.4),transparent 60%),linear-gradient(135deg,#0E142E,#06091C);border:1px solid var(--border-strong);position:relative;overflow:hidden}.viz-engine:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 70%,rgba(139,92,246,.4),transparent 50%)}.viz-ray{height:140px;border-radius:5px;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.9),transparent 25%),radial-gradient(circle at 65% 60%,rgba(34,211,238,.5),transparent 35%),linear-gradient(135deg,#06091C,#1F3FB8);border:1px solid var(--border-strong);position:relative}.viz-ray:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.4))}.gh{padding:80px 0 40px}.conway-wrap{padding:28px;background:var(--bg-card-solid);border:1px solid var(--border);border-radius:5px;overflow:hidden}[data-theme=dark] .conway-wrap{background:linear-gradient(180deg,rgba(14,20,46,.7),rgba(8,12,32,.7))}[data-theme=light] .conway-wrap{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.conway{display:block;width:100%}.gh-graph{width:100%}.gh-graph,.gh-week{display:flex;gap:3px}.gh-week{flex-direction:column;flex:1 1;min-width:0}.gh-day{width:100%;aspect-ratio:1;border-radius:2px;cursor:crosshair}.gh-day.lv0{background:rgba(255,255,255,.05)}.gh-day.lv1{background:rgba(99,144,255,.3)}.gh-day.lv2{background:rgba(99,144,255,.55)}.gh-day.lv3{background:rgba(99,144,255,.8)}.gh-day.lv4{background:rgba(99,144,255,1);box-shadow:0 0 6px rgba(99,144,255,.5)}[data-theme=light] .gh-day.lv0{background:rgba(20,50,120,.07)}[data-theme=light] .gh-day.lv1{background:rgba(59,109,255,.25)}[data-theme=light] .gh-day.lv2{background:rgba(59,109,255,.5)}[data-theme=light] .gh-day.lv3{background:rgba(59,109,255,.75)}[data-theme=light] .gh-day.lv4{background:rgba(59,109,255,1)}.gh-graph-skeleton{height:111px;border-radius:4px;background:rgba(255,255,255,.04)}.gh-controls{display:flex;justify-content:flex-end;margin-top:12px}.gh-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.04em;padding:5px 12px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s}.gh-btn:hover{border-color:var(--accent);color:var(--accent)}.footer{padding:120px 0 64px;border-top:1px solid var(--border);margin-top:80px;position:relative}.footer-cta{text-align:center;margin-bottom:96px}.footer-cta h2{margin-bottom:24px}.footer-cta p{margin:0 auto 36px}.footer-bottom{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;grid-gap:64px;gap:64px;padding-top:48px;border-top:1px solid var(--border)}.footer-col h3{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin:0 0 16px}.footer-col a{display:flex;align-items:center;gap:8px;font-size:14.5px;color:var(--text-muted);margin-bottom:10px;transition:color .16s ease}.footer-col a:hover{color:var(--text-strong)}.footer-credit{margin-top:56px;padding-top:28px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--text-faint)}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.in{opacity:1;transform:translateY(0)}@media (max-width:1040px){.nav-inner{min-width:0;width:calc(100% - 32px)}}@media (max-width:1040px) and (min-width:768px){.bento{column-count:2}}@media (max-width:767px){.shell{padding:0 20px}.about>.shell,.experience>.shell,.footer>.shell,.gh>.shell,.projects>.shell{max-width:none}.nav-inner{gap:12px;padding:6px 8px 6px 14px;background:var(--bg-elev);backdrop-filter:none;-webkit-backdrop-filter:none}.grain,.nav-links,.nav-sparkle,.particles{display:none}.mesh .blob,.mesh:after,.mesh:before{animation:none;filter:blur(48px)}.hero-typed:after{animation:none;opacity:.7}.hero{padding:88px 0 0}.hero-grid{grid-template-columns:1fr;gap:0}.hero-left{width:auto;pointer-events:auto;min-height:calc(100vh - 88px);min-height:calc(100svh - 88px);display:flex;flex-direction:column;justify-content:center;padding-bottom:52px}.hero-right{position:static;height:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:12px;gap:12px;padding:0 0 80px;min-width:0;width:100%}.float-card{position:static!important;animation:none!important;transform:none!important;inset:auto!important;width:100%!important;min-width:0;max-width:100%;height:auto;padding:14px}.card-code{grid-column:1/-1;padding:0}.code-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:clamp(11px,3.1vw,13px);line-height:1.6;padding:14px 14px 16px}.card-now{align-items:flex-start}.now-text{flex:1 1;min-width:0}.about{padding:48px 0}.about-grid{grid-template-columns:1fr;gap:28px}.about-tags{margin-top:20px}.collage{display:block}.collage-cell{display:none}.c-1{display:block;width:100%;height:220px;border-radius:8px;overflow:hidden}.experience{padding:48px 0}.exp-head{grid-template-columns:auto 1fr;gap:14px;padding:18px}.exp-logo{width:44px;height:44px}.exp-company{font-size:18px}.exp-tags{margin-top:10px;gap:6px}.exp-toggle{grid-column:2;justify-self:start;margin-top:12px;padding:7px 12px}.exp-panel ul{padding:4px 18px 18px 76px;gap:10px}.sec-head{gap:14px}.projects{padding:48px 0}.bento{column-count:1}.proj{flex-direction:row;align-items:flex-start;gap:14px;padding:16px;margin-bottom:12px}.proj-tag{display:none}.proj-content{padding-top:0}.proj h3{font-size:17px;padding-right:0;margin-bottom:4px}.proj p{font-size:13px;max-width:none}.proj-stack{margin-top:10px}.proj-visual{display:block;flex-shrink:0;width:90px;height:90px;align-self:center;padding-top:0;margin-top:0;border-radius:6px;overflow:hidden;order:1}.proj-content{order:0;flex:1 1;min-width:0}.proj-visual img,.proj-visual video{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:6px}.footer{padding:80px 0 48px;margin-top:48px}.footer-bottom{grid-template-columns:1fr 1fr;gap:40px}.footer-credit{flex-direction:column;gap:8px;text-align:center}}@media (max-width:480px){.footer-bottom{grid-template-columns:1fr}.hero-meta{flex-direction:column;gap:12px}}