/* Casino hub — slots subnav + API-backed tournaments/jackpot (no iframe). */

.casino-slots-subnav-holder {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(0, 0, 0, 0.18);
}

.casino-slots-subnav {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 6px 10px 8px;
}

.casino-slots-subnav .hdr-navigation-link-bc {
  flex: 0 0 auto;
  white-space: nowrap;
  opacity: 0.78;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.casino-slots-subnav .hdr-navigation-link-bc.active,
.casino-slots-subnav .hdr-navigation-link-bc[aria-current="page"] {
  opacity: 1;
  color: rgb(var(--oc-1, 186, 142, 71));
}

.casino-hub-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 15px 16px;
}

.casino-hub-actions .btn {
  width: auto;
  min-width: 140px;
  flex: 1 1 140px;
}

/* ===== Tournaments list (BetConstruct casinoGameTournamentListItem) ===== */
.casino-hub-tournaments-page {
  margin: 8px 10px 24px;
  width: auto;
  min-width: 0 !important;
  max-width: none;
}

.casino-hub-tournaments-page .casino-tournament-header {
  margin-bottom: 12px;
}

.casino-hub-tournaments-page .casinoGameTournamentListBc {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}

.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament {
  margin-bottom: 0;
}

/* Beat BC orphan popup selectors that lock image to 186px and leave no flex row */
.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 10px !important;
  padding: 8px;
  border-radius: var(--border-radius, 12px);
  background: rgba(var(--b-sc), 0.06);
  border: 1px solid rgba(var(--b-sc), 0.1);
  overflow: hidden;
}

.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem .tournamentSectionImgBlock {
  position: relative;
  display: block !important;
  flex: 0 0 42% !important;
  width: 42% !important;
  min-width: 110px !important;
  max-width: 160px !important;
  aspect-ratio: 16 / 10;
  height: auto !important;
  border-radius: calc(var(--border-radius, 12px) - 2px);
  overflow: hidden;
  background: rgba(0, 0, 0, 0.25);
}

.casino-hub-tournaments-page .tournamentSectionImg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.casino-hub-tournaments-page .tournamentSectionCircle {
  position: absolute;
  top: 8px;
  inset-inline-start: 8px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #e23b3b;
  box-shadow: 0 0 0 4px rgba(226, 59, 59, 0.25);
  display: block !important;
}

.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem .tournamentSectionDataButtonWrp {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  justify-content: space-between;
  gap: 10px;
  min-width: 0 !important;
  width: auto !important;
  padding: 6px !important;
  background-color: rgba(var(--b-sc), 0.05);
  border-radius: var(--border-radius, 12px);
  border: 1px solid rgba(var(--b-sc), 0.05);
}

.casino-hub-tournaments-page .tournamentSectionDataWrp {
  margin-bottom: 0 !important;
  min-width: 0;
}

.casino-hub-tournaments-page .tournamentSectionName {
  color: rgba(var(--b-sc), 1);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 6px;
}

