@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.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.1y4-pdgsjb-pw.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.3lvt2whj97whp.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.2uwcyprjm3xu3.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.0k62hbripvv8p.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.3-6t-g6q0vh0a.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.2bn3s6zvc0dyp.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_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.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.176arc174-8zp.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.0bp8oijd_gu96.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.1fby2rem9ngyr.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.0vfdmo25voy_0.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.3t6q91iet4nsy.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_2fbad08d-module__Y6qpBa__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_2fbad08d-module__Y6qpBa__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.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:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_11bf8cd-module__L78yXa__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_11bf8cd-module__L78yXa__variable{--font-space:"Space Grotesk", "Space Grotesk Fallback"}
:root{--bg-primary:#0d1117;--bg-secondary:#161b22;--bg-tertiary:#21262d;--bg-elevated:#1c2128;--accent:#3fb950;--accent-dim:#238636;--accent-muted:#2ea043;--accent-glow:#3fb95026;--accent-glow-strong:#3fb9504d;--text-primary:#f0f6fc;--text-secondary:#8b949e;--text-tertiary:#484f58;--text-link:#58a6ff;--border:#30363d;--border-muted:#21262d;--border-accent:#238636;--glass-bg:#161b22cc;--glass-border:#30363d99;--glass-blur:20px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 20px #3fb95026;--shadow-glow-strong:0 0 40px #3fb95040;--font-mono:"JetBrains Mono", "Fira Code", monospace;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-heading:"Space Grotesk", "Inter", sans-serif;--section-padding:100px 0;--container-max:1200px;--container-padding:0 24px;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s cubic-bezier(.4, 0, .2, 1);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--z-cursor:9999;--z-nav:1000;--z-modal:900}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);line-height:1.6;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#30363d26 1px,#0000 1px),linear-gradient(90deg,#30363d26 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);position:fixed;inset:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-dim)}::selection{background:var(--accent);color:var(--bg-primary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.05em;color:var(--text-primary);opacity:.6;font-weight:900;line-height:1}h1{font-size:clamp(5rem,12vw,9.5rem)}h2{font-size:clamp(4.2rem,10vw,8.2rem)}h3{font-size:clamp(1.6rem,3vw,2.2rem)}p{color:var(--text-secondary);line-height:1.7}a{color:var(--text-link);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent)}code,pre{font-family:var(--font-mono)}.container{max-width:var(--container-max);padding:var(--container-padding);z-index:1;margin:0 auto;position:relative}.section{padding:var(--section-padding);position:relative}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.glass-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-normal)}.glass-card:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn{border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-normal);border:none;outline:none;align-items:center;gap:8px;padding:10px 24px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--accent-dim);color:var(--text-primary);border:1px solid var(--accent)}.btn-primary:hover{background:var(--accent);color:var(--bg-primary);box-shadow:var(--shadow-glow-strong)}.btn-secondary{color:var(--text-primary);border:1px solid var(--border);background:0 0}.btn-secondary:hover{border-color:var(--accent-dim);color:var(--accent)}.tag{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);font-size:.75rem;font-family:var(--font-mono);border-radius:20px;align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.tag-accent{border-color:var(--accent-dim);color:var(--accent);background:#3fb9501a}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #3fb95033}50%{box-shadow:0 0 20px #3fb95066}}@keyframes border-glow{0%,to{border-color:var(--border)}50%{border-color:var(--accent-dim)}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes typing-cursor{0%,to{border-color:var(--accent)}50%{border-color:#0000}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes rotate-glow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animated-border{position:relative;overflow:hidden}.animated-border:before{content:"";background:conic-gradient(from 0deg, transparent, var(--accent), transparent 30%);border-radius:inherit;z-index:-1;opacity:0;transition:opacity var(--transition-normal);animation:4s linear infinite rotate-glow;position:absolute;inset:-2px}.animated-border:hover:before{opacity:1}@media (max-width:768px){:root{--section-padding:60px 0;--container-padding:0 16px}h1{font-size:clamp(2.5rem,8vw,4rem)}h2{font-size:clamp(2.2rem,7vw,3.2rem)}}@media (max-width:480px){:root{--section-padding:40px 0}}.navbar{z-index:var(--z-nav);height:64px;transition:all var(--transition-normal);border-bottom:1px solid #0000;align-items:center;padding:0 24px;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom-color:var(--border)}.navbar-inner{max-width:var(--container-max);justify-content:space-between;align-items:center;width:100%;margin:0 auto;display:flex}.navbar-logo{color:var(--text-primary);align-items:center;gap:10px;font-size:1.1rem;font-weight:700;text-decoration:none;display:flex}.navbar-logo svg{color:var(--accent)}.navbar-links{align-items:center;gap:4px;list-style:none;display:flex}.navbar-link{border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;font-size:.875rem;font-family:var(--font-sans);background:0 0;border:none;padding:6px 16px;text-decoration:none}.navbar-link:hover,.navbar-link.active{color:var(--text-primary);background:var(--bg-tertiary)}.navbar-actions{align-items:center;gap:12px;display:flex}.navbar-cv-btn{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:6px 16px;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.navbar-cv-btn:hover{border-color:var(--accent-dim);color:var(--accent)}.navbar-mobile-toggle{color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:8px;display:none}@media (max-width:768px){.navbar-links{display:none}.navbar-mobile-toggle{display:flex}.navbar-links.open{background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:16px;display:flex;position:absolute;top:64px;left:0;right:0}}.hero{align-items:center;min-height:100vh;padding-top:64px;display:flex}.hero-inner{grid-template-columns:1fr 1fr;align-items:center;gap:60px;width:100%;display:grid}.hero-content{flex-direction:column;gap:20px;display:flex}.hero-greeting{color:var(--text-secondary);font-size:1.2rem;font-weight:400}.hero-name{font-size:clamp(3rem,6vw,5rem);font-weight:800;line-height:1;font-family:var(--font-heading)}.hero-name .accent{color:var(--accent)}.hero-title{color:var(--accent);font-size:clamp(1.2rem,2.5vw,1.5rem);font-weight:600;font-family:var(--font-heading)}.hero-bio{color:var(--text-secondary);max-width:480px;font-size:1rem;line-height:1.7}.hero-cta{gap:12px;margin-top:8px;display:flex}.hero-socials{align-items:center;gap:16px;margin-top:8px;display:flex}.hero-socials-label{color:var(--text-tertiary);font-size:.8rem}.hero-social-link{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;text-decoration:none;display:flex}.hero-social-link:hover{color:var(--accent);background:var(--bg-tertiary)}.hero-terminal{flex-direction:column;gap:16px;display:flex}@media (max-width:768px){.hero-inner{text-align:center;grid-template-columns:1fr;gap:40px}.hero-cta,.hero-socials{justify-content:center}.hero-bio{margin:0 auto}}.terminal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);font-family:var(--font-mono);box-shadow:var(--shadow-lg);overflow:hidden}.terminal-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.terminal-dots{gap:6px;display:flex}.terminal-dot{border-radius:50%;width:12px;height:12px}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#27c93f}.terminal-title{text-align:center;color:var(--text-tertiary);flex:1;font-size:.75rem}.terminal-body{min-height:200px;padding:20px;position:relative}.terminal-line{color:var(--text-secondary);font-size:.85rem;line-height:1.8}.terminal-line.command{color:var(--accent)}.terminal-line .prompt{color:var(--accent);margin-right:4px}.terminal-cursor{background:var(--accent);vertical-align:text-bottom;width:8px;height:16px;animation:1s step-end infinite blink;display:inline-block}.terminal-ascii{color:var(--accent);white-space:pre;opacity:.8;margin:8px 0;font-size:.45rem;line-height:1.2;overflow:hidden}.about-grid{grid-template-columns:1fr 1fr;align-items:start;gap:60px;display:grid}.about-text{flex-direction:column;gap:20px;display:flex}.about-bio{color:var(--text-secondary);font-size:1rem;line-height:1.8}.about-highlights{flex-direction:column;gap:12px;list-style:none;display:flex}.about-highlight{color:var(--text-secondary);align-items:flex-start;gap:12px;font-size:.9rem;display:flex}.about-highlight-icon{width:20px;height:20px;color:var(--accent);flex-shrink:0;margin-top:2px}.about-right{flex-direction:column;align-items:center;gap:24px;display:flex}.about-avatar-wrapper{border-radius:var(--radius-xl);border:2px solid var(--accent-dim);width:280px;height:280px;box-shadow:var(--shadow-glow);position:relative;overflow:hidden}.about-avatar-wrapper img{object-fit:cover;width:100%;height:100%}.about-learning{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;padding:20px}.about-learning-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.about-learning-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-glow}.about-learning-title{color:var(--accent);font-size:.85rem;font-weight:600}.about-learning-list{flex-direction:column;gap:6px;list-style:none;display:flex}.about-learning-item{color:var(--text-secondary);padding-left:16px;font-size:.85rem;position:relative}.about-learning-item:before{content:"•";color:var(--accent);position:absolute;left:0}@media (max-width:768px){.about-grid{grid-template-columns:1fr;gap:40px}.about-right{order:-1}.about-avatar-wrapper{width:200px;height:200px}}.skills-tabs{flex-wrap:wrap;gap:4px;margin-bottom:32px;display:flex}.skill-tab{color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast);font-size:.8rem;font-family:var(--font-sans);border-radius:20px;padding:8px 16px}.skill-tab:hover,.skill-tab.active{color:var(--accent);border-color:var(--accent-dim);background:#3fb9501a}.skills-icon-grid{min-height:200px;margin:2rem 0}.skills-icon-inner{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:1rem;display:grid}.skill-icon-card{border:1px solid var(--border);background:var(--bg-secondary);cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:1.25rem .5rem 1rem;display:flex;position:relative;overflow:hidden}.skill-icon-glow{background:radial-gradient(circle at center, var(--accent) 0%, transparent 70%);opacity:0;pointer-events:none;mix-blend-mode:overlay;border-radius:14px;position:absolute;inset:0}.skill-icon-wrapper{color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.skill-icon-label{text-align:center;letter-spacing:.01em;color:var(--text-secondary);font-size:.7rem;line-height:1.3}.other-skills{margin-top:24px}.other-skills-title{color:var(--text-primary);margin-bottom:12px;font-size:1rem}.other-skills-tags{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:768px){.skill-row{grid-template-columns:100px 1fr 40px;gap:8px}}.projects-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.projects-filters{flex-wrap:wrap;gap:4px;margin-bottom:32px;display:flex}.projects-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:32px;display:grid}.project-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-normal);cursor:pointer;flex-direction:column;gap:12px;padding:24px;display:flex;position:relative;overflow:hidden}.project-card:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-glow)}.project-card-header{justify-content:space-between;align-items:flex-start;display:flex}.project-card-name{color:var(--text-link);align-items:center;gap:8px;font-size:1.1rem;font-weight:600;display:flex}.project-card-name svg{width:16px;height:16px;color:var(--text-secondary)}.project-github-link{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all var(--transition-fast);white-space:nowrap;padding:4px 10px;font-size:.75rem;text-decoration:none}.project-github-link:hover{border-color:var(--accent-dim);color:var(--accent)}.project-card-desc{color:var(--text-secondary);flex:1;font-size:.85rem;line-height:1.6}.project-card-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.project-card-tech{flex-wrap:wrap;gap:6px;display:flex}.project-card-stats{align-items:center;gap:16px;display:flex}.project-stat{color:var(--text-secondary);align-items:center;gap:4px;font-size:.8rem;display:flex}.project-stat svg{width:14px;height:14px}.project-language-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.projects-more-cta{text-align:center;padding-top:16px}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}.experience-timeline{padding-left:32px;position:relative}.experience-timeline:before{content:"";background:var(--border);width:2px;position:absolute;top:0;bottom:0;left:7px}.experience-item{padding-bottom:40px;position:relative}.experience-item:last-child{padding-bottom:0}.experience-dot{background:var(--bg-primary);border:2px solid var(--accent-dim);z-index:1;width:16px;height:16px;transition:all var(--transition-fast);border-radius:50%;position:absolute;top:6px;left:-29px}.experience-item:hover .experience-dot{background:var(--accent);border-color:var(--accent);box-shadow:var(--shadow-glow)}.experience-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-normal);padding:24px}.experience-card:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-glow)}.experience-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;display:flex}.experience-role{color:var(--text-primary);font-size:1.1rem;font-weight:600}.experience-date{color:var(--text-tertiary);font-size:.8rem;font-family:var(--font-mono)}.experience-company{color:var(--accent);margin-bottom:12px;font-size:.9rem}.experience-desc{color:var(--text-secondary);margin-bottom:12px;font-size:.85rem;line-height:1.7}.experience-tech{flex-wrap:wrap;gap:6px;display:flex}.github-section{grid-template-columns:1fr;gap:32px;display:grid}.github-profile-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:24px;padding:24px;display:flex}.github-avatar{border:2px solid var(--accent-dim);border-radius:50%;width:64px;height:64px}.github-info h3{margin-bottom:2px;font-size:1.2rem}.github-username{color:var(--text-secondary);font-size:.85rem;font-family:var(--font-mono)}.github-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.github-stat-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;transition:all var(--transition-normal);padding:20px}.github-stat-card:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-glow)}.github-stat-number{color:var(--text-primary);font-size:2rem;font-weight:700;font-family:var(--font-heading)}.github-stat-label{color:var(--text-secondary);margin-top:4px;font-size:.8rem}.heatmap-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;overflow-x:auto}.heatmap-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.heatmap-title{color:var(--text-secondary);font-size:.9rem}.heatmap-grid{gap:3px;display:flex}.heatmap-week{flex-direction:column;gap:3px;display:flex}.heatmap-cell{width:12px;height:12px;transition:all var(--transition-fast);border-radius:2px}.heatmap-cell:hover{outline:1px solid var(--accent);transform:scale(1.4)}.heatmap-cell.level-0{background:var(--bg-tertiary)}.heatmap-cell.level-1{background:#0e4429}.heatmap-cell.level-2{background:#006d32}.heatmap-cell.level-3{background:#26a641}.heatmap-cell.level-4{background:#39d353}.heatmap-months{gap:3px;margin-bottom:4px;padding-left:0;display:flex}.heatmap-month-label{color:var(--text-tertiary);min-width:57px;font-size:.65rem}.heatmap-legend{justify-content:flex-end;align-items:center;gap:4px;margin-top:12px;display:flex}.heatmap-legend-text{color:var(--text-tertiary);margin:0 4px;font-size:.7rem}.heatmap-tagline{text-align:center;color:var(--text-tertiary);margin-top:16px;font-size:.85rem;font-style:italic}@media (max-width:768px){.github-stats-grid{grid-template-columns:repeat(2,1fr)}.github-profile-card{text-align:center;flex-direction:column}}.typing-indicator{gap:4px;padding:8px 0;display:flex}.typing-indicator span{background:var(--text-tertiary);border-radius:50%;width:6px;height:6px;animation:1.4s infinite typing-bounce}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}.contact-grid{grid-template-columns:1fr 1fr;gap:48px;display:grid}.contact-info{flex-direction:column;gap:24px;display:flex}.contact-text{color:var(--text-secondary);font-size:1rem;line-height:1.7}.contact-links{flex-direction:column;gap:12px;display:flex}.contact-link-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.contact-link-item:hover{border-color:var(--accent-dim);color:var(--accent)}.contact-link-icon{width:20px;height:20px;color:var(--accent)}.contact-form{flex-direction:column;gap:16px;display:flex}.contact-input,.contact-textarea{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;font-family:var(--font-sans);transition:border-color var(--transition-fast);outline:none;width:100%;padding:12px 16px}.contact-input:focus,.contact-textarea:focus{border-color:var(--accent-dim)}.contact-input::placeholder,.contact-textarea::placeholder{color:var(--text-tertiary)}.contact-textarea{resize:vertical;min-height:150px}@media (max-width:768px){.contact-grid{grid-template-columns:1fr}}.footer{border-top:1px solid var(--border);text-align:center;padding:32px 0}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer-left{color:var(--text-tertiary);align-items:center;gap:8px;font-size:.8rem;display:flex}.footer-right{color:var(--text-tertiary);font-size:.8rem}@media (max-width:768px){.footer-inner{text-align:center;justify-content:center}}.section-header{justify-content:space-between;align-items:center;margin-bottom:48px;display:flex}.section-header h2{align-items:center;gap:.35em;display:flex}.section-header-icon{color:var(--accent);vertical-align:middle;flex-shrink:0;display:inline-block;width:.9em!important;height:.9em!important}.section-header-link{color:var(--text-link);transition:color var(--transition-fast);align-items:center;gap:4px;font-size:.85rem;text-decoration:none;display:flex}.section-header-link:hover{color:var(--accent)}.workflow-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:32px;overflow-x:auto}.workflow-nodes{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;display:flex}.workflow-node{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);text-align:center;transition:all var(--transition-normal);min-width:120px;padding:12px 20px;font-size:.8rem}.workflow-node:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-glow)}.workflow-node-label{margin-bottom:4px;font-weight:600}.workflow-node-desc{color:var(--text-tertiary);font-size:.7rem}.workflow-arrow{color:var(--accent);flex-shrink:0;padding:0 8px;font-size:1.2rem}.custom-cursor{border:2px solid var(--accent);pointer-events:none;width:20px;height:20px;z-index:var(--z-cursor);mix-blend-mode:difference;border-radius:50%;transition:width .2s,height .2s,border-width .2s;position:fixed;transform:translate(-50%,-50%)}.custom-cursor.hovering{background:#3fb9501a;border-width:1px;width:50px;height:50px}@media (max-width:768px){.custom-cursor{display:none}}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:16px;margin-top:24px;display:grid}.tech-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-normal);flex-direction:column;align-items:center;gap:8px;padding:16px;display:flex}.tech-item:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-glow);transform:translateY(-4px)}.tech-icon{border-radius:var(--radius-md);background:var(--bg-tertiary);justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;display:flex}.tech-name{color:var(--text-secondary);text-align:center;font-size:.75rem}
