/* ArenaFM ambient background v1: compositor-only drift, no video, canvas or downloads. */
html { background-color: #101310; }
body { background: transparent; isolation: isolate; }
body::before {
  content: "";
  position: fixed;
  inset: -7vh -6vw;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 70% at 10% 10%, rgba(105, 40, 139, 0.27) 0%, rgba(70, 24, 89, 0.12) 46%, transparent 78%),
    radial-gradient(ellipse 60% 70% at 93% 81%, rgba(148, 33, 68, 0.22) 0%, rgba(91, 20, 51, 0.1) 42%, transparent 77%),
    linear-gradient(120deg, #101310 12%, #15111b 49%, #101310 87%);
  transform: translate3d(-1%, 0, 0) scale(1.01);
  will-change: transform;
  animation: arena-ambient-drift 36s ease-in-out infinite alternate;
}
@keyframes arena-ambient-drift {
  0%   { transform: translate3d(-1.5%, 0.7%, 0) scale(1.01); }
  100% { transform: translate3d(1.5%, -0.8%, 0) scale(1.03); }
}
/* Keep phones low-power: static gradient, still visible, with no background animation. */
@media (max-width: 760px) {
  body::before { animation: none; transform: none; will-change: auto; }
}
/* Accessibility: never animate the site background with reduced-motion enabled. */
@media (prefers-reduced-motion: reduce) {
  body::before { animation: none; transform: none; will-change: auto; }
}
