@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&display=swap");.root-container{position:relative;height:100vh;height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#060609,#0d1520 50%,#09111a);font-family:JetBrains Mono,Fira Code,monospace;overflow:hidden;color:#e2e8f0;padding:16px}.mouse-glow{transition:background .15s}.mouse-glow,.scanlines{position:absolute;inset:0;pointer-events:none}.scanlines{opacity:.4;background:repeating-linear-gradient(0deg,transparent,transparent 2px,hsla(0,0%,100%,.008) 0,hsla(0,0%,100%,.008) 4px)}.particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.particle{position:absolute;bottom:-4px;background:#4ade80;border-radius:50%;animation:rise linear infinite}@keyframes rise{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:.3}90%{opacity:.1}to{transform:translateY(-100vh) translateX(20px);opacity:0}}.bg-terminal{position:absolute;top:24px;left:24px;font-size:11px;color:#4ade80;line-height:1.6;max-width:420px}.term-line{margin-bottom:2px}.term-prompt{color:#2d8cf0;font-weight:700}.term-cursor{display:inline-block;animation:blink 1s step-end infinite;color:#4ade80}.header{position:absolute;top:14%;text-align:center;z-index:2;width:100%;padding:0 16px}.logo-row{display:flex;align-items:baseline;gap:12px;justify-content:center;margin-bottom:8px}.logo-text{font-size:56px;font-weight:700;letter-spacing:-3px;margin:0;background:linear-gradient(135deg,#2d8cf0,#8be04b);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.version{font-size:13px;color:#4b5563;font-weight:400}.subtitle{font-size:12px;color:#4b5563;letter-spacing:4px;font-weight:500;text-transform:uppercase}.main-content{flex-direction:column;gap:32px;z-index:2;width:100%}.bubble-row,.main-content{display:flex;align-items:center}.bubble-row{gap:40px;justify-content:center;flex-wrap:nowrap}.divider{display:flex;align-items:center;gap:14px;color:#374151}.divider-line{width:32px;height:1px;background:linear-gradient(90deg,transparent,#374151,transparent)}.divider-text{font-size:10px;font-weight:600;letter-spacing:3px}.bubble{position:relative;width:220px;height:220px;border-radius:50%;border:1.5px solid hsla(0,0%,100%,.06);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:radial-gradient(circle at 30% 25%,hsla(0,0%,100%,.1),transparent 70%),var(--bubble-color);color:#071018;cursor:pointer;box-shadow:0 8px 32px rgba(0,0,0,.5),inset 0 -4px 16px rgba(0,0,0,.2);outline:none;font-family:inherit;flex-shrink:0}.bubble:focus-visible{border-color:hsla(0,0%,100%,.4);box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 3px hsla(0,0%,100%,.25)}.bubble.selected{box-shadow:0 0 100px var(--bubble-color),0 0 200px color-mix(in srgb,var(--bubble-color) 40%,transparent);border-color:hsla(0,0%,100%,.5);z-index:10}.bubble.dimmed{pointer-events:none}.bubble-icon-wrap{display:flex;align-items:center;justify-content:center}.bubble-icon{font-size:42px;opacity:.9}.bubble-label{font-size:22px;font-weight:700;letter-spacing:-.5px}.bubble-sub{font-size:10px;opacity:.6;font-weight:400;letter-spacing:1.5px;text-transform:uppercase}.bubble-ring{inset:-6px;border-radius:50%;border:1px dashed hsla(0,0%,100%,.12);transition:opacity .3s ease}.bubble-glow,.bubble-ring{position:absolute;pointer-events:none}.bubble-glow{inset:-10px;border-radius:50%;background:radial-gradient(circle,var(--bubble-color),transparent 70%);filter:blur(20px)}.sys-info{display:flex;gap:24px;font-size:11px;color:#6b7280;flex-wrap:wrap;justify-content:center}.info-label{color:#4ade80;font-weight:600}.status-on{color:#4ade80;animation:pulse 2s ease-in-out infinite}.boot-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#060609;padding:16px}.boot-inner{text-align:center;max-width:100%;overflow:hidden}.boot-ascii{color:#ffd66b;white-space:pre;line-height:1.15;font-size:clamp(7px,1.6vw + 3px,14px);overflow:hidden}.boot-ascii,.boot-text{font-family:JetBrains Mono,monospace}.boot-text{color:#4ade80;font-size:13px;margin-top:16px}.boot-bar{width:240px;max-width:80%;height:3px;margin:10px auto 0;background:hsla(0,0%,100%,.06);border-radius:2px;overflow:hidden}.boot-bar-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,#ffd66b,#ff8a00)}@keyframes blink{0%,50%{opacity:1}50.1%,to{opacity:0}}@media (min-width:1200px){.bubble-row{gap:56px}.bubble{width:240px;height:240px}.bubble-icon{font-size:48px}.bubble-label{font-size:24px}.logo-text{font-size:64px}}@media (max-width:960px){.bubble-row{gap:24px}.bubble{width:180px;height:180px}.bubble-icon{font-size:34px}.bubble-label{font-size:18px}.bubble-sub{font-size:9px}.divider{gap:10px}.divider-line{width:20px}.header{top:10%}.logo-text{font-size:44px}.subtitle{font-size:11px;letter-spacing:3px}.main-content{gap:28px}}@media (max-width:768px){.bubble-row{flex-direction:column;gap:16px}.bubble{width:160px;height:160px}.bubble-icon{font-size:32px}.bubble-label{font-size:18px}.divider{flex-direction:row}.divider-line{width:24px}.header{top:6%}.logo-text{font-size:40px;letter-spacing:-2px}.version{font-size:11px}.subtitle{font-size:10px;letter-spacing:2px}.main-content{gap:20px}.sys-info{gap:14px;font-size:10px}.bg-terminal{font-size:10px;max-width:280px;top:16px;left:16px}}@media (max-width:480px){.root-container{padding:12px}.bubble{width:130px;height:130px}.bubble-icon{font-size:28px}.bubble-label{font-size:16px}.bubble-sub{font-size:8px;letter-spacing:1px}.bubble-ring{inset:-4px}.bubble-glow{inset:-6px}.divider-line{width:16px}.divider-text{font-size:9px;letter-spacing:2px}.header{top:5%}.logo-text{font-size:34px;letter-spacing:-1px}.logo-row{gap:8px}.subtitle{font-size:9px;letter-spacing:2px}.version{font-size:10px}.sys-info{gap:10px;font-size:9px}.bg-terminal{display:none}.boot-text{font-size:11px}}@media (max-width:360px){.bubble{width:110px;height:110px}.bubble-icon{font-size:24px}.bubble-label{font-size:14px}.bubble-sub{font-size:7px}.logo-text{font-size:28px}.subtitle,.sys-info{font-size:8px}.sys-info{gap:8px}}@media (max-height:500px) and (orientation:landscape){.bubble-row{flex-direction:row;gap:16px}.bubble{width:120px;height:120px}.bubble-icon{font-size:26px}.bubble-label{font-size:14px}.bubble-sub{font-size:8px}.header{top:4%}.logo-text{font-size:30px}.subtitle{font-size:9px}.main-content{gap:12px}.sys-info{font-size:9px;gap:12px}.bg-terminal{display:none}.boot-ascii{font-size:clamp(6px,1.2vw + 2px,10px)}}@media (prefers-reduced-motion:reduce){.particle{animation:none;display:none}.status-on,.term-cursor{animation:none;opacity:1}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}#__next,#root,body,html{height:100%}body{font-family:JetBrains Mono,Roboto Mono,monospace;background:#050508;color:#0f8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.page-404{height:100vh;height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#060609,#0d1520 50%,#09111a);padding:24px;text-align:center}.ascii-404,.page-404{font-family:JetBrains Mono,monospace}.ascii-404{color:#ff6b6b;white-space:pre;font-size:clamp(10px,2vw + 6px,18px);line-height:1.15;margin-bottom:24px;text-shadow:0 0 20px hsla(0,100%,71%,.15)}.text-404{max-width:400px}.msg-404{font-size:18px;color:#e2e8f0;font-weight:600;margin-bottom:8px}.sub-404{font-size:13px;color:#6b7280;line-height:1.6;margin-bottom:24px}.links-404{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.link-404{font-size:13px;color:#6b7280;text-decoration:none;padding:8px 18px;border-radius:6px;border:1px solid hsla(0,0%,100%,.06);transition:color .2s,border-color .2s,background .2s}.link-404:hover{color:#e2e8f0;border-color:hsla(0,0%,100%,.15);background:hsla(0,0%,100%,.04)}.link-primary{color:#4ade80;border-color:rgba(74,222,128,.2)}.link-primary:hover{color:#4ade80;border-color:rgba(74,222,128,.4);background:rgba(74,222,128,.08)}:root{--fg:#0f8;--fg-dim:#98ffb8;--accent:#ffd66b;--bg-deep:#050508;--bg-card:#0a0a0f;--border:hsla(0,0%,100%,.06);--glow-green:rgba(0,255,136,.08);--glow-accent:rgba(255,211,107,.12)}body{margin:0;padding:0;background:var(--bg-deep)}.terminal-body::-webkit-scrollbar{display:none}.terminal-body{-ms-overflow-style:none;scrollbar-width:none}.terminal-wrapper{height:100vh;height:100dvh;background:var(--bg-deep);padding:24px}.terminal-centered,.terminal-wrapper{display:flex;align-items:center;justify-content:center}.terminal-centered{width:100%;max-width:960px}.terminal-card{width:100%;min-height:420px;max-height:85vh;max-height:85dvh;background:var(--bg-card);color:var(--fg);padding:0;border:1px solid var(--border);border-radius:10px;position:relative;overflow:hidden;font-family:JetBrains Mono,Roboto Mono,Consolas,monospace;font-size:13px;line-height:1.5;box-shadow:0 0 0 1px rgba(0,0,0,.8),0 20px 80px rgba(0,0,0,.6),0 0 60px rgba(0,255,136,.02);display:flex;flex-direction:column}.terminal-card:after{content:"";position:absolute;inset:0;background-image:linear-gradient(transparent 50%,rgba(0,0,0,.03) 0);background-size:100% 2px;pointer-events:none;z-index:10}.terminal-topbar{height:40px;display:flex;align-items:center;padding:0 14px;background:hsla(0,0%,100%,.02);border-bottom:1px solid var(--border);flex-shrink:0}.terminal-topbar-title{flex:1 1;text-align:center;font-size:12px;color:hsla(0,0%,100%,.3);font-family:JetBrains Mono,monospace;letter-spacing:.5px;margin-right:52px}.terminal-dots{display:flex;align-items:center;gap:7px}.dot{width:12px;height:12px;border-radius:50%;display:inline-block;transition:opacity .15s}.dot:hover{opacity:.8}.dot-red{background:#ff5f56}.dot-yellow{background:#ffbd2e}.dot-green{background:#27c93f}.terminal-body{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:16px 20px}.banner-container,.terminal-body{display:flex;flex-direction:column}.banner-container{gap:4px;align-items:flex-start;margin-bottom:12px;border-bottom:1px solid var(--border);padding-bottom:12px}.banner-ascii{white-space:pre;font-family:JetBrains Mono,monospace;color:var(--accent);margin:0;font-size:clamp(8px,1.8vw + 6px,16px);letter-spacing:.5px;line-height:1.15;text-shadow:0 0 20px var(--glow-accent),0 0 40px rgba(255,180,60,.06);overflow:hidden;max-width:100%}.banner-sub{color:hsla(0,0%,100%,.35);font-size:11px;letter-spacing:2px;text-transform:uppercase}.banner-info,.banner-sub{font-family:JetBrains Mono,monospace;margin-top:4px}.banner-info{color:var(--fg-dim);font-size:12px;opacity:.8;line-height:1.6}.banner-info .banner-line{margin:1px 0}.banner-info strong{color:var(--fg);font-weight:500}.lines{flex:1 1;overflow-y:auto;overflow-x:hidden;z-index:2;padding-right:0}.typed-line{white-space:pre-wrap;margin-bottom:4px;color:var(--fg-dim);word-break:break-word}.input-row{display:flex;align-items:center;gap:8px;margin-top:8px;z-index:2;flex-shrink:0;min-height:28px}.prompt{font-weight:700;white-space:nowrap;text-shadow:0 0 8px var(--glow-green)}.input-row input,.prompt{color:var(--fg);font-family:JetBrains Mono,monospace;font-size:13px}.input-row input{background:none;border:none;width:100%;outline:none;caret-color:var(--fg);padding:0}input:focus{outline:none}.loader-overlay{flex:1 1;display:flex;align-items:center;justify-content:center;padding:20px}.loader-box{max-width:90%;padding:24px;border-radius:8px;text-align:center}.loader-lines{color:var(--accent);white-space:pre;margin-bottom:16px;font-size:clamp(8px,1.8vw + 6px,16px);line-height:1.15;text-shadow:0 0 20px var(--glow-accent)}.loader-lines,.loader-progress{font-family:JetBrains Mono,monospace}.loader-progress{color:var(--fg);font-size:13px;text-shadow:0 0 10px var(--glow-green)}.loader-bar{width:280px;max-width:100%;height:3px;background:hsla(0,0%,100%,.06);border-radius:2px;overflow:hidden;margin:12px auto 0}.loader-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#ff8a00);border-radius:2px;transition:width 60ms linear;box-shadow:0 0 8px rgba(255,180,60,.4)}@media (max-width:768px){.terminal-wrapper{padding:12px}.terminal-centered{max-width:100%}.terminal-card{min-height:300px;border-radius:8px}.terminal-body{padding:12px 14px}.terminal-topbar-title{display:none}.banner-ascii{font-size:clamp(6px,1.6vw + 4px,13px)}}@media (max-width:480px){.terminal-wrapper{padding:0}.terminal-card{min-height:100vh;min-height:100dvh;max-height:none;border-radius:0;border:none;box-shadow:none}.terminal-topbar{padding:0 10px;height:36px}.terminal-body{padding:10px 12px}.banner-ascii{font-size:clamp(5px,1.3vw + 3px,11px)}.banner-sub{font-size:10px}.banner-info{font-size:11px}.banner-info .banner-line{margin:1px 0}.input-row input,.prompt,.typed-line{font-size:12px}.typed-line{margin-bottom:3px}.loader-lines{font-size:clamp(6px,1.3vw + 3px,11px)}.loader-progress{font-size:12px}}@media (max-width:360px){.banner-ascii{font-size:clamp(4px,1.1vw + 2px,9px)}.banner-info{font-size:10px}.prompt{font-size:11px}}.terminal-too-small{display:none;position:fixed;inset:0;z-index:9999;background:var(--bg-deep);flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;font-family:JetBrains Mono,monospace}.terminal-too-small pre{color:var(--accent);font-size:10px;line-height:1.15;white-space:pre;margin-bottom:16px}.terminal-too-small .tts-msg{color:var(--fg);font-size:14px;font-weight:600;margin-bottom:8px}.terminal-too-small .tts-sub{color:#6b7280;font-size:12px;line-height:1.5}.terminal-too-small .tts-cmd{margin-top:16px;padding:8px 16px;border-radius:6px;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.06);color:var(--fg);font-size:12px}.terminal-too-small .tts-cmd span{color:var(--accent)}@media (max-height:399px),(max-width:319px){.terminal-too-small{display:flex}.terminal-wrapper{display:none}}@media (max-height:500px) and (orientation:landscape){.terminal-wrapper{padding:4px}.terminal-card{min-height:100vh;min-height:100dvh;max-height:none;border-radius:0;border:none}.terminal-topbar{height:30px}.banner-container{margin-bottom:6px;padding-bottom:6px}.banner-ascii{font-size:clamp(5px,.8vw + 3px,10px)}.banner-info{font-size:10px;line-height:1.3}}.resume-page{--accent-primary:#4ade80;--accent-glow:rgba(74,222,128,.4);min-height:100vh;min-height:100dvh;background:linear-gradient(180deg,#060609,#0d1520 50%,#09111a);font-family:JetBrains Mono,Fira Code,monospace;color:#e2e8f0;overflow-x:hidden;position:relative}.resume-cta,.resume-hero,.resume-section{visibility:visible}.resume-scanlines{position:fixed;inset:0;pointer-events:none;opacity:.3;z-index:50;background:repeating-linear-gradient(0deg,transparent,transparent 2px,hsla(0,0%,100%,.008) 0,hsla(0,0%,100%,.008) 4px)}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;background:var(--accent-primary);z-index:60}.desktop-only{display:flex}.mobile-only{display:none}.resume-nav{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;gap:12px;background:rgba(6,6,9,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid hsla(0,0%,100%,.04)}.resume-nav-logo{font-size:20px;font-weight:700;letter-spacing:-1px;background:linear-gradient(135deg,#2d8cf0,#8be04b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-decoration:none;flex-shrink:0}.resume-nav-sections{display:flex;gap:4px;align-items:center;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}.resume-nav-sections::-webkit-scrollbar{display:none}.nav-section-btn{background:none;border:none;cursor:pointer;color:#4b5563;font-family:inherit;font-size:11px;letter-spacing:.5px;text-transform:uppercase;padding:6px 10px;border-radius:4px;transition:color .2s,background .2s;white-space:nowrap}.nav-section-btn:hover{color:#9ca3af}.nav-section-btn.active{color:var(--accent-primary);background:hsla(0,0%,100%,.04)}.resume-nav-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.accent-toggle{display:flex;gap:6px;align-items:center}.accent-dot{width:14px;height:14px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .2s,transform .2s;padding:0}.accent-dot:hover{transform:scale(1.2)}.accent-dot.active{border-color:hsla(0,0%,100%,.6);transform:scale(1.15)}.resume-dl-btn{background:rgba(74,222,128,.1);border:1px solid rgba(74,222,128,.2);color:var(--accent-primary);padding:6px 14px;border-radius:6px;cursor:pointer;font-family:inherit;font-size:11px;letter-spacing:1px;text-transform:uppercase;transition:background .2s,border-color .2s;text-decoration:none}.resume-dl-btn:hover{background:rgba(74,222,128,.2);border-color:rgba(74,222,128,.4)}.mobile-menu-btn{background:none;border:none;color:#9ca3af;cursor:pointer;padding:6px;align-items:center;transition:color .2s}.mobile-menu-btn:hover{color:var(--accent-primary)}.mobile-nav-drawer{position:fixed;top:52px;left:0;right:0;z-index:39;background:rgba(6,6,9,.95);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid hsla(0,0%,100%,.06);padding:12px 16px;display:flex;flex-direction:column;gap:4px}.mobile-nav-item{background:none;border:none;cursor:pointer;color:#6b7280;font-family:inherit;font-size:13px;padding:10px 12px;border-radius:6px;text-align:left;transition:color .2s,background .2s;text-decoration:none;display:block}.mobile-nav-item.active,.mobile-nav-item:hover{color:var(--accent-primary);background:hsla(0,0%,100%,.04)}.mobile-nav-divider{height:1px;background:hsla(0,0%,100%,.06);margin:4px 0}.back-to-top{position:fixed;bottom:24px;right:24px;z-index:30;width:40px;height:40px;border-radius:50%;background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.1);color:var(--accent-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s,border-color .2s}.back-to-top:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.2)}.resume-content{max-width:800px;margin:0 auto;padding:80px 32px}.resume-hero{margin-bottom:48px}.resume-name{font-size:42px;font-weight:700;letter-spacing:-2px;margin:0 0 4px;background:linear-gradient(135deg,#2d8cf0,#8be04b);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.resume-title{font-size:16px;color:var(--accent-primary);font-weight:400;margin:0 0 16px}.resume-bio{font-size:14px;color:#9ca3af;line-height:1.7;max-width:600px}.resume-meta{display:flex;gap:20px;margin-top:20px;flex-wrap:wrap}.resume-meta-item{font-size:12px;color:#6b7280;display:flex;align-items:center;gap:6px}.resume-meta-item svg{color:var(--accent-primary);flex-shrink:0}.resume-meta-item a{color:#6b7280;text-decoration:none;transition:color .2s}.resume-available-badge,.resume-meta-item a:hover{color:var(--accent-primary)}.resume-available-badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.5px;padding:6px 14px;border-radius:20px;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.06);margin-bottom:16px}.available-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--accent-primary);box-shadow:0 0 6px var(--accent-glow);animation:pulse 2s ease-in-out infinite}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-bottom:48px}.stat-card{padding:20px 16px;border-radius:8px;text-align:center;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.04);transition:border-color .2s}.stat-card:hover{border-color:hsla(0,0%,100%,.1)}.stat-icon{color:var(--accent-primary);margin-bottom:8px}.stat-value{font-size:28px;font-weight:700;color:#e2e8f0;margin-bottom:4px}.stat-label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:1px}.heatmap-container{overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;position:relative}.heatmap-container::-webkit-scrollbar{display:none}.heatmap-scroll-hint{display:none;font-size:10px;color:#4b5563;margin-bottom:6px;text-align:right}.heatmap-grid{display:grid;grid-template-rows:repeat(7,11px);grid-auto-flow:column;grid-auto-columns:11px;grid-gap:3px;gap:3px;width:max-content}.heatmap-cell{width:11px;height:11px;border-radius:2px;transition:background .3s}.heatmap-0{background:hsla(0,0%,100%,.04)}.heatmap-1{background:color-mix(in srgb,var(--accent-primary) 20%,#0d1520)}.heatmap-2{background:color-mix(in srgb,var(--accent-primary) 40%,#0d1520)}.heatmap-3{background:color-mix(in srgb,var(--accent-primary) 65%,#0d1520)}.heatmap-4{background:var(--accent-primary)}.heatmap-legend{display:flex;align-items:center;gap:4px;margin-top:8px;justify-content:flex-end}.heatmap-legend .heatmap-cell{width:11px;height:11px}.heatmap-legend-label{font-size:10px;color:#6b7280;margin:0 4px}.resume-section{margin-bottom:56px;scroll-margin-top:70px}.resume-section-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.resume-section-label{font-size:11px;color:var(--accent-primary);font-weight:600;letter-spacing:3px;text-transform:uppercase;white-space:nowrap}.resume-section-line{flex:1 1;height:1px;background:linear-gradient(90deg,var(--accent-glow),transparent)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:12px;gap:12px}.skill-card{padding:14px 16px;border-radius:8px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.04);transition:border-color .2s,background .2s}.skill-card:hover{border-color:hsla(0,0%,100%,.1);background:hsla(0,0%,100%,.04)}.skill-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.skill-name{font-size:13px;font-weight:600;color:#e2e8f0}.skill-pct{font-size:11px;color:var(--accent-primary);font-weight:500}.skill-bar-bg{height:3px;background:hsla(0,0%,100%,.06);border-radius:2px;overflow:hidden}.skill-bar-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--accent-primary),#2d8cf0)}.timeline-item{position:relative;padding-left:24px;padding-bottom:32px;border-left:1px solid hsla(0,0%,100%,.06)}.timeline-item:last-child{padding-bottom:0}.timeline-dot{position:absolute;left:-5px;top:2px;width:9px;height:9px;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 8px var(--accent-glow)}.timeline-date{font-size:11px;color:var(--accent-primary);font-weight:500;letter-spacing:1px;margin-bottom:4px}.timeline-title{font-size:15px;font-weight:600;color:#e2e8f0;margin-bottom:4px}.timeline-company{font-size:13px;color:#9ca3af;margin-bottom:2px}.timeline-location{font-size:11px;color:#6b7280;margin-bottom:6px}.timeline-desc{font-size:13px;color:#9ca3af;line-height:1.6}.timeline-dot-blue{background:#2d8cf0;box-shadow:0 0 8px rgba(45,140,240,.4)}.timeline-skills-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.timeline-skill-tag{font-size:10px;padding:2px 8px;border-radius:4px;background:rgba(45,140,240,.1);color:#60a5fa;border:1px solid rgba(45,140,240,.15)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.project-card{padding:18px;border-radius:8px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.04);transition:border-color .3s,background .2s,box-shadow .3s;text-decoration:none;color:inherit;display:block}.project-card:hover{border-color:rgba(45,140,240,.3);background:hsla(0,0%,100%,.04);box-shadow:0 0 20px rgba(45,140,240,.08)}.project-name{font-size:14px;font-weight:600;color:#e2e8f0;margin-bottom:6px}.project-desc{font-size:12px;color:#9ca3af;line-height:1.5;margin-bottom:10px}.project-tags{display:flex;gap:6px;flex-wrap:wrap}.project-tag{font-size:10px;padding:2px 8px;border-radius:4px;background:rgba(45,140,240,.1);color:#60a5fa;border:1px solid rgba(45,140,240,.15)}.tech-grid{display:flex;flex-wrap:wrap;gap:8px}.tech-pill{font-size:12px;padding:6px 14px;border-radius:6px;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.06);color:#9ca3af;transition:border-color .2s,color .2s}.tech-pill:hover{border-color:hsla(0,0%,100%,.15);color:#e2e8f0}.languages-row{display:flex;gap:16px;flex-wrap:wrap}.language-card{padding:14px 20px;border-radius:8px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.04);min-width:110px;text-align:center;transition:border-color .2s}.language-card:hover{border-color:hsla(0,0%,100%,.1)}.language-name{font-size:14px;font-weight:600;color:#e2e8f0;margin-bottom:4px}.language-level{font-size:11px;color:#6b7280}.resume-cta{text-align:center;padding-bottom:20px}.cta-text{font-size:14px;color:#9ca3af;margin-bottom:20px;line-height:1.6}.cta-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.cta-btn{display:inline-flex;align-items:center;padding:10px 20px;border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s,border-color .2s,transform .2s;cursor:pointer}.cta-btn:hover{transform:translateY(-2px)}.cta-btn-primary{background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.1);color:var(--accent-primary)}.cta-btn-primary:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.2)}.cta-btn-secondary{background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.06);color:#9ca3af}.cta-btn-secondary:hover{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.12);color:#e2e8f0}.resume-footer{text-align:center;padding:40px 32px;border-top:1px solid hsla(0,0%,100%,.04);font-size:11px;color:#4b5563}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:960px){.resume-nav-sections{gap:2px}.nav-section-btn{font-size:10px;padding:5px 7px}.resume-content{padding:80px 24px 60px}}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:flex!important}.resume-nav{padding:10px 16px}.resume-content{padding:72px 20px 60px}.resume-name{font-size:32px;letter-spacing:-1px}.resume-title{font-size:14px}.resume-bio{font-size:13px}.resume-meta{flex-direction:column;gap:10px}.stats-row{grid-template-columns:repeat(3,1fr);gap:10px}.stat-card{padding:16px 10px}.stat-value{font-size:22px}.stat-label{font-size:10px}.heatmap-scroll-hint{display:block}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.cta-buttons{flex-direction:column;align-items:center}.cta-btn{width:100%;max-width:280px;justify-content:center}}@media (max-width:480px){.resume-content{padding:64px 16px 48px}.resume-name{font-size:26px}.resume-available-badge{font-size:10px;padding:5px 10px}.stats-row{gap:8px}.stat-card{padding:12px 8px}.stat-value{font-size:20px}.stat-icon{margin-bottom:4px}.heatmap-cell{width:9px;height:9px}.heatmap-grid{grid-template-rows:repeat(7,9px);grid-auto-columns:9px;gap:2px}.projects-grid,.skills-grid{grid-template-columns:1fr}.languages-row{gap:10px}.language-card{min-width:90px;padding:10px 14px;flex:1 1}.resume-section{margin-bottom:40px}.resume-section-header{margin-bottom:16px}.timeline-title{font-size:14px}.timeline-desc{font-size:12px}.tech-pill{font-size:11px;padding:4px 10px}.back-to-top{bottom:16px;right:16px;width:36px;height:36px}.accent-toggle{gap:5px}.accent-dot{width:12px;height:12px}}@media (max-width:360px){.resume-name{font-size:22px}.resume-meta-item{font-size:11px}.stat-value{font-size:18px}.resume-nav{padding:8px 12px}.resume-nav-logo{font-size:18px}}@media (prefers-reduced-motion:reduce){.available-dot{animation:none;opacity:1}}.win-page{height:100vh;height:100dvh;margin:0;background:#000;position:relative;overflow:hidden;touch-action:none}.win-canvas{display:block;width:100%;height:100%;touch-action:none}.win-overlay{position:fixed;inset:0;background:#000;z-index:9999;display:grid;place-items:center;color:#ffd66b;transition:opacity .6s ease;opacity:1;padding:20px}.win-overlay-inner{text-align:center;width:100%;max-width:360px}.win-overlay-title{font-family:VT323,monospace;font-size:28px;margin-bottom:12px}.win-overlay-bar{height:4px;width:100%;max-width:320px;margin:0 auto;background:hsla(0,0%,100%,.06);border-radius:2px;overflow:hidden}.win-overlay-fill{height:100%;width:0;background:linear-gradient(90deg,#ffd66b,#ff8a00);border-radius:2px;transition:width .1s linear}.win-back-btn{position:fixed;top:16px;left:16px;z-index:10000;background:rgba(0,0,0,.6);border:1px solid hsla(0,0%,100%,.15);color:#ffd66b;font-family:VT323,monospace;font-size:16px;padding:6px 14px;border-radius:6px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:opacity .3s,background .2s}.win-back-btn:hover{background:rgba(0,0,0,.8);border-color:hsla(0,0%,100%,.3)}.win-mobile-hint{display:none;position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:10000;font-family:VT323,monospace;font-size:14px;color:rgba(255,211,107,.6);background:rgba(0,0,0,.7);border:1px solid hsla(0,0%,100%,.08);padding:8px 16px;border-radius:8px;text-align:center;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:hintFade 6s ease forwards}@keyframes hintFade{0%,70%{opacity:1}to{opacity:0;pointer-events:none}}@media (max-width:768px){.win-overlay-title{font-size:24px}.win-back-btn{font-size:14px;padding:5px 12px;top:12px;left:12px}}@media (max-width:480px) and (orientation:portrait){.win-mobile-hint{display:block}.win-overlay-title{font-size:20px}.win-back-btn{font-size:13px;padding:4px 10px;top:10px;left:10px;border-radius:4px}}@media (max-height:500px) and (orientation:landscape){.win-back-btn{top:8px;left:8px;font-size:13px;padding:4px 10px}}.ps-too-small{display:none;position:fixed;inset:0;z-index:99999;background:#012456;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;font-family:Consolas,VT323,monospace}.ps-too-small .ps-prompt{color:#ff0;font-size:13px;margin-bottom:12px}.ps-too-small .ps-error{color:#ff6b6b;font-size:13px;line-height:1.6;max-width:300px;text-align:left}.ps-too-small .ps-error b{color:#fff}.ps-too-small .ps-suggestion{color:#ccc;font-size:12px;margin-top:16px;padding:8px 16px;border-radius:4px;background:hsla(0,0%,100%,.06)}@media (max-height:399px),(max-width:319px){.ps-too-small{display:flex}.win-page .win-back-btn,.win-page .win-canvas,.win-page .win-mobile-hint{display:none}}@media (max-width:360px){.win-overlay-title{font-size:18px}.win-overlay-bar{max-width:240px}.win-back-btn{font-size:12px;padding:3px 8px}}