/* ---------- обложки ---------- */

.cover {
  position: relative; display: block; flex: none; overflow: hidden;
  border-radius: var(--r-cover);
  background: linear-gradient(160deg, #1a2b52 0%, #141d33 100%);
  box-shadow: 0 0 0 1px var(--line);
}
.cover--sm { width: 44px; height: 44px; border-radius: var(--r-sm); }
.cover--row { width: 52px; height: 52px; border-radius: var(--r-sm); }
.cover--md { width: 124px; height: 124px; box-shadow: var(--shadow-1); }
.cover--lg { width: 160px; height: 160px; box-shadow: var(--shadow-1); }
.cover--xl {
  height: min(300px, 100%); width: auto; aspect-ratio: 1 / 1; max-width: 100%;
  border-radius: var(--r-card); box-shadow: var(--shadow-2);
}

/* Блик по крупной карточке: рисуется поверх обложки. */
.cover__sheen { position: absolute; inset: 0; background: linear-gradient(114deg, transparent 40%, rgba(255,255,255,0.18) 50%, transparent 60%); z-index: 1; }

/* Интернет-обложки: настоящая картинка внутри .cover; при 404 строка прячет
   img (search.js), и остаётся градиент-заглушка remote. */
.cover__img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.cover--round { border-radius: 50%; }
.cover[data-art="remote"] {
  background:
    radial-gradient(80% 70% at 70% 25%, rgba(61, 123, 255, 0.75) 0%, transparent 62%),
    linear-gradient(160deg, #23345e 0%, #18233f 100%);
}
/* Монограмма артиста без фото: первая буква имени крупно по центру. */
.cover__mono {
  position: absolute; inset: 0; display: grid; place-items: center;
  font-size: 40px; font-weight: 700; color: var(--accent-soft);
}

.badge-quality {
  position: absolute; left: 14px; top: 14px; z-index: 2;
  display: flex; align-items: center; gap: 6px;
  padding: 6px 14px; border-radius: var(--pill);
  background: rgba(var(--bg-rgb), 0.6); backdrop-filter: blur(8px);
  color: var(--accent-soft);
}
.badge-quality b { font-size: 11px; font-weight: 700; letter-spacing: 0.08em; color: var(--accent-soft); }
.badge-quality--mini { left: 8px; top: 8px; padding: 4px 10px; }
.badge-quality--mini b { font-size: 9px; }

