#spotify-widget{position:absolute;left:16px;bottom:78px;z-index:6;max-width:calc(100% - 32px);color:#fff;font:14px/1.35 system-ui,sans-serif;text-align:left}
#spotify-widget [hidden],#spotify-widget[hidden],.chat-only #spotify-widget,.player.offline #spotify-widget{display:none!important}
/* Одна строка: обложка + текст. Отдельная шапка с логотипом и кнопкой съедала
   36px высоты ради нуля информации, поэтому логотип ужался в строку к эквалайзеру,
   а «свернуть» стало призрачной кнопкой в углу. */
#spotify-card{position:relative;width:322px;max-width:100%;padding:10px 34px 10px 10px;background:linear-gradient(135deg,rgba(30,215,96,.14),rgba(30,215,96,0) 48%),rgba(16,17,20,.93);border:1px solid rgba(255,255,255,.16);border-radius:14px;box-shadow:0 6px 24px #0005;animation:spotify-in .26s ease-out}
#spotify-track{display:flex;align-items:center;gap:11px;min-width:0;color:#fff;text-decoration:none}
#spotify-cover{display:block;width:56px;height:56px;flex:none;border-radius:8px;object-fit:contain;background:#202227;transition:transform .18s}
#spotify-track:hover #spotify-cover{transform:scale(1.04)}
#spotify-track:hover #spotify-title{text-decoration:underline}
.spotify-widget-text{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}
.spotify-widget-brand{display:flex;align-items:center;gap:7px;height:15px}
.spotify-widget-logo{display:block;width:54px;height:auto;opacity:.8}
.spotify-eq{display:flex;align-items:flex-end;gap:2px;height:11px;flex:none}
.spotify-eq i{width:3px;height:11px;border-radius:1px;background:#1ed760;transform:scaleY(.3);transform-origin:bottom;animation:spotify-eq .84s ease-in-out infinite alternate}
.spotify-eq i:nth-child(2){animation-duration:.58s;animation-delay:-.2s}
.spotify-eq i:nth-child(3){animation-duration:1.06s;animation-delay:-.45s}
/* Длинное название не обрубаем насмерть: если не влезло — уезжает и возвращается.
   Сдвиг и время считает скрипт, потому что зависят от реальной ширины текста. */
.spotify-line{overflow:hidden;min-width:0}
.spotify-line>*{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.spotify-line.scroll{-webkit-mask-image:linear-gradient(90deg,#0000,#000 9px,#000 calc(100% - 11px),#0000);mask-image:linear-gradient(90deg,#0000,#000 9px,#000 calc(100% - 11px),#0000)}
.spotify-line.scroll>*{overflow:visible;text-overflow:clip;animation:spotify-marquee var(--marquee-time,9s) linear infinite}
#spotify-title{font-size:14px;font-weight:600}
#spotify-artist{color:#bec3ce;font-size:12px}
#spotify-card.swap .spotify-widget-text{animation:spotify-swap .34s ease-out}
#spotify-card.swap #spotify-cover{animation:spotify-fade .34s ease-out}
#spotify-hide{position:absolute;top:3px;right:3px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:8px;background:none;color:#9aa1ad;font:inherit;font-size:19px;line-height:1;cursor:pointer;touch-action:manipulation}
#spotify-hide:hover{background:#ffffff1f;color:#fff}
#spotify-compact{display:flex;align-items:stretch;gap:4px}
#spotify-compact button{font:inherit;color:#f3f4f7;cursor:pointer;border:1px solid #ffffff24;background:#24262c;border-radius:10px;box-shadow:0 4px 16px #0004;touch-action:manipulation}
#spotify-compact button:hover{background:#34373e}
#spotify-open{display:flex;align-items:center;gap:8px;min-height:40px;padding:5px 14px 5px 6px}
#spotify-open-note{color:#1ed760;font-size:18px;padding-left:8px}
#spotify-open-cover{display:block;width:28px;height:28px;flex:none;border-radius:6px;object-fit:contain;background:#202227}
#spotify-dismiss{min-width:40px;min-height:40px;padding:4px 10px;font-size:22px;line-height:1}
#spotify-widget :is(button,a):focus-visible{outline:2px solid #1ed760;outline-offset:3px}
@keyframes spotify-in{from{opacity:0;transform:translateY(7px) scale(.97)}to{opacity:1;transform:none}}
@keyframes spotify-swap{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes spotify-fade{from{opacity:.15}to{opacity:1}}
@keyframes spotify-eq{from{transform:scaleY(.22)}to{transform:scaleY(1)}}
@keyframes spotify-marquee{0%,12%{transform:translateX(0)}50%,62%{transform:translateX(var(--marquee-shift,0))}100%{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){#spotify-card,#spotify-card.swap .spotify-widget-text,#spotify-card.swap #spotify-cover,.spotify-eq i{animation:none}.spotify-line.scroll>*{overflow:hidden;text-overflow:ellipsis;animation:none}#spotify-cover,#spotify-track:hover #spotify-cover{transition:none;transform:none}}
@media(max-width:600px){#spotify-widget{left:10px;bottom:64px;max-width:calc(100% - 20px)}#spotify-card{width:288px;padding:9px 36px 9px 9px}#spotify-cover{width:50px;height:50px}#spotify-hide{width:34px;height:34px}#spotify-open{min-height:44px}#spotify-dismiss{min-width:44px;min-height:44px}}
@media(max-height:430px) and (orientation:landscape){#spotify-widget{bottom:64px}#spotify-card{width:288px;padding:8px 32px 8px 8px}#spotify-cover{width:48px;height:48px}}
