/**
 * RC7.1 Hotfix — loading poster, intro button, puppets, wheel single-disc, guards.
 * Presentation only — no math/audio track identity changes.
 */

/* ===== 1 — Loading poster (centered, almost fullscreen) ===== */
.game-loading-poster-wrap {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: grid;
  place-items: center;
  margin: 0;
  padding: clamp(0.75rem, 2vh, 1.5rem);
  pointer-events: none;
}

.game-loading-poster {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center center !important;
  filter: brightness(0.88) drop-shadow(0 0 28px rgba(168, 85, 247, 0.35)) drop-shadow(0 0 48px rgba(255, 200, 80, 0.18));
  animation: rc71-poster-float 6s ease-in-out infinite;
}

.game-loading-poster[hidden] {
  display: none !important;
}

.game-loading-poster--loaded {
  display: block;
}

/* ===== 2 — Bonus intro START button (short + tall) ===== */
.bonus-intro-start,
.bonus-intro-start--hotspot {
  width: clamp(220px, 42vw, 320px) !important;
  min-width: 220px !important;
  max-width: 320px !important;
  height: clamp(52px, 7vh, 68px) !important;
  min-height: 52px !important;
  max-height: 68px !important;
  padding: 0 1.25rem !important;
  margin-top: 1rem !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  line-height: 1.15;
  border-radius: 12px;
  box-sizing: border-box;
}

.bonus-intro-start--hotspot::before {
  content: '';
  position: absolute;
  inset: -8px -12px;
  z-index: -1;
  border-radius: 16px;
  pointer-events: auto;
}

/* ===== 3 — Top character meter puppets fill card ===== */
.playground--player-view .character-meter-portrait--v2 {
  align-items: flex-end;
  justify-content: center;
  overflow: visible;
}

.playground--player-view .character-meter-portrait--v2 .character-meter-portrait-image {
  width: auto !important;
  height: 88% !important;
  max-width: 92% !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}

.playground--player-view .character-meter-portrait--v2[data-stage='0'] .character-meter-portrait-image,
.playground--player-view .character-meter-portrait--v2[data-stage='1'] .character-meter-portrait-image,
.playground--player-view .character-meter-portrait--v2[data-stage='2'] .character-meter-portrait-image,
.playground--player-view .character-meter-portrait--v2[data-stage='3'] .character-meter-portrait-image,
.playground--player-view .character-meter-portrait--v2[data-stage='4'] .character-meter-portrait-image,
.playground--player-view .character-meter-portrait--v2[data-stage='5'] .character-meter-portrait-image {
  max-width: 92% !important;
  max-height: none !important;
}

/* ===== 4 — Wheel single disc (no tiling) ===== */
.bonus-wheel-overlay,
.bonus-wheel-backdrop,
.bonus-wheel-panel,
.bonus-wheel-disc,
.bonus-wheel-disc-chrome {
  background-repeat: no-repeat !important;
}

.bonus-wheel-disc-chrome {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  background-image: none !important;
}

.bonus-wheel-disc-chrome-img {
  display: none;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  pointer-events: none;
  opacity: 0.22;
  mix-blend-mode: screen;
}

.bonus-wheel-disc-chrome-img.is-valid {
  display: block;
}

.bonus-wheel-rim-img {
  object-fit: contain;
  object-position: center;
}

.bonus-wheel-rim-img:not(.is-valid) {
  display: none;
}

.bonus-wheel-disc {
  overflow: hidden;
  isolation: isolate;
}

@media (prefers-reduced-motion: reduce) {
  .game-loading-poster {
    animation: none !important;
  }
}

/* ===== 5 — WILD shimmer / no stray pink circle artifacts ===== */
.playground--player-view .pf95-reel-particles {
  display: none !important;
}

.playground--player-view [data-game-stage-reels] .scatter-landing-ring,
.playground--player-view [data-game-stage-reels] .scatter-landing-particles,
.playground--player-view [data-game-stage-reels] .rc7-impact-ring,
.playground--player-view [data-game-stage-reels] .sp-land-spark {
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .playground--player-view .pf95-reel-particles {
    animation: none !important;
  }
}
