
/* ===== Animated background for Void Gamez ===== */
.vg-bg{position:fixed; inset:0; z-index:-1; overflow:hidden; pointer-events:none}
.vg-gradient{
  position:absolute; inset:-20%;
  background: radial-gradient(40% 40% at 20% 20%, rgba(99,102,241,0.35) 0%, rgba(99,102,241,0.05) 60%, transparent 70%),
              radial-gradient(35% 35% at 80% 30%, rgba(236,72,153,0.30) 0%, rgba(236,72,153,0.05) 60%, transparent 70%),
              radial-gradient(50% 50% at 60% 80%, rgba(56,189,248,0.25) 0%, rgba(56,189,248,0.04) 60%, transparent 70%);
  filter: blur(20px);
  animation: vg-pan 20s linear infinite alternate;
}
@keyframes vg-pan{
  from{transform:translate3d(-2%, -1%, 0) scale(1.02);}
  to{transform:translate3d(2%, 1%, 0) scale(1.08);}
}
.vg-grid{
  position:absolute; inset:0; opacity:.12; background-size:40px 40px;
  background-image: linear-gradient(to right, #fff 1px, transparent 1px), linear-gradient(to bottom, #fff 1px, transparent 1px);
  mask-image: radial-gradient(70% 60% at 50% 40%, #000 40%, transparent 100%);
  animation: vg-float 10s ease-in-out infinite alternate;
}
@keyframes vg-float{
  from{transform:translateY(0px)} to{transform:translateY(-12px)}
}
.vg-glow{position:absolute; width:50vmax; height:50vmax; border-radius:9999px; filter: blur(60px); opacity:.2;}
.vg-glow-a{left:-10vmax; bottom:-15vmax; background:#6366f1; animation: vg-orbit 24s linear infinite;}
.vg-glow-b{right:-12vmax; top:-20vmax; background:#ec4899; animation: vg-orbit 26s linear infinite reverse;}
@keyframes vg-orbit{
  from{transform:rotate(0deg) translateX(30px) rotate(0deg);}
  to{transform:rotate(360deg) translateX(30px) rotate(-360deg);}
}
/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .vg-gradient,.vg-grid,.vg-glow,.parallax{ animation:none !important; transform:none !important;}
}
