/**
 * Playlist.
 *
 * @package fwdpap
 * @since fwdpap 1.0
 */

/* General. */
 .fwdpap-dialog-main .flex{
    width: 100% !important;
    display: flex !important;
    margin: 23px 0 0  0 !important;
}

.fwdpap-dialog-main .flex:last-child{
    margin-bottom: 20px !important;
}

.fwdpap-dialog-main .flex .col1{
    width: 260px !important;
}

.fwdpap-dialog-main .flex .col2{
    width: 100% !important;
}

.fwdpap-dialog-main .flex .col2 p{
    width: 100% !important;
    font-family: Roboto !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 18px !important;
    margin: 10px 0 0 !important;
    color: #333 !important;
}

.fwdpap-dialog-main .flex input[type=text]{
    width: 100% !important;
}

.fwdpap-dialog-main label{
    display: block !important;
}

#fwdpap_no_playlists,
#fwdpap_no_tracks{
    display: inline-block;
    margin: 9px 0 42px !important;
}

.fwdpap-dialog-main .col2 .checkbox  + p{
    margin-top: 19px !important;
}


/* Header. */
#fwdpap_playlists_header{
    font-family: Roboto !important;
    font-size: 24px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 38px !important;
    text-transform: capitalize !important;
    margin: 20px 0 10px !important;
    color: #333 !important;
}


/**
 * Playlist.
 */
#fwdpap_playlists_main{
    width: calc(100% - 20px) !important;
}

#fwdpap_playlists{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr)); /* Adjust column width as needed */
    grid-gap: 20px !important;
    align-content: start !important;
    height: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 40px 0;
}

#fwdpap_playlists.no-playlists{
    margin: 12px 0 0 0 !important;
}

.fwdpap-main-playlist{
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    cursor: grab !important;
    background: #FFF !important;
}

.fwdpap-main-playlist .main-content{
    flex-grow: 1 !important;
    border-radius: 8px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 20px !important;
}

.fwdpap-img-holder{
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    width: 100% !important;
    height: 0 !important;
    padding-bottom: 68.25% !important;
}

.fwdpap-playlist-img{
    position: absolute !important;
    width: 100% !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    object-fit: cover !important;
    background: #CCC !important;
}

.fadpap-playlist-info{
    position: relative !important;
    box-sizing: border-box !important;
    margin: 15px 0 0 !important;
}

.fwdpap-playlist-text{
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    width: 100% !important;
    display: inline-block !important;
    box-sizing: border-box !important;
    text-align: left !important;
    font-family: Roboto !important;
    font-size: 20px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 30px !important;
    margin: 13px 0 0 !important;
    color: #333 !important;
}

.fwdpap-playlist-tracks-count{
    font-family: Roboto !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    text-align: left !important;
    margin: 6px 0 0 !important;
    color: #7C7C7C !important;
}

.add-playlist-or-track,
.add-track{
    width: calc(100% - 42px) !important;
    font-family: Roboto !important;
    font-size: 24px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    text-align: center !important;
    user-select: none !important;
    cursor: pointer !important;
    border-radius: 8px !important;
    border: 1px dashed #B7B7B7 !important;
    padding: 28px 20px !important;
    background: rgba(255, 255, 255, 0.43) !important;
    color: #333 !important;
    transition: all .25s ease-out !important;
}

.add-playlist-or-track svg,
.add-track svg{
    margin: 0 16px 0 !important;
    transform: translateY(5px) !important;
}

.add-playlist-or-track:hover,
.add-track:hover{
    border-color: #FF5B8C !important;
    background: rgba(255, 255, 255, 1) !important;
}

.fwdpap-small-close-button-holder{
    position: relative !important;
    width: 0 !important;
    height: 0 !important;
    overflow: visible !important;
    z-index: 1 !important;
}

.fwdpap-dialog-remove-image{
    position: absolute !important;
    cursor: pointer !important;
    line-height: 0 !important;
    transform: translate(73px, -2px) !important;
    padding: 5px !important;    
}

.fwdpap-dialog-remove-image path{
    transition: all 0.25s ease-out !important;
}

.fwdpap-dialog-remove-image:hover path:nth-child(2){
    fill: #F2376F !important;
}

.fwdpap-main-playlist .fwdpap-edit-playlist-tracks{
   float: left;
   border-color: #FF5B8C !important;
   background: #FF5B8C !important;
   color: #FFF !important;
}

.fwdpap-main-playlist .fwdpap-edit-playlist-tracks:hover{
    background: #F2376F !important;
    border-color: #F2376F !important;
}

.fwdpap-edit-playlist{
    margin-right: 24px !important;
}

.fwdpap-edit-playlist, 
.fwdpap-delete-playlist{
    display: inline-block !important;
    cursor: pointer !important;
    float: right !important;
    margin-top: 4px !important;
}

.fwdpap-edit-playlist svg path, 
.fwdpap-delete-playlist svg path{
    transition: all .25s ease-out !important;
}

.fwdpap-edit-playlist:hover svg path, 
.fwdpap-delete-playlist:hover  svg path{
    stroke: #F2376F !important;
}


