.vault-disk-stage {
  position: relative;
  isolation: isolate;
  width: min(100%, 470px);
  margin-inline: auto;
  aspect-ratio: 3 / 1.92;
}
.vault-disk-stage::before {
  position: absolute;
  inset: 4% 2% 0;
  background: radial-gradient(ellipse, #ffd1a570, transparent 68%);
  content: '';
}
.vault-disk-stage::after {
  position: absolute;
  z-index: -1;
  right: 16%;
  bottom: 1%;
  left: 16%;
  height: 17%;
  border-radius: 50%;
  background: radial-gradient(ellipse, #ad6a3754, #f9bd8130 51%, transparent 72%);
  filter: blur(7px);
  content: '';
}
.vault-disk-art {
  position: absolute;
  inset: 0;
  animation: vault-disk-float 5s ease-in-out infinite;
}
.vault-disk-graphic, .vault-disk-rim {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: auto;
  pointer-events: none;
}
@keyframes vault-disk-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}
@media (prefers-reduced-motion: reduce) {
  .vault-disk-art { animation: none; }
}
