@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,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(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_63078922-module__Db1Kgq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_63078922-module__Db1Kgq__variable{--sans-font:"Inter","Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.woff2)format("woff2");unicode-range:U+460-52F,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(../media/cc545e633e20c56d-s.f6f1950f.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.woff2)format("woff2");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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_f5bc9d7-module__2Xwzva__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_f5bc9d7-module__2Xwzva__variable{--mono-font:"JetBrains Mono","JetBrains Mono Fallback"}
:root{--bg:#0a0611;--bg-top:#06030b;--bg-bottom:#140c22;--surface:#151020;--border:#2b2040;--text:#ece7f7;--text-dim:#988cab;--accent:#8b5cf6;--accent-dim:#6f42df;--accent-glow:#8b5cf624;--scroll-far:0px;--scroll-mid:0px;--scroll-near:0px;--mono:var(--mono-font),monospace;--sans:var(--sans-font),system-ui,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}body{background:radial-gradient(circle at 16% 20%,#8b5cf62e 0%,transparent 42%),radial-gradient(circle at 82% 12%,#6f42df24 0%,transparent 38%),linear-gradient(180deg,var(--bg-top)0%,var(--bg)48%,var(--bg-bottom)100%);color:var(--text);font-family:var(--sans);line-height:1.6;overflow-x:hidden}.edit-toolbar{z-index:20;border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#151020f2;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.edit-toolbar button{font-family:var(--mono);color:var(--text);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:12px;transition:all .2s}.edit-toolbar button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-glow)}.edit-toolbar button:disabled{opacity:.5;cursor:not-allowed}.edit-status{font-family:var(--mono);color:var(--text-dim);text-align:right;min-width:140px;font-size:11px}.edit-enabled #editable-content{outline:1px dashed var(--accent);outline-offset:12px;border-radius:8px}.city-backdrop{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.city-backdrop:before{content:"";opacity:.22;background-image:radial-gradient(circle at 20% 28%,#ffffff80 0 1px,#0000 1.4px),radial-gradient(circle at 64% 46%,#dec7ff66 0 1px,#0000 1.5px),radial-gradient(circle at 78% 18%,#ffffff73 0 1px,#0000 1.6px);background-size:320px 220px,420px 260px,520px 300px;animation:120s linear infinite stars-drift;position:absolute;inset:-25% -15% 40%}.city-glow{filter:blur(32px);opacity:.8;background:radial-gradient(circle at 18% 30%,#9472f733,#0000 55%),radial-gradient(circle at 76% 26%,#6f42df24,#0000 48%),radial-gradient(circle at 48% 64%,#d3baff14,#0000 52%);height:72%;animation:16s ease-in-out infinite alternate glow-shift;position:absolute;inset:-10% -25% auto}.city-haze{filter:blur(24px);opacity:.55;background:radial-gradient(#a27cff3d 0%,#a27cff0f 42%,#0000 70%);height:30vh;animation:13s ease-in-out infinite haze-breathe;position:absolute;bottom:18vh;left:-10%;right:-10%}.city-layer{will-change:transform,background-position;background-repeat:repeat-x;width:250%;position:absolute;bottom:-2px;left:-72%}.layer-far{opacity:.32;height:46vh;transform:translate3d(var(--scroll-far),0,0);clip-path:polygon(0 100%,0 70%,3% 70%,3% 62%,7% 62%,7% 74%,11% 74%,11% 55%,16% 55%,16% 68%,21% 68%,21% 52%,26% 52%,26% 76%,32% 76%,32% 48%,37% 48%,37% 66%,42% 66%,42% 57%,48% 57%,48% 71%,53% 71%,53% 50%,58% 50%,58% 73%,64% 73%,64% 56%,69% 56%,69% 68%,74% 68%,74% 46%,79% 46%,79% 64%,84% 64%,84% 54%,89% 54%,89% 72%,94% 72%,94% 58%,100% 58%,100% 100%);background-image:linear-gradient(#160f2357,#160f23e0 28%,#0d0915f5),repeating-linear-gradient(90deg,#0000 0 12px,#cdb1ff1a 12px 15px,#0000 15px 24px,#cdb1ff0f 24px 26px,#0000 26px 36px),repeating-linear-gradient(90deg,#1e1630f0 0 26px,#0000 26px 40px,#1e1630e0 40px 72px,#0000 72px 96px,#1e1630e6 96px 130px,#0000 130px 154px);animation:160s linear infinite city-drift-far}.layer-mid{opacity:.48;height:36vh;transform:translate3d(var(--scroll-mid),0,0);clip-path:polygon(0 100%,0 74%,4% 74%,4% 62%,8% 62%,8% 79%,13% 79%,13% 50%,18% 50%,18% 70%,24% 70%,24% 54%,29% 54%,29% 82%,35% 82%,35% 46%,41% 46%,41% 66%,46% 66%,46% 57%,51% 57%,51% 76%,57% 76%,57% 52%,62% 52%,62% 74%,67% 74%,67% 58%,73% 58%,73% 80%,79% 80%,79% 49%,84% 49%,84% 69%,90% 69%,90% 56%,95% 56%,95% 75%,100% 75%,100% 100%);background-image:linear-gradient(#1c122f59,#1c122feb 24%,#120c1ff7),repeating-linear-gradient(90deg,#0000 0 8px,#e1c9ff2e 8px 10px,#0000 10px 16px,#e1c9ff1c 16px 18px,#0000 18px 26px),repeating-linear-gradient(90deg,#352653f0 0 20px,#0000 20px 32px,#352653e6 32px 62px,#0000 62px 84px,#352653e0 84px 112px,#0000 112px 136px);animation:110s linear infinite city-drift-mid}.layer-near{opacity:.7;height:24vh;transform:translate3d(var(--scroll-near),0,0);clip-path:polygon(0 100%,0 78%,5% 78%,5% 61%,10% 61%,10% 88%,15% 88%,15% 47%,20% 47%,20% 73%,26% 73%,26% 56%,31% 56%,31% 92%,38% 92%,38% 43%,44% 43%,44% 68%,49% 68%,49% 52%,55% 52%,55% 84%,61% 84%,61% 50%,66% 50%,66% 76%,71% 76%,71% 59%,77% 59%,77% 90%,83% 90%,83% 45%,89% 45%,89% 71%,94% 71%,94% 57%,100% 57%,100% 100%);background-image:linear-gradient(#25183b61,#25183bf2 28%,#191028fa),repeating-linear-gradient(90deg,#0000 0 6px,#f1e0ff42 6px 8px,#0000 8px 13px,#f1e0ff29 13px 14px,#0000 14px 20px),repeating-linear-gradient(90deg,#4f3878f2 0 14px,#0000 14px 23px,#4f3878ed 23px 44px,#0000 44px 57px,#4f3878e6 57px 78px,#0000 78px 94px);animation:70s linear infinite city-drift-near;box-shadow:0 -8px 18px #724dac29}.noise{pointer-events:none;opacity:.8;mix-blend-mode:soft-light;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");position:fixed;inset:0}.container{z-index:2;max-width:720px;margin:0 auto;padding:80px 24px;position:relative}.terminal-bar{background:var(--surface);border:1px solid var(--border);border-radius:8px 8px 0 0;align-items:center;gap:8px;padding:12px 16px;display:flex}.terminal-body{background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px;margin-bottom:48px;padding:32px}.terminal-bar,.terminal-body{animation:.7s cubic-bezier(.16,1,.3,1) both reveal-up}.terminal-body{animation-delay:90ms}.terminal-dot{border-radius:50%;width:12px;height:12px}.dot-red{background:#ff5f57}.dot-yellow{background:#febc2e}.dot-green{background:#8b5cf6}.terminal-title{font-family:var(--mono);color:var(--text-dim);margin-left:8px;font-size:12px}.prompt{font-family:var(--mono);color:var(--text-dim);margin-bottom:4px;font-size:14px}.path{color:var(--accent)}.arrow{color:var(--accent);margin-right:4px}h1{font-family:var(--mono);color:var(--text);margin-bottom:4px;font-size:28px;font-weight:700}.accent{color:var(--accent)}.tagline{font-family:var(--mono);color:var(--text-dim);margin-bottom:24px;font-size:14px}.bio{color:var(--text);margin-bottom:24px;font-size:15px;line-height:1.7}.cursor{vertical-align:text-bottom;background:var(--accent);width:8px;height:18px;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}.links{flex-wrap:wrap;gap:16px;display:flex}.links a{font-family:var(--mono);color:var(--accent);border:1px solid var(--border);border-radius:6px;padding:6px 14px;font-size:13px;text-decoration:none;transition:all .2s}.links a:hover{border-color:var(--accent);background:var(--accent-glow);box-shadow:0 0 16px #8b5cf62e}.section-label{font-family:var(--mono);color:var(--text-dim);text-transform:uppercase;letter-spacing:2px;align-items:center;gap:12px;margin-bottom:20px;font-size:12px;display:flex}.section-label:after{content:"";background:var(--border);flex:1;height:1px}.projects{gap:16px;margin-bottom:48px;display:grid}.working-on-grid{gap:12px;margin-bottom:48px;display:grid}.working-on-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px 20px;transition:border-color .25s,transform .25s,box-shadow .25s;animation:.7s cubic-bezier(.16,1,.3,1) both project-pop}.working-on-grid .working-on-card:first-child{animation-delay:.22s}.working-on-grid .working-on-card:nth-child(2){animation-delay:.28s}.working-on-grid .working-on-card:nth-child(3){animation-delay:.34s}.working-on-card:hover{border-color:#5e4794;transform:translateY(-3px);box-shadow:0 14px 24px #08050e57,inset 0 0 0 1px #9971f12e}.working-on-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.working-on-title{font-family:var(--mono);color:var(--text);font-size:14px;font-weight:600}.working-on-status{font-family:var(--mono);color:var(--accent);text-transform:uppercase;letter-spacing:1.3px;background:var(--accent-glow);white-space:nowrap;border:1px solid #8b5cf647;border-radius:999px;padding:2px 8px;font-size:10px}.working-on-desc{color:var(--text-dim);font-size:13px;line-height:1.55}.project{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 24px;transition:border-color .25s,transform .25s,box-shadow .25s;animation:.7s cubic-bezier(.16,1,.3,1) both project-pop}.project:hover{border-color:#5e4794;transform:translateY(-4px)scale(1.01);box-shadow:0 20px 34px #08050e6b,inset 0 0 0 1px #9971f138}.projects .project:first-child{animation-delay:.22s}.projects .project:nth-child(2){animation-delay:.28s}.projects .project:nth-child(3){animation-delay:.34s}.projects .project:nth-child(4){animation-delay:.4s}.project-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.project-name{font-family:var(--mono);color:var(--text);font-size:15px;font-weight:600}.project-tag{font-family:var(--mono);color:var(--accent);background:var(--accent-glow);border-radius:4px;padding:2px 8px;font-size:11px}.project-desc{color:var(--text-dim);font-size:14px;line-height:1.5}.skills{flex-wrap:wrap;gap:8px;margin-bottom:48px;display:flex}.skill{font-family:var(--mono);color:var(--text-dim);border:1px solid var(--border);border-radius:6px;padding:6px 12px;font-size:12px;transition:transform .2s,color .2s,border-color .2s,background .2s}.skill:hover{color:var(--text);border-color:var(--accent-dim);background:#8b5cf617;transform:translateY(-2px)}.edu-note{color:var(--text-dim);margin-bottom:48px;font-size:14px;line-height:1.7}footer{font-family:var(--mono);color:var(--text-dim);text-align:center;border-top:1px solid var(--border);padding-top:32px;font-size:12px;animation:.7s cubic-bezier(.16,1,.3,1) .54s both reveal-up}section[data-section=experience]{animation:.7s cubic-bezier(.16,1,.3,1) .28s both reveal-up}section[data-section=working-on]{animation:.7s cubic-bezier(.16,1,.3,1) .18s both reveal-up}section[data-section=independent-projects]{animation:.7s cubic-bezier(.16,1,.3,1) .38s both reveal-up}section[data-section=skills]{animation:.7s cubic-bezier(.16,1,.3,1) .5s both reveal-up}section[data-section=education]{animation:.7s cubic-bezier(.16,1,.3,1) .58s both reveal-up}@keyframes blink{50%{opacity:0}}@keyframes reveal-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes project-pop{0%{opacity:0;transform:translateY(20px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes stars-drift{0%{transform:translate(0,0)}to{transform:translate(-7%,-3%)}}@keyframes glow-shift{0%{transform:translate(-1.5%)scale(1)}to{transform:translate(2%,-1.5%)scale(1.06)}}@keyframes haze-breathe{0%,to{opacity:.52;transform:translateY(0)}50%{opacity:.7;transform:translateY(-10px)}}@keyframes city-drift-far{0%{background-position:0 0,0 0,0 0}to{background-position:-760px 0,-1020px 0,-1260px 0}}@keyframes city-drift-mid{0%{background-position:0 0,0 0,0 0}to{background-position:-1040px 0,-860px 0,-1480px 0}}@keyframes city-drift-near{0%{background-position:0 0,0 0,0 0}to{background-position:-1460px 0,-1220px 0,-1960px 0}}@media (max-width:480px){.container{padding:40px 16px}h1{font-size:22px}.terminal-body{padding:24px 20px}.city-layer{width:320%;left:-110%}.layer-far{height:38vh}.layer-mid{height:30vh}.layer-near{height:20vh}.city-haze{height:24vh;bottom:13vh}.working-on-header{flex-direction:column;align-items:flex-start}.edit-toolbar{flex-wrap:wrap;justify-content:space-between;gap:8px;top:8px;left:8px;right:8px;transform:none}.edit-status{text-align:left;width:100%}}@media (prefers-reduced-motion:reduce){.cursor,.terminal-bar,.terminal-body,section[data-section],footer,.project,.working-on-card,.city-backdrop:before,.city-glow,.city-haze,.city-layer{animation:none!important}.terminal-bar,.terminal-body,section[data-section],footer,.project{opacity:1;transform:none}.city-layer{transform:none!important}}
