body{
    background-color: black;
    color:white;
    margin:0;
    font-family: sans-serif;
    overflow:hidden;
}
.main{
    display:flex;
    height:100vh;
    padding:0.5rem;
}
.sidebar{
    background-color: black;
    width:340px;
    border-radius: 1rem;
    margin-right: 0.5rem;
}
.main-content{
    background-color: #121212;
    flex:1;
    border-radius: 1rem;
    overflow: auto;
    padding:0 1rem 0 1rem;
}
.music-player{
    background-color: black;
    position:fixed;
    bottom:0px;
    width:100%;
    height:72px;
}
.nav{
    background-color: #121212;
    border-radius: 1rem;
    padding:1rem 1.25rem;
}
.nav-option{
    line-height: 3rem;
    opacity:0.6;
    font-weight: 500;
}
.nav-option:hover{
    opacity:1;
}
.nav-option i{
    color:white;
    margin-right:1rem;
    font-size: 1.25rem;
}
.nav-option a{
    color:white;
    text-decoration: none;
}
.library{
    background-color: #121212;
    border-radius: 1rem;
    padding:0.5rem 0.75rem;
    margin-top:0.5rem;
    height:100%;
}
.options{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:1rem 1.25rem;
}
.lib-opt img{
    height: 1.25rem;
    width:1.25rem;
    color:white;
    margin-right:0.5rem;
    opacity:0.6;
}
.lib-opt a{
    color:white;
    text-decoration: none;
    opacity:0.6;
    font-weight: 550;
}
.icon i{
    opacity:0.6;
    font-size: 1.25rem;
}
.icon i:hover{
    opacity:1;
}
.lib-opt img:hover{
    opacity:1;
}
.lib-opt a:hover{
    opacity:1;
}
.box{
    background-color: #232323;
    height:120px;
    border-radius: 1rem;
    padding:0.25rem 0 2rem 0.5rem;
    margin-bottom: 1.5rem;
}
.box-p1{
    font-weight: 700;
    padding:0.25rem;
}
.box-p2{
    opacity:0.8;
    font-weight: 300;
}
.badge{
    border:none;
    border-radius: 100px;
    padding: 0.25rem 1rem;
    font-weight: 700;
    width:fit-content;
    height:2rem;
    margin-top: 0.5rem;
}
.sticky-nav{
    position:sticky;
    top:0px;
    height: 55px;
    background-color: #121212;
    display: flex;
    justify-content: space-between;
    padding:1rem 0 0.5rem 0;
    z-index: 10;
}
.dark-badge{
    background-color: black;
    color:white;
}
@media (max-width:1000px){
    .hide{display:none;}
}
.card-container{
    display:flex;
    flex-wrap: wrap;
}
.card{
    height:250px;
    width:150px;
    background-color: #232323;
    border-radius: 1rem;
    padding:1rem;
    margin-left:1rem;
    margin-bottom: 1rem;
}
.card img{
    width:100%;
    border-radius: 0.75rem;
}
.footer{
    display:flex;
    justify-content: center;
    align-items: center;
    height:300px;

}
.line{
    width:90%;
    height: 50%;
    opacity:0.3;
    border-top:1px solid white;
}

.music-player{
    display: flex;
}
.album{
    width: 25%;
}
.album img{
    height:3.25rem;
    width:3.25rem;
    border-radius: 10px;
    margin: 0.5rem 0.5rem 0 0.5rem;
}
.alb-para{
    position:absolute;
    bottom:1.5rem;
    left:4.5rem;
}
.album-p2{
    opacity:0.6;
    font-size: 0.8rem;
    color:white;
    position:absolute;
    top:1.5rem; 
}
.album-p2:hover,
.album-p1:hover{
    opacity:1;
    text-decoration: underline;
}
.player{
    width:50%;
}
.player-controls,
.playback-bar{
    display: flex;
    justify-content: center;
    align-items: center;
}
.player-control-icons{
    height: 1rem;
    padding: 0.2rem 1rem 0 1rem; 
    opacity:0.6;  
}
.player-control-icons:hover{
    opacity:1;
}
.progress-bar{
    width:70%;
    appearance: none;
    background-color: transparent;
    cursor:pointer;
}
.progress-bar::-webkit-slider-runnable-track{
    background-color: #ddd;
    border-radius: 100px;
    height:0.2rem;  
}
.progress-bar::-webkit-slider-thumb{
    appearance: none;
    height:1rem;
    width:1rem;
    background-color: #1bd760;
    border-radius: 50%;
    margin-top:-6px;
}
.curr-time,
.tot-time{
    opacity:0.7;
    font-size:0.85rem;
}

.controls{
    width:25%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.controls i{
    font-size:1rem;
    padding:0.3rem;
    opacity:0.6;
}
.controls i:hover{
    opacity:1;
}
.controls-bar{
    appearance: none;
    height: 0.2rem;
    cursor:pointer;
}
.controls-bar::-webkit-slider-runnable-track{
    border: 100px;
}
.controls-bar::-webkit-slider-thumb{
    appearance: none;
    height:1rem;
    width:1rem;
    background-color: #1bd760;
    border-radius: 50%;
}

.card-title{
font-weight:700;
margin-top:0.5rem;
}

.card-desc{
opacity:0.6;
font-size:0.85rem;
}

.card{
transition:0.3s;
cursor:pointer;
position:relative;

}

.card:hover{
background-color:#2a2a2a;
transform:scale(1.05);
}

.play-btn{
position:absolute;
right:15px;
bottom:80px;
background-color:#1db954;
height:40px;
width:40px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
opacity:0;
transform:translateY(10px);
transition:0.3s;
}

.play-btn i{
color:black;
font-size:16px;
}
.card:hover .play-btn{
opacity:1;
transform:translateY(0);
}