.music-player {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    min-height: 88px !important;
    background: rgba(17, 24, 39, .97) !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
    display: grid !important;
    grid-template-columns: minmax(220px, 30%) minmax(320px, 1fr) minmax(210px, 24%) !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 10px 18px !important;
    z-index: 999999 !important;
    box-shadow: 0 -8px 25px rgba(0,0,0,.35) !important;
    backdrop-filter: blur(15px) !important;
    -webkit-backdrop-filter: blur(15px) !important;
    box-sizing: border-box !important;
}

.player-left {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
}

.player-left img {
    width: 60px !important;
    height: 60px !important;
    border-radius: 10px !important;
    object-fit: cover !important;
    margin-right: 14px !important;
    flex-shrink: 0 !important;
}

.player-info {
    min-width: 0 !important;
    overflow: hidden !important;
}

#playerTitle {
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#playerArtist {
    color: #b8b8b8 !important;
    font-size: 13px !important;
    margin-top: 3px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.player-center {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 8px !important;
}

.player-controls {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
}

.player-btn {
    width: 42px !important;
    height: 42px !important;
    border: none !important;
    border-radius: 50% !important;
    background: #2b3343 !important;
    color: #fff !important;
    cursor: pointer !important;
    transition: .2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

.player-btn:hover,
.player-btn.active {
    background: #ff3b57 !important;
    color: #fff !important;
}

.play-btn {
    width: 54px !important;
    height: 54px !important;
    background: #ff3b57 !important;
    font-size: 18px !important;
}

.repeat-btn.repeat-one {
    position: relative !important;
}

.repeat-btn.repeat-one::after {
    content: "1" !important;
    position: absolute !important;
    right: 6px !important;
    bottom: 5px !important;
    width: 13px !important;
    height: 13px !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #ff3b57 !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 13px !important;
    text-align: center !important;
}

.progress-wrapper {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.progress-wrapper span {
    color: #fff !important;
    min-width: 38px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    text-align: center !important;
}

#progressBar,
#volumeBar {
    -webkit-appearance: none !important;
    appearance: none !important;
    height: 5px !important;
    background: #3d4657 !important;
    border-radius: 20px !important;
    cursor: pointer !important;
    accent-color: #ff3b57 !important;
}

#progressBar {
    flex: 1 !important;
    min-width: 80px !important;
}

#volumeBar {
    width: 110px !important;
}

#progressBar::-webkit-slider-thumb,
#volumeBar::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    width: 14px !important;
    height: 14px !important;
    border-radius: 50% !important;
    background: #ff3b57 !important;
    cursor: pointer !important;
}

#progressBar::-moz-range-thumb,
#volumeBar::-moz-range-thumb {
    width: 14px !important;
    height: 14px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #ff3b57 !important;
    cursor: pointer !important;
}

.player-right {
    min-width: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
}

.volume-btn,
.collapse-player-btn {
    width: 38px !important;
    height: 38px !important;
}

.collapse-player-btn {
    display: none !important;
}

body {
    padding-bottom: 98px !important;
}

