/* 视口：把 1920×1080 的舞台等比缩放居中，方便在非终端屏幕上预览 */
.viewport {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--c-black);
}

.stage {
  position: relative;
  flex: none;
  width: var(--stage-w);
  height: var(--stage-h);
  overflow: hidden;
  background: var(--c-black);
  transform-origin: center center;
}

/* 层级：背景 0 → 粒子 1 → 牌堆 2 → 首页 3 → 开场 4 */
.stage__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0;
  background:
    radial-gradient(ellipse 70% 50% at 50% -8%, rgba(70, 130, 100, 0.3), transparent 70%),
    radial-gradient(ellipse 45% 40% at 88% 108%, rgba(216, 180, 106, 0.1), transparent 70%),
    radial-gradient(ellipse 40% 35% at 6% 92%, rgba(60, 120, 90, 0.12), transparent 70%),
    linear-gradient(180deg, var(--c-bg-2) 0%, var(--c-bg) 100%);
  transition: opacity 2.4s ease;
}

.stage.is-themed .stage__bg {
  opacity: 1;
}

.stage__particles {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
