@keyframes fadeIn {from { opacity:0; }to { opacity:1; }}@keyframes fadeOut {from { opacity:1; }to { opacity:0; }}@keyframes fadeInUp {from {opacity:0;transform:translateY(20px);}to {opacity:1;transform:translateY(0);}}@keyframes fadeInDown {from {opacity:0;transform:translateY(-20px);}to {opacity:1;transform:translateY(0);}}@keyframes fadeInScale {from {opacity:0;transform:scale(0.9);}to {opacity:1;transform:scale(1);}}@keyframes fadeOutDown {from {opacity:1;transform:translateY(0);}to {opacity:0;transform:translateY(20px);}}@keyframes windowOpen {0% {opacity:0;transform:scale(0.8) translateY(20px);}60% {opacity:1;transform:scale(1.02) translateY(-2px);}100% {opacity:1;transform:scale(1) translateY(0);}}@keyframes windowClose {0% {opacity:1;transform:scale(1);}100% {opacity:0;transform:scale(0.85) translateY(20px);}}@keyframes windowMinimize {0% {opacity:1;transform:scale(1) translateY(0);}100% {opacity:0;transform:scale(0.3) translateY(100vh);}}@keyframes windowRestore {0% {opacity:0;transform:scale(0.3) translateY(100vh);}60% {opacity:1;transform:scale(1.02);}100% {opacity:1;transform:scale(1) translateY(0);}}@keyframes windowShake {0%, 100% { transform:translateX(0); }10%, 30%, 50%, 70%, 90% { transform:translateX(-4px); }20%, 40%, 60%, 80% { transform:translateX(4px); }}@keyframes bootTextFlicker {0%, 100% { opacity:1; }50% { opacity:0.8; }}@keyframes bootCursor {0%, 100% { opacity:1; }50% { opacity:0; }}@keyframes bootProgress {0% { width:0%; }100% { width:100%; }}@keyframes bootLogoGlow {0%, 100% {text-shadow:0 0 10px var(--accent-primary),0 0 20px var(--accent-primary),0 0 40px rgba(122, 162, 247, 0.5);filter:brightness(1);}50% {text-shadow:0 0 20px var(--accent-primary),0 0 40px var(--accent-primary),0 0 80px rgba(122, 162, 247, 0.8);filter:brightness(1.2);}}@keyframes bootSlideUp {0% {opacity:1;transform:translateY(0);}100% {opacity:0;transform:translateY(-100%);}}@keyframes scanLine {0% { transform:translateY(-100%); }100% { transform:translateY(100vh); }}@keyframes pulse {0%, 100% { transform:scale(1); }50% { transform:scale(1.05); }}@keyframes pulseGlow {0%, 100% {box-shadow:0 0 5px var(--glow-primary);}50% {box-shadow:0 0 20px var(--glow-primary), 0 0 40px rgba(122, 162, 247, 0.1);}}@keyframes glowPulse {0%, 100% { opacity:0.5; }50% { opacity:1; }}@keyframes borderGlow {0%, 100% {border-color:var(--border-color);}50% {border-color:var(--accent-primary);}}@keyframes typewriter {from { width:0; }to { width:100%; }}@keyframes blink {0%, 100% { border-color:var(--accent-secondary); }50% { border-color:transparent; }}@keyframes notificationSlideIn {from {opacity:0;transform:translateX(100%) scale(0.9);}to {opacity:1;transform:translateX(0) scale(1);}}@keyframes notificationSlideOut {from {opacity:1;transform:translateX(0) scale(1);}to {opacity:0;transform:translateX(100%) scale(0.9);}}@keyframes countUp {from { opacity:0; transform:translateY(10px); }to { opacity:1; transform:translateY(0); }}@keyframes spin {to { transform:rotate(360deg); }}@keyframes dotPulse {0%, 80%, 100% { transform:scale(0.6); opacity:0.4; }40% { transform:scale(1); opacity:1; }}@keyframes matrixFall {0% {transform:translateY(-100%);opacity:1;}80% {opacity:1;}100% {transform:translateY(100vh);opacity:0;}}@keyframes iconBounce {0%, 100% { transform:translateY(0); }40% { transform:translateY(-8px); }60% { transform:translateY(-4px); }}@keyframes shimmer {0% { background-position:-200% 0; }100% { background-position:200% 0; }}@keyframes taskbarBounce {0%, 100% { transform:translateY(0); }25% { transform:translateY(-6px); }50% { transform:translateY(0); }75% { transform:translateY(-3px); }}@keyframes ripple {0% {transform:scale(0);opacity:0.5;}100% {transform:scale(4);opacity:0;}}@keyframes float {0%, 100% { transform:translateY(0px); }50% { transform:translateY(-10px); }}@keyframes barGrow {from {height:0;opacity:0;}to {height:var(--bar-height);opacity:1;}}.stagger-1 { animation-delay:0.05s; }.stagger-2 { animation-delay:0.1s; }.stagger-3 { animation-delay:0.15s; }.stagger-4 { animation-delay:0.2s; }.stagger-5 { animation-delay:0.25s; }.stagger-6 { animation-delay:0.3s; }.stagger-7 { animation-delay:0.35s; }.stagger-8 { animation-delay:0.4s; }