@import url('https://fonts.googleapis.com/css2?family=Martel+Sans:wght@200;300;400;600;700;800;900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

*{
    margin: 0;
    padding: 0;
    font-family: "Roboto", sans-serif;
}
body{
    /* background-color: black;
    color: white; */
    overflow: hidden;
}

.container{
    position: relative;
    height: 80%;
    overflow: hidden;
    display: flex;
}

.left{
    width: 25vw;
    height: 100vh;
    padding: 20px;
    padding-right: 10px;
}

.right{
    width: 75vw;
    padding-right: 20px;
    height: 100vh;
    display: flex;
    justify-content: center;
    position: relative;
}
.library{
    height: 74vh;
    position: relative;
    color: white;
    /* width: 100%; */
}
.home{
    height: 15vh;
    position: relative;
}

.X{
    display: none;
    position: absolute;
    right: 10px;
    top: 10px;
}
.home ul li{
    display: flex;
    width: 15px;
    list-style: none;
    gap: 15px;
    padding-top: 15px;
    font-weight: bold;
}

.heading{
    display: flex;
    list-style: none;
    width: 100%;
    gap: 15px;
    padding: 25px 15px;
    font-weight: bold;
    align-items: center;
}

.heading img{
    width: 25px;
}

.footer{
    display: flex;
    font-size: 10px;
    gap: 15px;
    position: absolute;
    bottom: 0;
    padding: 15px;
}

.nav{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    left: 0;
}

.hamburger{
    display: none;
}
.footer a{
    color: gray;
}

.header{
    display: flex;
    justify-content: space-between;
    background-color: rgb(32, 31, 31);
    position: relative;
    height: 80px;
}

.header *{
    padding: 20px;
}

.r-cont{
    height: 95vh;
    width: 100%;
    margin: 20px;
    overflow: hidden;
}

.playlist{
    padding: 5px;
    height: 80vh;
    position: relative;
    display: flex;
    justify-content: center;
}

.playlist2{
    padding: 5px;
    height: 100%;
    width: 100%;
}

.cardContainer{
    display: flex;
    gap: 10px;
    height: 100%;
    flex-wrap: wrap;
    overflow-y: auto;
    overflow-x: hidden;
}

.card {
    width: 185px;
    height: fit-content;
    padding: 10px;
    border-radius: 5px;
    background-color: #252525;
    /* margin: 10px 0px; */
    position: relative;
    cursor: pointer;
}

.card > * {
    padding-top: 5px;
}

.play {
    width: 30px;
    position: absolute;
    top: 250px;
    right: 15px;
    opacity: 0;
    cursor: pointer;
}

.card:hover{
    background-color: rgb(90, 91, 90);
    transition: all 0.5s;
}

.card:hover .play {
    top: 160px;
    opacity: 1;
    /* transition: all 0.25s; */
    animation: play-ani 0.3s ease-out 1 forwards;
}

@keyframes play-ani {
    from {
        top: 250px;
        opacity: 0;
    }

    50%{
        opacity: 0;
    }
    90%{
        opacity: 0.5;
    }
    to {
        top: 160px;
        opacity: 1;
    }
}


.card .img {
    width: 185px;
    object-fit: contain;
}

.buttons{
    display: flex;
    align-items: center;
    width: 200px;
    position: relative;
    margin: 0px 20px;
}

#Sign-Up{
    background-color: rgb(32, 31, 31);
    border-style: none;
    color: rgb(70, 70, 70);
    font-weight: bold;
    font-size: 24px;
    position: absolute;
    left: 0px;
}


#Sign-Up:hover{
    color: white;
    font-weight: bolder;
    font-size: 25px;
}

#Log-in{
    background-color: White;
    border-style: none;
    border-radius: 30px;
    font-size: 24px;
    padding: 10px 20px;
    font-weight: bold;
    position: absolute;
    right: 0px;
}

#Log-in:hover{
    font-size: 25px;
    font-weight: bolder;
}