/* Add/edit/delete playlist dialog. */
#fwdpap_add_playlist_image_input,
#fwdpap_edit_playlist_image_input{
    display: none !important;
}

#fwdpap_add_playlist_img,
#fwdpap_edit_playlist_img{
    width: 100px !important;
    height: 100px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    margin-bottom: -8px !important;
    background: #e1e1e2 !important;
}

.fwdpap-dialog-main .center{
    text-align: center !important;
}


/* Add/edit track */
#fwdpap_add_track_artwork_img,
#fwdpap_edit_track_artwork_img{
    position: relative !important;
    width: 100px !important;
    height: 100px !important;
    border-radius: 8px !important;
    object-fit: cover !important;
    background: #CCC !important;
}

#fwdpap_edit_track_artwork_img{
    margin-bottom: -8px !important;
}

#fwdpap_add_track_artwork_input,
#fwdpap_edit_track_artwork_input{
    display: none !important;
}

.fwdpap-track{
    position: relative;
    display: block !important;
    
    height: 104px !important;
    box-sizing: border-box !important;
    user-select: none !important;
    border-radius: 100px !important;
    cursor: grab !important;
    padding: 33px 28px 0 0 !important;
    margin: 0 0 20px !important;
    background: #FFF !important;
}

.fwdpap-track-overlay{
    position: absolute !important;
    width: 150px !important;
    height: 100% !important;
}

.fwdpap-track-img{
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 100% !important;
    object-fit: cover !important;
    background: #CCC !important;
}

.fadpap-track-info{
    position: absolute !important;
    text-align: left !important;
    width: calc(100% - 296px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin-left: 97px !important;
    padding: 10px !important;
    box-sizing: border-box !important;
}

.fwdpap-track-text {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    width: 100% !important;
    display: inline-block !important;
    box-sizing: border-box !important;
    text-align: left !important;
    color: #000 !important;
    margin: 0 !important;
    padding: 0 20px 0 0 !important;
}

#fwdpap_tracks .fwdpap-dialog-button{
    margin: 10px 10px 0 5px !important;
}

#fwdpap_buttons #fwdpap_back_to_playlists_button{
    background: #F2376F !important;
    border-color: #F2376F !important;
    color: #FFF !important;
}

#fwdpap_buttons #fwdpap_back_to_playlists_button:hover{
    background: #FF5B8C !important;
    border-color: #FF5B8C !important;
    color: #FFF !important;
}

#fwdpap_buttons .fwdpap-dialog-button + .fwdpap-dialog-button {
    margin-left: 6px !important;
}

#fwdpap_add_track_type{
    width: auto !important;
}

.fwdpap-play{
    position: relative !important;
    display: inline-block !important;
    cursor: pointer !important;
    float: right !important;
    width: 56px !important;
    height: 56px !important;
    margin: -11px 28px 0 0 !important;
}

.fwdpap-play.disabled{
    pointer-events: none !important;
    opacity: .6 !important;
}

.fwdpap-play svg{
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
   
}

.fwdpap-play svg path{
    transition: all .25s ease-out !important;
}

.fwdpap-play svg:hover path{
    fill: #333333 !important;
}

.fwdpap-play .fwdpap-pause-button{
    display: none;
}


/* Add from library button. */
.fwdpap-dialog-add-from-library{
    width: 100% !important;
    font-family: Roboto !important;
    text-align: center !important;
    user-select: none !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 36px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    border: 1px dashed #FF5B8C !important;
    color: #FF5B8C !important;
    transition: all .25s ease-out !important;
}

.fwdpap-dialog-add-from-library svg{
    margin: 0 7px 0 0 !important;
    transform: translateY(6px) !important;
}

.fwdpap-dialog-add-from-library svg path{
    transition: all .25s ease-out !important;
}

.fwdpap-dialog-add-from-library:hover{
    background: #FF5B8C !important;
    color: #FFF !important;
}

.fwdpap-dialog-add-from-library:hover svg path{
    stroke: #FFF !important;
}


/* Submit buttons. */
#fwdpap_buttons{
    position: fixed !important;
    border-radius: 8px !important;
    background: #F0F2F4 !important;
    box-shadow: 0px 4px 17px 0px rgba(80, 75, 117, 0.27) !important;
    right: 20px !important;
    bottom: 30px !important;
    padding: 10px !important;
    background: #FFF !important;
}


/* Smaller screens. */
@media screen and (max-width: 782px) {

    #fwdpap_playlists_main{
        width: calc(100% - 10px) !important;
    }

    #fwdpap_buttons{
        right: 10px !important;
    }
}

@media screen and (max-width: 550px) {

    #fwdpap_playlists{
        grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    }

    .fwdpap-dialog-content{
        width: calc(100% - 10px) !important;
        padding: 0 10px 0 20px !important;
    }

    .fwdpap-dialog-main .flex{
        display: block !important;
    }

    .fwdpap-dialog-main .checkbox{
        margin-top: -51px !important;
    }

    .fwdpap-dialog-main .col2 .checkbox + p{
        margin-top: -6px !important;
    }

}