/* Royal Coins: counter-rotating vault rings, with weight rather than sparkle. */
.v4-coins .coins-world { overflow: clip; }
.v4-coins .coins-vault-mechanism { position: absolute; right: 6%; top: 5%; width: min(42vw,430px); aspect-ratio: 1; pointer-events: none; }
.v4-coins .coins-vault-ring { position: absolute; inset: 0; border: 2px solid #f5c06c88; border-radius: 50%; box-shadow: inset 0 0 0 5px #55211130; }
.v4-coins .coins-vault-ring::before,.v4-coins .coins-vault-ring::after { content: ''; position: absolute; width: 8px; height: 22px; left: calc(50% - 4px); top: -7px; background: #edba6b; border: 1px solid #fff0c3; border-radius: 2px; }
.v4-coins .coins-vault-ring::after { top: auto; bottom: -7px; }
.v4-coins .coins-vault-ring:nth-child(2) { inset: 16px; border-style: dashed; border-color: #e7b36977; }
.v4-coins .coins-vault-ring:nth-child(2)::before,.v4-coins .coins-vault-ring:nth-child(2)::after { width: 15px; height: 5px; top: calc(50% - 2px); left: -5px; }
.v4-coins .coins-vault-ring:nth-child(2)::after { left: auto; right: -5px; bottom: auto; }
.v4-coins .coins-vault-ring:nth-child(3) { inset: 34px; border-color: #ffdd9577; border-width: 1px; }
.v4-coins .coins-vault-ring:nth-child(3)::before,.v4-coins .coins-vault-ring:nth-child(3)::after { height: 11px; width: 4px; left: calc(50% - 2px); top: -4px; }
.v4-coins .coins-vault-ring:nth-child(3)::after { top: auto; bottom: -4px; }
.v4-coins .coins-board-art > div { position: relative; }
.v4-coins .coins-vault-dial { position: absolute; top: 12px; right: 12px; width: 25px; height: 25px; border: 2px solid #d5a255; border-radius: 50%; pointer-events: none; }
.v4-coins .coins-vault-dial::before { content: ''; position: absolute; left: 9px; top: -3px; width: 3px; height: 13px; background: #ffe0a0; transform-origin: center bottom; }
.v4-coins .coins-multiplier-range > span { display: inline-block; }
.v4-coins .coins-ticket .play-link { transition: transform 150ms cubic-bezier(.23,1,.32,1),box-shadow 150ms cubic-bezier(.23,1,.32,1); }
.v4-coins .coins-ticket .play-link::after { content: none; }
.v4-coins .coins-ticket .play-link > span { border: 1px solid #ffd48c; border-radius: 50%; width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 30px; font-size: 20px; transition: transform 240ms cubic-bezier(.23,1,.32,1),background-color 200ms ease; }
.v4-coins .coins-ticket .play-link:hover { transform: none; box-shadow: 0 5px 0 #510e1d; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .v4-coins:not([data-motion-input="keyboard"]) .coins-ticket .play-link:hover > span { transform: rotate(45deg); background-color: #ffe6a726; }
}
.v4-coins:not([data-motion-input="keyboard"]) .coins-ticket .play-link:active { transform: scale(.975); box-shadow: 0 2px 0 #510e1d; }
@media (max-width:540px) {
  .v4-coins .coins-vault-mechanism { width: 54%; right: 11%; top: 12%; }
}
@media (prefers-reduced-motion:reduce) {
  .v4-coins .coins-vault-mechanism { display: none; }
  .v4-coins .coins-ticket .play-link:active { transform: none; }
}
