/*
 * Carousel: slot-oyun-demo-bar.
 * Slot grid: bundle (c968ef720f6990e6.css) + .ganobet-slot-hover-layer ince ayarları.
 */

/*
 * Bundle’da Row ızgarası grid-auto-flow: row; kartlar yerinden çıkarılınca izgarada boş
 * “delikler” kalabiliyor. row dense sıradaki hücreleri yukarı doldurur.
 */
#main-content [class*="Row_container__"],
main [class*="Row_container__"] {
  grid-auto-flow: row dense !important;
}

[class*="GameBox_container__"] {
  position: relative !important;
  overflow: hidden !important;
  --ganobet-slot-bar-h: 2.1rem;
}

@media (max-width: 1023px) {
  [class*="GameBox_container__"] {
    --ganobet-slot-bar-h: 2.4rem;
  }
}

/* Kartta görsel ile başlık: önizleme filmi görselin üstünde olsun; rozet üstte kalsın */
[class*="GameBox_container__"] [class*="GameBox_imgContainer__"] {
  position: relative;
  z-index: 0;
}

[class*="GameBox_container__"] [class*="GameBox_preview__"] {
  border-radius: 2px;
  overflow: hidden;
  z-index: 4;
}

[class*="GameBox_container__"] > [class*="GameBox_badgesLeft__"],
[class*="GameBox_container__"] > [class*="GameBox_badgesRight__"] {
  z-index: 5;
}

/* Hover desteklemeyen dokunmatik/tablet için de kutu :hover olduğunda film açılsın */
[class*="GameBox_container__"]:hover [class*="GameBox_preview__"] {
  opacity: 1 !important;
}

/*
 * Katman monte edilmişken (.ganobet-slot-preview-active) film zorla görünür.
 * Böylece (hover:none) ortamlarında pointerenter sonrası OYNA/DEMO kaybolmaz.
 */
[class*="GameBox_preview__"].ganobet-slot-preview-active {
  opacity: 1 !important;
}

/*
 * Üst bölümdeki elemanlar tamamı position:absolute olduğu için flex ile
 * GameBox_previewTop yüksekliği çöküyordu; oyun adı kesiliyor / görünmüyordu.
 * Üst alan: inset - şerit yüksekliği; şerit: absolute bottom.
 */
.ganobet-slot-hover-layer {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  box-sizing: border-box;
}

.ganobet-slot-hover-layer .GameBox_previewTop__aFRfH {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: var(--ganobet-slot-bar-h);
  min-height: 2.4rem;
  display: block;
  height: auto !important;
}

