@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.animate-pulse{animation:blink 1s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 6s ease-in-out infinite}.card:hover .gradient-hover{opacity:.7;transform:scale(1.1)}.gradient-hover{transition:all .5s ease-in-out;opacity:0;transform:scale(.9)}@keyframes audio-pulse{0%{box-shadow:0 0 0 0 rgba(106,0,244,.4)}70%{box-shadow:0 0 0 10px rgba(106,0,244,0)}to{box-shadow:0 0 0 0 rgba(106,0,244,0)}}.audio-playing{animation:audio-pulse 2s infinite}.learn-more-link{position:relative}.learn-more-link:after{content:"";position:absolute;width:0;height:2px;bottom:-2px;left:0;background:linear-gradient(90deg,#06f,#6a00f4);transition:width .3s ease}.learn-more-link:hover:after{width:100%}.terminal-container{box-shadow:0 0 15px rgba(106,0,244,.2);transition:all .3s ease}.terminal-container:hover{box-shadow:0 0 25px rgba(106,0,244,.4)}.code-scrollbar::-webkit-scrollbar{width:8px;height:8px}.code-scrollbar::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.code-scrollbar::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.code-scrollbar::-webkit-scrollbar-thumb:hover{background:#555}.touch-target{min-height:44px;min-width:44px}@media (max-width:640px){.gradient-text{background-size:200% auto;animation:shimmer 2s linear infinite}@keyframes shimmer{to{background-position:200%}}}