/**
 * Site-next UI polish: oyun kartları, mobil akıcılık, sidebar, modallar.
 */

/* —— Oyun kartları: kapak görselleri kart alanını doldurur —— */
.home-game-card-img,
.casino-random-game-spin-item img,
.game-card_root-al9vQ .game-card_image-al9vQ,
.game-card_root-al9vQ .sn-game-img-shell .game-card_image-al9vQ,
.sn-game-img-shell .game-card_image-al9vQ,
#sn-casino-search-results .game-card_image-al9vQ,
#sn-casino-search-results .sn-game-img-shell .game-card_image-al9vQ,
#site-next-all-games-list .game-card_image-al9vQ {
  object-fit: fill !important;
  object-position: center top !important;
}

.sn-game-img-shell:not(.is-loaded) .game-card_image-al9vQ {
  opacity: 0 !important;
  transform: none !important;
}

.sn-game-img-shell.is-loaded .game-card_image-al9vQ {
  opacity: 1 !important;
}

/* Oyun kapakları: köşe radius (şablon --game-card-rounding-* ile uyumlu) */
.game-card_root-al9vQ .sn-game-img-shell.game-card_pictureWrapper-al9vQ {
  border-radius: var(--game-card__border-radius, var(--game-card-rounding-mobile, 12px));
  overflow: hidden;
  isolation: isolate;
}

.sn-game-img-shell .game-card_picture-al9vQ,
.sn-game-img-shell .game-card_image-al9vQ,
.sn-game-img-shell .game-card_placeholder-al9vQ.sn-skeleton--game-media {
  border-radius: inherit;
}

@media (min-width: 1024px) {
  .game-card_root-al9vQ .sn-game-img-shell.game-card_pictureWrapper-al9vQ {
    border-radius: var(--game-card__border-radius, var(--game-card-rounding-desktop, 16px));
  }
}

/* Hover zoom görseli radius dışına taşmasın */
.game-card_root-al9vQ:hover .sn-game-img-shell .game-card_image-al9vQ {
  border-radius: inherit;
}

/* —— Oyun kartı hover (1win / index.css referansı) —— */
a.game-card_root-al9vQ[data-sn-game-launch],
a.game-card_root-al9vQ[data-game-id] {
  text-decoration: none;
  color: inherit;
}

a.game-card_root-al9vQ .game-card_image-al9vQ,
a.game-card_root-al9vQ .sn-game-img-shell .game-card_image-al9vQ {
  transition: transform 0.1s linear;
  transform: scale(1.01);
}

@media (pointer: fine) {
  a.game-card_root-al9vQ:hover .game-card_image-al9vQ,
  a.game-card_root-al9vQ:hover .sn-game-img-shell .game-card_image-al9vQ,
  a.game-card_root-al9vQ:focus-visible .game-card_image-al9vQ,
  a.game-card_root-al9vQ:focus-visible .sn-game-img-shell .game-card_image-al9vQ {
    transform: scale(1.1);
    filter: none;
  }

  a.game-card_root-al9vQ:hover,
  a.game-card_root-al9vQ:focus-visible {
    transform: none;
    box-shadow: none;
    z-index: auto;
  }

  a.game-card_root-al9vQ:has(.sn-game-card-tooltip):hover .game-card_pictureWrapper-al9vQ::before,
  a.game-card_root-al9vQ:has(.sn-game-card-tooltip):hover .sn-game-img-shell::before,
  a.game-card_root-al9vQ:has(.sn-game-card-tooltip):focus-visible .game-card_pictureWrapper-al9vQ::before,
  a.game-card_root-al9vQ:has(.sn-game-card-tooltip):focus-visible .sn-game-img-shell::before {
    content: "";
    background: var(--color-solid-base-static-black-alfa-56, rgba(0, 0, 0, 0.56));
    border-radius: inherit;
    z-index: 1;
    pointer-events: none;
    position: absolute;
    inset: 0;
  }

  a.game-card_root-al9vQ:has(.sn-game-card-tooltip):hover .sn-game-card-tooltip,
  a.game-card_root-al9vQ:has(.sn-game-card-tooltip):focus-visible .sn-game-card-tooltip {
    opacity: 1;
    visibility: visible;
  }
}

