body{background:transparent;color:#cbd5e1;background-attachment:fixed}.navbar-fixed{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:9999!important;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a,0 0 20px #06b6d41a}.cyber-grid-bg{background-size:40px 40px;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.15) 1px,transparent 0),linear-gradient(to right,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.03) 1px,transparent 1px);-webkit-mask-image:radial-gradient(ellipse at center,black 40%,transparent 90%);mask-image:radial-gradient(ellipse at center,black 40%,transparent 90%)}.cyber-grid-moving{background-size:60px 60px;background-image:linear-gradient(to right,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.02) 1px,transparent 1px);pointer-events:none}.scanline{width:100%;height:4px;background:linear-gradient(to bottom,#06b6d400,#06b6d480,#06b6d400);position:absolute;z-index:10;animation:scanline 4s linear infinite;opacity:.5;pointer-events:none}@keyframes scanline{0%{top:-10%}to{top:110%}}.animate-blink{animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#020617}::-webkit-scrollbar-thumb{background:#1e293b;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#06b6d4}.node-link{position:absolute;border:1px dashed rgba(6,182,212,.2);z-index:-1}.bg-glass{background-color:#0b1121cc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(6,182,212,.2)}.text-glow{text-shadow:0 0 10px rgba(6,182,212,.8)}.text-glow-purple{text-shadow:0 0 10px rgba(217,70,239,.8)}.hud-corner{position:absolute;width:1rem;height:1rem;border-color:#06b6d499;transition:all .3s}.clip-corner{clip-path:polygon(15px 0,100% 0,100% calc(100% - 15px),calc(100% - 15px) 100%,0 100%,0 15px)}.clip-corner-sm{clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.project-iframe{pointer-events:none;transition:all .5s ease}.project-iframe:hover{pointer-events:auto}iframe{border:none;background:#fff}iframe[loading=lazy]{opacity:0;transition:opacity .3s ease}iframe[loading=lazy].loaded{opacity:1}.project-card-image,.project-card-overlay{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.project-preview-container{-webkit-mask-image:-webkit-radial-gradient(white,black);mask-image:radial-gradient(#fff,#000)}@keyframes shimmer{0%{transform:translate(-100%) skew(-12deg)}to{transform:translate(200%) skew(-12deg)}}.animate-shimmer{animation:shimmer 2s infinite}@keyframes progress-pulse{0%,to{box-shadow:0 0 5px #06b6d466}50%{box-shadow:0 0 20px #06b6d4cc,0 0 30px #06b6d466}}@keyframes scanning-line{0%{left:-100%;opacity:0}50%{opacity:1}to{left:100%;opacity:0}}@keyframes counter-glow{0%,to{text-shadow:0 0 5px currentColor}50%{text-shadow:0 0 15px currentColor,0 0 25px currentColor}}@keyframes progress-fill{0%{width:0%;opacity:.8}to{opacity:1}}@keyframes shimmer-enhanced{0%{transform:translate(-100%) skew(-12deg);opacity:0}50%{opacity:1}to{transform:translate(200%) skew(-12deg);opacity:0}}@keyframes milestone-ping{0%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.7}to{transform:scale(1);opacity:1}}.progress-animate{animation:progress-fill 1.5s ease-out forwards}.progress-pulse{animation:progress-pulse 2s ease-in-out infinite}.counter-animate{animation:counter-glow 2s ease-in-out infinite}.scanning-effect:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:scanning-line 2s ease-in-out infinite}.skill-card{transform:translateY(0) scale(1);transition:all .3s ease-out;will-change:transform}.skill-card:hover:not(.scanning){transform:translateY(-4px) scale(1)}.skill-card .skill-icon{transform:scale(1);transition:transform .3s ease-out;will-change:transform}.skill-card:hover:not(.scanning) .skill-icon{transform:scale(1.1)}.skill-card.scanning,.skill-card.scanning *{pointer-events:none}.skill-card-container{contain:layout style paint}.skill-card.scanning,.skill-card.scanning *{animation:none!important;pointer-events:none}.skill-card.scanning:hover{transform:translateY(0) scale(1)!important;border-color:inherit!important;box-shadow:inherit!important}.skill-card.scanning .skill-icon,.skill-card.scanning:hover .skill-icon{transform:scale(1)!important}.skill-card:not(.scanning){transition:all .3s ease-out}.skill-card:not(.scanning):hover{transform:translateY(-4px) scale(1)}.skill-card.scanning,.skill-card.scanning *,.skill-card.scanning *:before,.skill-card.scanning *:after{animation:none!important;transition:none!important}.skill-card.scanning .progress-bar{transition:width .1s linear!important}.progress-bar-smooth{transition:width .1s linear}@keyframes float-particle{0%,to{transform:translateY(0) translate(0)}25%{transform:translateY(-20px) translate(10px)}50%{transform:translateY(-10px) translate(-5px)}75%{transform:translateY(-30px) translate(15px)}}@keyframes matrix-fall{0%{transform:translateY(-100vh);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(100vh);opacity:0}}@keyframes code-glow{0%,to{text-shadow:0 0 5px currentColor;opacity:.1}50%{text-shadow:0 0 20px currentColor,0 0 30px currentColor;opacity:.3}}@keyframes pulse-ring{0%{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:.1}to{transform:scale(1.5);opacity:0}}@keyframes scroll-horizontal{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes scroll-vertical{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.particle{animation:float-particle 6s ease-in-out infinite}.particle:nth-child(odd){animation-delay:-2s}.particle:nth-child(2n){animation-delay:-4s}.matrix-char{animation:matrix-fall linear infinite;font-family:Courier New,monospace}.code-snippet{animation:code-glow 8s ease-in-out infinite}.tech-icon-float{animation:float-particle 12s ease-in-out infinite}.tech-icon-float:nth-child(2n){animation-delay:-3s}.tech-icon-float:nth-child(3n){animation-delay:-6s}.tech-icon-float:nth-child(4n){animation-delay:-9s}.scroll-text{will-change:transform;backface-visibility:hidden}.cyber-grid-enhanced{background-size:60px 60px,20px 20px;background-image:linear-gradient(to right,rgba(6,182,212,.1) 1px,transparent 1px),linear-gradient(to bottom,rgba(6,182,212,.1) 1px,transparent 1px),linear-gradient(to right,rgba(217,70,239,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(217,70,239,.05) 1px,transparent 1px);animation:grid-move 20s linear infinite}@keyframes grid-move{0%{background-position:0 0,0 0,0 0,0 0}to{background-position:60px 60px,20px 20px,-20px -20px,-60px -60px}}.glitch-text{position:relative}.glitch-text:before,.glitch-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch-text:before{animation:glitch-1 2s infinite;color:red;z-index:-1}.glitch-text:after{animation:glitch-2 2s infinite;color:#0f0;z-index:-2}@keyframes glitch-1{0%,14%,15%,49%,50%,99%,to{transform:translate(0)}15%,49%{transform:translate(-2px)}}@keyframes glitch-2{0%,20%,21%,62%,63%,99%,to{transform:translate(0)}21%,62%{transform:translate(2px)}}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}*{scroll-behavior:auto!important}.lenis-scrolling,.lenis-scrolling *{pointer-events:none}@media(max-width:768px){.lenis.lenis-smooth{scroll-behavior:auto}}.fixed{transform:translateZ(0);will-change:transform}.modal-content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:#0f172a4d;border-radius:3px}.modal-content::-webkit-scrollbar-thumb{background:#06b6d480;border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:#06b6d4b3}body.modal-open{overflow:hidden;position:fixed;width:100%;height:100%}[data-lenis-prevent]{overscroll-behavior:contain;scroll-behavior:smooth}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