.ganobet-slot-hover-layer .GameBox_previewBottom__SMY5M {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: var(--ganobet-slot-bar-h) !important;
  box-sizing: border-box;
  pointer-events: auto;
  z-index: 4;
  display: flex !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.ganobet-slot-hover-layer .GameBox_previewBottom__SMY5M > button {
  flex: 1 1 0;
  min-width: 0;
  width: auto !important;
  opacity: 1 !important;
}

.ganobet-slot-hover-layer .GameBox_previewBottom__SMY5M > button span {
  display: inline-block !important;
  opacity: 1 !important;
  font-size: 0.9rem !important;
  line-height: 1.4rem !important;
  font-weight: 700 !important;
  color: inherit !important;
}
.ganobet-slot-hover-layer .GameBox_favorite__d4DcP,
.ganobet-slot-hover-layer .GameBox_information__4ZtfR {
  pointer-events: auto;
  z-index: 8;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  color: #fff;
  cursor: pointer;
  line-height: 0;
  -webkit-tap-highlight-color: transparent;
}

.ganobet-slot-hover-layer .GameBox_favorite__d4DcP svg,
.ganobet-slot-hover-layer .GameBox_information__4ZtfR svg {
  display: block;
}

/* Bundle .GameBox_text__5VJhx kullanma: başka CSS / mobil top:2.8rem yazıyı kart dışına itebiliyor */
.ganobet-slot-hover-layer .ganobet-slot-game-title {
  pointer-events: none;
  box-sizing: border-box;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 92% !important;
  max-width: 92% !important;
  padding: 0 0.3rem !important;
  margin: 0 !important;
  text-align: center !important;
  font-family: Montserrat, Poppins, system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 1.2rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 1px 1px hsla(0, 0%, 5%, 0.8) !important;
  white-space: normal !important;
  word-break: break-word !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 6 !important;
}

@media (max-width: 1023px) {
  .ganobet-slot-hover-layer .ganobet-slot-game-title {
    font-size: 1.1rem !important;
    width: 90% !important;
    max-width: 90% !important;
  }
}

/* Favori: dolu durumda turuncu (canlı hissine yakın) */
.ganobet-slot-hover-layer .GameBox_favorite__d4DcP.ganobet-slot-fav--on {
  color: #f39200;
}

.ganobet-slot-hover-layer .GameBox_favorite__d4DcP.ganobet-slot-fav--on .ganobet-slot-fav-stroke {
  opacity: 0;
}

.ganobet-slot-hover-layer .GameBox_favorite__d4DcP.ganobet-slot-fav--on .ganobet-slot-fav-fill {
  opacity: 1 !important;
}

a[data-slot-oyun-demo-host="1"] {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 2rem !important;
  --slot-demo-bar-h: 2.1rem;
}

.slot-oyun-demo-occlude {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: var(--slot-demo-bar-h);
  z-index: 25;
  background: transparent;
  transition: background 0.2s ease, opacity 0.2s ease;
}

.slot-oyun-demo-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: var(--slot-demo-bar-h);
  z-index: 30;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  background: transparent;
  pointer-events: auto;
}

.slot-oyun-demo-bar button {
  box-sizing: border-box;
  flex: 1 1 50%;
  min-width: 0;
  height: var(--slot-demo-bar-h);
  width: 100%;
  margin: 0;
  padding: 0 0.35rem;
  text-transform: uppercase;
  border-radius: 0.4rem 0.4rem 0 0 !important;
  font-family: Montserrat, "Poppins", system-ui, -apple-system, sans-serif;
  font-size: 0.9rem !important;
  font-weight: 700;
  letter-spacing: 0.024rem;
  line-height: 1.4rem;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  transition: opacity 0.12s ease, border-color 0.12s ease, background-color 0.12s ease;
}

.slot-oyun-demo-bar button:hover {
  border-color: transparent !important;
}

.slot-oyun-demo-bar .slot-btn-play {
  background-color: #f39200;
  border: 1px solid #f39200;
  color: #fff;
}

.slot-oyun-demo-bar .slot-btn-play:hover {
  background-color: #0d0d18;
  border: 1px solid #fff;
  color: #fff;
}

.slot-oyun-demo-bar .slot-btn-demo {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
}

.slot-oyun-demo-bar .slot-btn-demo:hover {
  background-color: #f39200;
  color: #fff;
}

@media (max-width: 1023px) {
  a[data-slot-oyun-demo-host="1"] {
    --slot-demo-bar-h: 2.4rem;
  }

  .slot-oyun-demo-bar button {
    height: 2.4rem;
    border-radius: 0.4rem 0.4rem 0 0 !important;
  }
}

@media (hover: hover) and (pointer: fine) {
  a[data-slot-oyun-demo-host="1"] .slot-oyun-demo-occlude,
  a[data-slot-oyun-demo-host="1"] .slot-oyun-demo-bar {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, background 0.2s ease;
  }

  a[data-slot-oyun-demo-host="1"]:hover .slot-oyun-demo-occlude,
  a[data-slot-oyun-demo-host="1"]:hover .slot-oyun-demo-bar {
    opacity: 1;
    pointer-events: auto;
  }

  a[data-slot-oyun-demo-host="1"]:hover .slot-oyun-demo-occlude {
    background: rgba(243, 146, 0, 0.322);
  }
}

@media (prefers-reduced-motion: reduce) {
  .slot-oyun-demo-occlude,
  .slot-oyun-demo-bar,
  .slot-oyun-demo-bar button {
    transition: none !important;
  }
}
