.hybrid-stage-player,
.hybrid-phase-masthead,
.legacy-panel,
.legacy-center-board,
.chat-bubble {
  transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.hybrid-phase-masthead.is-urgent .hybrid-phase-clock {
  animation: hybrid-urgent-pulse 1s ease-in-out infinite;
}

@keyframes hybrid-urgent-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(229, 107, 98, 0.18); }
  50% { box-shadow: 0 0 0 9px rgba(229, 107, 98, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .hybrid-stage-player,
  .hybrid-phase-masthead,
  .legacy-panel,
  .legacy-center-board,
  .chat-bubble,
  .phase-overlay,
  .victory-overlay,
  #role-reveal-overlay,
  .reveal-card-container,
  .role-reveal-container,
  .role-reveal-card-inner {
    animation: none !important;
    transition: none !important;
  }

  .hybrid-phase-masthead.is-urgent .hybrid-phase-clock,
  #role-reveal-overlay.is-charging::before,
  #role-reveal-overlay.is-flashing::after,
  .reveal-card-container.is-revealing,
  .reveal-card-container.is-rotating,
  .phase-overlay.active {
    animation: none !important;
  }

  html:focus-within {
    scroll-behavior: auto;
  }
}
