/*
GENERAL SETTING - DESKTOP FIRST
*/
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    font-family: 'Montserrat', sans-serif;
}

/*
UTILITY SETTING
*/
ul{
    list-style-type: none;
}

a{
    text-decoration: none;
}

.inline-block{
    display: inline-block;
}

.margin20{
    margin: 20px;
}

.margin-bottom20{
    margin-bottom: 20px;
}

.border-active{
    border-left: 3px solid lime;
}

.border-active2{
    border-bottom: 3px solid lime;
}

/*
MAIN END CONTAINER APP SETTING
*/
.container{
    width: 100%;
    height: 100vh;
}

.row-flex{
    width: 100vw;
    height: calc(100vh - 100px);
    display: flex;
    overflow: hidden;
}

/*
NAV-SIDEBAR SETTING
*/
.sidebar{
    width: 250px;
    height: calc(100vh - 100px);
    background-color: black;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.top-sidebar{
    width: 100%;
    height: 500px;
}

.bottom-sidebar{
    width: 100%;
    background-color: black;
}

/*
FIRST SECTION LOGO END LOGO MOBILE
*/
.logo{
    width: 100%;
    height: 100px;
    border: 1px dashed black;
    display: block;
}

.w-logo{
    margin: 20px;
    width: 150px;
}

.small-logo{
    display: none;
    text-align: center;
}

.w-small-logo{
    width: 30px;
    margin: 5px;
}

/*
SECOND SECTION MENU-SIDEBAR
*/
.menu-sidebar{
    width: 100%;
}

.menu-sidebar ul{
    text-align: left;
    margin-bottom: 20px;
}

.icon-svg{
    width: 30px;
    margin: 5px;
    margin-left: 20px;
    filter: brightness(0) saturate(100%) invert(78%) sepia(11%) saturate(11%) hue-rotate(345deg) brightness(84%) contrast(82%);
}

.icon-svg:hover{
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(114deg) brightness(101%) contrast(102%);
}

.icon-svg2:hover{
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(110deg) brightness(98%) contrast(108%);
}

.menu-sidebar span{
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%);
}

#home-white{
    color: white;
    font-weight: bold;
}

.color-g{
    color: rgb(163, 163, 163);
}

.color-g:hover{
    color: white;
}


.menu-sidebar li{
    position: relative;
}

/*
THREE SECTION PLAYLIST
*/
.menu-playlist{
    width: 100%;
    height: 40vh;
    overflow-y: auto;
}

.menu-playlist h4{
    color: white;
    margin-left: 20px;
    margin-bottom: 20px;
}

.menu-playlist a{
    margin-left: 20px;
    color:rgb(163, 163, 163);
    font-weight: 700;
}

.menu-playlist li{
    line-height: 35px;
}

.menu-playlist i{
    font-size: 50px;
}

.plus{
    position: relative;
    margin-bottom: 10px;
}

.plus span{
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%);
    margin-left: 10px;
}

/*
FOUR SECTION INSTALL-APP END CLIENT
*/
.item-install-client{
    width: 100%;
    margin-bottom: 10px;
}

.item-install-client i{
    font-size: 15px;
    margin-left: 20px;
}

.item-install-client h3{
    color: white;
    margin-left: 20px;
}

.item-install-client hr{
    color: white;
    width: 215px;
    margin-left: 15px;
    margin-bottom: 15px;
}

#user{
    font-size: 40px;
}

#user-text{
    color: white;
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%);
    margin-left: 10px;
    font-weight: bold;
}

#installa-app{
    margin-left: 10px;
    font-weight: 700;
}

#user-jonh{
    position: relative;
}

#install{
    margin-bottom: 10px;
    position: relative;
}

/*
FIVE SECTION MUSIC-CONTENT
*/
.music-content{
    width: calc(100% - 250px);
    height: 100%;
    background-color: #141922;
    display: flex;
    flex-direction: column;
}

.topbar{
    width: calc(100% - 250px);
    height: 100px;
    background-color: #080b1275;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1;
}

.row-button{
    width: 100%;
    height: 100px;
    position: relative;
}

.button-upgrade{
    width: 300px;
    height: 50px;
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translate(0%, -50%);
}

.button{
    padding: 15px;
    padding-left: 35px;
    padding-right: 35px;
    border: 2px solid white;
    position: absolute;
    right: 0;
    top: 0%;
    transform: translate(0%, -50%);
    border-radius: 25px;
    color: white;
    font-weight: 700;
    text-transform: uppercase;
    transition: .6s;
}

.zoom-in{
    transform: scale(1);
}

.zoom-in:hover{
    transform: scale(1.2);
}

.content-musical-artist h2{
    color: white;
}

.content-musical-artist h3{
    color: white;
    text-align: center;
    margin-bottom: 10px;
}

.content-musical-artist p{
    text-align: center;
    color:rgb(163, 163, 163);
}

#text-left, #text-left2{
    text-align: left;
    margin-bottom: 30px;
}
    
/*
SIX SECTION CONTENT E NAV
*/
.content-musical-artist{
    overflow-y: auto;
    padding-top: 130px;
    height: 100%;
}

.nav-center{
    text-align: center;
}

.item-nav-link{
    margin-right: 25px;
}

.item-recently-played{
    margin-right: 10px;
    display: inline-block;
    margin-bottom: 20px;
}

.album img{
    max-width: 100%;
    margin-bottom: 10px;
    display: block;
}

