/* Shared animated aurora background.
   Used by the coming-soon page, the login page, and the terms/privacy pages.
   Markup lives in templates/_aurora_bg.html. Page content must sit at z-index 3+. */

.au-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.au-aurora{position:absolute;inset:-6%;transition:transform .3s ease-out}
.au-disc{position:absolute;top:50%;left:50%;width:150vmax;height:150vmax;margin:-75vmax 0 0 -75vmax;
  border-radius:45%;filter:blur(80px);transform-origin:center}
.au-disc.a{opacity:.55;animation:au-spin 40s linear infinite;background:
  radial-gradient(closest-side at 30% 30%,#8a2be2,transparent 60%),
  radial-gradient(closest-side at 70% 42%,#c77dff,transparent 55%),
  radial-gradient(closest-side at 50% 72%,#660099,transparent 60%),
  radial-gradient(closest-side at 24% 66%,#c9a84c,transparent 42%)}
.au-disc.b{opacity:.42;animation:au-spinR 55s linear infinite;background:
  radial-gradient(closest-side at 66% 32%,#9d4edd,transparent 58%),
  radial-gradient(closest-side at 34% 60%,#7a1fb8,transparent 55%),
  radial-gradient(closest-side at 62% 70%,#c9a84c,transparent 40%)}
@keyframes au-spin{to{transform:rotate(360deg)}}
@keyframes au-spinR{to{transform:rotate(-360deg)}}

.au-veil{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 40%,transparent 34%,rgba(5,5,9,.55) 100%)}

.au-glow{position:fixed;left:50%;top:44%;width:360px;height:360px;border-radius:50%;z-index:2;
  pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:screen;filter:blur(24px);
  transition:transform .18s ease-out;background:radial-gradient(circle,rgba(199,125,255,.14),transparent 66%)}

@media (prefers-reduced-motion:reduce){
  .au-disc{animation:none!important}
  .au-aurora{transition:none}
  .au-glow{display:none!important}
}