.game-card_root-al9vQ[role="presentation"] .game-card_image-al9vQ,
.game-card_root-al9vQ[role="presentation"] .sn-game-img-shell .game-card_image-al9vQ {
  transform: none;
  transition: none;
}

.game-card_body-al9vQ {
  min-height: 0;
  border-radius: var(--game-card__border-radius, var(--game-card-rounding-mobile, 12px));
  overflow: hidden;
}

@media (min-width: 1024px) {
  .game-card_body-al9vQ {
    border-radius: var(--game-card__border-radius, var(--game-card-rounding-desktop, 16px));
  }
}

.games-grid_carousel-iixhO > .game-card_root-al9vQ,
.games-grid_carousel-modal-iixhO > .game-card_root-al9vQ,
.games-grid_carousel-iixhO > .sn-game-card-wrap,
.games-grid_carousel-modal-iixhO > .sn-game-card-wrap {
  flex: 0 0 auto;
  flex-shrink: 0;
  height: auto;
}

.games-grid_list-iixhO > .game-card_root-al9vQ,
.games-grid_list-modal-iixhO > .game-card_root-al9vQ,
.games-grid_list-iixhO > .sn-game-card-wrap,
.games-grid_list-modal-iixhO > .sn-game-card-wrap,
#site-next-all-games-list > .game-card_root-al9vQ,
#site-next-all-games-list > .sn-game-card-wrap {
  min-width: 0;
  width: 100%;
}

.game-section-see-more_root-RQT83 {
  flex: 0 0 auto;
  min-height: 100%;
  align-self: stretch;
}

