/* Self-contained celebration layer; game/result UI is owned by the caller. */
.victory-celebration {
  position: absolute;
  inset: 0;
  isolation: isolate;
  pointer-events: none;
  --victory-card-width: clamp(64px, 10vw, 112px);
  --victory-card-height: calc(var(--victory-card-width) * 1.39);
}
.victory-celebration-glow {
  position: absolute;
  inset: -5% 0;
  border-radius: 50%;
  background: radial-gradient(ellipse, #eccb7638, transparent 70%);
}
.victory-fan-card {
  position: absolute;
  left: 50%;
  top: 53%;
  width: var(--victory-card-width);
  height: var(--victory-card-height);
  margin-left: calc(var(--victory-card-width) / -2);
  border: 1px solid #dac999;
  border-radius: 8px;
  overflow: hidden;
  background: #eee0c1;
  opacity: 1;
  box-shadow: 0 2px 3px #001a1055, 0 9px 18px #001a1040;
  transform-origin: 50% 70%;
}
.victory-fan-card img {
  position: absolute;
  max-width: none;
  width: 106%;
  height: 104%;
  left: -3%;
  top: -2%;
}
.victory-celebration .celebration-fireworks {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 180;
}
