/* =========================================================
   ROULETTE REBUILT CLEAN CSS
   - keeps current site working
   - REBET / X2 / CLEAR on right side
   - preserves chips and wheel positioning
   - bottom preset aligned to main table like target
   ========================================================= */

html,
body {
  min-height: 100% !important;
  height: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body {
  display: block !important;
}

.game-area.roulette-mobile-switch,
.game-area.roulette-mobile-switch .container-fluid,
.game-area.roulette-mobile-switch .game-area-content,
.game-area.roulette-mobile-switch .game-area-body {
  height: auto !important;
  min-height: auto !important;
  overflow: visible !important;
}

.game-roulette {
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-bottom: 10px !important;
}

@media screen and (min-width: 768px) {
  .game-roulette {
    grid-template-rows: auto auto !important;
  }

  .game-roulette-column.wheel,
  .game-roulette-column.betting {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .game-roulette-wheel__body {
    min-height: 120px !important;
    height: 120px !important;
  }

  .roulette-wheel {
    margin: 0 auto -70px !important;
  }
}

.game-roulette-column.betting,
.game-roulette-main,
.game-roulette-main__body {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.roulette-board-wrap {
  margin-top: 165px !important;
}

@media screen and (max-width: 767px) {
  .roulette-board-wrap {
    margin-top: 20px !important;
  }
}

/* =========================================================
   TOP RIGHT TIMER
   - moved a little more right
   - seconds only
   ========================================================= */

.game-roulette-wheel-top__wrapper {
  position: relative !important;
}

.roulette-top-timer {
  position: absolute !important;
  top: -8px !important;
  right: -620px !important;
  z-index: 20 !important;
  margin: 0 !important;
}

.roulette-top-timer__value {
  min-width: 102px !important;
  width: 102px !important;
  height: 60px !important;
  padding: 0 6px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 12px !important;
  font-size: 46px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  box-sizing: border-box !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25) !important;

 background: #d4b000 !important;
  color: #ffffff !important;
}

.roulette-top-timer__value.is-safe {
  background: #148a1f !important;
  color: #ffffff !important;
}

.roulette-top-timer__value.is-danger {
  background: #b30000 !important;
  color: #ffffff !important;
}
.roulette-top-timer__value .spinMinute,
.roulette-top-timer__value span:nth-child(2) {
  display: none !important;
}

.roulette-top-timer__value .spinSecond {
  display: inline-block !important;
}

@media screen and (max-width: 991px) {
  .roulette-top-timer {
    top: -4px !important;
    right: -210px !important;
  }

  .roulette-top-timer__value {
    min-width: 90px !important;
    width: 90px !important;
    height: 52px !important;
    font-size: 38px !important;
    padding: 0 6px !important;
  }
}

@media screen and (max-width: 767px) {
  .roulette-top-timer {
    position: relative !important;
    top: 0 !important;
    right: 0 !important;
  }

  .roulette-top-timer__value {
    min-width: 72px !important;
    width: 72px !important;
    height: 40px !important;
    font-size: 24px !important;
    padding: 0 6px !important;
  }
}





/* =========================================================
   WINNING NUMBER DISPLAY + TABLE MARKER
   ========================================================= */

.game-roulette-wheel__header,
.game-roulette-wheel-top,
.game-roulette-wheel-top__wrapper,
.game-roulette-main__header {
  position: relative !important;
  overflow: visible !important;
}

.game-roulette-wheel-top {
  display: flex !important;
  align-items: flex-start !important;
}

.roulette-winning-box {
  position: absolute !important;
  left: -128px !important;
  right: auto !important;
  top: 8px !important;
  z-index: 35 !important;
  width: 96px !important;
  height: 96px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, #050505 0%, #000000 100%) !important;
  border: 2px solid rgba(255,255,255,.82) !important;
  border-radius: 8px !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.30) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(6px) !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease, background .18s ease !important;
}

.roulette-winning-box.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

.roulette-winning-box.is-red {
  background: linear-gradient(180deg, #7b0909 0%, #b30f0f 100%) !important;
}

.roulette-winning-box.is-black {
  background: linear-gradient(180deg, #050505 0%, #111111 100%) !important;
}

.roulette-winning-box.is-green {
  background: linear-gradient(180deg, #0e6d1d 0%, #1c9b31 100%) !important;
}

.roulette-winning-box__value {
  font-size: 58px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  font-family: Georgia, "Times New Roman", serif !important;
}

.winning-cell {
  position: relative !important;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.45) !important;
}

.winning-marker-chip {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 28px !important;
  height: 28px !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 12 !important;
  background:
    radial-gradient(circle at 50% 50%, #f7f7f7 0 7px, #d7d7d7 7px 9px, #b9803a 9px 14px, #7d4a18 14px 100%) !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.6),
    inset 0 -1px 2px rgba(0,0,0,.25),
    0 2px 4px rgba(0,0,0,.25) !important;
}

.winning-marker-chip::before {
  content: "" !important;
  position: absolute !important;
  inset: 3px !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.95) 0 5px, rgba(255,255,255,.1) 5px 100%) !important;
  border: 1px solid rgba(120,70,25,.55) !important;
}

@media screen and (max-width: 1199px) {
  .roulette-winning-box {
    left: -112px !important;
    width: 84px !important;
    height: 84px !important;
  }

  .roulette-winning-box__value {
    font-size: 50px !important;
  }
}

@media screen and (max-width: 991px) {
  .roulette-winning-box {
    left: -88px !important;
    width: 72px !important;
    height: 72px !important;
  }

  .roulette-winning-box__value {
    font-size: 40px !important;
  }

  .winning-marker-chip {
    width: 24px !important;
    height: 24px !important;
  }
}

@media screen and (max-width: 767px) {
  .roulette-winning-box {
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    top: 0 !important;
    width: 64px !important;
    height: 64px !important;
    margin-right: 10px !important;
  }

  .roulette-winning-box__value {
    font-size: 34px !important;
  }

  .winning-marker-chip {
    width: 20px !important;
    height: 20px !important;
  }
}


/* left chips */
.roulette-chip-sidebar,
.roulette-chip-sidebar .game-area-chips,
.roulette-chip-sidebar .game-area-chips--vertical {
  transform: translateY(-40px) !important;
}

/* right buttons */
.roulette-side-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: flex-start !important;
  width: 92px !important;
  min-width: 92px !important;
  margin-top: -30px !important;
}

.roulette-side-btn {
  width: 82px !important;
  height: 82px !important;
  min-width: 82px !important;
  min-height: 82px !important;
  border-radius: 50% !important;
  border: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  color: #fff !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35) !important;
  transition: transform 0.2s ease, filter 0.2s ease !important;
  text-align: center !important;
}

.roulette-side-btn:hover {
  transform: scale(1.05) !important;
  filter: brightness(1.04) !important;
}

.roulette-side-btn__icon {
  font-size: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

.roulette-side-btn__icon--x2 {
  font-size: 34px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.roulette-side-btn__text {
  font-size: 11px !important;
  line-height: 1.05 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.roulette-side-btn--blue .roulette-side-btn__text {
  font-size: 10px !important;
  margin-top: 1px !important;
}

.roulette-side-btn--danger .roulette-side-btn__text {
  font-size: 10px !important;
  margin-top: 1px !important;
}

.clear-bin-icon {
  width: 28px !important;
  height: 28px !important;
  display: block !important;
}

#recentBetsBtn,
.roulette-side-btn--recent {
  background: radial-gradient(circle at 30% 30%, #2eff2e, #00b800) !important;
}

#placeBetBtn,
.roulette-side-btn--double {
  background: radial-gradient(circle at 30% 30%, #2d6bff, #003bb5) !important;
  color: #fff !important;
}

#clearBetBtn,
.clear-btn,
.roulette-side-btn--clear {
  background: radial-gradient(circle at 30% 30%, #ff3b3b, #b80000) !important;
  color: #fff !important;
}

/* rebet panel */
.recent-bets-panel {
  position: absolute !important;
  right: 110px !important;
  top: 52% !important;
  transform: translateY(-50%) !important;
  z-index: 999 !important;
  display: none !important;
}

.recent-bets-panel.show {
  display: block !important;
}

.recent-bets-panel:not(.show) .recent-bets-empty {
  display: none !important;
}

.recent-bets-panel__body .recent-bets-empty {
  display: block;
}

body > .recent-bets-empty,
.roulette-board-wrap > .recent-bets-empty,
.game-roulette > .recent-bets-empty {
  display: none !important;
}

/* hide old bottom buttons */
.roulette-controls-layout,
.roulette-controls-layout--hidden,
.game-area-actions.roulette-controls-layout {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

footer,
.footer-area {
  display: block !important;
  position: relative !important;
  z-index: 2 !important;
  margin-top: 6px !important;
  padding-top: 8px !important;
}

@media screen and (max-width: 767px) {
  .roulette-side-actions,
  .recent-bets-panel {
    display: none !important;
  }
}

.game-roulette-board {
  position: relative !important;
gap: 0 !important;
}

/* =========================================================
   BOTTOM PRESET BLOCK
   rebuilt on the same columns as the main table
   ========================================================= */

.game-roulette-board {
  position: relative !important;
  gap: 0 !important;
}

.game-roulette-table {
  margin-bottom: 0 !important;
}

.game-roulette-preset {
  width: 100% !important;
  max-width: none !important;
  margin: -2px 0 0 0 !important;
  display: grid !important;
  grid-template-columns: 92px repeat(12, minmax(0, 1fr)) 74px !important;
  gap: 0 !important;
  position: relative !important;
  top: 0 !important;
  box-sizing: border-box !important;
}

.game-roulette-preset__item {
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: 46px 52px !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.game-roulette-preset__item:nth-child(1) {
  grid-column: 2 / 6 !important;
}

.game-roulette-preset__item:nth-child(2) {
  grid-column: 6 / 10 !important;
}

.game-roulette-preset__item:nth-child(3) {
  grid-column: 10 / 14 !important;
}

.game-roulette-preset__item > .oneToTw,
.game-roulette-preset__item > .thrtToTf,
.game-roulette-preset__item > .twfToTs {
  grid-column: 1 / 3 !important;
  grid-row: 1 !important;
}

.game-roulette-preset__item > .oneToEt,
.game-roulette-preset__item > .red,
.game-roulette-preset__item > .odd {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

.game-roulette-preset__item > .even,
.game-roulette-preset__item > .black,
.game-roulette-preset__item > .nineteenTtsix {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

.game-roulette-preset__item > .oneToTw,
.game-roulette-preset__item > .thrtToTf,
.game-roulette-preset__item > .twfToTs,
.game-roulette-preset__item > .oneToEt,
.game-roulette-preset__item > .even,
.game-roulette-preset__item > .red,
.game-roulette-preset__item > .black,
.game-roulette-preset__item > .odd,
.game-roulette-preset__item > .nineteenTtsix {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
}

.game-roulette-preset__btn {
  min-height: 52px !important;
  height: 52px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: none !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255, 255, 255, .85) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #176f25 !important;
  box-sizing: border-box !important;
}

.game-roulette-preset__item > .oneToTw,
.game-roulette-preset__item > .thrtToTf,
.game-roulette-preset__item > .twfToTs {
  min-height: 46px !important;
  height: 46px !important;
}

.game-roulette-preset__btn .text {
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.diamond-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/*.diamond-btn .diamond-shape {
  display: inline-block !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  transform: rotate(45deg) !important;
  box-sizing: border-box !important;
  border: 1.5px solid rgba(255, 255, 255, .95) !important;
  flex: 0 0 30px !important;
}*/

.diamond-btn .diamond-shape {
  display: inline-block !important;

  /* 1. MANDATORY: Width and Height MUST be identical to form a diamond */
  width: 25px !important;
  height: 25px !important;
  min-width: 25px !important;
  min-height: 25px !important;

  /* 2. THE GEOMETRY FIX */
  /* rotate(45deg) makes it a diamond. */
  /* skew(10deg, 10deg) flattens the top and bottom to make it "wide". */
  /* scale(1.4) makes it large enough to see. */
  transform: rotate(-45deg) skew(15deg, 15deg) scale(1.4) !important;

  /* 3. YOUR ORIGINAL STYLING */
  box-sizing: border-box !important;
  border: 1.5px solid rgba(255, 255, 255, .95) !important;
  
  /* Prevent layout collapse */
  flex: 0 0 25px !important;
  margin: 5px !important;
}

/*----------------------*/
.diamond-btn .diamond-red {
  background: #c41414 !important;
}

.diamond-btn .diamond-black {
  background: #050505 !important;
}

@media screen and (max-width: 991px) {
  .game-roulette-preset {
    grid-template-columns: 70px repeat(12, minmax(0, 1fr)) 54px !important;
  }

  .game-roulette-preset__item {
    grid-template-rows: 38px 46px !important;
  }

  .game-roulette-preset__btn {
    min-height: 46px !important;
    height: 46px !important;
  }

  .game-roulette-preset__item > .oneToTw,
  .game-roulette-preset__item > .thrtToTf,
  .game-roulette-preset__item > .twfToTs {
    min-height: 38px !important;
    height: 38px !important;
  }

  .game-roulette-preset__btn .text {
    font-size: 11px !important;
  }

  .diamond-btn .diamond-shape {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    flex: 0 0 24px !important;
  }
}

@media screen and (max-width: 767px) {
  .game-roulette-preset {
    grid-template-columns: 56px repeat(12, minmax(28px, 1fr)) 42px !important;
  }

  .game-roulette-preset__item {
    grid-template-rows: 34px 40px !important;
  }

  .game-roulette-preset__btn {
    min-height: 40px !important;
    height: 40px !important;
  }

  .game-roulette-preset__item > .oneToTw,
  .game-roulette-preset__item > .thrtToTf,
  .game-roulette-preset__item > .twfToTs {
    min-height: 34px !important;
    height: 34px !important;
  }

  .game-roulette-preset__btn .text {
    font-size: 10px !important;
  }

  .diamond-btn .diamond-shape {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    flex: 0 0 20px !important;
  }
}
/* tighter version */
.game-roulette-table {
  grid-template-columns: 80px repeat(12, minmax(0, 1fr)) 60px !important;
  gap: 0 !important;
  margin: 0 !important;
  border-collapse: collapse !important;
}

.game-roulette-table__cell {
  border-width: 1px !important;
  margin: 0 !important;
  box-shadow: none !important;
}

.game-roulette-table__cell .text {
  letter-spacing: 0 !important;
}
@media screen and (max-width: 991px) {
  .game-roulette-table {
    grid-template-columns: 64px repeat(12, minmax(0, 1fr)) 48px !important;
    gap: 0 !important;
  }

  .game-roulette-table__cell {
    border-width: 1px !important;
  }

  .game-roulette-table__cell .text {
    letter-spacing: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .game-roulette-table {
    grid-template-columns: 52px repeat(12, minmax(24px, 1fr)) 40px !important;
    gap: 0 !important;
  }

  .game-roulette-table__cell {
    border-width: 1px !important;
  }

  .game-roulette-table__cell .text {
    letter-spacing: 0 !important;
  }
}

@media screen and (max-width: 480px) {
  .game-roulette-table {
    grid-template-columns: 44px repeat(12, minmax(20px, 1fr)) 34px !important;
    gap: 0 !important;
  }

  .game-roulette-table__cell {
    border-width: 1px !important;
  }

  .game-roulette-table__cell .text {
    letter-spacing: 0 !important;
  }

  .diamond-btn .diamond-shape {
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    min-height: 17px !important;
    flex: 0 0 17px !important;
  }
}


/* =========================================================
   COUNTER RIGHT + TABLE NO-GAP FIX
   ========================================================= */

.game-roulette-board,
.game-roulette-table,
.game-roulette-preset {
  gap: 0 !important;
}

.game-roulette-table {
  align-items: stretch !important;
}

.game-roulette-table__cell {
  margin: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.game-roulette-table__cell + .game-roulette-table__cell {
  margin-left: 0 !important;
}