/* —— Kategori sekmeleri: tıklanabilirlik + kaydırma —— */
.base-tab-section_items-SryNQ {
  cursor: default !important;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

.base-tab-section_items-SryNQ button[data-sn-category-slug] {
  touch-action: manipulation;
  cursor: pointer;
  transition: transform 0.18s cubic-bezier(0.34, 1.2, 0.64, 1), opacity 0.15s ease;
}

.base-tab-section_items-SryNQ button[data-sn-category-slug]:active:not(:disabled) {
  transform: scale(0.96);
}

.base-tab-section_items-SryNQ button[data-sn-category-slug]:disabled {
  opacity: 0.55;
  cursor: wait;
}

.base-tab-section_items-SryNQ button[data-sn-category-slug].tab_selected-spnHq {
  transform: scale(1.02);
}

/* —— Sol menü: hover / aktif / drawer giriş —— */
.variant-1_sleave-Qr2MW .base_root-cl9BQ,
.variant-1_sleave-Qr2MW a.base_root-cl9BQ,
.variant-1_sleave-Qr2MW button.base_root-cl9BQ {
  transition:
    background-color 0.22s ease,
    color 0.22s ease,
    transform 0.22s cubic-bezier(0.34, 1.2, 0.64, 1);
}

.variant-1_sleave-Qr2MW .base_root-cl9BQ .menu-icon_icon-BroVZ,
.variant-1_sleave-Qr2MW .base_root-cl9BQ img.menu-icon_icon-BroVZ,
.variant-1_sleave-Qr2MW .base_root-cl9BQ .sn-sidebar-icon {
  transition: transform 0.28s cubic-bezier(0.34, 1.4, 0.64, 1), color 0.22s ease;
}

/* Sol menü: inline SVG ikonlar (mask yerine) */
.sn-sidebar-icon {
  display: block;
  flex-shrink: 0;
  color: var(--menu-icon__color-bg, var(--color-content-base-secondary));
}

.sn-sidebar-icon-img {
  object-fit: contain;
  opacity: 0.92;
}

.base_root-cl9BQ.router-link-active .sn-sidebar-icon,
.base_root-cl9BQ.router-link-exact-active .sn-sidebar-icon {
  color: var(--menu-icon__color-bg, var(--color-content-base-primary));
}

@media (hover: hover) and (pointer: fine) {
  .variant-1_sleave-Qr2MW .base_root-cl9BQ:hover {
    transform: translateX(3px);
  }

  .variant-1_sleave-Qr2MW .base_root-cl9BQ:hover .menu-icon_icon-BroVZ,
  .variant-1_sleave-Qr2MW .base_root-cl9BQ:hover img.menu-icon_icon-BroVZ,
  .variant-1_sleave-Qr2MW .base_root-cl9BQ:hover .sn-sidebar-icon {
    transform: scale(1.08);
  }
}

.variant-1_sleave-Qr2MW .base_root-cl9BQ.router-link-active,
.variant-1_sleave-Qr2MW .base_root-cl9BQ.router-link-exact-active {
  position: relative;
}

.variant-1_sleave-Qr2MW .base_root-cl9BQ.router-link-active::after,
.variant-1_sleave-Qr2MW .base_root-cl9BQ.router-link-exact-active::after {
  content: '';
  position: absolute;
  inset-inline-start: 0;
  top: 18%;
  bottom: 18%;
  width: 3px;
  border-radius: 0 4px 4px 0;
  background: linear-gradient(180deg, var(--color-solid-brand-primary-default, #00b24b), var(--color-solid-brand-accent-primary, #12b857));
  box-shadow: 0 0 12px rgba(18, 184, 87, 0.45);
  animation: sn-sidebar-active-glow 2.4s ease-in-out infinite;
}

@keyframes sn-sidebar-active-glow {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.65;
  }
}

html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7,
html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-slot_root-Z3KKo > div > div > div:first-child {
  animation: sn-sidebar-item-in 0.42s cubic-bezier(0.22, 1, 0.36, 1) backwards;
}

html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7:nth-of-type(1) {
  animation-delay: 0.04s;
}
html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7:nth-of-type(2) {
  animation-delay: 0.08s;
}
html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7:nth-of-type(3) {
  animation-delay: 0.12s;
}
html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7:nth-of-type(4) {
  animation-delay: 0.16s;
}
html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7:nth-of-type(5) {
  animation-delay: 0.2s;
}
html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7:nth-of-type(6) {
  animation-delay: 0.24s;
}

@keyframes sn-sidebar-item-in {
  from {
    opacity: 0;
    transform: translateX(-14px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

[data-testid='sidebar-freemoney-banner'],
[data-testid='sidebar-premium-spin-banner'] {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

@media (hover: hover) and (pointer: fine) {
  [data-testid='sidebar-freemoney-banner']:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 8px 24px rgba(18, 184, 87, 0.2);
  }
}

.common-layout_backdrop-V7jCK:not(.common-layout_hidden-V7jCK) {
  transition: opacity 0.28s ease, backdrop-filter 0.28s ease;
  backdrop-filter: blur(6px);
}

/* —— Mobil uygulama hissi —— */
@media (max-width: 1023.98px) {
  html {
    scroll-behavior: smooth;
  }

  #root,
  .common-layout_content-V7jCK {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
  }

  .tabbar_tab-ep1t4 .tab_root-4PkWF {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    transition: transform 0.14s cubic-bezier(0.34, 1.2, 0.64, 1), color 0.15s ease;
  }

  .tabbar_tab-ep1t4 .tab_root-4PkWF:active {
    transform: scale(0.9);
  }

  html.sn-tabbar-navigating::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    z-index: calc(var(--z-index-modal-layout, 1000) + 2);
    background: linear-gradient(
      90deg,
      transparent,
      var(--color-solid-brand-primary-default, #00b24b) 40%,
      transparent
    );
    animation: sn-tabbar-progress 0.85s ease-in-out infinite;
    pointer-events: none;
  }

  html.sn-tabbar-navigating .tabbar_root-PnRyY [data-sn-tabbar-nav] {
    pointer-events: none;
  }

  html.sn-tabbar-navigating .tabbar_tab-ep1t4 .tab_root-4PkWF[data-sn-tabbar-nav].tab_active-4PkWF {
    opacity: 1;
  }

  @keyframes sn-tabbar-progress {
    0% {
      transform: translateX(-100%);
    }
    100% {
      transform: translateX(100%);
    }
  }

  button,
  a.button_root-LF6DC,
  [data-testid='casino-category-all-games-button'],
  [data-testid='casino-category-see-more-button'] {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    transition: transform 0.12s cubic-bezier(0.34, 1.2, 0.64, 1), opacity 0.1s ease;
  }

  button:active:not(:disabled),
  a.button_root-LF6DC:active,
  [data-testid='casino-category-all-games-button']:active,
  [data-testid='casino-category-see-more-button']:active,
  .sn-tap-pressed {
    transform: scale(0.96);
    opacity: 0.92;
  }
}

/* —— Yatırım / çekim / profil / ayarlar modalları —— */
@media (max-width: 1023.98px) {
  #site-next-modal-deposit .sn-deposit-card,
  #site-next-modal-deposit-checkout .desktop-modal_card-FWyPd,
  #site-next-modal-withdraw .desktop-modal_card-FWyPd,
  #site-next-modal-withdraw-detail .desktop-modal_card-FWyPd,
  #site-next-modal-profile .sn-profile-card,
  #site-next-modal-profile-settings .sn-profile-settings-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  #site-next-modal-deposit .paywidget-app,
  #site-next-modal-withdraw .paywidget-app,
  #site-next-modal-withdraw-detail .paywidget-app {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }

  #site-next-modal-deposit .billing_root-E5dHY,
  #site-next-modal-withdraw .billing_root-E5dHY {
    min-height: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
  }

  #site-next-modal-profile .profile_root-BeWTJ,
  #site-next-modal-profile-settings .profile_root-BeWTJ,
  #site-next-modal-profile-settings .settings_root-USRA1 {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    touch-action: pan-y;
    padding-bottom: max(var(--spacing-16), env(safe-area-inset-bottom, 0px));
  }

  #site-next-modal-profile .variant-1_balanceButtons-RYHEE,
  #site-next-modal-profile-settings .list-stack_root-LZJ8n {
    gap: var(--spacing-8);
  }

  #site-next-modal-deposit ._container_10hn6_6,
  #site-next-modal-withdraw ._container_10hn6_6 {
    padding-inline: max(12px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));
  }

  .paywidget-app ._methodCard_r4vt6_2,
  .paywidget-app [class*='methodCard'] {
    max-width: none !important;
    width: 100%;
  }

  .modal-header_primaryHeaderWithBack-27LrA {
    flex-wrap: nowrap;
    gap: var(--spacing-8);
  }

  .modal-header_back-27LrA {
    flex-shrink: 0;
  }
}

