@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes musicPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.2);opacity:1}}@keyframes waveAnimation{0%{height:20px}50%{height:40px}to{height:20px}}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.genre-card{animation:fadeIn .5s ease-out;animation-fill-mode:backwards}.genre-card:first-child{animation-delay:.05s}.genre-card:nth-child(2){animation-delay:.1s}.genre-card:nth-child(3){animation-delay:.15s}.genre-card:nth-child(4){animation-delay:.2s}.genre-card:nth-child(5){animation-delay:.25s}.genre-card:nth-child(6){animation-delay:.3s}.genre-card:nth-child(7){animation-delay:.35s}.genre-card:nth-child(8){animation-delay:.4s}.step-indicator{animation:fadeIn .6s ease-out}.music-note{animation:musicPulse 2s ease-in-out infinite}.loading-bar{animation:waveAnimation 1.5s ease-in-out infinite}.loading-bar:nth-child(2){animation-delay:.2s}.loading-bar:nth-child(3){animation-delay:.4s}.loading-bar:nth-child(4){animation-delay:.6s}.success-icon{animation:bounceIn .8s cubic-bezier(.68,-.55,.265,1.55)}.form-input{transition:all .3s ease}.form-input:focus{transform:translateY(-2px);box-shadow:0 10px 30px rgba(167,139,250,.3)}.action-button{transition:all .3s cubic-bezier(.4,0,.2,1)}.action-button:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 15px 35px rgba(166,227,57,.3)}.modal-backdrop{animation:fadeIn .3s ease-out}.modal-content{animation:slideUp .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideUp{0%{transform:translateY(100px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.waveform-bar{transition:height .3s ease-out}.waveform-bar.playing{animation:waveAnimation 1s ease-in-out infinite}.share-menu{animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.interest-chip{animation:chipIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes chipIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.progress-fill{transition:width .5s ease-out}.progress-pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.gradient-bg{background:#020617;min-height:100vh;position:relative}.gradient-bg:before{content:"";position:absolute;top:0;left:0;right:0;height:550px;background:radial-gradient(ellipse 80% 60% at 50% 0,rgba(239,94,239,.15),transparent 60%),radial-gradient(ellipse 60% 40% at 30% 10%,rgba(255,95,151,.1),transparent 50%),radial-gradient(ellipse 60% 40% at 70% 10%,rgba(255,126,137,.1),transparent 50%);pointer-events:none;z-index:0}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.float-animation{animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.spin-animation{animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.shimmer{background:linear-gradient(90deg,hsla(0,0%,100%,.1) 25%,hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,.1) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}