/* ============================================================================
   base/images.css
   Image frames — shared album-cover hover container
   ============================================================================ */


/* ===== 1. ALBUM COVER FRAME (reveal-on-hover) ===== */
.album-cover-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 0.75rem;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow: 0 4px 20px rgba(var(--shadowPrimary) / var(--shadowPrimaryAlpha));
}

.album-cover-wrap:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 12px 40px rgba(var(--shadowHeavy) / var(--shadowHeavyAlpha));
}

.album-cover-wrap:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(var(--shadowPrimary) / var(--shadowPrimaryAlpha)));
  opacity: 0;
  transition: opacity 0.25s ease;
}

.album-cover-wrap:hover:after {
  opacity: 1;
}

.album-cover-wrap .play-overlay {
  position: absolute;
  bottom: 0.75rem;
  right: 0.75rem;
  z-index: 2;
  opacity: 0;
  transform: translateY(8px) scale(0.8);
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.album-cover-wrap:hover .play-overlay {
  opacity: 1;
  transform: translateY(0) scale(1);
}