/* Masaüstü: ödeme modalları taşmasın */
@media (min-width: 1024px) {
  #site-next-modal-deposit .desktop-modal_card-FWyPd,
  #site-next-modal-withdraw .desktop-modal_card-FWyPd,
  #site-next-modal-profile .sn-profile-card,
  #site-next-modal-profile-settings .sn-profile-settings-card {
    max-height: var(--sn-modal-desktop-max-height) !important;
  }

  #site-next-modal-deposit .paywidget-app,
  #site-next-modal-profile .profile_root-BeWTJ,
  #site-next-modal-profile-settings .profile_root-BeWTJ {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    touch-action: pan-y;
  }

  /* Masaüstü: profile kartı kendi scroll'u DEĞİL, içerideki profile_root scroll'lensin */
  #site-next-modal-profile .sn-profile-card,
  #site-next-modal-profile-settings .sn-profile-settings-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .variant-1_sleave-Qr2MW .base_root-cl9BQ,
  html.sn-mobile-sidebar-drawer-open .variant-1_sleave-Qr2MW .sidebar-menu-section_root-zzYh7,
  .base-tab-section_items-SryNQ button[data-sn-category-slug],
  .tabbar_tab-ep1t4 .tab_root-4PkWF {
    animation: none !important;
    transition: none !important;
  }
}

