code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#fff3;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}::selection{background:#8a2be24d;color:#fff}.mood-input-container{margin:2rem auto;max-width:800px;padding:0 1rem}.glass-card{box-shadow:0 8px 32px #0000001a;margin:2rem auto;max-width:500px;padding:2.5rem 2rem;width:100%}@media (max-width:600px){.glass-card{margin:1.2rem 0;max-width:98vw;min-width:0;padding:2rem 1rem}}.input-group{display:flex;margin-bottom:1rem}.input-group input{background:#ffffff14;border:1px solid #fff3;border-radius:50px;flex:1 1;font-size:1.15rem;margin-left:0;min-height:56px;outline:none;padding:1.2rem .9rem 1.2rem .05rem}@media (max-width:600px){.mood-input-container{max-width:95vw;padding:0}.glass-card{margin:.5rem auto;max-width:95vw;padding:1.2rem .5rem;width:98vw}.input-group input{font-size:1.25rem;margin-left:0;min-height:60px;padding:1.1rem .7rem 1.1rem .05rem}}.mobile-send-btn{align-items:center;background:linear-gradient(135deg,#8a2be2,#ff69b4);border:none;border-radius:50px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;margin-bottom:1.5rem;padding:1rem;transition:all .3s ease;width:100%}.mobile-send-btn:hover{background:linear-gradient(135deg,#9b4dff,#ff83c3)}.mobile-send-btn:disabled{background:#666;cursor:not-allowed}.input-group input:focus{border-color:#ffffff80;box-shadow:0 0 0 2px #8a2be24d}.input-group input::placeholder{color:#ffffff80}.input-group button{align-items:center;background:linear-gradient(135deg,#8a2be2,#ff69b4);border:none;border-radius:50%;bottom:5px;color:#fff;cursor:pointer;display:flex;justify-content:center;position:absolute;right:5px;top:5px;transition:all .3s ease;width:45px}.input-group button:hover{background:linear-gradient(135deg,#9b4dff,#ff83c3)}.input-group button:disabled{background:#666;cursor:not-allowed}.mood-examples{color:#fff9;font-size:.9rem;margin-top:1rem}@media (max-width:768px){.glass-card{padding:1.5rem}.glass-card h2{font-size:1.5rem}}.disclaimer-section{align-items:center;background:linear-gradient(90deg,#fffbe6,#fff3cd);border:2px solid #ffe066;border-radius:8px;box-shadow:0 2px 8px #ffc1071a;color:#856404;display:flex;font-size:1.05rem;font-weight:500;gap:.85rem;justify-content:center;margin:20px auto 0;max-width:700px;padding:1rem 2rem;position:relative;z-index:10}.disclaimer-icon{animation:shake 1.5s cubic-bezier(.36,.07,.19,.97) infinite;flex-shrink:0;font-size:1.8rem;margin-right:.5rem}@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}.disclaimer-text{line-height:1.6;text-align:left}.location-input-container{margin:2rem auto;max-width:800px;padding:0 1rem}.glass-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:15px;box-shadow:10px 2px 40px #de00da1a;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.glass-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.glass-card h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#8a2be2,#ff69b4);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;margin-bottom:.5rem}.glass-card p{color:#fffc;margin-bottom:1.5rem}.location-btn{align-items:center;background:linear-gradient(135deg,#8a2be2,#ff69b4);border:none;border-radius:50px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;margin-bottom:1.5rem;padding:1rem;transition:all .3s ease;width:100%}.location-btn:hover{background:linear-gradient(135deg,#9b4dff,#ff83c3)}.location-btn:disabled{background:#666;cursor:not-allowed}.divider{align-items:center;color:#fff9;display:flex;margin:1.5rem 0}.divider:after,.divider:before{background:#fff3;content:"";flex:1 1;height:1px}.divider span{font-size:.9rem;padding:0 1rem}.input-row{display:flex;gap:1rem;margin-bottom:1rem}.input-group{flex:1 1;position:relative}.input-icon{color:#ffffff80}.input-group input{background-color:#2a2a2a;border:1px solid #444;border-radius:10px;caret-color:#fff;color:#fff!important;font-size:1rem;padding:1rem 1rem 1rem 2.5rem;transition:all .3s ease;width:100%}.input-group input:focus{border-color:#61dafb;box-shadow:0 0 0 3px #61dafb4d;color:#fff!important;outline:none}.input-group input::placeholder{color:#fff;opacity:.7}.submit-btn{background:linear-gradient(135deg,#8a2be2,#ff69b4);border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem;transition:all .3s ease;width:100%}.submit-btn:hover{background:linear-gradient(135deg,#9b4dff,#ff83c3)}.submit-btn:disabled{background:#666;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}@media (max-width:768px){.input-row{flex-direction:column;gap:.5rem}.glass-card{padding:1.5rem}.glass-card h2{font-size:1.5rem}}.music-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.music-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.album-cover{overflow:hidden;padding-top:100%;position:relative;width:100%}.artist-image-container{overflow:hidden}.artist-image-background,.artist-image-container{height:100%;left:0;position:absolute;top:0;width:100%}.artist-image-background{z-index:1}.artist-image{object-fit:cover;transition:transform .5s ease}.artist-image,.artist-name-overlay{height:100%;left:0;position:absolute;top:0;width:100%;z-index:2}.artist-name-overlay{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:1rem;text-align:center}.artist-name-overlay span{font-size:1.2rem;font-weight:700;margin-top:.5rem;text-shadow:0 2px 4px #00000080}.music-card:hover .album-cover .artist-image{transform:scale(1.05)}.play-btn{align-items:center;background:#0009;border:2px solid #fffc;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:50px;justify-content:center;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .3s ease,background .3s ease,transform .2s ease;width:50px;z-index:10}.album-cover:hover .play-btn{opacity:1}.album-cover:hover .play-btn,.play-btn:hover{left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important}.play-btn:hover{background:#8a2be2cc}.song-info{display:flex;flex:1 1;flex-direction:column;padding:1rem}.song-info h3{color:#fff;font-size:1.1rem;margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-info p{color:#666;color:#ffffffb3;font-size:.9rem;margin:0 0 1rem}.song-meta{align-items:center;display:flex;justify-content:space-between;margin-top:auto}.song-meta span{color:#fff9;font-size:.8rem}.favorite-btn{background:none;border:none;color:#fff9;cursor:pointer;transition:color .3s ease,transform .3s ease}.favorite-btn.active,.favorite-btn:hover{color:#ff69b4}.artist-website{align-items:center;color:#a777e3;display:inline-flex;font-size:.85rem;gap:5px;margin:.5rem 0;text-decoration:none;transition:color .2s ease}.artist-website:hover{color:#6e8efb;text-decoration:underline}.location-info{align-items:center;color:#fff9;display:flex;font-size:.85rem;gap:5px;margin:.5rem 0}.ai-model-response-card{animation:fadeInCard .7s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #0affff33;border-radius:15px;box-shadow:10px 2px 40px #0bfbff1a;margin:1.5rem auto 2rem;max-width:500px;padding:1.5rem 2rem;transition:transform .3s ease,box-shadow .3s ease}.ai-model-response-card h3{color:#8a2be2;font-size:1.3rem;letter-spacing:1px;margin-top:0;text-align:center}.ai-model-input-text{font-size:1.05rem;margin-bottom:.8rem;text-align:center}.ai-model-emotions-list{font-size:1.05rem;margin-top:.5rem}.ai-model-emotions-list ul{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;list-style:none;margin:.3rem 0 0;padding:0}.ai-emotion-item{align-items:center;background:linear-gradient(90deg,#e0c3fc,#ffdee9);border-radius:8px;box-shadow:0 1px 4px #8a2be212;display:flex;font-size:1rem;margin:.2rem .3rem;padding:.4rem .9rem}.ai-emotion-label{color:#8a2be2;font-weight:700;margin-right:.5rem;text-transform:capitalize}.ai-emotion-probability{color:#ff69b4;font-size:.97rem}@keyframes fadeInCard{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.music-list-container{margin:2rem auto;max-width:1200px;padding:0 1rem}.music-list-container h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#8a2be2,#ff69b4);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;margin-bottom:1.5rem;text-align:center}.music-grid{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.music-grid>div{flex:0 0 auto;margin-bottom:1rem;width:250px}@media (max-width:768px){.music-grid{gap:1rem}.music-grid>div{width:200px}.music-list-container h2{font-size:1.5rem}}.error-message-container{margin:20px auto;max-width:600px;width:100%}.error-content{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#ff3b301a;border-left:4px solid #ff3b30;border-radius:6px;box-shadow:0 4px 12px #00000014;display:flex;padding:15px 20px}.error-icon{color:#ff3b30;flex-shrink:0;font-size:20px;margin-right:15px}.error-content p{color:#ff3b30;font-size:15px;font-weight:500;line-height:1.5;margin:0}*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#121212;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{min-height:100%;overflow:hidden;position:relative;text-align:center}.app-header{align-items:center;background-color:#1a1a1a;border-bottom:1px solid #2a2a2a;display:flex;justify-content:space-between;padding:1rem 2rem;position:sticky;top:0;z-index:10}.app-title{color:#61dafb;font-size:1.8rem;font-weight:700;margin:0}.header-nav{display:flex;gap:1rem}.nav-button{background:#0000;border:1px solid #61dafb;border-radius:20px;color:#61dafb;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.nav-button:hover{background-color:#61dafb;color:#121212}.logout-btn{border-color:#ff4d4d;color:#ff4d4d}.logout-btn:hover{background-color:#ff4d4d;color:#fff}.main-content-area{margin:0 auto;max-width:1400px;padding:2rem}.input-section{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:2rem}input[type=email],input[type=password],input[type=text]{color:#000}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff1a;border-radius:50%;border-top-color:#8a2be2;height:50px;margin:2rem auto;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.App-header{flex-direction:column;gap:1rem;padding:1rem}.input-section{flex-direction:column;gap:1.5rem}.main-content{padding:1rem}}.header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border-bottom:1px solid #ffffff1a;justify-content:space-between;padding:1rem 2rem;position:sticky;top:0;z-index:100}.header,.logo{align-items:center;display:flex}.logo{gap:.5rem}.logo-icon{color:#8a2be2;font-size:1.8rem}.logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#8a2be2,#ff69b4);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;margin:0}nav ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-link{background:none;border:none;color:#fff;font-size:1rem;font-weight:500;font:inherit;padding:.5rem 0;position:relative}.nav-link:after{background:linear-gradient(90deg,#8a2be2,#ff69b4);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link:hover:after{width:100%}nav a{color:#fff;font-size:1rem;font-weight:500;padding:.5rem 0;position:relative;text-decoration:none}nav a:after{background:linear-gradient(90deg,#8a2be2,#ff69b4);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}nav a:hover:after{width:100%}.logout-btn{background:none!important;border:none!important;color:#ff4d4d!important;cursor:pointer;overflow:hidden;position:relative;transition:transform .18s cubic-bezier(.4,2,.6,1),background .18s}.logout-btn:hover{background:#ff4d4d12;transform:scale(1.06)}.ripple{bottom:0;left:0;right:0;top:0;z-index:1}.ripple,.ripple-effect{pointer-events:none;position:absolute}.ripple-effect{animation:ripple-animate .6s linear;background:#ff4d4d59;border-radius:50%;transform:scale(0)}@keyframes ripple-animate{to{opacity:0;transform:scale(2.5)}}.logout-btn:after,.logout-btn:hover:after{content:none!important;display:none!important}.user-icon{align-items:center;background:#ffffff1a;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.user-icon:hover{background:#fff3}@media (max-width:768px){.header{padding:1rem}nav ul{gap:1rem}.logo h1{font-size:1.2rem}}.common-footer{background:#141414f2;box-shadow:0 -2px 20px 0 #00000014;color:#fff;font-size:1.08rem;font-weight:500;letter-spacing:.01em;padding:18px 0 10px;text-align:center;width:100%}.common-footer span[role=img]{font-size:1.1em;margin-right:5px}.auth-container{align-items:center;display:flex;justify-content:center;margin:0;min-height:calc(100vh - 70px);overflow:hidden;padding:20px;position:relative;width:100%}.auth-background{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.music-note{animation-iteration-count:infinite;animation-name:float;animation-timing-function:ease-in-out;color:#ffffff1a;font-size:5rem;position:absolute}.note-1{animation-duration:15s;font-size:4rem;left:10%;top:10%}.note-2{animation-delay:2s;animation-duration:18s;font-size:6rem;right:15%;top:20%}.note-3{animation-delay:4s;animation-duration:20s;bottom:15%;font-size:5rem;left:20%}@keyframes float{0%{opacity:.1;transform:translateY(0) rotate(0deg)}50%{opacity:.3;transform:translateY(-40px) rotate(10deg)}to{opacity:.1;transform:translateY(0) rotate(0deg)}}.auth-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0003;color:#fff;max-width:450px;padding:40px;width:100%;z-index:1}.auth-header{margin-bottom:30px;text-align:center}.auth-header h2{background:linear-gradient(90deg,#c6ffdd,#fbd786,#f7797d);-webkit-background-clip:text;background-clip:text;color:#0000;color:#f7797d;font-size:2.2rem;margin-bottom:10px}.auth-header p{color:#fffc;font-size:1rem}.auth-error{background:#ff575733;border:1px solid #ff575766;border-radius:8px;color:#fff;margin-bottom:20px;padding:12px;text-align:center}.form-group{margin-bottom:20px;position:relative}.input-icon{color:#fff9;left:15px;position:absolute;top:50%;transform:translateY(-50%)}.form-group input{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#1e1e1eb3;border:1px solid #ffffff2e;border-radius:10px;color:#fff;font-size:1rem;padding:15px 15px 15px 45px;transition:all .3s ease;width:100%}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:focus,.form-group input:-webkit-autofill:hover{-webkit-text-fill-color:#fff!important;border:1px solid #ffffff2e;box-shadow:inset 0 0 0 30px #1e1e1eb3!important;color:#fff!important}@media (max-width:600px){.form-group input{background:#1e1e1ed9!important;border:1px solid #ffffff40;color:#fff!important}.form-group input::placeholder{color:#ffffffb3!important}}.form-group input:focus{background:#ffffff26;border:1px solid #ffffff4d;box-shadow:0 0 15px #ffffff1a;outline:none}.form-group input::placeholder{color:#fff9}.form-options{align-items:center;display:flex;font-size:.9rem;justify-content:flex-end;margin-bottom:25px}.remember-me,.terms-checkbox{align-items:center;color:#fffc;display:flex}.remember-me input,.terms-checkbox input{margin-right:8px}.forgot-password{color:#fffc;text-decoration:none;transition:color .3s ease}.forgot-password:hover{color:#fff;text-decoration:underline}.auth-button{background:linear-gradient(90deg,#4facfe,#00f2fe);border:none;border-radius:10px;box-shadow:0 4px 15px #4facfe66;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-bottom:20px;padding:15px;transition:all .3s ease;width:100%}.auth-button:hover{background:linear-gradient(90deg,#00f2fe,#4facfe);box-shadow:0 6px 20px #4facfe99}.auth-button:disabled{background:#ffffff4d;box-shadow:none;cursor:not-allowed}.auth-footer{color:#fffc;margin-top:20px;text-align:center}.auth-footer a{color:#4facfe;font-weight:700;text-decoration:none;transition:color .3s ease}.auth-footer a:hover{color:#00f2fe;text-decoration:underline}.profile-card{max-width:600px}.profile-header{align-items:center;display:flex;flex-direction:column;margin-bottom:30px}.profile-avatar{align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:50%;display:flex;height:100px;justify-content:center;margin-bottom:15px;width:100px}.profile-email{color:#ffffffb3;margin-top:5px}.profile-stats{display:flex;justify-content:space-around;margin-bottom:30px;text-align:center}.stat-item h3{color:#ffffffb3;font-size:.9rem;margin-bottom:5px}.stat-item p{background:linear-gradient(90deg,#c6ffdd,#fbd786);-webkit-background-clip:text;background-clip:text;color:#0000;color:#fbd786;font-size:1.5rem;font-weight:700}.profile-actions{display:flex;justify-content:space-between;margin-bottom:30px}.profile-button{align-items:center;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:700;gap:8px;padding:12px 20px;transition:all .3s ease}.edit-button{background:#ffffff1a;border:1px solid #fff3}.edit-button:hover{background:#fff3}.logout-button{background:#ff575733;border:1px solid #ff575766}.logout-button:hover{background:#ff57574d}.recent-activity h3{color:#ffffffe6;font-size:1.2rem;margin-bottom:15px}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{align-items:center;background:#ffffff0d;border-radius:10px;display:flex;gap:15px;padding:12px;transition:all .3s ease}.activity-item:hover{background:#ffffff1a}.activity-icon{color:#4facfe;font-size:1.2rem}.activity-content{flex:1 1}.activity-title{color:#ffffffe6;margin-bottom:3px}.activity-time{color:#fff9;font-size:.8rem}@media (max-width:768px){.auth-card{padding:30px 20px}.profile-actions,.profile-stats{flex-direction:column;gap:15px}.profile-button{justify-content:center;width:100%}}.loading-spinner{color:#fff;font-size:1.2rem;height:100vh;justify-content:center}.auth-nav,.loading-spinner{align-items:center;display:flex}.auth-nav{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0000004d;border-bottom:1px solid #ffffff1a;box-sizing:border-box;justify-content:space-between;left:0;padding:1rem 2rem;position:fixed;right:0;top:0;width:100%;z-index:100}.nav-logo a{-webkit-text-fill-color:#0000;align-items:center;background:linear-gradient(90deg,#4facfe,#00f2fe);-webkit-background-clip:text;background-clip:text;color:#fff;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;text-decoration:none}.nav-links{display:flex;gap:1.5rem}.nav-link{align-items:center;border-radius:8px;color:#fffc;display:flex;gap:.5rem;padding:.5rem .75rem;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#ffffff1a;color:#fff}.app-container{display:flex;flex-direction:column;min-height:100vh}.content-container{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;margin-top:70px;padding:1rem;width:100%}.auth-header h2,.nav-logo a,.stat-item p{-webkit-background-clip:text;background-clip:text;color:#0000;color:#4facfe}@media (max-width:768px){.auth-nav{flex-direction:column;gap:1rem;padding:1rem}.nav-links{justify-content:space-around;width:100%}.nav-link{font-size:.9rem;padding:.4rem .6rem}}
/*# sourceMappingURL=main.daec3cb0.css.map*/