/* TityLive v1092 - Universal mobile scroll / modal viewport hotfix
   Amaç: tüm marka/model Android/iOS cihazlarda sayfa ve popup kaydırmayı güvenceye almak.
   Not: Görsel tasarım, renk, class/id ve iş mantığı değiştirilmez. */
:root{
  --tity-visual-vh: 100dvh;
  --tity-safe-bottom: env(safe-area-inset-bottom, 0px);
  --tity-safe-top: env(safe-area-inset-top, 0px);
}
@supports (height: 100svh){:root{--tity-visual-vh:100svh;}}
@supports (height: 100dvh){:root{--tity-visual-vh:100dvh;}}
html.tity-mobile-scroll-v1092,
html.tity-mobile-scroll-v1092 body{
  min-height:var(--tity-visual-vh)!important;
  overscroll-behavior-y:none!important;
}
html.tity-mobile-scroll-v1092 body{
  touch-action:pan-y!important;
}
/* Genel mobil kabuklar: tek dokunuş/tıklama çalışır, uzun içerik mutlaka kayar. */
body.tl-v494-screen .tl-app-shell-v494,
body.tl-profile-detail-ref-v616 .tl-app-shell-v494,
body.tl-basic-profile-v538 .tl-app-shell-v494,
body.tity-main-v322 .tity-main-app-v322,
body.tity-home-v322 .tity-main-app-v322,
body.tity-profile-v322 .tity-main-app-v322,
body.tity-plaza-v322 .tity-main-app-v322,
body.tity-games-v322 .tity-main-app-v322,
body.tity-chat-v322 .tity-main-app-v322,
body.tity-prelive-v322 .tity-main-app-v322,
.tity-app.main-v322{
  height:var(--tity-visual-vh)!important;
  max-height:var(--tity-visual-vh)!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:contain!important;
}
body.tl-v494-screen .tl-content-v494,
body.tl-v494-screen main.tl-content-v494,
body.tl-v494-screen .tl-ben-scroll-v538,
body.tl-v494-screen .tity-profile-scroll-v551,
body.tl-profile-detail-ref-v616 .tl-content-v494,
body.tl-profile-detail-ref-v616 main,
body.tity-main-v322 .tity-main-scroll-v322,
body.tity-home-v322 .tity-main-scroll-v322,
body.tity-profile-v322 .tity-main-scroll-v322,
body.tity-plaza-v322 .tity-main-scroll-v322,
body.tity-games-v322 .tity-main-scroll-v322,
body.tity-chat-v322 .tity-main-scroll-v322,
body.tity-prelive-v322 .tity-main-scroll-v322,
.tity-content.main-content-v322{
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:contain!important;
}
body.tl-v494-screen .tl-content-v494,
body.tl-profile-detail-ref-v616 .tl-content-v494{
  padding-bottom:calc(96px + var(--tity-safe-bottom))!important;
}
/* Ayarlar ve alt sayfalar: shell sabit kalsa bile ana içerik kayar. */
body.tl-settings-ref-v644,
.tl-settings-ref-v644{
  height:var(--tity-visual-vh)!important;
  max-height:var(--tity-visual-vh)!important;
  overflow:hidden!important;
  touch-action:pan-y!important;
}
.tl-settings-ref-v644 .tl-set-shell-v644{
  height:var(--tity-visual-vh)!important;
  max-height:var(--tity-visual-vh)!important;
  min-height:0!important;
  overflow:hidden!important;
}
.tl-settings-ref-v644 .tl-set-scroll-v644{
  height:calc(var(--tity-visual-vh) - 50px - 76px - var(--tity-safe-bottom))!important;
  max-height:calc(var(--tity-visual-vh) - 50px - 76px - var(--tity-safe-bottom))!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:contain!important;
  padding-bottom:calc(96px + var(--tity-safe-bottom))!important;
}
/* Bildirim/pop/menu/bottom-sheet içerikleri: tam ekran kilitleme yerine kendi içinde kayar. */
.tl-set-modal-v644,
.tl-notify-modal-v729,
.room-panel-sheet,
[data-room-panel]{
  touch-action:pan-y!important;
}
.tl-set-modal-v644>div,
.tl-notify-sheet-v729,
.room-panel-sheet,
.tity-modal-sheet,
.tity-bottom-sheet,
.tity-pop-sheet{
  max-height:calc(var(--tity-visual-vh) - 24px - var(--tity-safe-bottom))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-y:contain!important;
}
.tl-notify-sheet-v729{
  max-height:min(82dvh, calc(var(--tity-visual-vh) - 28px - var(--tity-safe-bottom)))!important;
}
/* Canlı/party oda kabuğu: sahne sabit kalır, paneller sahne içinde sınırlı kalır. */
.room-shell,
.live-shell,
.party-shell{
  height:var(--tity-visual-vh)!important;
  max-height:var(--tity-visual-vh)!important;
  min-height:0!important;
  overflow:hidden!important;
  touch-action:pan-y!important;
}
.room-panel[data-room-panel="gift"]{
  height:min(69dvh, calc(var(--tity-visual-vh) * .72), 620px)!important;
  max-height:calc(var(--tity-visual-vh) - 84px - var(--tity-safe-bottom))!important;
  top:auto!important;
  bottom:0!important;
  overflow:hidden!important;
}
.room-gift-body,
.room-gift-grid,
.room-gift-categories,
.room-gift-recipient-menu,
.room-gift-qty-menu,
.room-private-list,
.room-private-messages,
.room-profile-card,
.room-mod-log,
.live-viewer-panel-final,
.live-canta-panel,
.party-canta-panel{
  min-height:0!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:contain!important;
}
.room-gift-grid,
.room-gift-recipient-menu,
.room-gift-qty-menu,
.room-private-list,
.room-private-messages,
.room-mod-log{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
/* iOS/Android klavye açıkken form alanı altta kaybolmasın. */
input,textarea,select{
  scroll-margin-bottom:calc(120px + var(--tity-safe-bottom))!important;
}
/* Küçük ekranlarda panel biraz daha kompakt kalsın; tam ekran hissi oluşmasın. */
@media(max-width:380px){
  .room-panel[data-room-panel="gift"]{
    height:min(66dvh, calc(var(--tity-visual-vh) * .70), 600px)!important;
    max-height:calc(var(--tity-visual-vh) - 78px - var(--tity-safe-bottom))!important;
  }
  .tl-set-modal-v644>div,
  .tl-notify-sheet-v729,
  .room-panel-sheet{
    max-height:calc(var(--tity-visual-vh) - 18px - var(--tity-safe-bottom))!important;
  }
}

/* TityLive v1093 - Deep universal page/popup scroll fallback
   v1092 bazı ortak layoutlarda çalıştı; v1093 standalone sayfa, menü ve popup sınıflarını da kapsar.
   Tasarım renk/ölçüleri değiştirilmez; sadece kaydırma ve panel taşma güvenliği eklenir. */
:root{
  --tity-scroll-bottom-v1093: calc(96px + env(safe-area-inset-bottom, 0px));
  --tity-scroll-top-v1093: env(safe-area-inset-top, 0px);
}
html.tity-mobile-scroll-v1093,
html.tity-mobile-scroll-v1093 body{
  min-height:var(--tity-visual-vh, 100dvh)!important;
  height:auto!important;
}
@media (max-width: 720px){
  html.tity-mobile-scroll-v1093 body:not(.tl-live-room-v1093):not(.tl-party-room-v1093),
  body.tity-mobile-scroll-body-v1093{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior-y:contain!important;
  }

  /* Standalone sayfalar: ajans/yayıncı/mesaj/bildirim/profil/ben/ayarlar için genel scroll host. */
  .tity-scroll-host-v1093,
  main.p,
  main.wrap,
  main.aj-wrap,
  .aj-wrap,
  .ypub-app,
  .ypub-content,
  .agency-page,
  .agency-content,
  .tity-support-shell,
  .tv-shell,
  .tl-puan-page,
  .tl-puan-scroll,
  .tity-notify-app,
  .tity-notify-shell,
  .tity-message-shell,
  .tl-message-shell,
  .tl-settings-ref-v644 .tl-set-scroll-v644,
  .tl-ben-scroll-v538,
  .tity-profile-scroll-v551,
  .tl-content-v494{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior-y:contain!important;
    scrollbar-width:none!important;
  }
  .tity-scroll-host-v1093::-webkit-scrollbar,
  main.p::-webkit-scrollbar,
  main.wrap::-webkit-scrollbar,
  main.aj-wrap::-webkit-scrollbar,
  .aj-wrap::-webkit-scrollbar,
  .ypub-app::-webkit-scrollbar,
  .ypub-content::-webkit-scrollbar,
  .tl-content-v494::-webkit-scrollbar{display:none!important;}

  main.p,
  main.wrap,
  main.aj-wrap,
  .aj-wrap,
  .ypub-app,
  .tity-support-shell,
  .tv-shell,
  .tl-puan-page,
  .tity-notify-app,
  .tl-app-shell-v494{
    min-height:var(--tity-visual-vh, 100dvh)!important;
    max-height:var(--tity-visual-vh, 100dvh)!important;
    box-sizing:border-box!important;
    padding-bottom:var(--tity-scroll-bottom-v1093)!important;
  }

  /* Eski lock sınıflarının scroll'u öldürmesini engelle. */
  body.tl-ben-lock-v629,
  body.tl-ben-final-v538,
  body.tl-settings-ref-v644,
  body.tl-basic-profile-v538,
  body.tity-notify-v729,
  body.tity-support-page,
  body.tity-vip-page,
  body.tl-puan-body,
  body.tity-bag-page,
  body.tity-feature-page{
    position:relative!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* Alt menü varsa içerik altında kaybolmasın. */
  .tl-content-v494,
  .tl-ben-scroll-v538,
  .tity-profile-scroll-v551,
  .tity-notify-shell,
  .tity-message-shell,
  .tl-message-shell,
  .ypub-content,
  main.p,
  main.wrap,
  .aj-wrap{
    padding-bottom:var(--tity-scroll-bottom-v1093)!important;
    scroll-padding-bottom:var(--tity-scroll-bottom-v1093)!important;
  }

  /* Popup, menü, sheet, modal: dış kilit olsa bile içerik kendi içinde kayar. */
  .modal,
  .popup,
  .sheet,
  .bottom-sheet,
  .drawer,
  .menu-panel,
  .dropdown-menu,
  .tity-modal,
  .tity-modal-sheet,
  .tity-bottom-sheet,
  .tity-pop-sheet,
  .tl-set-modal-v644,
  .tl-set-modal-v644 > div,
  .tl-notify-modal-v729,
  .tl-notify-sheet-v729,
  .room-panel,
  .room-panel-sheet,
  [data-room-panel],
  [data-modal],
  [data-sheet],
  [role="dialog"]{
    max-height:calc(var(--tity-visual-vh, 100dvh) - 18px - env(safe-area-inset-bottom, 0px))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior-y:contain!important;
  }

  /* Hediye ve çanta panelleri tam ekran hissi vermeden sahne içinde kalsın. */
  .room-panel[data-room-panel="gift"],
  .gift-panel,
  .live-gift-panel,
  .party-gift-panel,
  .live-canta-panel,
  .party-canta-panel{
    max-height:calc(var(--tity-visual-vh, 100dvh) - 72px - env(safe-area-inset-bottom, 0px))!important;
    overflow:hidden!important;
  }
  .room-gift-body,
  .room-gift-grid,
  .gift-grid,
  .gift-list,
  .gift-items,
  .live-canta-panel .body,
  .party-canta-panel .body,
  .live-canta-list,
  .party-canta-list{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
  }
}

/* v1094 - derin scroll/panel düzeltmesi: standalone sayfa + yayıncı başvuru + hediye paneli */
@media (max-width: 768px), (hover: none), (pointer: coarse){
  html, body{
    width:100%!important;
    min-height:var(--tity-visual-vh, 100dvh)!important;
    height:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior-y:contain!important;
  }

  body > main,
  body > .ypub-app,
  body > .aj-wrap,
  body > .tb-shell,
  body > .tl-avm-page,
  body > .tl-chat-app,
  body > .tity-feature-page,
  .ypub-apply-app,
  .ypub-app{
    min-height:var(--tity-visual-vh, 100dvh)!important;
    max-height:var(--tity-visual-vh, 100dvh)!important;
    overflow:hidden!important;
  }

  .ypub-content,
  .apply-content,
  .ypub-apply-app .ypub-content,
  .aj-wrap,
  .tb-shell,
  .tl-avm-page,
  .tl-chat-body,
  .tity-feature-scroll,
  .tity-feature-page main,
  .tity-settings-shell,
  .tl-settings-main,
  .tl-profile-detail-main{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior-y:contain!important;
    padding-bottom:calc(var(--tity-scroll-bottom-v1093, 92px) + env(safe-area-inset-bottom, 0px))!important;
  }

  .apply-card,
  .apply-form,
  .apply-form-pro,
  .apply-block{
    max-width:100%!important;
  }

  .room-panel[data-room-panel="gift"],
  .room-gift-sheet{
    position:absolute!important;
    top:auto!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:min(58dvh, 520px)!important;
    max-height:calc(var(--tity-visual-vh, 100dvh) - 132px - env(safe-area-inset-bottom, 0px))!important;
    min-height:340px!important;
    border-radius:24px 24px 0 0!important;
    overflow:hidden!important;
  }

  @media (max-height: 700px){
    .room-panel[data-room-panel="gift"],
    .room-gift-sheet{
      height:min(54dvh, 470px)!important;
      min-height:310px!important;
    }
  }

  .room-panel[data-room-panel="gift"] .room-gift-grid,
  .room-gift-sheet .room-gift-grid{
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}


/* v1096 - Ben sayfası alt beyaz alan / modül kesilme düzeltmesi
   Eski yapı sadece grid'i scroll ettiriyordu; bazı cihazlarda kartlar beyaz boşluk altında kalıyordu.
   Çözüm: Ben sayfasında bütün içerik gövdesi scroll host olur, grid kendi yüksekliğini doğal alır. */
@media (max-width: 768px), (hover: none), (pointer: coarse){
  body.tl-ben-page-v494.tl-ben-scroll-v1096,
  body.tl-ben-page-v494.tl-ben-ref-v629,
  body.tl-ben-page-v494.tl-ben-ref-v630{
    overflow:hidden!important;
    background:#fff!important;
  }
  body.tl-ben-page-v494 .tl-app-shell-v494{
    height:var(--tity-visual-vh, 100dvh)!important;
    max-height:var(--tity-visual-vh, 100dvh)!important;
    min-height:0!important;
    overflow:hidden!important;
    padding-bottom:0!important;
    background:#fff!important;
  }
  body.tl-ben-page-v494 .tl-ben-content-v505,
  body.tl-ben-page-v494 .tl-ben-scroll-v538{
    display:block!important;
    height:calc(var(--tity-visual-vh, 100dvh) - 76px - env(safe-area-inset-bottom, 0px))!important;
    max-height:calc(var(--tity-visual-vh, 100dvh) - 76px - env(safe-area-inset-bottom, 0px))!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior-y:contain!important;
    padding-bottom:calc(118px + env(safe-area-inset-bottom, 0px))!important;
    background:#fff!important;
  }
  body.tl-ben-page-v494 .tl-ben-grid-v494{
    display:grid!important;
    overflow:visible!important;
    min-height:auto!important;
    height:auto!important;
    max-height:none!important;
    padding-bottom:calc(130px + env(safe-area-inset-bottom, 0px))!important;
    background:#fff!important;
  }
  body.tl-ben-page-v494 .tl-ben-head-v494{
    flex:none!important;
  }
}


/* TityLive v1097 - Ben sayfası: üst profil/aksiyon alanı sabit, sadece alt modüller kayar.
   Amaç: iOS/Android tüm cihazlarda sayfanın tamamının kaymasını engellemek; Coin yükleme/Yayıncı merkezi ve üst profil alanı sabit kalır.
   PC/tablet geniş ekranda alttaki gereksiz beyaz boşluk azaltılır. */
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097,
body.tl-ben-page-v494.tl-ben-ref-v630,
body.tl-ben-page-v494.tl-ben-ref-v629{
  overflow:hidden!important;
  background:#fff!important;
}
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-app-shell-v494,
body.tl-ben-page-v494.tl-ben-ref-v630 .tl-app-shell-v494,
body.tl-ben-page-v494.tl-ben-ref-v629 .tl-app-shell-v494{
  height:var(--tity-visual-vh,100dvh)!important;
  max-height:var(--tity-visual-vh,100dvh)!important;
  min-height:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  background:#fff!important;
  padding-bottom:0!important;
}
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-content-v505,
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-scroll-v538,
body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-content-v505,
body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-scroll-v538,
body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-content-v505,
body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-scroll-v538{
  flex:1 1 auto!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
  background:#fff!important;
  touch-action:auto!important;
}
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-head-v494,
body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-head-v494,
body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-head-v494{
  flex:0 0 auto!important;
  position:relative!important;
  z-index:2!important;
  overflow:visible!important;
  background:#fff!important;
}
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-grid-v494,
body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-grid-v494,
body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-grid-v494{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:contain!important;
  scrollbar-width:none!important;
  background:#fff!important;
  padding:8px 10px calc(96px + env(safe-area-inset-bottom,0px))!important;
  scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))!important;
}
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-grid-v494::-webkit-scrollbar,
body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-grid-v494::-webkit-scrollbar,
body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-grid-v494::-webkit-scrollbar{display:none!important;}
body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tity-bottom,
body.tl-ben-page-v494.tl-ben-ref-v630 .tity-bottom,
body.tl-ben-page-v494.tl-ben-ref-v629 .tity-bottom{
  flex:0 0 auto!important;
  position:relative!important;
  z-index:5!important;
}
@media (min-width: 769px) and (hover: hover){
  body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-grid-v494,
  body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-grid-v494,
  body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-grid-v494{
    padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;
  }
}
@media (max-height: 740px){
  body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-ref-v626 .tl-ben-head-v494,
  body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-head-v494,
  body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-head-v494{
    padding-top:calc(8px + env(safe-area-inset-top,0px))!important;
    padding-bottom:8px!important;
  }
  body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-avatar-v494,
  body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-avatar-v494,
  body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-avatar-v494{
    width:78px!important;
    height:78px!important;
    margin-top:4px!important;
  }
  body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-avatar-v494 img,
  body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-avatar-v494 img,
  body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-avatar-v494 img{
    width:72px!important;
    height:72px!important;
  }
  body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-stats-v494,
  body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-stats-v494,
  body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-stats-v494{
    margin:12px 0 10px!important;
  }
  body.tl-ben-page-v494.tl-ben-sticky-modules-v1097 .tl-ben-action-v494,
  body.tl-ben-page-v494.tl-ben-ref-v630 .tl-ben-action-v494,
  body.tl-ben-page-v494.tl-ben-ref-v629 .tl-ben-action-v494{
    min-height:48px!important;
  }
}
