.move-vfx.individual-vfx {
  position: absolute;
  z-index: 24;
  pointer-events: none;
  background:
    radial-gradient(circle at var(--vfx-core-x) var(--vfx-core-y),
      #fff 0 6%, var(--vfx-accent) 7% 15%, var(--vfx-type-color) 16% 31%, transparent 33%),
    repeating-conic-gradient(from var(--vfx-angle),
      var(--vfx-accent) 0deg 7deg,
      transparent 8deg 23deg),
    radial-gradient(circle, var(--vfx-type-color) 0 46%, transparent 68%);
  image-rendering: pixelated;
  transform-origin: center;
  mix-blend-mode: screen;
  filter: drop-shadow(0 0 7px rgba(255, 255, 255, .5));
  contain: layout paint style;
  will-change: transform, opacity;
}

.move-vfx.individual-vfx::before,
.move-vfx.individual-vfx::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.move-vfx.individual-vfx::before {
  inset: 13%;
  border: max(2px, .045em) solid var(--vfx-accent);
  border-radius: inherit;
  box-shadow: inset 0 0 9px var(--vfx-type-color), 0 0 8px var(--vfx-accent);
  transform: rotate(var(--vfx-angle));
}

.move-vfx.individual-vfx::after {
  inset: 38%;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 7px 3px var(--vfx-accent), 0 0 14px 5px var(--vfx-type-color);
}

.move-vfx.vfx-shape-0 { border-radius: 50%; }
.move-vfx.vfx-shape-1 { clip-path: polygon(50% 0, 61% 34%, 100% 25%, 69% 52%, 94% 88%, 57% 68%, 30% 100%, 35% 61%, 0 48%, 38% 39%); }
.move-vfx.vfx-shape-2 { clip-path: polygon(50% 0, 67% 31%, 100% 50%, 67% 69%, 50% 100%, 33% 69%, 0 50%, 33% 31%); }
.move-vfx.vfx-shape-3 { border-radius: 16% 84% 22% 78% / 76% 20% 80% 24%; }
.move-vfx.vfx-shape-4 { clip-path: polygon(25% 4%, 75% 4%, 100% 50%, 74% 96%, 26% 96%, 0 50%); }
.move-vfx.vfx-shape-5 { clip-path: polygon(8% 34%, 64% 0, 47% 35%, 98% 23%, 38% 100%, 48% 55%); }

.move-vfx.individual-vfx.individual-impact {
  z-index: 25;
  filter: drop-shadow(0 0 11px rgba(255, 255, 255, .72));
}

.move-vfx.individual-vfx.individual-support {
  z-index: 26;
  filter: drop-shadow(0 0 14px rgba(255, 255, 255, .82));
}

@media (prefers-reduced-motion: reduce) {
  .move-vfx.individual-vfx {
    mix-blend-mode: normal;
    filter: drop-shadow(0 0 4px rgba(255, 255, 255, .45));
  }
}
