.glitch{position:relative;display:inline-block}.glitch::after,.glitch::before{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.glitch::before{color:var(--cyan);animation:5s steps(1) infinite glitchBefore;clip-path:inset(0 0 60% 0)}.glitch::after{color:var(--magenta);animation:5s steps(1) infinite glitchAfter;clip-path:inset(55% 0 0 0)}@keyframes glitchBefore{0%,100%,88%,96%{transform:translate(0);opacity:0}90%{transform:translate(-4px,0);opacity:.9}92%{transform:translate(4px,0);opacity:.9}94%{transform:translate(-2px,0);opacity:.7}}@keyframes glitchAfter{0%,100%,88%,97%{transform:translate(0);opacity:0}91%{transform:translate(4px,0);opacity:.9}93%{transform:translate(-4px,0);opacity:.9}95%{transform:translate(2px,0);opacity:.6}}@keyframes scanH{0%{transform:translateX(-110%)}100%{transform:translateX(110%)}}@keyframes scanV{0%{transform:translateY(-110%)}100%{transform:translateY(110%)}}@keyframes scanBio{0%,100%{top:20px;opacity:1}50%{top:calc(100% - 20px);opacity:.4}}@keyframes pulse{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 8px currentColor}50%{opacity:.5;transform:scale(.88);box-shadow:0 0 4px currentColor}}@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}@keyframes statusBlink{0%,100%,90%{opacity:1}95%{opacity:0}}@keyframes float{0%,100%{transform:translateY(0) translateX(-50%)}50%{transform:translateY(-10px) translateX(-50%)}}@keyframes ringRotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ringRotateRev{from{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes fadeUp{from{opacity:0;transform:translateY(40px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideInLeft{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes scrollDown{0%,100%{opacity:1;transform:translateY(0)}50%{opacity:.3;transform:translateY(6px)}}@keyframes gridFade{0%{opacity:.2}100%{opacity:.7}}@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}@keyframes dataStream{0%{transform:scaleX(0);transform-origin:left;opacity:0}30%{transform:scaleX(1);transform-origin:left;opacity:1}70%{transform:scaleX(1);transform-origin:right;opacity:1}100%{transform:scaleX(0);transform-origin:right;opacity:0}}@keyframes preExit{0%{clip-path:inset(0 0 0% 0);opacity:1}100%{clip-path:inset(0 0 100% 0);opacity:0}}@keyframes titleReveal{from{opacity:0;transform:translateY(50px);letter-spacing:.3em;filter:blur(12px)}to{opacity:1;transform:translateY(0);letter-spacing:.05em;filter:blur(0)}}@keyframes countFlip{from{transform:translateY(30%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes borderGlow{0%,100%{box-shadow:0 0 8px var(--cyan-glow)}50%{box-shadow:0 0 24px var(--cyan-glow),0 0 48px var(--cyan-glow)}}@keyframes ripple{0%{transform:translate(-50%,-50%) scale(0);opacity:.8}100%{transform:translate(-50%,-50%) scale(3);opacity:0}}.animate-fade-up{animation:.8s cubic-bezier(.25,.46,.45,.94) both fadeUp}.animate-fade-in{animation:.8s cubic-bezier(.25,.46,.45,.94) both fadeIn}.animate-slide-left{animation:.8s cubic-bezier(.25,.46,.45,.94) both slideInLeft}.animate-slide-right{animation:.8s cubic-bezier(.25,.46,.45,.94) both slideInRight}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}:root{--bg-0:#030305;--bg-1:#07070e;--bg-2:#0d0d1c;--bg-card:rgba(10, 10, 22, 0.92);--cyan:#00f5ff;--cyan-dim:rgba(0, 245, 255, 0.10);--cyan-glow:rgba(0, 245, 255, 0.45);--purple:#bf00ff;--purple-dim:rgba(191, 0, 255, 0.10);--purple-glow:rgba(191, 0, 255, 0.45);--magenta:#ff0080;--magenta-dim:rgba(255, 0, 128, 0.10);--green:#00ff9f;--yellow:#ffcc00;--t0:#ffffff;--t1:#e8eaf6;--t2:#a8b2d8;--t3:#526070;--border:rgba(0, 245, 255, 0.14);--border2:rgba(191, 0, 255, 0.14);--glow-cyan:0 0 10px var(--cyan-glow),0 0 30px rgba(0,245,255,0.18),0 0 60px rgba(0,245,255,0.08);--glow-purple:0 0 10px var(--purple-glow),0 0 30px rgba(191,0,255,0.18),0 0 60px rgba(191,0,255,0.08);--glow-magenta:0 0 10px rgba(255,0,128,0.45),0 0 30px rgba(255,0,128,0.18);--f-display:'Orbitron',sans-serif;--f-body:'Rajdhani',sans-serif;--f-mono:'Share Tech Mono',monospace;--nav-h:80px;--sec-py:120px;--ease:cubic-bezier(0.25, 0.46, 0.45, 0.94);--ease-back:cubic-bezier(0.34, 1.56, 0.64, 1);--z-pre:9999;--z-cursor:9998;--z-nav:1000}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg-0);color:var(--t1);font-family:var(--f-body);line-height:1.6;cursor:none;overflow-x:hidden}body.loading{overflow:hidden}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg-1)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--purple));border-radius:2px}::selection{background:var(--cyan-dim);color:var(--cyan)}body::after{content:'';position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.04) 3px,rgba(0,0,0,.04) 4px);pointer-events:none;z-index:var(--z-cursor)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:none;border:none;background:0 0;font-family:inherit}.cyan{color:var(--cyan)}.purple{color:var(--purple)}.magenta{color:var(--magenta)}.green{color:var(--green)}.yellow{color:var(--yellow)}#cursor-dot{position:fixed;width:8px;height:8px;background:var(--cyan);border-radius:50%;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);box-shadow:var(--glow-cyan);transition:transform .12s var(--ease),background .2s,opacity .2s}#cursor-ring{position:fixed;width:38px;height:38px;border:1.5px solid var(--cyan);border-radius:50%;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);transition:width .35s var(--ease),height .35s var(--ease),border-color .3s,opacity .3s;opacity:.65}#cursor-ring.hover{width:64px;height:64px;border-color:var(--magenta);border-width:2px;opacity:.9}#cursor-dot.shrink{transform:translate(-50%,-50%) scale(.4)}#preloader{position:fixed;inset:0;background:var(--bg-0);z-index:var(--z-pre);display:flex;align-items:center;justify-content:center;animation:7s forwards preloaderFallback}@keyframes preloaderFallback{0%,90%{opacity:1;pointer-events:all}100%{opacity:0;pointer-events:none}}.pre-grid{position:absolute;inset:0;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:56px 56px;animation:2.5s ease-in-out infinite alternate gridFade}.pre-content{position:relative;width:min(580px,90vw);text-align:center}.pre-logo{font-family:var(--f-display);font-size:clamp(2rem, 5vw, 3.2rem);font-weight:900;letter-spacing:.25em;color:var(--cyan);text-shadow:var(--glow-cyan);margin-bottom:4px}.pre-logo .lb{color:var(--purple)}.pre-tagline{font-family:var(--f-mono);font-size:.68rem;color:var(--t3);letter-spacing:.3em;text-transform:uppercase;margin-bottom:32px}.pre-terminal{background:rgba(0,245,255,.025);border:1px solid var(--border);border-radius:4px;padding:20px 24px;text-align:left;min-height:190px;margin-bottom:20px;position:relative;overflow:hidden}.pre-terminal::before{content:'';position:absolute;top:0;left:0;right:0;height:1.5px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:2.2s linear infinite scanH}.boot-line{font-family:var(--f-mono);font-size:.76rem;color:var(--t3);margin:3px 0;opacity:0;transform:translateX(-8px);transition:opacity .25s,transform .25s}.boot-line.visible{opacity:1;transform:translateX(0)}.boot-line.ok{color:var(--green)}.boot-line.warn{color:var(--yellow)}.boot-line.err{color:var(--magenta)}.pre-bar-wrap{display:flex;align-items:center;gap:14px;margin-bottom:12px}.pre-bar{flex:1;height:2px;background:rgba(0,245,255,.08);border-radius:2px;overflow:hidden;position:relative}.pre-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--purple),var(--cyan));border-radius:2px;transition:width .15s linear;position:relative}.pre-fill::after{content:'';position:absolute;right:-1px;top:-5px;width:2px;height:12px;background:var(--cyan);box-shadow:var(--glow-cyan)}.pre-pct{font-family:var(--f-mono);font-size:.78rem;color:var(--cyan);min-width:42px;text-align:right}.pre-status{font-family:var(--f-mono);font-size:.65rem;color:var(--t3);letter-spacing:.25em;text-transform:uppercase;animation:.9s step-end infinite blink}#nav-hud{position:fixed;top:0;left:0;right:0;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 40px;z-index:var(--z-nav);transition:background .4s,border-color .4s}#nav-hud.scrolled{background:rgba(3,3,5,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.nav-left{display:flex;flex-direction:column;gap:3px}.nav-logo{font-family:var(--f-display);font-size:1.05rem;font-weight:700;letter-spacing:.18em;color:var(--cyan);text-shadow:var(--glow-cyan)}.nav-logo .lb{color:var(--purple)}.nav-online{display:flex;align-items:center;gap:5px;font-family:var(--f-mono);font-size:.6rem;color:var(--t3);letter-spacing:.18em;text-transform:uppercase}.nav-dot{width:5px;height:5px;background:var(--green);border-radius:50%;box-shadow:0 0 8px var(--green);animation:2.2s ease-in-out infinite pulse}.nav-links{display:flex;gap:4px}.nav-link{position:relative;display:flex;align-items:center;gap:6px;padding:8px 20px;font-family:var(--f-display);font-size:.68rem;letter-spacing:.15em;color:var(--t3);border:1px solid transparent;border-radius:2px;overflow:hidden;transition:color .3s,border-color .3s}.nav-link::before{content:'';position:absolute;inset:0;background:var(--cyan-dim);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.nav-link:hover{color:var(--cyan);border-color:var(--border)}.nav-link:hover::before{transform:scaleX(1)}.nav-idx{color:var(--cyan);font-size:.6rem;opacity:.55}.nav-right{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.nav-time{font-family:var(--f-mono);font-size:.88rem;color:var(--cyan);letter-spacing:.08em}.nav-coords{font-family:var(--f-mono);font-size:.58rem;color:var(--t3);letter-spacing:.12em}.nav-menu-btn{display:none;flex-direction:column;gap:5px}.nav-menu-btn span{display:block;width:24px;height:1px;background:var(--cyan);transition:transform .3s,opacity .3s}.nav-mobile{display:none;position:fixed;top:var(--nav-h);left:0;right:0;background:rgba(3,3,5,.96);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:24px 40px;flex-direction:column;gap:12px;z-index:calc(var(--z-nav) - 1)}.nav-mobile.open{display:flex}.nav-mobile .nav-link{font-size:.9rem;padding:12px 16px;border:1px solid var(--border)}#hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}#hero-canvas{position:absolute;inset:0;z-index:0}.hero-content{position:relative;z-index:1;padding:0 10vw;padding-top:var(--nav-h);max-width:860px}.hero-overline{display:flex;align-items:center;gap:14px;margin-bottom:28px;font-family:var(--f-mono);font-size:.68rem;color:var(--t3);letter-spacing:.28em;text-transform:uppercase;opacity:0;animation:fadeUp .7s var(--ease) .3s both}.overline-bar{width:48px;height:1px;background:var(--border)}.hero-name{font-family:var(--f-display);font-size:clamp(2.8rem, 8vw, 7rem);font-weight:900;line-height:1;letter-spacing:.05em;color:var(--t0);margin-bottom:24px;opacity:0;animation:titleReveal 1s var(--ease) .5s both}.hero-subtitle{font-family:var(--f-mono);font-size:clamp(.9rem, 2.2vw, 1.25rem);color:var(--cyan);margin-bottom:28px;min-height:2.2em;opacity:0;animation:fadeUp .7s var(--ease) .9s both}.hero-prefix{color:var(--t3);margin-right:4px}.hero-desc{font-size:1.05rem;color:var(--t2);max-width:480px;line-height:1.9;margin-bottom:44px;opacity:0;animation:fadeUp .7s var(--ease) 1.1s both}.hero-cta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:64px;opacity:0;animation:fadeUp .7s var(--ease) 1.3s both}.btn-primary{position:relative;display:inline-flex;align-items:center;gap:8px;padding:14px 34px;font-family:var(--f-display);font-size:.78rem;font-weight:700;letter-spacing:.15em;color:var(--bg-0);background:linear-gradient(135deg,var(--cyan),var(--purple));border-radius:2px;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s}.btn-primary::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--purple),var(--magenta));opacity:0;transition:opacity .35s}.btn-primary:hover{transform:translateY(-3px);box-shadow:var(--glow-cyan)}.btn-primary:hover::before{opacity:1}.btn-primary span{position:relative;z-index:1}.btn-primary .bk{color:rgba(0,0,0,.35)}.btn-secondary{position:relative;display:inline-flex;align-items:center;gap:8px;padding:14px 34px;font-family:var(--f-display);font-size:.78rem;font-weight:700;letter-spacing:.15em;color:var(--cyan);border:1px solid var(--border);border-radius:2px;overflow:hidden;transition:border-color .3s,transform .3s var(--ease),box-shadow .3s}.btn-secondary::before{content:'';position:absolute;inset:0;background:var(--cyan-dim);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.btn-secondary:hover{border-color:var(--cyan);transform:translateY(-3px);box-shadow:var(--glow-cyan)}.btn-secondary:hover::before{transform:scaleX(1)}.btn-secondary span{position:relative;z-index:1}.hero-stats{display:flex;align-items:center;gap:0;opacity:0;animation:fadeUp .7s var(--ease) 1.5s both}.h-stat{padding:0 28px;text-align:center}.h-stat:first-child{padding-left:0}.h-stat-num{display:block;font-family:var(--f-display);font-size:1.9rem;font-weight:900;color:var(--cyan);text-shadow:var(--glow-cyan);line-height:1}.h-stat-lbl{display:block;font-family:var(--f-mono);font-size:.6rem;color:var(--t3);letter-spacing:.16em;margin-top:5px}.h-stat-div{width:1px;height:44px;background:var(--border)}.hud-corner{position:absolute;width:28px;height:28px;pointer-events:none;z-index:2}.hud-corner::after,.hud-corner::before{content:'';position:absolute;background:var(--cyan);box-shadow:var(--glow-cyan)}.hud-tl{top:calc(var(--nav-h) + 16px);left:16px}.hud-tl::before{top:0;left:0;width:100%;height:1px}.hud-tl::after{top:0;left:0;width:1px;height:100%}.hud-tr{top:calc(var(--nav-h) + 16px);right:16px}.hud-tr::before{top:0;right:0;width:100%;height:1px}.hud-tr::after{top:0;right:0;width:1px;height:100%}.hud-bl{bottom:16px;left:16px}.hud-bl::before{bottom:0;left:0;width:100%;height:1px}.hud-bl::after{bottom:0;left:0;width:1px;height:100%}.hud-br{bottom:16px;right:16px}.hud-br::before{bottom:0;right:0;width:100%;height:1px}.hud-br::after{bottom:0;right:0;width:1px;height:100%}.scroll-indicator{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.62rem;color:var(--t3);letter-spacing:.22em;animation:2.2s ease-in-out infinite float;z-index:2}.scroll-arrow{width:18px;height:18px;border-right:1px solid var(--cyan);border-bottom:1px solid var(--cyan);transform:rotate(45deg);animation:1.6s ease-in-out infinite scrollDown}section{padding:var(--sec-py) 10vw;position:relative}.sec-header{margin-bottom:72px}.sec-tag{display:inline-block;font-family:var(--f-mono);font-size:.72rem;color:var(--purple);letter-spacing:.22em;margin-bottom:12px}.sec-title{font-family:var(--f-display);font-size:clamp(1.7rem, 4vw, 2.8rem);font-weight:900;letter-spacing:.1em;color:var(--t0);display:inline-block;position:relative;margin-bottom:0}.sec-title::after{content:'';position:absolute;bottom:-10px;left:0;width:55%;height:1px;background:linear-gradient(90deg,var(--cyan),transparent)}#about{background:var(--bg-1)}#about::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),var(--purple),transparent)}.about-grid{display:grid;grid-template-columns:360px 1fr;gap:72px;align-items:start}.bio-card{position:sticky;top:calc(var(--nav-h) + 32px);background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:28px;overflow:hidden;transition:box-shadow .4s}.bio-card:hover{box-shadow:var(--glow-cyan)}.bio-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--purple),var(--cyan))}.bio-card::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:3.5s linear infinite scanH}.bio-head{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:.68rem;margin-bottom:24px}.bio-tag{color:var(--t3);letter-spacing:.12em}.bio-id{color:var(--cyan)}.bio-avatar-wrap{position:relative;width:130px;height:130px;margin:0 auto 20px}.bio-ring{position:absolute;border-radius:50%;border:1px solid}.bio-ring-1{inset:0;border-color:var(--cyan);animation:8s linear infinite ringRotate}.bio-ring-2{inset:10px;border-color:var(--purple);animation:12s linear infinite ringRotateRev}.bio-ring-3{inset:20px;border-color:var(--magenta);animation:18s linear infinite ringRotate;opacity:.5}.bio-avatar-core{position:absolute;inset:28px;background:var(--bg-2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.4rem;overflow:hidden;border:1px solid var(--border)}.bio-scan{position:absolute;left:28px;right:28px;height:1.5px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);box-shadow:0 0 10px var(--cyan);animation:2.4s ease-in-out infinite scanBio}.bio-name{font-family:var(--f-display);font-size:1.1rem;font-weight:700;letter-spacing:.1em;color:var(--t0);text-align:center;margin-bottom:4px}.bio-role{font-family:var(--f-mono);font-size:.72rem;color:var(--cyan);letter-spacing:.12em;text-align:center;margin-bottom:24px}.bio-vitals{border-top:1px solid var(--border);padding-top:18px;display:flex;flex-direction:column;gap:10px}.vital-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--f-mono);font-size:.7rem}.vital-k{color:var(--t3);letter-spacing:.1em}.vital-v{color:var(--t1)}.vital-v.green-v{color:var(--green)}.vital-v.cyan-v{color:var(--cyan)}.about-text{font-size:1.02rem;color:var(--t2);line-height:1.9;margin-bottom:48px}.about-text p{margin-bottom:16px}.skills-section{margin-bottom:48px}.skills-title{display:flex;align-items:center;gap:14px;font-family:var(--f-display);font-size:.75rem;letter-spacing:.2em;color:var(--t3);text-transform:uppercase;margin-bottom:24px}.skills-rule{flex:1;height:1px;background:var(--border)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px}.skill-item{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:11px 14px;display:flex;align-items:center;gap:9px;position:relative;overflow:hidden;transition:border-color .3s,background .3s,transform .3s var(--ease)}.skill-item::after{content:'';position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--purple));width:var(--lv,80%);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease)}.skill-item.in-view::after{transform:scaleX(1)}.skill-item:hover{border-color:var(--cyan);background:var(--cyan-dim);transform:translateY(-2px)}.skill-icon{font-size:1.1rem;flex-shrink:0}.skill-info{flex:1;min-width:0}.skill-name{display:block;font-family:var(--f-body);font-size:.84rem;font-weight:600;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill-lv{display:block;font-family:var(--f-mono);font-size:.62rem;color:var(--cyan)}.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.a-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:20px 16px;text-align:center;position:relative;overflow:hidden;transition:border-color .3s,box-shadow .3s,transform .3s var(--ease)}.a-stat-card:hover{border-color:var(--cyan);box-shadow:var(--glow-cyan);transform:translateY(-4px)}.a-stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);transform:scaleX(0);transition:transform .4s}.a-stat-card:hover::before{transform:scaleX(1)}.a-stat-icon{font-family:var(--f-mono);font-size:1rem;color:var(--purple);margin-bottom:8px}.a-stat-num{font-family:var(--f-display);font-size:1.7rem;font-weight:900;color:var(--cyan);text-shadow:var(--glow-cyan);line-height:1}.a-stat-unit{font-family:var(--f-display);font-size:1rem;color:var(--cyan)}.a-stat-lbl{display:block;font-family:var(--f-mono);font-size:.62rem;color:var(--t3);letter-spacing:.15em;margin-top:6px}#projects{background:var(--bg-0)}.projects-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:48px}.filter-btn{position:relative;padding:8px 22px;font-family:var(--f-display);font-size:.68rem;letter-spacing:.15em;color:var(--t3);border:1px solid var(--border);border-radius:2px;overflow:hidden;transition:color .3s,border-color .3s}.filter-btn::before{content:'';position:absolute;inset:0;background:var(--cyan-dim);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.filter-btn.active,.filter-btn:hover{color:var(--cyan);border-color:var(--cyan)}.filter-btn.active::before,.filter-btn:hover::before{transform:scaleX(1)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;overflow:hidden;position:relative;transition:border-color .4s,box-shadow .4s,transform .4s var(--ease);transform-style:preserve-3d}.project-card:hover{border-color:var(--cyan);box-shadow:var(--glow-cyan);transform:translateY(-8px)}.card-img{position:relative;height:195px;background:var(--bg-2);overflow:hidden}.card-img-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:4rem;opacity:.28;transition:transform .6s var(--ease),opacity .35s}.project-card:hover .card-img-bg{transform:scale(1.1);opacity:.5}.card-img-overlay{position:absolute;inset:0;background:linear-gradient(135deg,var(--cyan-dim),var(--purple-dim));opacity:0;transition:opacity .35s}.project-card:hover .card-img-overlay{opacity:1}.card-cat{position:absolute;top:12px;left:12px;padding:3px 10px;font-family:var(--f-mono);font-size:.62rem;color:var(--bg-0);border-radius:2px;letter-spacing:.1em;font-weight:700}.card-actions{position:absolute;bottom:12px;right:12px;display:flex;gap:7px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s var(--ease)}.project-card:hover .card-actions{opacity:1;transform:translateY(0)}.card-action{width:34px;height:34px;background:rgba(0,0,0,.65);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-size:.64rem;color:var(--cyan);backdrop-filter:blur(6px);transition:background .2s,color .2s,border-color .2s}.card-action:hover{background:var(--cyan);color:var(--bg-0);border-color:var(--cyan)}.card-body{padding:22px}.card-num{font-family:var(--f-mono);font-size:.62rem;color:var(--t3);letter-spacing:.22em;margin-bottom:8px}.card-title{font-family:var(--f-display);font-size:1.05rem;font-weight:700;letter-spacing:.05em;color:var(--t0);margin-bottom:10px;transition:color .3s}.project-card:hover .card-title{color:var(--cyan)}.card-desc{font-size:.88rem;color:var(--t2);line-height:1.75;margin-bottom:18px}.card-tags{display:flex;flex-wrap:wrap;gap:6px}.card-tag{padding:2px 9px;font-family:var(--f-mono);font-size:.62rem;color:var(--purple);border:1px solid var(--border2);border-radius:2px;letter-spacing:.1em;transition:background .2s,border-color .2s}.card-tag:hover{background:var(--purple-dim);border-color:var(--purple)}#contact{background:var(--bg-1)}#contact::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--purple),var(--cyan),transparent)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:72px;align-items:start}.contact-intro{font-size:1.02rem;color:var(--t2);line-height:1.9;margin-bottom:36px}.contact-channels{display:flex;flex-direction:column;gap:12px}.contact-channel{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;position:relative;overflow:hidden;transition:border-color .3s,background .3s,transform .3s var(--ease)}.contact-channel::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--cyan);transform:scaleY(0);transition:transform .3s var(--ease)}.contact-channel:hover{border-color:var(--cyan);background:var(--cyan-dim);transform:translateX(6px)}.contact-channel:hover::before{transform:scaleY(1)}.ch-icon{width:38px;height:38px;background:var(--bg-2);border:1px solid var(--border);border-radius:4px;display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-size:.72rem;color:var(--cyan);flex-shrink:0}.ch-info{flex:1}.ch-label{display:block;font-family:var(--f-mono);font-size:.6rem;color:var(--t3);letter-spacing:.15em;margin-bottom:2px}.ch-value{display:block;font-size:.88rem;color:var(--t1);font-weight:500}.ch-arrow{font-family:var(--f-mono);color:var(--cyan);opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .3s}.contact-channel:hover .ch-arrow{opacity:1;transform:translateX(0)}.terminal{background:#080810;border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:var(--glow-cyan)}.term-header{display:flex;align-items:center;gap:7px;padding:11px 16px;background:rgba(0,245,255,.04);border-bottom:1px solid var(--border)}.t-dot{width:10px;height:10px;border-radius:50%}.t-dot.red{background:#ff5f57}.t-dot.yellow{background:#febc2e}.t-dot.green{background:#28c840}.term-title{flex:1;font-family:var(--f-mono);font-size:.68rem;color:var(--t3);text-align:center;letter-spacing:.1em}.term-live{font-family:var(--f-mono);font-size:.62rem;color:var(--green);animation:3s ease-in-out infinite statusBlink}.term-body{padding:22px}.t-out{font-family:var(--f-mono);font-size:.76rem;line-height:1.85;margin-bottom:22px;color:var(--t3);max-height:130px;overflow-y:auto}.t-out::-webkit-scrollbar{width:2px}.t-out::-webkit-scrollbar-thumb{background:var(--border)}.t-prompt{color:var(--green)}.t-sep{color:var(--t3)}.t-path{color:var(--cyan)}.t-dollar{color:var(--t1);margin:0 4px}.t-cmd{color:var(--yellow)}.t-res{color:var(--t3)}.t-ok{color:var(--green)}.t-err{color:var(--magenta)}.t-div-l{color:rgba(0,245,255,.15)}.t-form{display:flex;flex-direction:column;gap:14px}.t-field{display:flex;flex-direction:column;gap:5px}.t-label{font-family:var(--f-mono);font-size:.68rem;color:var(--t3);letter-spacing:.12em;display:flex;align-items:center;gap:5px}.t-ps{color:var(--cyan)}.t-input,.t-textarea{width:100%;background:rgba(0,245,255,.03);border:1px solid var(--border);border-radius:2px;padding:11px 13px;font-family:var(--f-mono);font-size:.78rem;color:var(--t1);outline:0;transition:border-color .3s,box-shadow .3s;resize:vertical}.t-input::placeholder,.t-textarea::placeholder{color:var(--t3)}.t-input:focus,.t-textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan-dim),0 0 16px var(--cyan-dim)}.t-textarea{min-height:96px}.t-submit{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;padding:13px;background:linear-gradient(135deg,rgba(0,245,255,.07),rgba(191,0,255,.07));border:1px solid var(--cyan);border-radius:2px;font-family:var(--f-display);font-size:.78rem;font-weight:700;letter-spacing:.15em;color:var(--cyan);margin-top:6px;overflow:hidden;transition:color .3s,box-shadow .3s,transform .3s var(--ease)}.t-submit::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--cyan),var(--purple));opacity:0;transition:opacity .3s;z-index:0}.t-submit span{position:relative;z-index:1}.t-submit:hover{color:var(--bg-0);box-shadow:var(--glow-cyan);transform:translateY(-2px)}.t-submit:hover::before{opacity:1}.t-submit:disabled{opacity:.6;pointer-events:none}.t-arrow{font-family:var(--f-mono)}#footer{position:relative;padding:40px 10vw;background:var(--bg-0);border-top:1px solid var(--border);overflow:hidden}#footer .footer-inner{opacity:1;transform:none}.footer-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,245,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,245,255,.025) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.footer-inner{position:relative;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}.footer-logo-text{font-family:var(--f-display);font-size:1.05rem;font-weight:700;color:var(--cyan);letter-spacing:.18em;margin-bottom:6px;text-shadow:var(--glow-cyan)}.footer-logo-text .lb{color:var(--purple)}.footer-copy{font-family:var(--f-mono);font-size:.62rem;color:var(--t3);letter-spacing:.1em}.footer-center{display:flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.68rem;color:var(--t3);letter-spacing:.1em}.f-pulse{width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 8px var(--green);animation:2s ease-in-out infinite pulse}.footer-right{font-family:var(--f-mono);font-size:.62rem;color:var(--t3);text-align:right;line-height:1.9;letter-spacing:.1em}@media (max-width:1100px){.about-grid{grid-template-columns:1fr}.bio-card{position:static;max-width:360px}.contact-grid{grid-template-columns:1fr}}@media (max-width:768px){:root{--sec-py:80px}#nav-hud{padding:0 24px}.nav-links{display:none}.nav-menu-btn{display:flex}.nav-right{display:none}.hero-content{padding:0 6vw;padding-top:var(--nav-h)}.about-stats{grid-template-columns:repeat(2,1fr)}.projects-grid{grid-template-columns:1fr}.hero-cta{flex-direction:column;align-items:flex-start}.hero-stats{flex-wrap:wrap;gap:16px}.h-stat-div{display:none}.h-stat{padding:0}.footer-inner{flex-direction:column;align-items:center;text-align:center}.footer-right{text-align:center}}@media (max-width:480px){.about-stats{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(2,1fr)}}.certs-section{margin-bottom:48px}.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.cert-card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:14px 16px;position:relative;overflow:hidden;transform:translateY(12px);transition:border-color .3s,transform .3s var(--ease),box-shadow .3s}.cert-card::after{content:'';position:absolute;top:0;left:0;right:0;height:1.5px;background:linear-gradient(90deg,transparent,var(--purple),transparent);transform:scaleX(0);transition:transform .35s}.cert-card:hover{border-color:var(--purple);transform:translateY(-3px);box-shadow:var(--glow-purple)}.cert-card:hover::after{transform:scaleX(1)}.cert-issuer{font-family:var(--f-mono);font-size:.58rem;color:var(--purple);letter-spacing:.12em;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cert-name{font-family:var(--f-body);font-size:.83rem;font-weight:600;color:var(--t1);line-height:1.35;margin-bottom:10px}.cert-meta{display:flex;justify-content:space-between;align-items:center}.cert-date{font-family:var(--f-mono);font-size:.6rem;color:var(--t3)}.cert-verify{font-family:var(--f-mono);font-size:.6rem;color:var(--green);opacity:.8}#experience{background:var(--bg-2)}#experience::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--purple),var(--cyan),transparent)}.achievement-banner{position:relative;display:flex;align-items:center;gap:32px;padding:36px 40px;background:linear-gradient(135deg,rgba(255,204,0,.04),rgba(191,0,255,.06),rgba(0,245,255,.04));border:1px solid rgba(255,204,0,.3);border-radius:8px;margin-bottom:56px;overflow:hidden;transition:border-color .4s,box-shadow .4s}.achievement-banner:hover{border-color:rgba(255,204,0,.6);box-shadow:0 0 30px rgba(255,204,0,.12),0 0 60px rgba(255,204,0,.05)}.achievement-banner::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--yellow),var(--magenta),var(--yellow));background-size:200% auto;animation:3s linear infinite shimmer}.ach-particles{position:absolute;inset:0;pointer-events:none}.ach-particles span{position:absolute;width:3px;height:3px;background:var(--yellow);border-radius:50%;box-shadow:0 0 6px var(--yellow)}.ach-particles span:first-child{top:12%;left:4%;animation:2.1s ease-in-out infinite pulse}.ach-particles span:nth-child(2){top:65%;left:12%;animation:2.6s ease-in-out .4s infinite pulse}.ach-particles span:nth-child(3){top:25%;right:6%;animation:2.3s ease-in-out .7s infinite pulse}.ach-particles span:nth-child(4){top:78%;right:4%;animation:1.9s ease-in-out 1s infinite pulse}.ach-left{flex-shrink:0}.ach-trophy{width:88px;height:88px;background:rgba(255,204,0,.08);border:1px solid rgba(255,204,0,.28);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:2.8rem;box-shadow:0 0 24px rgba(255,204,0,.15)}.ach-body{flex:1;min-width:0}.ach-eyebrow{display:inline-block;font-family:var(--f-mono);font-size:.64rem;color:var(--yellow);letter-spacing:.25em;margin-bottom:9px;opacity:.85}.ach-title{font-family:var(--f-display);font-size:clamp(1.05rem, 2.4vw, 1.55rem);font-weight:900;letter-spacing:.06em;color:var(--t0);margin-bottom:5px}.ach-sub{font-size:.95rem;color:var(--t2);font-weight:500;margin-bottom:12px}.ach-desc{font-size:.88rem;color:var(--t3);line-height:1.75;margin-bottom:16px}.ach-pills{display:flex;flex-wrap:wrap;gap:6px}.ach-pills span{padding:3px 10px;font-family:var(--f-mono);font-size:.6rem;color:var(--yellow);border:1px solid rgba(255,204,0,.25);border-radius:2px;letter-spacing:.1em}.ach-right{flex-shrink:0;text-align:center;padding:0 8px}.ach-badge-num{font-family:var(--f-display);font-size:3.4rem;font-weight:900;color:var(--yellow);text-shadow:0 0 20px rgba(255,204,0,.5);line-height:1}.ach-badge-lbl{font-family:var(--f-mono);font-size:.62rem;color:var(--yellow);letter-spacing:.22em;opacity:.7}.exp-timeline{display:flex;flex-direction:column}.exp-item{display:grid;grid-template-columns:40px 1fr;gap:0 20px}.exp-marker{display:flex;flex-direction:column;align-items:center}.exp-dot{width:12px;height:12px;background:var(--bg-2);border:2px solid var(--cyan);border-radius:50%;flex-shrink:0;margin-top:22px;transition:background .3s,box-shadow .3s}.exp-dot.active{background:var(--cyan);box-shadow:var(--glow-cyan);animation:2.1s ease-in-out infinite pulse}.exp-line{flex:1;width:1px;background:linear-gradient(180deg,var(--border),transparent);margin:8px 0}.exp-item:last-child .exp-line{display:none}.exp-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:24px;margin-bottom:24px;position:relative;overflow:hidden;transition:border-color .35s,box-shadow .35s,transform .35s var(--ease)}.exp-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--cyan),var(--purple));opacity:0;transition:opacity .35s}.exp-card:hover{border-color:var(--cyan);box-shadow:var(--glow-cyan);transform:translateX(6px)}.exp-card:hover::before{opacity:1}.exp-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:12px}.exp-company-wrap{display:flex;align-items:center;gap:12px}.exp-company-tag{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--bg-2);border:1px solid var(--border);border-radius:4px;font-family:var(--f-mono);font-size:.64rem;font-weight:700;color:var(--cyan);flex-shrink:0}.exp-company{display:block;font-family:var(--f-display);font-size:.88rem;font-weight:700;letter-spacing:.1em;color:var(--t0)}.exp-mode{display:block;font-family:var(--f-mono);font-size:.6rem;color:var(--t3);letter-spacing:.1em;margin-top:2px}.exp-dates{text-align:right}.exp-range{display:block;font-family:var(--f-mono);font-size:.72rem;color:var(--cyan);letter-spacing:.1em}.exp-dur{display:block;font-family:var(--f-mono);font-size:.6rem;color:var(--t3);margin-top:3px}.exp-role{font-family:var(--f-display);font-size:1.1rem;font-weight:700;letter-spacing:.05em;color:var(--cyan);text-shadow:0 0 18px rgba(0,245,255,.3);margin-bottom:10px}.exp-desc{font-size:.9rem;color:var(--t2);line-height:1.8;margin-bottom:16px}.exp-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.exp-tags span{padding:2px 10px;font-family:var(--f-mono);font-size:.62rem;color:var(--purple);border:1px solid var(--border2);border-radius:2px;letter-spacing:.08em;transition:background .2s,border-color .2s}.exp-tags span:hover{background:var(--purple-dim);border-color:var(--purple)}.exp-status{display:flex;align-items:center;gap:7px;font-family:var(--f-mono);font-size:.63rem;color:var(--green);letter-spacing:.15em}.exp-dot-small{width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 8px var(--green);animation:1.9s ease-in-out infinite pulse}.project-card.classified{opacity:.55;cursor:default}.project-card.classified:hover{transform:none;border-color:var(--border);box-shadow:none}.classified-label{display:flex;align-items:center;gap:6px;margin-top:12px;font-family:var(--f-mono);font-size:.64rem;color:var(--t3);letter-spacing:.16em}@media (max-width:1100px){.achievement-banner{flex-wrap:wrap}.ach-right{display:none}}@media (max-width:768px){.achievement-banner{flex-direction:column;text-align:center;padding:24px 20px}.ach-pills{justify-content:center}.exp-item{grid-template-columns:24px 1fr;gap:0 14px}.cert-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.cert-grid{grid-template-columns:1fr}}