.report-potential-orbits {
  transform-box: fill-box;
  transform-origin: center;
  animation: reportPotentialOrbit 22s linear infinite;
}

.report-potential-orbits circle,
.report-potential-orbits ellipse {
  fill: none;
  stroke: rgba(145, 122, 255, 0.28);
  stroke-width: 1;
  stroke-dasharray: 4 8;
  vector-effect: non-scaling-stroke;
}

.report-potential-orbits ellipse:nth-child(2) {
  stroke: rgba(55, 199, 220, 0.34);
}

.report-potential-orbits ellipse:nth-child(3) {
  stroke: rgba(239, 189, 88, 0.27);
  stroke-dasharray: 2 7;
}

.report-potential-arcs path {
  fill: none;
  stroke: rgba(189, 177, 255, 0.72);
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-dasharray: 110;
  animation: reportPotentialDraw 4.8s ease-in-out infinite alternate;
  filter: drop-shadow(0 0 5px rgba(126, 96, 242, 0.34));
}

.report-potential-arcs path:nth-child(2) {
  stroke: rgba(55, 199, 220, 0.66);
  animation-delay: -1.6s;
}

.report-potential-arcs path:nth-child(3) {
  stroke: rgba(239, 189, 88, 0.58);
  animation-delay: -3.2s;
}

.report-potential-nodes circle {
  fill: #ad9aff;
  stroke: rgba(255, 255, 255, 0.76);
  stroke-width: 1;
  filter: drop-shadow(0 0 6px rgba(146, 119, 255, 0.85));
}

.report-potential-nodes circle:nth-child(2) {
  fill: var(--report-cyan, #37c7dc);
}

.report-potential-nodes circle:nth-child(3) {
  fill: var(--report-gold, #efbd58);
}

.report-potential-halo {
  fill: rgba(111, 79, 232, 0.08);
  stroke: rgba(166, 145, 255, 0.24);
  stroke-width: 1;
}

.report-potential-ring {
  fill: rgba(28, 20, 69, 0.62);
  stroke: rgba(199, 186, 255, 0.52);
  stroke-width: 1;
}

@keyframes reportPotentialOrbit {
  to { transform: rotate(360deg); }
}

@keyframes reportPotentialDraw {
  from { stroke-dashoffset: 110; opacity: 0.32; }
  to { stroke-dashoffset: 0; opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .report-potential-orbits,
  .report-potential-arcs path {
    animation: none !important;
  }
}