@media (max-width: 768px) {
    .music-player {
        min-height: 94px !important;
        height: 94px !important;
        display: block !important;
        padding: 0 !important;
        overflow: visible !important;
        touch-action: manipulation !important;
    }

    .music-player.is-mini .player-left {
        position: absolute !important;
        left: 12px !important;
        top: 24px !important;
        width: 54px !important;
        height: 54px !important;
        cursor: pointer !important;
        z-index: 4 !important;
    }

    .music-player.is-mini .player-left img {
        display: block !important;
        width: 54px !important;
        height: 54px !important;
        border-radius: 10px !important;
        margin: 0 !important;
    }

    .music-player.is-mini .player-info,
    .music-player.is-mini #playerArtist,
    .music-player.is-mini #muteBtn,
    .music-player.is-mini #volumeBar,
    .music-player.is-mini #collapsePlayerBtn {
        display: none !important;
    }

    .music-player.is-mini .player-center,
    .music-player.is-mini .player-controls,
    .music-player.is-mini .player-right {
        display: contents !important;
    }

    .music-player.is-mini .progress-wrapper {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 18px !important;
        display: flex !important;
        align-items: flex-start !important;
        gap: 0 !important;
        padding: 0 !important;
        z-index: 20 !important;
        pointer-events: auto !important;
    }

    .music-player.is-mini .progress-wrapper span {
        display: none !important;
    }

    .music-player.is-mini #progressBar {
        width: 100% !important;
        min-width: 100% !important;
        height: 8px !important;
        border-radius: 0 !important;
        background: linear-gradient(to right, #ff3b57 0%, #ff3b57 0%, rgba(255,255,255,.28) 0%, rgba(255,255,255,.28) 100%) !important;
        cursor: pointer !important;
        touch-action: none !important;
        pointer-events: auto !important;
        margin: 0 !important;
    }

    .music-player.is-mini #progressBar::-webkit-slider-thumb {
        -webkit-appearance: none !important;
        width: 18px !important;
        height: 18px !important;
        border-radius: 50% !important;
        background: #ff3b57 !important;
        opacity: 1 !important;
        box-shadow: 0 0 0 4px rgba(255,59,87,.18) !important;
    }

    .music-player.is-mini #progressBar::-moz-range-thumb {
        width: 18px !important;
        height: 18px !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: #ff3b57 !important;
        opacity: 1 !important;
        box-shadow: 0 0 0 4px rgba(255,59,87,.18) !important;
    }

    .music-player.is-mini #prevBtn {
        position: absolute !important;
        left: calc(50% - 104px) !important;
        top: 24px !important;
        display: inline-flex !important;
        z-index: 5 !important;
    }

    .music-player.is-mini #playBtn {
        position: absolute !important;
        left: 50% !important;
        top: 18px !important;
        transform: translateX(-50%) !important;
        z-index: 5 !important;
    }

    .music-player.is-mini #nextBtn {
        position: absolute !important;
        left: calc(50% + 64px) !important;
        top: 24px !important;
        z-index: 5 !important;
    }

    .music-player.is-mini #repeatBtn {
        position: absolute !important;
        right: 12px !important;
        top: 24px !important;
        z-index: 5 !important;
    }

    .music-player.is-mini .player-btn {
        width: 46px !important;
        height: 46px !important;
        font-size: 15px !important;
    }

    .music-player.is-mini #playBtn {
        width: 58px !important;
        height: 58px !important;
        font-size: 18px !important;
    }

    .music-player.is-expanded {
        height: auto !important;
        min-height: 230px !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas: "info" "center" "right" !important;
        padding: 12px !important;
    }

    .music-player.is-expanded .player-left {
        grid-area: info !important;
        justify-content: flex-start !important;
    }

    .music-player.is-expanded #playerCover {
        display: block !important;
        width: 72px !important;
        height: 72px !important;
        border-radius: 12px !important;
    }

    .music-player.is-expanded .player-info,
    .music-player.is-expanded #playerArtist {
        display: block !important;
    }

    .music-player.is-expanded .player-center {
        grid-area: center !important;
        display: flex !important;
    }

    .music-player.is-expanded .player-controls {
        display: flex !important;
        gap: 12px !important;
    }

    .music-player.is-expanded .progress-wrapper {
        display: flex !important;
    }

    .music-player.is-expanded .player-right {
        grid-area: right !important;
        display: flex !important;
        justify-content: center !important;
        gap: 10px !important;
    }

    .music-player.is-expanded #prevBtn,
    .music-player.is-expanded #muteBtn,
    .music-player.is-expanded #volumeBar,
    .music-player.is-expanded #collapsePlayerBtn {
        display: inline-flex !important;
    }

    .music-player.is-expanded #volumeBar {
        display: block !important;
        width: 130px !important;
    }

    .music-player.is-expanded .player-btn {
        width: 42px !important;
        height: 42px !important;
    }

    .music-player.is-expanded #playBtn {
        width: 54px !important;
        height: 54px !important;
    }

    body {
        padding-bottom: 104px !important;
    }
}

@media (max-width: 420px) {
    .music-player.is-mini .player-left {
        left: 8px !important;
        width: 48px !important;
        height: 48px !important;
    }

    .music-player.is-mini .player-left img {
        width: 48px !important;
        height: 48px !important;
    }

    .music-player.is-mini #prevBtn {
        left: calc(50% - 94px) !important;
    }

    .music-player.is-mini #nextBtn {
        left: calc(50% + 56px) !important;
    }

    .music-player.is-mini #repeatBtn {
        right: 8px !important;
    }

    .music-player.is-mini .player-btn {
        width: 42px !important;
        height: 42px !important;
        font-size: 14px !important;
    }

    .music-player.is-mini #playBtn {
        width: 54px !important;
        height: 54px !important;
        font-size: 17px !important;
    }

    .progress-wrapper span {
        display: none !important;
    }
}