/* .playbar{
    width: 80%;
    border: 2px solid red;
    height: 30px; 
    position:fixed;
    bottom: 15px;
} */

.playbar {
    position: fixed;
    margin: 7px;
    bottom: 30px;
    color: black;
    background: rgba(49, 60, 53, 1); /* Adjust the alpha value (0.5) for desired transparency */
    border-radius: 10px;
    padding: 12px;
    width: 65%;
    min-height: 40px;
    /* right: 37px; */
}
.aboveBar{
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    position: relative;
}

#vert{
    display: flex;
    gap: 15px;
    position: relative;
}
.songInfo{
    width: 25%;
    color: white;
    position: absolute;
    left: 0px;
    display: flex;;
}

.volume{
    position: absolute;
    display: flex;
    top: 25px;
    justify-content: center;
    align-items: flex-end;
    color: white;
}



.timeline{
    color: white;
    position: absolute;
    right: 0px;
}
.navbtn{
    gap: 0px;
    left: -40px;
}

.bar{
    border: 2px solid rgb(7, 250, 68);
    width: 100%;
    margin-top: 30px;
    position: relative;
    bottom: 0px;
    cursor: pointer;
}

.circle{
    width: 10px;
    height: 10px;
    border-radius: 23px;
    background-color: black;
    display: flex;
    position: relative;
    left:-1px;
    bottom: 6px;
}


.songNames{
    position: relative;
    left: 10px; 
    overflow-y: auto;
    overflow-x: hidden;
    height: 53vh;
}
.songNames ul li{
    display: flex;
    align-items: center;
    list-style: none;
    gap:15px;
    cursor: pointer;
    border: 2px solid white;
    padding: 10px;
    margin: 10px;
    border-radius: 10px;
}

#prev{
    color: black;
}


.mbtn {
    width: 30px;
    position: absolute;
    left: -20px;
    cursor: pointer;
    opacity: 0;
}
.infoCard{
    padding-top: 15px;
    padding-left: 30px;
}

.infoCard:hover .mbtn {
    animation: play-mb 0.3s ease-out 1 forwards;
}

.info{
    font-size: x-large;
    position: relative;
    left: 30px;
}
.cardImg{
    position: relative;
}
#playbtn{
    cursor: pointer;
}
@keyframes play-mb {
    from {
        left: 0px;
        opacity: 0;
    }

    50%{
        opacity: 0;
    }
    90%{
        opacity: 0.5;
    }
    to {
        left: 15px;
        opacity: 1;
    }
}

#next{
    cursor: pointer;
}

@media (max-width:1400px){
    .container{
        justify-content: center;
        padding: 0px;
        margin: 0px;
        width: 100vw;
    }
    .left{
        background-color: black;
        padding-top: 35px;
        position: absolute;
        left: -150%;
        transition: all 1s;
        z-index: 1;
        width: 50vw;
    }
    .header  *{
        padding: 20px 5px;
    }

    .hamburger{
        display: block;
    }

    .cardContainer{
        justify-content: center;
        margin: 0px;
    }

    .card{
        width: 44vw;
        height: fit-content;
    }
    .card .img{
        width: 44vw;
    }
    
    .right{
        width: 100vw;
        padding: 0px;
    }
    
    .play{
        animation: none;
        transition: none;
        transition: opacity 1s;
        opacity: 0;
        right: 1%;
        top: 84%;
        cursor: pointer;
    }
    
    .card:hover .play {
        animation: none;
        top: 84%;
        /* transition: none; */
        opacity:1;
    }
   
    .home{
        height: 15%;
    }

    .X{
        display: block;
    }
    
    .playbar{
        width: 90vw;
        margin: 5px;
        right: unset;
    }
}

@media (max-width:1000px){
    .card{
        width: 80vw;
        height: fit-content;
    }

    .playbar{
        width: 80vw;
    }
    .card .img{
        width: 80vw;
        margin: 5px;
        right: unset;
    }

    .buttons{
        margin: 0px 5px;
    }
}