#player{
    box-shadow: 0px -12px 15px 10px rgb(0 0 0 / 50%);
    box-sizing: border-box;
    display: grid;
    align-content: center;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas: 
    "now_playing"
    "now_playing_description"
    "controls";
    grid-area: player_box;
    bottom: 0;
    width: 100vw;
    height: auto;
    padding: 0 .5rem;
    background: #181818;
    position: sticky;
}

#controls{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-template-areas: "player_image main_controls side_controls";
    grid-area: controls;
    align-items: center;
    justify-items: end;
}


#controls button{
    background-color: transparent;
    border: none;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    margin: 0 .4rem;
    padding: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    
}

#controls svg{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;

}

#mainControls{
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: auto;
    grid-area: main_controls;
    justify-items: center;
    align-items: center;
    width: 100%;
}


#mainControls>#previousIcon{
    justify-self: right;
}

#mainControls>#nextIcon{
    justify-self: left;
}

div#artworkDuration {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    grid-template-areas: "player_image cur_time";
    width: 100%;
    align-items: center;
    justify-items: start;
}

span#curTime{
    font-family: 'Segoe UI', sans-serif;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    grid-area: cur_time;
    padding: 0;
    color: #909090;
    font-weight: 460;
    font-size: 14px;
    margin: 0 0 0 1rem !important;
}

#controls span.material-icons:hover{
    cursor:pointer;
}

#sideControls{
    grid-area: side_controls;
}

#volumeControls{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row-reverse;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

#volume{
    position: relative;
}


#volumeSlider {
    -webkit-appearance: none;
    height: .2em;
    border-radius: 1rem;  
    background: #a0a0a0;
    outline: none;
    padding: 0;
    -webkit-transition: .2s;
    transition: opacity .2s;
    display: none;
    position: absolute;
    right: 97%;
    transform: translateY(-50%);
}

#volume:hover #volumeSlider{
    display: block;
}

#volumeSlider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 1em;
    height: 1em;
    border-radius: 50%; 
    background: #ffffff;
    cursor: pointer;
  }
  
  #volumeSlider::-moz-range-thumb {
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: #ffffff;
    cursor: pointer;
  }

#player *{
    margin: 0;
    user-select: none;
}

#nowPlaying{
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    grid-template-areas: "now_word title_container";
    height: 1.5rem;
    font-size: 1rem;
    font-weight: normal;
    align-content: center;
    align-items: center;
}

#nowPlaying>span:nth-child(1) {
    display: grid;
    grid-area: now_word;
    margin: 0 .3rem 0 0;
}

#nowPlayingTitleContainer{
    display: grid;
    grid-area: title_container;
    white-space: nowrap;
    overflow-x: hidden;
}

#nowPlayingTitle{
    width: 100%;
    /* transform: translateX(-20px); */
}

#nowPlayingTitle>span{
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: grid;
    margin: 0;
    font-size: .9rem;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.move{
    animation: 5s linear 0s infinite alternate move;
}
@keyframes move {
    0%,
    25% {
      transform: translateX(0%);
      left: 0%;
    }
    75%,
    100% {
      transform: translateX(-100%);
      left: 100%;
    }
  }

#nowPlayingDesc{
    font-size: .9rem;
    font-style: italic;
    grid-area: now_playing_description;
}

#playerImage{
    display: grid;
    align-items: center;
    justify-content: flex-start;
    grid-area: player_image;
    height: 45px;
    width: 45px;
    position: relative;
    padding: 0.2rem 0;
    border-radius: 5rem;
}

#playerImage>img{
    flex: none;
    height: auto;
    width: 100%;
    border-radius: 2px;
    overflow: hidden;
    /* filter: drop-shadow(2px 2px .4rem #9e9e9e);
    -webkit-filter: drop-shadow(2px 2px .4rem #9e9e9e); */
    display: none;
}


/* Media Rules */
@media (hover: hover) and (pointer: fine) {
    #mainControls button:hover{
        box-sizing: border-box;
        border-radius: 100%;
        background-color: #202020;
        transition: .08s box-shadow ease-in-out;
        transition: .2s background-color ease-in-out;
        box-shadow:0 0 1px 1px #868686;
    }
    
    #mainControls button:active{
        background-color:#505050 ;
    }
}


@media only screen and (max-width: 465px) {
    #volumeSlider{
        visibility: hidden;
    }

    #controls svg{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 3rem;
        height: 3rem;
    }
  }