/* Scope every finish to the existing American Roulette wheel, after its new
   artwork has loaded. The numbered ring, ball positions and stage size stay
   in the coordinate system owned by the game. */
.rvip .topwrap[data-casino-wheel="ready"]::before {
  content: none;
}
.rvip .topwrap[data-casino-wheel="ready"] .topbowl {
  filter: drop-shadow(0 10px 12px #05030199);
  /* The original number ring ends at 84.8% of the 660px canvas's half-width.
     Trim the new stationary material without obscuring the moving pockets. */
  mask-image: radial-gradient(circle closest-side, transparent 83.8%, #000 84.1%, #000 97.3%, transparent 97.6%);
}
.rvip .topwrap[data-casino-wheel="ready"] .tophead {
  /* Keep the original labelled ring and its exact 38-pocket geometry. */
  filter: drop-shadow(0 1px 1px #1c0e0699);
}
.rvip .topwrap[data-casino-wheel="ready"] .casino-rotor-material {
  position: absolute;
  z-index: 1;
  left: 21.1%;
  top: 21.1%;
  width: 57.8%;
  height: 57.8%;
  display: block;
  object-fit: contain;
  border-radius: 50%;
  clip-path: circle(47.5%);
  pointer-events: none;
  transform-origin: 50% 50%;
  will-change: transform;
}
.rvip .topwrap[data-casino-wheel="ready"] .sweep {
  /* Broad, quiet reflections let the physical materials carry the lighting. */
  opacity: .2;
  animation: none;
  background: linear-gradient(128deg, transparent 18%, #fff5de16 34%, transparent 50%, #fff2d00a 73%, transparent 84%);
}
.rvip .topwrap[data-casino-wheel="ready"] .bloom {
  opacity: .2;
}
.rvip .topwrap[data-casino-wheel="ready"] .ball {
  background: radial-gradient(circle at 30% 24%, #fff 0%, #fffaf0 24%, #f2e7d2 56%, #d1bfa0 82%, #8f795b 100%);
  box-shadow: inset -1px -1px 2px #725d3f55, inset 1px 1px 1px #fff, 1px 2px 3px #110c07aa;
}
.rvip .topwrap[data-casino-wheel="ready"] .bshadow {
  background: #150b05a6;
  filter: blur(1.8px);
}
.rvip .topwrap[data-casino-wheel="ready"] .readout {
  background: #0c100eeb;
  border: 1px solid #ccb276;
  box-shadow: 0 6px 18px #0008, inset 0 1px #fff1bd21;
}
.rvip .topwrap[data-casino-wheel="ready"] .pocket {
  border-color: #e6c98b;
  box-shadow: 0 0 14px #d2ac6144;
}
@media (prefers-reduced-motion: reduce) {
  .rvip .topwrap[data-casino-wheel="ready"] .sweep { opacity: 0; }
}
