/* ===========================
   RESET
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:'Poppins',sans-serif;

    background:#090909;

    color:white;

    overflow:hidden;

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:100vh;

}

/* ===========================
   BACKGROUND
=========================== */

.background{

    position:fixed;

    inset:0;

    background-image:url("images/background.jpg");

    background-size:cover;

    background-position:center;

    filter:blur(70px) brightness(.30);

    transform:scale(1.2);

    z-index:-2;

}

.background::after{

    content:"";

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.35);

}

/* ===========================
   CARD
=========================== */

.container{

    width:430px;

    padding:45px;

    border-radius:30px;

    background:rgba(20,20,20,.55);

    backdrop-filter:blur(30px);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:
    0 30px 80px rgba(0,0,0,.55);

    text-align:center;

    animation:fadeUp 1s ease;

}

/* ===========================
   INTRO
=========================== */

.intro{

    color:#9e9e9e;

    font-size:14px;

    letter-spacing:4px;

    text-transform:uppercase;

    margin-bottom:28px;

}

/* ===========================
   COVER
=========================== */

.cover{

    width:280px;

    height:280px;

    object-fit:cover;

    border-radius:22px;

    box-shadow:
    0 20px 45px rgba(0,0,0,.45);

    transition:.4s;

}

.cover:hover{

    transform:scale(1.03);

}

/* ===========================
   TITLES
=========================== */

h1{

    margin-top:30px;

    font-size:40px;

    font-weight:700;

}

h2{

    margin-top:8px;

    color:#bdbdbd;

    font-size:22px;

    font-weight:400;

}

/* ===========================
   PLAYER
=========================== */

.player{

    display:flex;

    align-items:center;

    gap:15px;

    margin-top:35px;

}

.player span{

    width:45px;

    font-size:14px;

    color:#cfcfcf;

}

#progressBar{

    flex:1;

    cursor:pointer;

}

/* ===========================
   BUTTON
=========================== */

button{

    margin-top:35px;

    width:100%;

    padding:18px;

    border:none;

    border-radius:16px;

    background:white;

    color:black;

    font-size:18px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

button:hover{

    transform:translateY(-2px);

}

button:active{

    transform:scale(.98);

}

/* ===========================
   ANIMATIONS
=========================== */

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(40px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

.cover.playing{

    animation:floatAlbum 4s ease-in-out infinite;

}

@keyframes floatAlbum{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-8px);

    }

    100%{

        transform:translateY(0);

    }

}

/* ===========================
   MOBILE
=========================== */

@media(max-width:500px){

.container{

    width:92%;

    padding:30px;

}

.cover{

    width:220px;

    height:220px;

}

h1{

    font-size:30px;

}

}
/* ===========================
   PREMIUM PROGRESS BAR
=========================== */

.progress-container{

    width:100%;

    margin-top:35px;

}

#progressBar{

    width:100%;

    appearance:none;

    height:6px;

    border-radius:999px;

    background:rgba(255,255,255,.15);

    outline:none;

}

#progressBar::-webkit-slider-thumb{

    appearance:none;

    width:16px;

    height:16px;

    border-radius:50%;

    background:white;

    cursor:pointer;

    box-shadow:0 0 12px rgba(255,255,255,.5);

}

.time-row{

    display:flex;

    justify-content:space-between;

    margin-top:10px;

    color:#bcbcbc;

    font-size:13px;

}