.magirl-music {
    --music-pink: #f14d86;
    --music-pink-dark: #d93770;
    --music-bg: rgba(28, 29, 35, .97);
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 1035;
    color: #f8f8fb;
    font-size: 13px;
}
.magirl-music__shell { width: min(348px, calc(100vw - 28px)); filter: drop-shadow(0 14px 30px rgba(0,0,0,.28)); }
.magirl-music__mini { display: flex; align-items: center; height: 64px; padding: 8px 9px 8px 8px; overflow: hidden; background: var(--music-bg); border: 1px solid rgba(255,255,255,.1); border-radius: 9px; }
.magirl-music__cover { position: relative; flex: 0 0 auto; padding: 0; overflow: hidden; background: #343640; border: 0; cursor: pointer; }
.magirl-music__cover--mini { width: 48px; height: 48px; border-radius: 6px; }
.magirl-music__cover--large { width: 108px; height: 108px; border-radius: 7px; box-shadow: 0 8px 20px rgba(0,0,0,.3); }
.magirl-music__cover-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.magirl-music__cover-play { position: absolute; inset: 0; display: grid; place-items: center; color: #fff; background: rgba(0,0,0,.38); opacity: 0; transition: opacity .15s; }
.magirl-music__cover:hover .magirl-music__cover-play { opacity: 1; }
.magirl-music__track { min-width: 0; flex: 1; padding: 3px 8px; color: inherit; text-align: left; background: transparent; border: 0; cursor: pointer; }
.magirl-music__track-name, .magirl-music__track-artist, .magirl-music__now-name, .magirl-music__now-artist { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.magirl-music__track-name { font-weight: 600; }
.magirl-music__track-artist, .magirl-music__now-artist { margin-top: 4px; color: #a7a8b0; font-size: 12px; }
.magirl-music button { font: inherit; }
.magirl-music__mini-play, .magirl-music__expand, .magirl-music__hide, .magirl-music__playlist-toggle, .magirl-music__close, .magirl-music__controls button { display: grid; flex: 0 0 auto; place-items: center; width: 30px; height: 30px; padding: 0; color: #e1e2e7; background: transparent; border: 0; border-radius: 50%; cursor: pointer; }
.magirl-music__mini-play { width: 34px; height: 34px; color: #fff; background: var(--music-pink); }
.magirl-music__mini-play:hover, .magirl-music__play:hover { background: var(--music-pink-dark); }
.magirl-music__hide { color: #999ba4; }
.magirl-music button:hover, .magirl-music button:focus-visible { color: #fff; outline: 2px solid rgba(241,77,134,.8); outline-offset: 1px; }
.magirl-music__mini-play:hover, .magirl-music__mini-play:focus-visible, .magirl-music__play:hover, .magirl-music__play:focus-visible { outline-color: rgba(255,255,255,.8); }
.magirl-music__panel { display: none; margin-top: 8px; overflow: hidden; background: var(--music-bg); border: 1px solid rgba(255,255,255,.1); border-radius: 9px; }
.magirl-music.is-expanded .magirl-music__panel { display: block; }
.magirl-music.is-expanded .magirl-music__expand { transform: rotate(180deg); }
.magirl-music__head { display: flex; align-items: center; justify-content: space-between; min-height: 42px; padding: 0 8px 0 14px; border-bottom: 1px solid rgba(255,255,255,.09); }
.magirl-music__title { font-size: 13px; font-weight: 600; }
.magirl-music__head-actions { display: flex; gap: 2px; }
.magirl-music__body { padding: 15px 16px 14px; }
.magirl-music__now { display: flex; align-items: center; gap: 14px; min-height: 108px; }
.magirl-music__now-meta { min-width: 0; }
.magirl-music__now-name { font-size: 15px; font-weight: 600; }
.magirl-music__progress-row { display: flex; align-items: center; gap: 8px; margin-top: 18px; color: #999ba4; font-size: 10px; }
.magirl-music__progress, .magirl-music__volume { min-width: 0; height: 4px; accent-color: var(--music-pink); cursor: pointer; }
.magirl-music__progress { flex: 1; }
.magirl-music__controls { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 11px; }
.magirl-music__controls button { width: 32px; height: 32px; }
.magirl-music__controls .magirl-music__play { width: 42px; height: 42px; color: #fff; background: var(--music-pink); font-size: 14px; }
.magirl-music__shuffle.is-active, .magirl-music__repeat.is-active { color: var(--music-pink); }
.magirl-music__volume-row { display: flex; align-items: center; gap: 8px; margin-top: 8px; color: #9fa0a9; }
.magirl-music__volume { width: 88px; }
.magirl-music__playlist { display: none; max-height: 158px; margin: 13px -5px -5px; padding: 4px 5px; overflow-y: auto; border-top: 1px solid rgba(255,255,255,.08); list-style: none; }
.magirl-music.is-playlist-open .magirl-music__playlist { display: block; }
.magirl-music__playlist li { display: flex; align-items: center; gap: 8px; min-height: 31px; padding: 5px 7px; color: #b8b9c1; border-radius: 4px; cursor: pointer; }
.magirl-music__playlist li:hover { color: #fff; background: rgba(255,255,255,.08); }
.magirl-music__playlist li.is-current { color: #ff6b9c; background: rgba(241,77,134,.12); }
.magirl-music__playlist-index { flex: 0 0 17px; color: #858790; text-align: center; font-size: 11px; }
.magirl-music__playlist-title { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.magirl-music__restore { display: none; width: 44px; height: 44px; padding: 0; color: #fff; background: var(--music-pink); border: 1px solid rgba(255,255,255,.45); border-radius: 50%; box-shadow: 0 8px 20px rgba(115,19,61,.32); cursor: pointer; }
.magirl-music.is-hidden .magirl-music__shell { display: none; }
.magirl-music.is-hidden .magirl-music__restore { display: grid; place-items: center; }
.magirl-music.is-playing .magirl-music__cover--mini { animation: magirl-music-spin 10s linear infinite; border-radius: 50%; }
@keyframes magirl-music-spin { to { transform: rotate(360deg); } }
@media (max-width: 575.98px) { .magirl-music { right: 12px; bottom: 12px; } .magirl-music__shell { width: min(348px, calc(100vw - 24px)); } .magirl-music__body { padding: 13px 13px 12px; } }
