@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap";/*! 
 * Primitive UI | MIT License
 *
 * A minimalist front-end design toolkit built with Sass for developing 
 * responsive, browser-consistent web apps.
 *
 * Author: Tania Rascia <hello@taniarascia.com>
 * Source: https://github.com/taniarascia/primitive
 * Documentation: https://taniarascia.github.io/primitive
 *//*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{font-family:Inter,sans-serif;line-height:1.15}body{margin:0}main{display:block}h1{color:#000;font-size:2em;margin:.67em 0;color:#121212}p{z-index:1}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{color:#000;overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}figure{margin:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font: 1rem/1.6 -apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem}body{color:#404040;background:#fff;font-size:1rem}p,ol,ul,dl,table{margin:0 0 1.5rem}ul li ul,ol li ol{margin-bottom:0}h1,h2,h3,h4,h5{margin:1.5rem 0;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.2;color:#979090}h1:not(:first-child),h2:not(:first-child),h3:not(:first-child),h4:not(:first-child),h5:not(:first-child){margin:1.5rem 0}h1:not(:first-child),h2:not(:first-child),h3:not(:first-child){margin-top:2rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}h5{font-size:1rem}@media (min-width: 600px){h1:not(:first-child),h2:not(:first-child),h3:not(:first-child){margin-top:2.5rem}h1{font-size:2.25rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}}a{color:#0366ee;text-decoration:none}a:hover,a:active,a:focus{color:#0246a2;text-decoration:underline}mark{background:#ffeea8;padding:0 .2rem}blockquote{margin:0 0 1.5rem;border-left:16px solid #f0f0f0;padding:0 1.5rem;font-size:1.5rem}blockquote cite{display:block;margin-top:1.5rem;font-size:1rem;text-align:right}pre{border:0;border-radius:4px;background:transparent;padding:1rem;-moz-tab-size:2;tab-size:2;color:#404040;font-family:Menlo,monospace;font-size:14px;margin:0 0 1.5rem}pre code{font-family:Menlo,monospace;line-height:1.2}kbd{background-color:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px #0003,0 0 0 2px #fff inset;color:#333;display:inline-block;font-family:Helvetica,Arial,sans-serif;font-size:13px;line-height:1.4;margin:0 .1em;padding:.1em .6em;text-shadow:0 1px 0 #fff}:not(pre)>code{color:#404040;background:transparent;font-family:Menlo,monospace;font-size:14px;padding:0 .2rem;border:1px solid #dedede;border-radius:4px}hr{height:0;border:0;border-top:1px solid #dedede}dt{font-weight:600}dd{margin-bottom:.5rem}.full-container{max-width:100%;padding:0 1rem}.container,.small-container,.medium-container{max-width:1200px;padding:0 1rem;margin-left:auto;margin-right:auto}.small-container{max-width:800px}.medium-container{max-width:1000px}.content-section{padding:30px 0}@media (min-width: 600px){.content-section{padding:60px 0}}.flex-small,.flex-large{padding-left:1rem;padding-right:1rem}.flex-row{margin-left:-1rem;margin-right:-1rem}.flex-row{display:flex;flex-direction:row;flex-wrap:wrap}.flex-small,.flex-large{flex-basis:100%;margin-bottom:1rem}@media (min-width: 600px){.flex-small{flex:1;margin-bottom:0}.flex-small.half{flex:0 0 50%}.flex-small.one-fourth{flex:0 0 25%}.flex-small.three-fourths{flex:0 0 75%}.flex-small.one-third{flex:0 0 calc(1 / 3 * 100%)}.flex-small.two-thirds{flex:0 0 calc(2 / 3 * 100%)}}@media (min-width: 1000px){.flex-large{flex:1;margin-bottom:0}.flex-large.half{flex:0 0 50%}.flex-large.one-fourth{flex:0 0 25%}.flex-large.three-fourths{flex:0 0 75%}.flex-large.one-third{flex:0 0 calc(1 / 3 * 100%)}.flex-large.two-thirds{flex:0 0 calc(2 / 3 * 100%)}}.clearfix:before,.clearfix:after{content:" ";display:block}.clearfix:after{clear:both}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.vertical-center{display:flex;align-items:center;justify-content:center}.responsive-image{max-width:100%;height:auto}.show{display:block!important}.hide{display:none!important}.invisible{visibility:hidden}.no-padding-top{padding-top:0}.no-padding-bottom{padding-bottom:0}.padding-top{padding-top:2rem}.padding-bottom{padding-bottom:2rem}.no-margin-top{margin-top:0}.no-margin-bottom{margin-bottom:0}.margin-top{margin-top:2rem}.margin-bottom{margin-bottom:2rem}.alternate-background{background:#fafafa;color:#404040}.space-between{justify-content:space-between}.justify-center{justify-content:center}.align-center{align-items:center}.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden;z-index:1}.resetpassword-form{max-width:400px;margin:5rem auto;padding:2rem;display:flex;flex-direction:column;gap:1.5rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.resetpassword-form label{font-size:1rem;color:#fff}.resetpassword-form input[type=password]{padding:.75rem;border:1px solid #ffffff;border-radius:.5rem;color:#fff;font-size:1rem;transition:border .2s}.resetpassword-form input[type=password]:focus{border-color:#007bff;outline:none}.resetpassword-form input[type=button]{padding:.75rem;background-color:#007bff;color:#fff;font-size:1rem;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.resetpassword-form input[type=button]:hover{background-color:#0056b3}.button,a.button,button,[type=submit],[type=reset],[type=button]{-webkit-appearance:none;display:inline-block;border:1px solid #0366ee;border-radius:4px;background:#0366ee;color:#fff;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;text-transform:none;padding:.75rem 1.25rem;margin:0 0 .5rem;vertical-align:middle;text-align:center;cursor:pointer;text-decoration:none;line-height:1;position:relative;z-index:1}.button:hover,a.button:hover,button:hover,[type=submit]:hover,[type=reset]:hover,[type=button]:hover{border:1px solid #0250bc;background:#0250bc;color:#fff;text-decoration:none;position:relative;z-index:1}.button:focus,.button:active,a.button:focus,a.button:active,button:focus,button:active,[type=submit]:focus,[type=submit]:active,[type=reset]:focus,[type=reset]:active,[type=button]:focus,[type=button]:active{border:1px solid #0250bc;background:#0250bc;color:#fff;text-decoration:none;position:relative;z-index:1}.button::-moz-focus-inner,a.button::-moz-focus-inner,button::-moz-focus-inner,[type=submit]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=button]::-moz-focus-inner{border:0;padding:0;z-index:1}.accent-button,a.accent-button{color:#fff;border:1px solid #29de7d;background:#29de7d;position:relative;z-index:1}.accent-button:hover,.accent-button:focus,.accent-button:active,a.accent-button:hover,a.accent-button:focus,a.accent-button:active{color:#fff;border:1px solid #1cb864;background:#1cb864;position:relative;z-index:1}.muted-button,a.muted-button{background:transparent;border:1px solid #cdcdcd;color:#4e4e4e;position:relative;z-index:1}.muted-button:hover,.muted-button:focus,.muted-button:active,a.muted-button:hover,a.muted-button:focus,a.muted-button:active{color:#4e4e4e;border:1px solid #818181;background:transparent;position:relative;z-index:1}.round-button,a.round-button{border-radius:40px;position:relative;z-index:1}.square-button,a.square-button{border-radius:0;position:relative;z-index:1}.full-button,a.full-button{display:block;width:100%;position:relative;z-index:1}[type=color],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=url],[type=week],[type=time],select,textarea{display:block;border:1px solid #dedede;border-radius:4px;padding:.75rem;outline:none;background:transparent;margin-bottom:.5rem;font-size:1rem;width:100%;max-width:100%;line-height:1;position:relative;z-index:1}[type=color]:hover,[type=date]:hover,[type=datetime]:hover,[type=datetime-local]:hover,[type=email]:hover,[type=month]:hover,[type=number]:hover,[type=password]:hover,[type=search]:hover,[type=tel]:hover,[type=text]:hover,[type=url]:hover,[type=week]:hover,[type=time]:hover,select:hover,textarea:hover{border:1px solid #c5c5c5}[type=color]:focus,[type=color]:active,[type=date]:focus,[type=date]:active,[type=datetime]:focus,[type=datetime]:active,[type=datetime-local]:focus,[type=datetime-local]:active,[type=email]:focus,[type=email]:active,[type=month]:focus,[type=month]:active,[type=number]:focus,[type=number]:active,[type=password]:focus,[type=password]:active,[type=search]:focus,[type=search]:active,[type=tel]:focus,[type=tel]:active,[type=text]:focus,[type=text]:active,[type=url]:focus,[type=url]:active,[type=week]:focus,[type=week]:active,[type=time]:focus,[type=time]:active,select:focus,select:active,textarea:focus,textarea:active{border:1px solid #0366ee;box-shadow:inset 0 1px 1px #0000001a,0 0 6px #8cbcfe}textarea{overflow:auto;height:auto}fieldset{border:1px solid #dedede;border-radius:4px;padding:1rem;margin:1.5rem 0}legend{padding:0 .5rem;font-weight:600}select{color:#404040;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAJCAYAAAA/33wPAAAAvklEQVQoFY2QMQqEMBBFv7ERa/EMXkGw11K8QbDXzuN4BHv7QO6ifUgj7v4UAdlVM8Uwf+b9YZJISnlqrfEUZVlinucnBGKaJgghbiHOyLyFKIoCbdvecpyReYvo/Ma2bajrGtbaC58kCdZ1RZ7nl/4/4d5EsO/7nzl7IUtodBexMMagaRrs+06JLMvcNWmaOv2W/C/TMAyD58dxROgSmvxFFMdxoOs6lliWBXEcuzokXRbRoJRyvqqqQvye+QDMDz1D6yuj9wAAAABJRU5ErkJggg==) right center no-repeat;line-height:1}select::-ms-expand{display:none}[type=range]{width:100%}label{font-weight:600;max-width:100%;display:block;margin:1rem 0 .5rem;position:relative;z-index:1}@media (min-width: 600px){.split-form label{text-align:right;padding:0 .5rem;margin-bottom:1rem;position:relative;z-index:1}}input.has-error,input.has-error:hover,input.has-error:focus,input.has-error:active,select.has-error,select.has-error:hover,select.has-error:focus,select.has-error:active,textarea.has-error,textarea.has-error:hover,textarea.has-error:focus,textarea.has-error:active{border:1px solid #d33c40;box-shadow:inset 0 1px 1px #0000001a,0 0 6px #f4cecf;position:relative;z-index:1}input.is-success,input.is-success:hover,input.is-success:focus,input.is-success:active,select.is-success,select.is-success:hover,select.is-success:focus,select.is-success:active,textarea.is-success,textarea.is-success:hover,textarea.is-success:focus,textarea.is-success:active{border:1px solid #29de7d;box-shadow:inset 0 1px 1px #0000001a,0 0 6px #97efc0;position:relative;z-index:1}::-webkit-input-placeholder,::-moz-placeholder,:-moz-placeholder,:-ms-input-placeholder{color:#9a9a9a;position:relative;z-index:1}table{border-collapse:collapse;border-spacing:0;width:100%;max-width:100%}thead th{border-bottom:2px solid #dedede}tfoot th{border-top:2px solid #dedede}td{border-bottom:1px solid #dedede;position:relative;z-index:1}th,td{text-align:left;padding:.5rem;position:relative;z-index:1}caption{padding:1rem 0;caption-side:bottom;color:#ababab}.striped-table tbody tr:nth-child(odd){background-color:#f8f8f8;position:relative;z-index:1}.contain-table{overflow-x:auto;position:relative;z-index:1}@media (min-width: 600px){.contain-table{width:100%;position:relative;z-index:1}}.dashboard-page{padding:0;max-width:100%;margin:65px 0 0;position:relative;z-index:1;min-height:calc(100vh - 65px);background-color:#1e1e1e;display:flex;flex-direction:column;align-items:center;width:100vw}.dashboard-content{width:100%;max-width:1200px;margin:20px auto;padding:30px;display:flex;flex-direction:column;gap:30px;background:#2a2a2a;border-radius:10px}.chart-container{background:#181818e6;padding:20px;border-radius:10px;box-shadow:0 4px 8px #0000004d;margin-bottom:20px}.table-container{background:#181818e6;padding:20px;border-radius:10px;box-shadow:0 4px 8px #0000004d;overflow-x:auto;margin-bottom:20px}.table-container table{width:100%;border-collapse:collapse}.table-container th,.table-container td{padding:12px;text-align:left;border-bottom:1px solid #444;color:#fff}.table-container th{background-color:#1db954;color:#fff;font-weight:600}.table-container tr:hover{background-color:#ffffff1a}.dashboard-page h1{color:#fff;font-size:24px;font-weight:700;margin-bottom:20px}.dashboard-page h2{color:#fff;font-size:20px;font-weight:600;margin-bottom:15px}.dashboard-page h5{color:#b3b3b3;font-size:16px;font-weight:400;margin-bottom:30px}@media (max-width: 768px){.dashboard-page{padding:10px}.dashboard-content,.chart-container,.table-container{padding:15px}}body{background-color:#121212;color:#fff;font-family:Inter,sans-serif;margin:0;padding:0}.container{background:#181818e6;position:relative;padding:20px;border-radius:10px;box-shadow:0 4px 10px #0003;width:80%;max-width:600px;text-align:center;z-index:1000}button{padding:18px 25px;text-decoration:none;background:#fff;color:#099439;border:none;border-radius:5px;font-weight:700;cursor:pointer;transition:background .3s;position:relative;z-index:1}button:hover{background-color:#1ed760;position:relative;z-index:1}h1{font-size:24px;font-weight:700;margin-bottom:20px;position:relative;z-index:1}.card{background:#ffffff1a;padding:15px;border-radius:10px;margin:10px 0;transition:transform .2s ease;position:relative;z-index:1}.card:hover{transform:scale(1.05);position:relative;z-index:1}.home-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;text-align:center;position:relative;z-index:1000}.back-btn{margin-left:10px;padding:10px 20px;font-size:16px;background-color:#444;color:#fff;border:none;border-radius:25px;cursor:pointer;transition:background-color .3s ease;position:relative;z-index:1}.back-btn:hover{background-color:#666;position:relative;z-index:1}.navbar{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#28a808,#099439);padding:15px 20px;position:fixed;height:65px;width:100%;top:0;left:0;z-index:2}.logo a{font-size:24px;font-weight:700;color:#fff;text-decoration:none}.nav-links{display:flex;gap:15px}.nav-button{display:inline-block;text-decoration:none;padding:8px 14px;font-size:.95rem;font-weight:700;border-radius:4px;background:#fff;color:#099439;border:none;cursor:pointer;transition:background .3s,color .3s;line-height:1;font-family:inherit}.nav-button:hover{background-color:#12752b;color:#fff}.nav-button:focus,.nav-button:active{outline:none;text-decoration:none}h1{font-weight:700}.navbar{font-family:Inter,sans-serif;font-weight:600}.hamburger{font-size:24px;padding:0;margin:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;display:none}.nav-links{display:none!important}@media (max-width: 768px){.hamburger{display:flex}.mobile-menu{display:flex;flex-direction:column;background-color:#099439;position:absolute;top:65px;left:0;width:100%;overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .3s ease;z-index:9;padding:0}.mobile-menu.open{max-height:500px;opacity:1;padding:10px 0}.mobile-menu .nav-button{width:90%;margin:0 auto 10px;padding:12px;text-align:center;font-size:1rem;border-radius:6px;background:#fff;color:#099439}.navbar{flex-direction:row;align-items:center;justify-content:space-between;padding:10px 20px}}button:focus,button:active{color:inherit!important;outline:none!important;text-decoration:none!important;position:relative;z-index:1}a:active{color:red!important;background-color:#ff0!important}a:focus{color:inherit!important;background-color:inherit!important;outline:none!important;position:relative;z-index:1}.footer{display:flex;justify-content:center;align-items:center;position:fixed;bottom:20px;left:0;width:100%;background:none;padding:10px 0;z-index:1}.footer-links{display:flex;justify-content:center;align-items:center}.footer-button{display:flex;align-items:center;justify-content:center;text-decoration:none!important;background:none;border:none;padding:10px;font-size:24px;color:#181818;transition:color .3s ease,transform .2s ease;position:relative;z-index:1}.footer-button i{text-decoration:none;font-size:32px}.footer-button:hover{color:#bbb;transform:scale(1.1);z-index:1}.footer-button:focus{outline:none;z-index:1}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.main-content{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.recommended-songs,.generate-playlist,.new-artists{background-color:#333;padding-left:20px;padding-right:20px;padding-bottom:20px;border-radius:5px}.recommended-songs{height:auto}.generate-playlist{height:600px}.new-artists{height:auto}.playlist-box{background-color:#666;width:100%;height:300px;display:flex;justify-content:center;align-items:center;font-size:3rem;font-weight:700;border-radius:5px}.cover-image-container{margin-top:100px}.stats-section{margin:20px;padding:15px;border-radius:8px;background:#333}.stats-section h2{margin-bottom:5px;font-size:1.2em}.stats-section p{z-index:1;position:relative;font-size:1em;color:#fff}.error-message{background-color:#ff00001a;border:1px solid rgba(255,0,0,.2);color:#f44;padding:20px;border-radius:8px;text-align:center;margin:20px 0;font-size:16px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:10px}.container.content-section{z-index:1;justify-content:center;align-items:center;background-color:#2f2f2f;padding:20px;margin:30px auto}.form-actions{margin-top:10px;display:flex;gap:10px}.tabs{justify-content:center;margin-top:10px;display:flex;gap:90px}.boxes{text-align:center}.friends-page{box-sizing:border-box;position:relative;z-index:1;width:100vw;display:flex;background-color:#1e1e1e;padding:700px 200px 200px;color:#fff;font-family:Arial,sans-serif;flex-direction:column}.friends-page h1{margin-bottom:20px}.controls{display:flex;gap:10px;margin-bottom:20px}.friends-grid{display:flex;flex-direction:column;gap:10px}.friend-card{background:#181818e6;padding:15px 100px 5px 30px;border-radius:10px;box-shadow:0 4px 10px #0003;display:flex;align-items:center;gap:15px;transition:transform .2s ease}.friend-card:hover{transform:translateY(-3px)}.friend-card img{border-radius:50%;width:50px;height:50px;margin:50px}.dropbtn{background-color:#fff;padding-left:26px;padding-right:26px;font-size:16px;border:none;cursor:pointer}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;background-color:#f9f9f9;min-width:160px;box-shadow:0 8px 16px #0003;z-index:10;border-radius:4%}.dropdown-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.dropdown-content a:hover{background-color:#f1f1f1}.dropdown:hover .dropdown-content{display:block}.dropdown:hover .dropbtn{background-color:#009938;color:#f1f1f1}.dropdown2{position:relative;display:inline-block;padding-left:50px}.dropdown2-content{display:none;position:absolute;background-color:#f9f9f9;min-width:160px;box-shadow:0 8px 16px #0003;z-index:10;border-radius:4%}.dropdown2-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.dropdown2-content a:hover{background-color:#f1f1f1}.dropdown2:hover .dropdown2-content{display:block}.dropdown2:hover .dropbtn2{background-color:#3e8e41;color:#f1f1f1}.dashboard{display:flex;min-height:100vh;background-color:var(--background-color)}.dashboard-header{position:fixed;top:0;left:0;right:0;height:60px;background-color:var(--background-color);border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 1.5rem;z-index:100}.dashboard-sidebar{position:fixed;top:60px;left:0;bottom:0;width:250px;background-color:var(--background-color);border-right:1px solid var(--border-color);padding:1.5rem;overflow-y:auto}.dashboard-main{flex:1;margin-left:250px;margin-top:60px;padding:1.5rem;min-height:calc(100vh - 60px);background-color:var(--background-color)}.dashboard-footer{margin-left:250px;padding:1rem 1.5rem;background-color:var(--background-color);border-top:1px solid var(--border-color);text-align:center;color:var(--text-secondary);font-size:.875rem}.dashboard-nav{display:flex;flex-direction:column;gap:.5rem}.dashboard-nav-item{display:flex;align-items:center;padding:.75rem 1rem;color:var(--text-primary);text-decoration:none;border-radius:.5rem;transition:all .2s}.dashboard-nav-item:hover{background-color:var(--hover-color)}.dashboard-nav-item.active{background-color:var(--primary-color);color:#fff}.dashboard-nav-item i{margin-right:.75rem;font-size:1.25rem}.dashboard-section{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem;margin-bottom:1.5rem}.dashboard-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dashboard-section-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.dashboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.dashboard-card{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.dashboard-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.dashboard-card-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.dashboard-card-value{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.dashboard-card-description{font-size:.875rem;color:var(--text-secondary)}.dashboard-table{width:100%;border-collapse:collapse}.dashboard-table th,.dashboard-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.dashboard-table th{font-weight:600;color:var(--text-primary);background-color:var(--background-color)}.dashboard-table tr:hover{background-color:var(--hover-color)}.dashboard-form{max-width:600px;margin:0 auto}.dashboard-form-group{margin-bottom:1.5rem}.dashboard-form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.dashboard-form-input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.dashboard-form-input:focus{outline:none;border-color:var(--primary-color)}.dashboard-form-button{display:inline-flex;align-items:center;padding:.75rem 1.5rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.dashboard-form-button:hover{background-color:var(--primary-dark)}.dashboard-alert{padding:1rem;border-radius:.5rem;margin-bottom:1.5rem}.dashboard-alert-success{background-color:var(--success-light);color:var(--success-dark);border:1px solid var(--success)}.dashboard-alert-error{background-color:var(--error-light);color:var(--error-dark);border:1px solid var(--error)}.dashboard-alert-warning{background-color:var(--warning-light);color:var(--warning-dark);border:1px solid var(--warning)}.dashboard-alert-info{background-color:var(--info-light);color:var(--info-dark);border:1px solid var(--info)}.dashboard-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dashboard-modal-content{background-color:#fff;border-radius:.5rem;box-shadow:0 4px 6px #0000001a;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.dashboard-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.dashboard-modal-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.dashboard-modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;line-height:1}.dashboard-modal-body{padding:1.5rem}.dashboard-modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem}.dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100vw;position:absolute;top:0;left:0}.dashboard-loading-spinner{width:50px;height:50px;border:4px solid rgba(29,185,84,.1);border-top-color:#1db954;border-radius:50%;animation:spin 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.dashboard-empty-icon{font-size:3rem;color:var(--text-secondary);margin-bottom:1.5rem}.dashboard-empty-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.dashboard-empty-description{font-size:1rem;color:var(--text-secondary);margin-bottom:1.5rem}@media (max-width: 768px){.dashboard-sidebar{position:fixed;top:60px;left:-250px;bottom:0;width:250px;background-color:var(--background-color);border-right:1px solid var(--border-color);padding:1.5rem;overflow-y:auto;transition:left .3s;z-index:90}.dashboard-sidebar.open{left:0}.dashboard-main,.dashboard-footer{margin-left:0}.dashboard-cards{grid-template-columns:1fr}}@media (prefers-color-scheme: dark){.dashboard{background-color:var(--background-color-dark)}.dashboard-header{background-color:var(--background-color-dark);border-bottom-color:var(--border-color-dark)}.dashboard-sidebar{background-color:var(--background-color-dark);border-right-color:var(--border-color-dark)}.dashboard-main{background-color:var(--background-color-dark)}.dashboard-footer{background-color:var(--background-color-dark);border-top-color:var(--border-color-dark)}.dashboard-section,.dashboard-card{background-color:var(--card-background-dark)}.dashboard-table th{background-color:var(--background-color-dark)}.dashboard-form-input{background-color:var(--input-background-dark);border-color:var(--border-color-dark);color:var(--text-primary-dark)}.dashboard-modal-content{background-color:var(--card-background-dark)}.dashboard-modal-header{border-bottom-color:var(--border-color-dark)}.dashboard-modal-footer{border-top-color:var(--border-color-dark)}}.dashboard-error{background:#181818e6;padding:40px;border-radius:10px;box-shadow:0 4px 8px #0000004d;text-align:center;max-width:600px;margin:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dashboard-error h2{color:#fff;font-size:24px;margin-bottom:15px}.dashboard-error p{color:#b3b3b3;font-size:16px;margin-bottom:20px}.dashboard-error button{background-color:#1db954;color:#fff;border:none;padding:12px 24px;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s}.dashboard-error button:hover{background-color:#1ed760}.splash-container{height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom right,#364c55,#0e6613,#538499);color:#fff;padding:2rem;box-sizing:border-box}.background-overlay{color:#0000001a}.splash-hero{display:flex;flex-direction:column;align-items:center;max-width:800px;text-align:center;padding:2rem;background:#0006;border-radius:1rem;box-shadow:0 8px 32px #0000004d}.splash-title{font-size:3rem;font-weight:700;margin-bottom:1rem;color:#fff}.splash-subtitle{font-size:1.25rem;color:#fff;margin-bottom:3rem}.genre-lottie{max-width:300px;width:80%;height:auto;margin:0 auto 10%}@media (max-width: 768px){.genre-lottie{max-width:200px;width:90%}}.get-started-btn{background-color:#1ed760;color:#fff;padding:.75rem 2rem;font-size:1.2rem;border:none;border-radius:.5rem;cursor:pointer;transition:all .3s ease;margin-top:15%}.get-started-btn:hover{background-color:#1db954;transform:translateY(-2px)}@media (min-width: 769px){.mobile-menu{padding:10px 40px}.nav-links{display:flex!important;align-items:center;gap:15px}.nav-button{padding:8px 14px;font-size:.95rem;border-radius:4px;background:#fff;color:#099439;box-shadow:none;transition:all .2s ease;margin:2px}.nav-button:hover{background:#12752b;color:#fff}}.dashboard{padding-top:100px;position:relative;z-index:1;color:#fff;width:100vw;min-height:100vh;overflow-y:auto;background:#121212;overflow-x:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;margin:0;left:0;right:0}.sections-container{width:95%;max-width:1400px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:48px}.dashboard-header{position:fixed;top:0;left:0;right:0;height:60px;z-index:1000;background:#121212;padding:16px 24px;display:flex;align-items:center}.dashboard-content{width:95%;max-width:800px;text-align:center;background:#ffffff0d;padding:32px;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 24px #0003}.dashboard-content h1{font-size:2rem;background:linear-gradient(45deg,#1db954,#1ed760);-webkit-background-clip:text;background-clip:text;color:transparent;padding-top:0;margin-top:0;margin-bottom:.25rem;font-weight:700;letter-spacing:-.01em;line-height:1.1}.dashboard-content h5{font-size:1.1rem;color:#ffffffb3;font-weight:400;max-width:500px;margin:0 auto;line-height:1.4}.profile-picture{width:20%;aspect-ratio:1;border-radius:50%;object-fit:cover;margin:0 auto 10px;display:block;padding:5px;background:linear-gradient(217deg,#00ff80,#0f8500 70.71%);box-sizing:border-box}section{width:100%}section h2{font-size:1.5rem;margin-bottom:24px;color:#fff;text-align:left}.music-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;width:100%}.music-item{background:#ffffff1a;border-radius:8px;padding:16px;transition:all .3s ease;width:100%}.music-item:hover{background:#fff3;transform:translateY(-5px)}.music-image{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;margin-bottom:16px}.music-info{display:flex;flex-direction:column;gap:4px}.music-info h3{font-size:1rem;color:#fff;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.music-info p{font-size:.9rem;color:#9b9b9b;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100%}.loading-spinner{border:4px solid rgba(29,185,84,.3);border-radius:50%;border-top:4px solid #1db954;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-container{text-align:center;padding:2rem;background:#ff00001a;border-radius:8px;margin:2rem auto;max-width:600px;width:90%}.error-container h2{color:#f44;margin-bottom:1rem}.error-container p{color:#b3b3b3;margin-bottom:1rem}.try-again-button{background:#1db954;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:20px;font-size:1rem;cursor:pointer;transition:background-color .2s}.try-again-button:hover{background:#1ed760}.connect-spotify-container{scale:.8;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:30vh;padding:2rem;text-align:center;background:#fffffff2;border-radius:12px;margin:20rem auto;max-width:600px;width:60%;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 0 100px #00000026}@media (max-width: 528px){.connect-spotify-container{margin:10rem auto}}.connect-spotify-container h2{color:#1db954;margin-bottom:1rem;font-size:2rem;font-weight:700}.connect-spotify-container p{color:#333;margin-bottom:2rem;font-size:1.2rem;line-height:1.6;max-width:80%}.connect-spotify-button{background-color:#1db954;color:#fff;border:none;padding:1rem 2rem;border-radius:30px;font-size:1.2rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin:0 auto;display:block}.connect-spotify-button:hover{background-color:#1ed760;transform:translateY(-2px);box-shadow:0 4px 12px #1db9544d}.track-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;color:#fff;display:flex;align-items:center;justify-content:center;z-index:1000}.track-modal{background:#858585;padding:2rem;border-radius:16px;max-width:375px;width:90%;text-align:center;position:relative}.track-modal h2{font-size:1.5rem;margin-bottom:1rem;color:#fff}.track-modal p{font-size:1.1rem;color:#efefef;margin-bottom:1rem;font-weight:600}.track-modal-image{width:225px;border-radius:12px;margin-bottom:1rem}.track-modal button{margin-top:1rem}.track-modal .close-button{position:absolute;top:1px;right:15px;background:#1db954;color:#fff;border:none;padding:.5rem 1rem;border-radius:14px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.accountrecovery-form{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem;text-align:center;border-radius:12px;margin:auto;max-width:600px;width:70%;color:#fff}.accountrecovery-form input[type=text],.accountrecovery-form input[type=email]{color:#fff;background:#222}.recommended-container{position:relative;width:100%;max-width:1200px;padding:20px;box-shadow:0 2px 4px #0000001a;border-radius:12px;padding:2rem;margin:2rem auto;min-width:600px;background:#3737370d}.recommended-container header{text-align:center;margin-bottom:1rem;background:#323232;margin:25px 4% 4%;border-radius:5px;padding:30px}.recommended-container header h1{font-size:2.5rem;margin:0;color:#00ff80}.recommended-container header h4{font-size:2 rem;color:#fff;margin-top:1.5rem}.recommended-container header h5{font-size:1.1rem;color:#ffffffb3;font-weight:400;max-width:500px;margin:0 auto;line-height:1.4}.recommended-songs header h1{font-size:5rem;color:#fff;margin-bottom:1rem;text-align:center;height:8000px}.favorite-genre-section{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;padding:1rem;text-align:center}.favorite-genre-tile{width:300px;max-width:30vw;aspect-ratio:1 / 1;background:#121212;border-radius:1rem;padding:1rem;text-align:center;box-shadow:0 0 20px var(--glow-color);transition:transform .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box}.favorite-genre-tile:hover{transform:scale(1.05)}.genre-lottie{width:100%;height:auto;max-height:200px}.favorite-genre-tile h3{margin:.2rem 0;color:#fff}.favorite-genre-tile h4{width:auto;margin:.2rem 0;font-size:.9rem;color:#fff}.favorite-genre-tile p{color:#aaa;font-size:.8rem}.favorite-genre-section h2{color:#fff;font-size:1.5rem;margin-bottom:2rem;width:100%;text-align:center}@media (max-width: 600px){.favorite-genre-tile{width:60vw;max-width:1000vw;padding:.75rem}.genre-lottie{max-height:150px}.favorite-genre-tile h4,.favorite-genre-tile p{font-size:.75rem}}.song-grid{display:flex;flex-direction:column;gap:15px}.song-card{background-color:#2a2a2a;border-radius:10px;padding:10px;display:flex;align-items:center;justify-content:space-between;transition:transform .2s ease;height:120px}.song-card:hover{transform:translateY(-2px)}.song-cover{width:100px;height:100px;object-fit:cover;border-radius:6px}.song-details{flex-grow:1;margin-left:20px;text-align:left}.song-details h3{margin:0;font-size:1rem;color:#fff}.song-details p{margin:2px 0;font-size:.85rem;color:#ccc}.song-actions{display:flex;gap:10px;margin-top:8px}.listen{background-color:#1db954}.respin{background-color:red}.song-actions button{color:#fff;border:none;border-radius:4px;padding:5px 10px;cursor:pointer;font-size:.85rem}.song-actions button:hover{background-color:#1ed760}.loading-spinner{border:6px solid #ccc;border-top:6px solid #1db954;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:auto}.song-spinner{width:60px;height:60px}.mini-spinner-container{display:flex;flex-direction:column;align-items:center;margin:20px auto;color:#fff}.login-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;text-align:center;padding:2rem;background:#0006;border-radius:1rem;box-shadow:0 8px 32px #0000004d}.login-container h1{margin-bottom:.5rem;color:#30e849;font-size:2rem;font-weight:600;letter-spacing:.5px}.login-container h3{margin-bottom:1.5rem;color:#fff;font-weight:400;font-size:1rem}.login-container form{width:80%;display:flex;flex-direction:column;gap:1.2rem;margin-bottom:1.5rem}.login-container input{padding:1rem;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#000;font-size:.95rem;transition:all .3s ease;width:100%;box-sizing:border-box;box-shadow:0 2px 4px #0000001a}.login-container input:focus{outline:none;border-color:#30e849;box-shadow:0 0 0 2px #30e84933,0 4px 8px #0000001a}.login-container input::placeholder{color:#888}.login-container button{padding:1rem;border:none;border-radius:8px;background:#30e849;color:#fff;cursor:pointer;transition:all .3s ease;font-weight:600;font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.login-container button:hover{background:#16c72e;transform:translateY(-1px);box-shadow:0 4px 12px #30e8494d}.login-container button:active{transform:translateY(0)}.login-container p{margin:1.2rem 0;color:#fff;font-size:.9rem}.signup-btn,.back-btn{margin-top:.5rem;background:transparent;border:1px solid #30e849;text-transform:none}.signup-btn:hover,.back-btn:hover{background:#30e8491a;transform:translateY(-1px)}.error-message{color:var(--error-color);margin-top:.5rem;font-size:.9rem;padding:.5rem;background:#ff44441a;border-radius:4px;border:1px solid rgba(255,68,68,.2)}.back-btn{margin:1.5rem auto 0;background:transparent;border:1px solid #30e849;text-transform:none;display:block;width:200px}.signup-container{display:flex;flex-direction:column;align-items:center;max-width:400px;text-align:center;padding:2rem;background:#0006;border-radius:1rem;box-shadow:0 8px 32px #0000004d;width:100%}.signup-container h1{margin-top:.5rem;margin-bottom:1.5rem;color:#30e849;font-size:2rem;font-weight:600;letter-spacing:.5px}.signup-container h3{margin-bottom:.5rem;color:#fff;font-weight:400;font-size:1rem}.signup-container form{display:flex;width:80%;flex-direction:column;gap:1.2rem;margin-bottom:1.5rem}.signup-container input{padding:1rem;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#000;font-size:.95rem;transition:all .3s ease;box-sizing:border-box;box-shadow:0 2px 4px #0000001a}.signup-container input:focus{outline:none;border-color:#30e849;box-shadow:0 0 0 2px #30e84933,0 4px 8px #0000001a}.signup-container input::placeholder{color:#888}.signup-container button{padding:1rem;border:none;border-radius:8px;background:#30e849;color:#fff;cursor:pointer;transition:all .3s ease;font-weight:600;font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.signup-container button:hover{background:#16c72e;transform:translateY(-1px);box-shadow:0 4px 12px #30e8494d}.signup-container button:active{transform:translateY(0)}.signup-container p{margin:1.2rem 0;color:#fff;font-size:.9rem}.login-btn,.back-btn{width:80%;margin-top:.5rem;background:transparent;border:1px solid #30e849;text-transform:none}.login-btn:hover,.back-btn:hover{background:#3233321a;transform:translateY(-1px)}.error-message{color:#f44;margin-top:.5rem;font-size:.9rem;padding:.5rem;background:#ff44441a;border-radius:4px;border:1px solid rgba(255,68,68,.2)}
