/* nowplaying.css — Spotify "now playing" strip, top-right of each video tile */
.np-strip {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: min(320px, calc(100% - 20px));
  padding: 8px 14px 10px 8px;
  border-radius: 10px;
  background: rgba(14, 13, 18, 0.74);
  backdrop-filter: blur(6px);
  color: #f1f0f5;
  text-decoration: none;
  line-height: 1.25;
  overflow: hidden;
  transition: background 0.2s, opacity 0.2s;
}
.np-strip[hidden] { display: none; }
a.np-strip[href] { cursor: pointer; }
a.np-strip[href]:hover { background: rgba(14, 13, 18, 0.9); }
a.np-strip[href]:hover .np-cta { opacity: 1; text-decoration: underline; }
.np-strip:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.np-strip.np-paused { opacity: 0.7; }

.np-art {
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 4px;
  object-fit: cover;
}
.np-art[hidden] { display: none; }

.np-text { display: flex; flex-direction: column; min-width: 0; }
.np-title, .np-sub { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.np-title { font-size: 13px; font-weight: 600; }
.np-sub { font-size: 12px; opacity: 0.75; }
.np-cta { font-size: 11px; opacity: 0.6; margin-top: 2px; }

.np-bar {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: rgba(255, 255, 255, 0.12);
}
.np-bar i { display: block; height: 100%; width: 0; background: #1ed760; }

@media (prefers-reduced-motion: reduce) {
  .np-strip { transition: none; }
}