/* NOT: .game-card_root-al9vQ üzerinde content-visibility:auto KULLANMAYIN.
   Yatay carousel'de ekran dışı kartları ~0 boyuta çökertip lazy kapak
   IntersectionObserver'ının hydrate etmesini engelliyordu (kapaklar
   opacity:0'da takılı kalıyordu). Görsel yükü zaten sn-image-lazy ile
   erteleniyor; kart bazında content-visibility gereksiz ve zararlı. */

.common-layout_content-V7jCK {
  -webkit-overflow-scrolling: touch;
}

/* —— Haftanın oyunu (casino / canlı casino üst grid) —— */
.sn-casino-lobby-grid {
  align-items: stretch;
}

.game-of-the-week-lobby_root-mpvW8 {
  height: 100%;
  min-width: 0;
}

.game-of-the-week-lobby_root-mpvW8 .variant-1_root-K5LRK {
  min-height: 100%;
}

.game-of-the-week-lobby_root-mpvW8 .variant-1_cardWrapper-K5LRK {
  min-width: 108px;
}

.game-of-the-week-lobby_root-mpvW8 .variant-1_cardInner-K5LRK {
  position: relative;
  inset-block-start: 0;
  height: 100%;
  bottom: 0;
}

.game-of-the-week-lobby_root-mpvW8 .variant-1_card-K5LRK,
.game-of-the-week-lobby_root-mpvW8 .game-card_body-al9vQ {
  display: block;
  height: 100%;
}

.game-of-the-week-lobby_root-mpvW8 .sn-game-img-shell,
.game-of-the-week-lobby_root-mpvW8 .game-card_pictureWrapper-al9vQ {
  width: 100%;
  height: 100%;
  min-height: 0;
}

.game-of-the-week-lobby_root-mpvW8 .sn-game-img-shell .game-card_image-al9vQ,
.game-of-the-week-lobby_root-mpvW8 .game-card_image-al9vQ {
  object-fit: cover !important;
  object-position: center top !important;
  width: 100% !important;
  height: 100% !important;
}

.game-of-the-week-lobby_root-mpvW8 .graphics_img-Y2MGz {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
}

@media (max-width: 1023.98px) {
  .game-of-the-week-lobby_root-mpvW8 .variant-1_cardWrapper-K5LRK {
    max-height: 172px;
    inset-inline-end: 0;
  }
}

@media (min-width: 1024px) {
  .game-of-the-week-lobby_root-mpvW8 .variant-1_cardWrapper-K5LRK {
    max-height: none;
  }
}

/* —— /bonuses bölüm başlığı altındaki açıklama satırı —— */
/* `available-bonuses_root-MJzfJ` doğal olarak heading + list yapısına
   sahip; "%X'e varan bonuslar" bölümünde başlığın altında ek bir
   "Para yükleme bonuslarına hoş geldiniz" satırı göstermek için
   eski `chainable-bonuses_subheading-Zp3bR` tipografisini koruyoruz
   ve negatif margin ile başlıkla arasındaki boşluğu kısaltıyoruz. */
.sn-available-bonuses-subheading {
  color: var(--color-content-base-secondary);
  font-family: var(--font-caption-font-family);
  font-size: var(--font-caption-s-regular-font-size);
  font-weight: var(--font-caption-s-regular-font-weight);
  letter-spacing: var(--font-caption-s-regular-letter-spacing);
  line-height: var(--font-caption-s-regular-line-height);
  margin-block-start: calc(var(--spacing-20) * -1 + var(--spacing-4));
  margin-block-end: var(--spacing-20);
}

@media (min-width: 1024px) {
  .sn-available-bonuses-subheading {
    margin-block-start: calc(var(--spacing-24) * -1 + var(--spacing-4));
    margin-block-end: var(--spacing-24);
  }
}