.album-flex{
    display: flex;
    justify-content:flex-start;
    margin-left: 20px;
    margin-bottom: 100px;
}

.album{
    width: calc(100% / 6 - 20px);
    margin-right: 20px;
}

.album-card{
    position: relative;
}

.album-card:hover .icon-play{
    opacity: 1;
}

.icon-play{
    background-color: rgb(0, 0, 0, 0.5);
    position: absolute;
    left: 0;
    top: 0;
    color: white;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 50px;
    opacity: 0;
}

.album-card:hover .icon-play-circle{
    opacity: 1;
    border-radius: 50%;
}

.image-circle{
    border-radius: 50%;
}

.nav-center a{
    color:rgb(163, 163, 163);
    font-weight: 700;
}

.nav-center ul{
    margin-bottom: 50px;
}

/*
EFFECT LAYOVER
*/
.image-layover:hover{
    opacity: 0.5;
}

.text-hover-w:hover{
    color: white;
}

/*
FOOTER-PLAYER SETTING
*/
.player-container{
    width: 100%;
    height: 100px;
    background-color: #282828;
    position: fixed;
    bottom: 0;
}

.player-row{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.col15-left{
    width: 15%;
    height: 100%;
}

.col15-right{
    width: 15%;
    height: 100%;
    position: relative;
}

.col70{
    width: 70%;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/*
FOOTER- LEFT PLAYER SETTING
*/
.row-left-player{
    max-width: 250px;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: left;
}

.col-image{
    width: 30%;
    height: 100%;
    position: relative;
}

.col-image img{
    height: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.col-title{
    width: 40%;
    height: 100%;
    position: relative;
}

.col-title h5{
    position: absolute;
    top: 40%;
    transform: translate(-0%, -50%);
}

.col-title p{
    position: absolute;
    top: 60%;
    transform: translate(-0%, -50%);
}

.col-icon{
    width: 30%;
    height: 100%;
    position: relative;
}

.col-title a{
    color: white;
}

#brano-nome{
    font-size: 12px;
    color: rgb(163, 163, 163);
}

#heart{
    position: absolute;
    left: 30%;
    top: 50%;
    transform: translate(-50%, -50%);
}

#folder{
    position: absolute;
    left: 70%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/*
FOOTER- CENTER PLAYER SETTING
*/
.row-center-player{
    position: absolute;
    height: 50%;
    width: 70%;
    display: flex;
    justify-content: center;
}

.col-icon-center{
    width: 50px;
    height: 100%;
    position: relative;
}

#play, #redo-alt, #step-forward, #step-backward, #random{
    color: white;
} 

#play{
    font-size: 40px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

#random, #step-backward, #step-forward, #redo-alt{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/*
FOOTER- BOTTOM PLAYER TIME SETTING
*/
.col-icon-center-bottom{
    width: 70%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 150%;
    transform: translate(-50%, -50%);
    text-align: center;
}

#line-range{
    width: 80%;
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 15px;
}

.col-icon-center-bottom span{
    font-size: 10px;
    color: white;
}

/*
FOOTER- RIGHT PLAYER VOLUME SETTING
*/
.row-right-player{
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    position: relative;
}

.col-icon-right{
    width: 40%;
    height: 100%;
}

.col-icon-right a{
    color: white;
}

.col-icon-right div{
    position: absolute;
    left: 20%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.margin-r10{
    margin-right: 10px;
}

.col-icon-right-v{
    width: 60%;
    height: 100%;
    position: relative;
}

.col-icon-right-v input{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/*
TABLET
*/
@media screen and (max-width: 991px) {
    .album{
        width: calc(100% / 4 - 20px);
    }

    .album-flex{
        flex-wrap: wrap;
    }

    .col15-left, .col15-right{
        width: 25%;
    }
    
    .col70{
        max-width: 50%;
    }

    .row-center-player{
        width: 50%;
    }
}

@media screen and (max-width: 768px) {
    .album{
        width: calc(100% / 2 - 20px);
    }

    .album-flex{
        flex-wrap: wrap;
    }

    .col15-left, .col15-right{
        width: 33%;
    }
    
    .col70{
        max-width: 33%;
    }

    .row-center-player{
        width: 33%;
    }

    .col-icon-center-bottom{
        width: 50vw;
    }
}

/*
MOBILE
*/
@media screen and (max-width: 550px) {
    .sidebar{
        width: 50px;
    }

    .music-content{
        width: calc(100% - 50px);
    }

    .topbar{
        width: calc(100% - 50px);
    }

    .album{
        width: calc(100% / 2 - 20px);
    }

    .album-flex{
        flex-wrap: wrap;
    }

    .menu-playlist{
        display: none;
    }

    .logo{
        display: none;
    }

    .small-logo{
        display: block;
    }

    .menu-sidebar ul{
        text-align: center;
    }

    .menu-sidebar span{
        display: none;
    }

    .icon-svg{
        margin-left: 5px;
    }

    #installa-app{
        display: none;
    }

    .item-install-client hr{
        display: none;
    }

    #user-text{
        display: none;
    }

    #user{
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -120%);
    }

    .item-install-client i{
        margin-left: 0px;
    }

    #icon-download{
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -550%);
    }

    #line-range{
        margin-left: 0;
        margin-right: 0;
    }

    .margin-r10{
        margin-right: 2px;
    }

    .col-icon-right-v input{
        width: 80%;
    }
}
