/* Customer input + action controls share the same baseline/height. */
.customer-page :where(.code-entry button,.bonus-entry button){
  min-height:var(--lsr-btn-h-form)!important;
  height:var(--lsr-btn-h-form)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
.customer-page .supported-games-sheet-close{
  min-height:var(--lsr-btn-h-modal)!important;
  height:var(--lsr-btn-h-modal)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}

/* v52.48 · True responsive customer wheel — geometry follows the wheel, not viewport */
.wheel-wrap,.bonus-wheel-wrap{
  --wheel-label-y:-34cqw;
  box-sizing:border-box!important;
  width:min(390px,calc(100% - 18px))!important;
  max-width:390px!important;
  aspect-ratio:1/1!important;
  margin:25px auto 23px!important;
  position:relative!important;
  container-type:inline-size;
  filter:drop-shadow(0 20px 38px rgba(0,0,0,.48));
  isolation:isolate;
}
/* Metallic rim stays perfectly concentric at every container width. */
.wheel-wrap::before,.bonus-wheel-wrap::before{
  content:"";
  position:absolute;
  inset:-2.15%;
  z-index:0;
  pointer-events:none;
  border-radius:50%;
  background:conic-gradient(from 14deg,
    #7b430d 0deg,#c9851b 28deg,#ffe07b 58deg,#fff1a5 78deg,
    #d49422 112deg,#8a4a0c 151deg,#e8ae35 194deg,#fff0a0 224deg,
    #bd7516 263deg,#75400d 303deg,#efbd45 338deg,#7b430d 360deg);
  box-shadow:
    inset 0 0 0 1px rgba(255,247,189,.72),
    inset 0 0 0 max(3px,1.05cqw) rgba(92,45,6,.22),
    0 0 0 1px rgba(92,48,10,.9),
    0 7px 23px rgba(0,0,0,.42),
    0 0 18px rgba(244,180,54,.16);
}
.wheel-wrap::after,.bonus-wheel-wrap::after{
  content:"";
  position:absolute;
  inset:.25%;
  z-index:5;
  pointer-events:none;
  border:max(3px,1.05cqw) solid #25153b;
  border-radius:50%;
  box-shadow:inset 0 0 0 1px rgba(255,230,146,.22),0 0 0 1px rgba(255,211,92,.22);
}
.wheel,.bonus-wheel{
  box-sizing:border-box!important;
  z-index:2;
  width:100%!important;
  height:100%!important;
  border:max(2px,.52cqw) solid #3a224e!important;
  border-radius:50%!important;
  overflow:hidden!important;
  position:relative!important;
  transform-origin:50% 50%!important;
  backface-visibility:hidden;
  will-change:transform;
  box-shadow:inset 0 0 0 max(1px,.5cqw) rgba(255,239,176,.10),inset 0 0 30px rgba(255,255,255,.09),inset 0 -18px 34px rgba(20,8,36,.11),0 6px 18px rgba(0,0,0,.30)!important;
}
.wheel::before,.bonus-wheel::before{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:50%;
  background:radial-gradient(circle at 50% 28%,rgba(255,255,255,.20),transparent 34%),radial-gradient(circle at 50% 50%,transparent 58%,rgba(0,0,0,.16) 100%);
}
.wheel::after,.bonus-wheel::after{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:50%;
  background:repeating-conic-gradient(from var(--segment-half),transparent 0 calc(var(--segment-angle) - .6deg),rgba(255,244,214,.56) calc(var(--segment-angle) - .6deg) var(--segment-angle))!important;
}
.pointer{
  z-index:12!important;
  width:0!important;
  height:0!important;
  top:-3.1cqw!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-shadow:none!important;
  border-left:4.25cqw solid transparent!important;
  border-right:4.25cqw solid transparent!important;
  border-top:7.25cqw solid #ffe59a!important;
  filter:drop-shadow(0 3px 1px rgba(72,37,7,.72)) drop-shadow(0 0 8px rgba(255,196,76,.32))!important;
  transform-origin:50% 0!important;
}
.pointer::after{
  content:"";
  position:absolute;
  width:0;
  height:0;
  left:50%;
  top:-5cqw;
  transform:translateX(-50%);
  border-left:2.75cqw solid transparent;
  border-right:2.75cqw solid transparent;
  border-top:5cqw solid #fff0b7;
}
/* Freeplay labels use container units so radius/width/font always shrink together. */
.dynamic-wheel .wheel-label{
  --label-w:24cqw;
  z-index:3!important;
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  width:var(--label-w)!important;
  max-width:none!important;
  height:7cqw!important;
  margin:0!important;
  transform-origin:50% 50%!important;
  font-size:3.85cqw!important;
  line-height:1.02!important;
  text-shadow:0 2px 5px rgba(0,0,0,.72)!important;
  pointer-events:none;
  place-items:center!important;
}
.dynamic-wheel .wheel-label.label-compact{
  --label-w:19cqw;
  width:var(--label-w)!important;
  height:6cqw!important;
  margin:0!important;
  font-size:3.05cqw!important;
}
.dynamic-wheel .wheel-label.label-tight{
  --label-w:15cqw;
  width:var(--label-w)!important;
  height:5cqw!important;
  margin:0!important;
  font-size:2.55cqw!important;
}
.dynamic-wheel .wheel-label span{
  width:100%!important;
  padding:0!important;
  text-align:center!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:normal!important;
  text-wrap:balance;
}
.dynamic-wheel .wheel-label em{font-size:1.08em;line-height:1;font-style:normal}
/* Deposit Bonus labels also scale from the actual wheel container. */
.bonus-wheel-label{
  z-index:3!important;
  pointer-events:none;
  width:100%!important;
  height:100%!important;
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  transform-origin:50% 50%!important;
}
.bonus-wheel-label span{
  top:7%!important;
  left:50%!important;
  width:23cqw!important;
  align-items:center!important;
  text-align:center!important;
  font-size:6.05cqw!important;
  line-height:1!important;
  text-shadow:0 2px 5px rgba(0,0,0,.72)!important;
}
.bonus-wheel-label small{
  margin-top:.55cqw;
  font-size:2.55cqw!important;
  line-height:1.05;
  white-space:normal;
  text-wrap:balance;
}
/* Center button is anchored to the exact geometric center of the same square. */
.wheel-center.wheel-center-spin{
  appearance:none!important;
  -webkit-appearance:none!important;
  z-index:9!important;
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:23cqw!important;
  height:23cqw!important;
  min-width:58px!important;
  min-height:58px!important;
  max-width:90px!important;
  max-height:90px!important;
  aspect-ratio:1!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:max(4px,1.35cqw) solid #fff0b8!important;
  border-radius:50%!important;
  color:#2a1604!important;
  background:radial-gradient(circle at 38% 25%,#fff8b8 0,#ffd45d 30%,#f2a621 68%,#b8670d 100%)!important;
  box-shadow:inset 0 0 0 max(2px,.78cqw) rgba(129,67,7,.36),0 0 0 max(2px,.78cqw) #9c5a12,0 7px 18px rgba(0,0,0,.45),0 0 20px rgba(255,193,62,.32)!important;
  font-size:5.1cqw!important;
  font-weight:1000!important;
  letter-spacing:.035em!important;
  line-height:1!important;
  cursor:pointer!important;
  user-select:none;
  touch-action:manipulation;
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease!important;
}
.wheel-center.wheel-center-spin:hover:not(:disabled){filter:brightness(1.08);transform:translate(-50%,-50%) scale(1.035)!important}
.wheel-center.wheel-center-spin:active:not(:disabled){transform:translate(-50%,-50%) scale(.96)!important}
.wheel-center.wheel-center-spin:focus-visible{outline:3px solid rgba(255,244,184,.72)!important;outline-offset:4px!important}
.wheel-center.wheel-center-spin:disabled{cursor:not-allowed!important;transform:translate(-50%,-50%)!important;filter:saturate(.55) brightness(.78)!important;opacity:.72!important}
.wheel-access-cover{z-index:10!important}
.wheel.is-spinning,.bonus-wheel{transition:transform 4.1s cubic-bezier(.12,.68,.08,1)}
.dynamic-wheel,.bonus-wheel{transform-box:border-box!important;transform-origin:50% 50%!important}
/* No viewport-based wheel geometry. Parent width alone decides the wheel size. */
@media(max-width:600px){
  .wheel-wrap,.bonus-wheel-wrap{width:min(350px,calc(100% - 14px))!important;margin:18px auto 17px!important}
}
@media(max-width:380px){
  .wheel-wrap,.bonus-wheel-wrap{width:calc(100% - 12px)!important;max-width:286px!important}
}

/* v52.49 · true radial label centering: every label orbits the exact rotor center. */
.dynamic-wheel .wheel-label{
  display:grid!important;
  place-items:center!important;
  translate:none!important;
}
.dynamic-wheel .wheel-label span{
  display:flex!important;
  flex-direction:column!important;
  place-content:center!important;
  place-items:center!important;
  transform:none!important;
}

