.hollow-stage { position: relative; isolation: isolate; }
#hollow-canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 700ms var(--ease, cubic-bezier(.32, .72, 0, 1));
}
#hollow-canvas[data-hollow-scene="ready"] { opacity: 1; }
.hollow-stage:has(#hollow-canvas[data-hollow-scene="ready"]) .hollow-visual {
  opacity: 0;
  visibility: hidden;
}
@media (prefers-reduced-motion: reduce) {
  #hollow-canvas { transition: none; }
}
