@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-45deg) scale(.5)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #06b6d44d}50%{box-shadow:0 0 40px #06b6d499}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-60px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-60px)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(60px)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.animate{opacity:0;animation-fill-mode:forwards;animation-duration:.6s;animation-timing-function:ease-out}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}.animate-fade-in{animation-name:fadeIn}.animate-fade-in-up{animation-name:fadeInUp}.animate-fade-in-down{animation-name:fadeInDown}.animate-fade-in-left{animation-name:fadeInLeft}.animate-fade-in-right{animation-name:fadeInRight}.animate-scale-in{animation-name:scaleIn}.animate-bounce-in{animation-name:bounceIn;animation-duration:1s}.animate-rotate-in{animation-name:rotateIn;animation-duration:1s}.animate-slide-in-left{animation-name:slideInLeft;animation-duration:.8s}.animate-slide-in-right{animation-name:slideInRight;animation-duration:.8s}.animate-slide-in-up{animation-name:slideInUp;animation-duration:.8s}.animate-slide-in-down{animation-name:slideInDown;animation-duration:.8s}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-glow{animation:glowPulse 2s ease-in-out infinite}.animate-gradient{background-size:200% 200%;animation:gradientShift 5s ease infinite}.animate-rotate{animation:rotate 10s linear infinite}.animate-bounce{animation:bounce 2s ease infinite}.animate-shimmer{background:linear-gradient(90deg,#fff0,#ffffff0d,#fff0);background-size:200% 100%;animation:shimmer 2s infinite}.typing-cursor:after{content:"|";animation:blink 1s infinite;color:#06b6d4}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.delay-900{animation-delay:.9s}.delay-1000{animation-delay:1s}.duration-fast{animation-duration:.3s}.duration-normal{animation-duration:.6s}.duration-slow{animation-duration:1s}.duration-slower{animation-duration:1.5s}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0003}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow .3s ease}.hover-glow:hover{box-shadow:0 0 30px #06b6d480}.hover-border-glow{position:relative;transition:all .3s ease}.hover-border-glow:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(90deg,#06b6d4,#a855f7);opacity:0;z-index:-1;transition:opacity .3s ease}.hover-border-glow:hover:before{opacity:1}.hover-tilt{transition:transform .3s ease;transform-style:preserve-3d}.magnetic-hover{transition:transform .1s ease-out}.glass{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.glass-dark{background:#0f172acc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.glass-card{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:1rem;padding:1.5rem;transition:all .3s ease}.glass-card:hover{background:#ffffff14;border-color:#06b6d44d;transform:translateY(-5px);box-shadow:0 20px 40px #0000004d}.gradient-text{background:linear-gradient(90deg,#06b6d4,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-animated{background:linear-gradient(90deg,#22d3ee,#a855f7,#22d3ee);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 3s ease infinite}.gradient-hero{background:linear-gradient(135deg,#0f172a,#1e1b4b,#0f172a)}.gradient-button{background:linear-gradient(90deg,#06b6d4,#8b5cf6)}.gradient-glow{background:linear-gradient(180deg,#06b6d426,#8b5cf626)}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch:before{left:2px;text-shadow:-2px 0 #06b6d4;clip:rect(24px,550px,90px,0);animation:glitch-anim-1 2s infinite linear alternate-reverse}.glitch:after{left:-2px;text-shadow:-2px 0 #a855f7;clip:rect(85px,550px,140px,0);animation:glitch-anim-2 2s infinite linear alternate-reverse}@keyframes glitch-anim-1{0%{clip:rect(10px,9999px,31px,0)}20%{clip:rect(85px,9999px,148px,0)}40%{clip:rect(65px,9999px,93px,0)}60%{clip:rect(43px,9999px,72px,0)}80%{clip:rect(91px,9999px,125px,0)}to{clip:rect(22px,9999px,58px,0)}}@keyframes glitch-anim-2{0%{clip:rect(65px,9999px,119px,0)}20%{clip:rect(28px,9999px,74px,0)}40%{clip:rect(92px,9999px,140px,0)}60%{clip:rect(15px,9999px,45px,0)}80%{clip:rect(52px,9999px,88px,0)}to{clip:rect(78px,9999px,132px,0)}}.particles{position:absolute;inset:0;overflow:hidden;z-index:-1}.particle{position:absolute;width:4px;height:4px;background:#06b6d4;border-radius:50%;opacity:.3;animation:float 6s ease-in-out infinite;box-shadow:0 0 6px #06b6d480}.particle:nth-child(1){left:10%;top:20%;animation-delay:0s}.particle:nth-child(2){left:20%;top:30%;animation-delay:1s}.particle:nth-child(3){left:40%;top:60%;animation-delay:2s}.particle:nth-child(4){left:60%;top:20%;animation-delay:3s}.particle:nth-child(5){left:80%;top:50%;animation-delay:4s}.particle:nth-child(6){left:10%;top:70%;animation-delay:5s}.particle:nth-child(7){left:90%;top:80%;animation-delay:1.5s}.particle:nth-child(8){left:30%;top:90%;animation-delay:2.5s}.particle:before{content:"";position:absolute;inset:-2px;border-radius:50%;background:radial-gradient(circle,#06b6d4 0%,transparent 70%);opacity:.4;animation:pulse 3s ease-in-out infinite}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:#ffffff1a;z-index:9999}.scroll-progress-bar{height:100%;background:linear-gradient(90deg,#06b6d4,#a855f7);width:0%;transition:width .1s ease-out}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:48px;height:48px;background:linear-gradient(135deg,#06b6d4,#a855f7);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;z-index:999;color:#fff}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{transform:translateY(-3px);box-shadow:0 10px 30px #06b6d466}.loading-overlay{position:fixed;inset:0;background:#0f172a;display:flex;align-items:center;justify-content:center;z-index:10000;transition:opacity .3s ease}.loading-overlay.hidden{opacity:0;pointer-events:none}.loading-spinner{position:relative;width:60px;height:60px}.spinner-ring{position:absolute;inset:0;border-radius:50%;border:3px solid transparent;border-top-color:#06b6d4;animation:rotate 1s linear infinite}.spinner-ring:nth-child(2){inset:8px;border-top-color:#a855f7;animation-duration:1.5s;animation-direction:reverse}.spinner-ring:nth-child(3){inset:16px;border-top-color:#22c55e;animation-duration:2s}.skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-on-scroll{opacity:1;transform:none}}