.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem .tournamentPrizeFundTxt {
  font-size: 10px !important;
  line-height: 12px !important;
  margin-bottom: 4px !important;
  color: rgba(var(--b-sc), 0.65);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem .tournamentSectionMoney {
  margin-bottom: 4px !important;
  color: rgb(var(--oc-1, 186, 142, 71));
  font-size: 16px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem .dataStatusTxt {
  font-size: 10px !important;
  line-height: 12px !important;
  margin-bottom: 2px !important;
  color: rgba(var(--b-sc), 0.8);
  font-weight: 700;
}

.casino-hub-tournaments-page .casinoGameTournamentListItem.is-live .dataStatusTxt {
  color: #ff6b6b;
}

.casino-hub-tournaments-page .tournamentSectionData {
  font-size: 11px;
  line-height: 14px;
  color: rgba(var(--b-sc), 0.7);
}

.casino-hub-tournaments-page .tournamentSectionJoinBtn {
  width: 100%;
  min-height: 34px;
  justify-content: center;
}

@media (min-width: 768px) {
  .casino-hub-tournaments-page .casinoGameTournamentListItemRow.popupInfoTournament .casinoGameTournamentListItem .tournamentSectionImgBlock {
    flex: 0 0 186px !important;
    width: 186px !important;
    max-width: 186px !important;
    min-width: 186px !important;
    aspect-ratio: auto;
    height: 120px !important;
  }
}

/* Detail */
.casino-hub-tournament-detail {
  margin: 0 0 24px;
}

.casino-hub-tournament-detail .casino-hub-detail-block {
  margin: 12px 10px;
  min-width: 0 !important;
}

.casino-hub-tournament-detail .casino-hub-detail-meta {
  max-height: none;
}

.casino-hub-detail-hero {
  display: block;
  width: 100%;
  max-height: 220px;
  object-fit: cover;
}

.casino-hub-detail-text {
  padding: 12px 15px 16px;
  color: rgba(var(--b-sc), 0.9);
  font-size: 13px;
  line-height: 1.45;
  white-space: pre-wrap;
}

/* ===== Slots page: horizontal tournaments slider ===== */
.casino-hub-tournaments-slider {
  margin: 10px 10px 16px;
}

.casino-hub-tournaments-slider__head {
  margin-bottom: 8px;
}

.casino-hub-tournaments-slider__track {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 4px;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.casino-hub-tournaments-slider__track::-webkit-scrollbar {
  display: none;
  height: 0;
}

.casino-hub-tournaments-slider__card {
  flex: 0 0 220px;
  width: 220px;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-decoration: none;
  color: inherit;
  border-radius: var(--border-radius, 12px);
  background: rgba(var(--b-sc), 0.06);
  border: 1px solid rgba(var(--b-sc), 0.1);
  overflow: hidden;
}

.casino-hub-tournaments-slider__media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: rgba(0, 0, 0, 0.25);
  overflow: hidden;
}

.casino-hub-tournaments-slider__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.casino-hub-tournaments-slider__live {
  position: absolute;
  top: 8px;
  inset-inline-start: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #e23b3b;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
}

.casino-hub-tournaments-slider__count {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 8px;
  padding: 4px 8px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

.casino-hub-tournaments-slider__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0 10px 10px;
  min-width: 0;
}

.casino-hub-tournaments-slider__name {
  font-size: 12px;
  font-weight: 700;
  color: rgba(var(--b-sc), 1);
}

.casino-hub-tournaments-slider__stage {
  font-size: 10px;
  color: rgba(var(--b-sc), 0.65);
}

.casino-hub-tournaments-slider__prize {
  margin-top: 2px;
  color: rgb(var(--oc-1, 186, 142, 71));
  font-size: 14px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

/* hub jackpot CSS removed — use amusnet top_jackpots */

/* ===== Tournament detail games ===== */
.casino-hub-tournament-games {
  margin-top: 8px;
}

.casino-hub-game-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0 12px 10px;
}

.casino-hub-game-chip {
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.05);
  color: inherit;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.casino-hub-game-chip.is-active {
  border-color: rgb(var(--oc-1, 186, 142, 71));
  color: rgb(var(--oc-1, 186, 142, 71));
}

.casino-hub-game-search {
  padding: 0 12px 12px;
}

.casino-hub-game-search-input {
  width: 100%;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(0, 0, 0, 0.25);
  color: inherit;
  padding: 10px 12px;
  font-size: 14px;
}

.casino-hub-game-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 0 12px 8px;
}

.casino-hub-game-status {
  grid-column: 1 / -1;
  opacity: 0.75;
  padding: 12px 4px;
  margin: 0;
}

.casino-hub-game-card__btn {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.casino-hub-game-card__img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.35);
  display: block;
}

.casino-hub-game-card__meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 6px 2px 0;
}

.casino-hub-game-card__name {
  font-size: 12px;
  font-weight: 700;
}

.casino-hub-game-card__provider {
  font-size: 11px;
  opacity: 0.65;
}

.casino-slots-subnav-holder {
  flex: 0 0 auto;
}

@media (min-width: 992px) {
  .casino-hub-game-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

/* Content offset under sticky casino slots subnav (desktop sticky header stacks). */
html.is-web:has(.casino-slots-subnav-holder) .layout-content-holder-bc,
html.is-web.casino-slots-section .layout-content-holder-bc {
  scroll-margin-top: 0;
}

/* Keep first content block from visually colliding with sticky casino subnav. */
html.is-web:has(.casino-slots-subnav-holder) .layout-content-holder-bc > .hm-row-bc.has-slider:first-child,
html.is-web:has(.casino-slots-subnav-holder) .layout-content-holder-bc > .casino-hub-tournaments-slider:first-child,
html.is-web:has(.casino-slots-subnav-holder) .layout-content-holder-bc > .casino-hub-tournaments-page:first-child,
html.is-web:has(.casino-slots-subnav-holder) .layout-content-holder-bc > .bm-jp-fugaso-wrap:first-child {
  position: relative;
  z-index: 1;
}

