/* Hallmark component: Spotify name search; existing MMMaI tokens.
   Pre-emit critique: P4 H4 E4 S5 R5 V4. No result animation: keep typing stable. */
.spotify-birthday [hidden] { display: none !important; }
.spotify-birthday { scroll-margin-top: 5rem; }
.spotify-birthday-search { margin: 1.5rem 0 .75rem; }
.spotify-birthday-search label { display: block; font-weight: 650; margin-bottom: .5rem; }
.spotify-birthday-input { display: flex; gap: .75rem; align-items: center; }
.spotify-birthday-input input { flex: 1; min-width: 0; margin: 0; }
.spotify-birthday .button { white-space: nowrap; }
.spotify-birthday-note { color: var(--muted); font-size: .875rem; line-height: 1.6; }
.spotify-birthday-examples { margin: 1rem 0; }
.spotify-birthday-examples summary { cursor: pointer; color: var(--primary-dark); font-weight: 600; }
.spotify-birthday-examples ul { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; padding: .75rem 0; list-style: none; }
.spotify-birthday-examples li { padding: 0; margin: 0; }
.spotify-birthday-examples li::before { content: none; }
.spotify-birthday-result { margin: 1.5rem 0; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.spotify-birthday-result h3 { overflow-wrap: anywhere; }
.spotify-birthday-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.spotify-birthday-player { margin: 1rem 0; }
.spotify-birthday-player iframe { display: block; width: 100%; border: 0; border-radius: var(--radius); }
.spotify-birthday-playlist { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.25rem; margin: 1.5rem 0; }
.spotify-birthday-text-button { padding: 0; background: none; border: 0; font: inherit; color: var(--primary-dark); cursor: pointer; text-align: left; }
.spotify-birthday-text-button:hover { text-decoration: underline; }
.spotify-birthday-text-button:focus-visible, .spotify-birthday-examples summary:focus-visible { outline: 2px solid var(--primary); outline-offset: 4px; }
.spotify-birthday-own { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.spotify-birthday-own h3 { margin-top: 0; }
.spotify-birthday-hero-link { margin-top: 1rem; font-size: .95rem; }
@media (max-width: 600px) {
  .spotify-birthday-input { align-items: stretch; flex-direction: column; }
  .spotify-birthday .button { font-size: .875rem; padding-inline: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .spotify-birthday *, .spotify-birthday *::before, .spotify-birthday *::after { transition: none !important; animation: none !important; }
}
