/* new-aff -- duyarli (responsive) katman.
 *
 * NEDEN AYRI DOSYA: butun kurallar `@media` icinde ve bu dosya `panel.css`ten
 * SONRA yukleniyor. Masaustu duzeni YAPISAL OLARAK dokunulmadan kaliyor --
 * "bozmadim" iddiasi olcume degil, dosyanin bicimine dayaniyor. 674 KB'lik
 * `panel.css`e satir eklemek bunu garanti edemezdi.
 *
 * OLCULEN ARIZA (2026-08-28, 375x812, 23 sayfa):
 *   19 panel sayfasinin HEPSINDE ust seritten 28 oge disarida
 *   sayfa yana KAYMIYOR (`scrollWidth == clientWidth`) -- yani icerik
 *   kaydirilamiyor, KIRPILIP ERISILEMEZ oluyor. Kaymaktan kotusu.
 *
 * Tasmanin kokleri (sinif bazinda sayildi, 9 sayfa):
 *   li (ust seridin ikinci hucresi)   64   <- 810px, `flex: 0 0 auto`
 *   style_navItem__ / style_link__    84   <- menu seridi tek satir
 *   walletWrapper-bc / wallerGroup    24   <- bakiye/komisyon seridi
 *   headerNavIcon-bc / badge          32   <- serit ikonlari
 *   highcharts-container             111   <- ZATEN `overflow-x:auto` bir
 *                                             kapta; dokunulmadi
 *
 * Kirilma noktalari kaynak panelin kendi degerleri (mobile.txt'te olculdu:
 * 480 / 768 / 992). Uydurmak yerine platformun kullandigini kullaniyoruz.
 */

/* ------------------------------------------------------------ <= 992px */
@media (max-width: 992px) {
  /* Menu seridi: tek satirda kalsin ama KAYDIRILABILIR olsun.
   * Sarmak (`flex-wrap`) daha kolaydi; secilmedi cunku menu 7 grup + ikinci
   * seviye tasiyor ve sarinca ekranin yarisini yiyordu. Yatay kaydirma bu
   * kaliba (sekme seridi) ait standart cozum. */
  #navbar > div[class*="style_nav__"] {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    flex-wrap: nowrap;
  }
  #navbar > div[class*="style_nav__"]::-webkit-scrollbar { display: none; }
  /* Kaydirilabilir kapta ogeler BUZULMEMELI, yoksa metin kirpilir. */
  #navbar div[class*="style_navItem__"],
  #navbar div[class*="style_subMenuItem__"] { flex: 0 0 auto; }

  /* 🔴 UST SERITLER TASIYOR VE BELGE KAYMIYOR -- yani kirpilan sey
   * ERISILEMEZ oluyor. Bu dosyanin basligindaki olcumun aynisi, bir bant
   * yukarisi; ve tam olarak "kaymaktan kotusu" sinifi.
   *
   * Olculdu 2026-08-30 gercek tarayicida, 769 px:
   *   panel   -- serit 912 px istiyor, ekran 769: ortagin KULLANICI ADI ve
   *              acilir OK'u 148 px disarida, avatarin yarisi ekranda
   *   tanitim -- `headerAction-bc` 635->933: "Kayit ol" yaridan kesik,
   *              DIL SECICI (839->894) tamamen ekran disinda
   *
   * 🔴 BANDIN VARLIK SEBEBI: kirilma noktasi 768 (mobil kabuk) ve masaustu
   * duzeni ancak ~930 px'ten sonra sigiyor. Arasi hic olculmemisti --
   * bu klasordeki butun olcumler 375 ve 1280'deydi. Kusur yeni degil,
   * GORULMEMISTI.
   *
   * ⚠️ Kaynagin kendi mobil chunk'ini (67) 992'ye tasimak DENENDI ve
   * secilmedi: olculdu, 800 px'te govde telefon duzenine dusuyor
   * (pano kartlari ikiye iniyor, "Totals" blogu bosluga kayiyor). Tek
   * degerlik bir degisiklik cazipti ama bir arizayi digeriyle
   * degistiriyordu.
   *
   * ⚠️ HICBIR SEY ERISILEMEZ OLMUYOR: cuzdan seridi ve menu YATAY
   * KAYIYOR (bu blogun `#navbar` icin zaten kullandigi kalip), kullanici
   * adi ise gizleniyor AMA hesap menusunun ilk satirinda ad ve e-posta
   * yaziyor (`profile-module`) -- mobil kabukta da ad yok, yani bilgi
   * bir dokunus otede duruyor. */

  /* --- panel seridi --- */
  /* `li` `flex: 0 0 auto` dogdugu icin KUCULMUYOR; `min-width: 0` olmadan
   * `overflow` da is gormez (icerigi kadar buyuyen flex ogesi). */
  header[class*="style_header__"] > ul > li { min-width: 0; }
  header[class*="style_header__"] .wallerGroup-bc {
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
  }
  header[class*="style_header__"] .wallerGroup-bc::-webkit-scrollbar { display: none; }
  header[class*="style_header__"] .user-profile-text { display: none; }

  /* --- tanitim sayfasi seridi --- */
  .header-bc .wrapper-bc { min-width: 0; }
  .header-bc .mainNavigation-bc {
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .header-bc .mainNavigation-bc::-webkit-scrollbar { display: none; }
  /* 🔴 `justify-content: center` + `overflow-x: auto` = SOL TARAF
   * ERISILEMEZ. Ic `ul` ortalanmis; icerik kaba sigmayinca tasma IKI YANA
   * birden tasiyor ve `scrollLeft` NEGATIF olamadigi icin soldaki oge
   * kaydirilarak getirilemiyor. Olculdu canlida (769 px, deploy 2767):
   * kap 172->453, ilk oge 31->106 -- "Komisyonlar" ekranda YOK ve
   * ulasilamiyor. Bu, kaydiriciya cevirme kararinin KENDI yan etkisiydi:
   * bir erisilemez ogeyi digeriyle degistirmistim. Tasma yalniz SAGA
   * olmali, cunku kaydirma yalnizca oraya gidebiliyor. */
  .header-bc .mainNavigation-bc > ul { justify-content: flex-start; }
  .header-bc .mainNavigation-bc li { flex: 0 0 auto; }
  /* Giris/Kayit + dil bloku BUZULMEMELI: kucultulurse dugme metni kirpilir
   * ve tiklanabilir alan daralir. Yer menuden aciliyor. */
  .header-bc .headerAction-bc { flex: 0 0 auto; }
}

/* ------------------------------------------------------------ <= 768px */
@media (max-width: 768px) {
  /* 1. PANEL KABUGU -- kaynak uygulama BURADA DA isaretlemeyi degistiriyor.
   *
   * Masaustunde `grand-parent > style_header__ + grand-body`; mobilde
   * `mobileParent > mobileHeader + mobileBody + mobileFooter`. Birlestirici
   * ayni ogelere IKINCI bir sinif takiyor (`grand-parent mobileParent`),
   * secimi burasi yapiyor -- govde iki kez basilmiyor.
   *
   * 🔴 BURADAKI ESKI SEKIZ KURAL SILINDI (masaustu seridini mobilde saran
   * `style_header__` / `walletWrapper-bc` / `headerNavIcon-bc` /
   * `.betgo-dil` duzeltmeleri). Serit artik mobilde HIC basilmiyor, yani
   * hepsi olu kurallardi. `headerNavIcon-bc`nin sag boslugunu birakmak
   * ozellikle zararliydi: o sinif ARTIK alt seritte de kullaniliyor ve
   * orada ikonu ortadan kaydiriyordu -- silinen bir kuralin, silinmediginde
   * BASKA bir yeri bozmasi.
   */
  header[class*="style_header__"] { display: none; }

  /* Menu seridi mobilde HIC basilmiyor -- kaynak onu ust seritteki dugmeye
   * bagli bir ALT SAYFA popover'ina ceviriyor (`etkilesim.js >
   * sayfaMenusuAc`). Serit yine de DOM'da kaliyor ve bu bilincli: popover
   * listesini ORADAN okuyor, yani gizlenmis bir gorunum degil VERI KAYNAGI.
   * Silinseydi liste bosalir ve dugme sebebiyle kapali dogardi. */
  #navbar { display: none; }

  /* 1b. CIHAZA AIT DUGUMLER. Kaynak uygulama bu sayfada da isaretlemeyi
   * degistiriyor: masaustunde adres bir FORM ALANI + "Baglantiyi kopyala"
   * dugmesi, mobilde ise `widget-header-container` (tiklama sayaci + kucuk
   * "Kopyala") + duz metin `widget-url` + ayri `link-switcher-bc`.
   *
   * Kopyada o karari veren JS yok; birlestirici IKISINI DE basiyor, secimi
   * kaskad yapiyor -- `index.html`teki `header-bc` / `headerMobile-bc`
   * ayriminin (bolum 7) AYNISI, yeni bir kalip degil.
   *
   * ⚠️ Oznitelik secildi, sinif degil: bir sinif eklemek "bu benim CSS'im
   * mi kaynagin mi" sorusunu bulanik birakirdi. `data-betgo-*` bu klasorde
   * BIZE ait olanin isareti ve `denetim.py` onu boyle sayiyor.
   *
   * 🔴 Gorunumun tamami yine kaynagin: `widget-header-container`,
   * `click-count`, `widget-url`, `link-switcher-bc`, `addLinkMobileButton-bc`
   * dordunun de kurali `67.4fff8ea9` (MOBIL chunk) icinde. Burada yazilan
   * tek sey HANGISININ gorunecegi. */
  /* 🔴 `!important` SART ve sebebi oncekilerden FARKLI (satir ici stil ya da
   * bilinen bir ozgulluk degil): bu bir CIHAZ KAPISI ve kapiyi taktigim
   * dugumun ustunde HANGI bilesen kuralinin duracagini onceden bilemem.
   * Olculdu 2026-08-30, tam da bu yuzden: tiklama sayacinin `<li>`si
   * `[data-gene-ui-version="2.16.5"] .module-header > li` (0,3,0) ile
   * `display:flex` aliyordu; oznitelik secicim (0,1,0) kaybediyordu ve
   * sayac mobilde IKI KEZ basiliyordu -- ust satirda kirpik, kartta dogru.
   * Sectigim her ozgulluk sayisi bir TAHMIN olurdu ve tahmin, bir sonraki
   * dugumde SESSIZCE tutmazdi. Kapi ya kapatir ya kapi degildir. */
  [data-betgo-yalniz-masaustu] { display: none !important; }

  /* 5. Sayfa govdesi: kartlar ve tablolar kenara yapismasin */
  [class*="style_content__"],
  .content-bc { padding-left: 1rem; padding-right: 1rem; }

  /* 6. Genis tablolar ve kartlar KIRPILMAK yerine kaydirilsin.
   * ⚠️ `overflow-x: auto` tek basina yetmiyor: `min-width: auto` olan bir
   * flex/grid ogesi icerigi kadar buyuyup kabi de tasirir. `min-width: 0`
   * kabin gercekten kirpip kaydirmasini saglayan sey. */
  .table-body-bc,
  [class*="tableWrapper"],
  [class*="dataTable"] {
    overflow-x: auto;
    min-width: 0;
  }

  /* 6b. GRAFIK. Dis kap (`chart-overflow-holder`) zaten `overflow-x: auto`
   * ama ICINDEKI isimsiz div `overflow: hidden` tasiyor ve 1597px'lik tuvali
   * O tutuyordu -- yani grafik kaydirilamiyor, KIRPILIYORDU (dashboard'da
   * 111 oge). Ic kabi serbest birakmak disaridaki `auto`yu gercekten
   * calistiriyor. Tuval statik bir SVG anlik goruntusu; yeniden cizdirme
   * secenegi yok, dolayisiyla dogru davranis KAYDIRMAK. */
  /* 🔴 `!important` SART ve bilincli: ic div'de SATIR ICI `style="overflow:
   * hidden"` var (kaynak panelin kendi kaydirma bileseni koyuyor, kaydirmayi
   * JS'li bir "thumb" ile suruyordu). Stil sayfasi kurali satir ici stili
   * yenemez; `!important` bunun icin var olan nadir gercek durum. Kopyamizda
   * JS yok, yani o thumb olu -- native kaydirmayi acmak tek yol.
   *
   * ⚠️ SVG'nin `viewBox`i var (`0 0 1597 400`), yani `width:100%` ile
   * SIGDIRILABILIRDI. Secilmedi: 256px'lik kapta yukseklik 64px'e duser ve
   * grafik okunmaz olur. Kaydirmak, sigdirmaktan iyi. */
  [class*="chart-overflow-holder"] > div { overflow: visible !important; }
  [class*="chart-overflow-holder"] {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
  }

  /* 6c. `account` sifre alanlari: `grid-template-columns: 275px 275px 275px`
   * -- 206px'lik kapta UC sabit sutun. Tek sutuna dusuruluyor. */
  .grid-password { grid-template-columns: 1fr !important; }
  .grid-password-child { width: auto; min-width: 0; }

  /* 6d. `account` sayfa basligi ve cuzdan pencereleri.
   * `accountPageHeaderRow-bc` flex/nowrap, iki sutunu 248px'lik kaba
   * sigmiyordu; `walletWidgetWrapper-bc` ise sabit sutunlu bir grid. */
  .accountPageHeaderRow-bc { flex-wrap: wrap; row-gap: 0.8rem; }
  .accountPageHeaderCol-bc { min-width: 0; max-width: 100%; }
  .walletWidgetWrapper-bc { grid-template-columns: 1fr !important; }
  .accountWalletWidgetsBlock-bc { min-width: 0; max-width: 100%; }

  /* 6e. Pano pencere basliklari. `left-content` flex satirinda SIFIR genislik
   * aliyor, icindeki `ellipsis-text` ise 251-281px metin tasiyor -- kirpilmasi
   * gereken metin kabindan disari tasiyordu. Satiri sardirip basliga tam
   * genislik vermek, uc noktaya indirgemekten okunakli. */
  .left-content { flex: 1 1 100%; min-width: 0; }
  .left-content .ellipsis-text,
  .left-inner .ellipsis-text { max-width: 100%; min-width: 0; }

  /* 6f. Kucuk pencere etiketi: metin `₺` + uzun bosluk ve `white-space:
   * nowrap` bosluga da genislik veriyor (29px kapta 127px). */
  .dashboardSmallWidgetTagWrapper-bc { overflow: hidden; min-width: 0; }
  .dashboardSmallWidgetTag-bc { max-width: 100%; }

  /* 6g. Olu kaydirma "thumb"i. Kaynak panelin JS'li kaydirma bileseninden
   * kalma; kopyamizda JS yok, genisligi 0 ve gorunmuyor ama olcumde tasan
   * oge olarak sayiliyordu. Gurultuyu kesmek icin gizleniyor -- yerine
   * NATIVE kaydirma calisiyor (bkz. 6b). */
  /* ⚠️ `!important` -- oge satir ici `style="display: block"` tasiyor.
   * Bu dosyada IKINCI kez ayni sebep (bkz. 6b, grafik kabi): kaynak panelin
   * JS'li bilesenleri stili DOM'a yaziyor, stil sayfasi onu yenemiyor. */
  .scroll-thumb { display: none !important; }

  /* 6h. Sabit sutunlu gridler -- ayni kalibin son uc ornegi.
   * Hepsi 375px'lik ekranda kabindan genis cocuk uretiyordu. */
  [class*="copySectionWithButton_inputWithCopy__"],
  .accountWalletWidgetsBlock-bc { grid-template-columns: 1fr !important; }
  [class*="copySectionWithButton_inputWithCopyButton__"] { max-width: 100%; }
  .walletTitle,
  .walletBlock { max-width: 100%; min-width: 0; }

  /* 6i. Pano pencere izgarasi. Olculdu: `widget-holder.widget-grid` bir grid
   * ve dar ekranda sutunlari `52.1146px 0px` oluyor -- IKINCI SUTUN SIFIRA
   * cokuyor, pencere basligi orada. Basligin kabindan tasmasinin sebebi
   * `left-content` degil, bu cokme; ilk denememi oraya yazmistim ve
   * tutmamisti (bir ust katmani olcmeden dokunmak).
   * `minmax(0, 1fr)` sart: duz `1fr` de `min-width: auto` yuzunden icerikten
   * kucuk olmayi reddederdi. */
  [class*="widget-holder"][class*="widget-grid"] {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  /* 6j. ...ama ASIL sebep bir ust katmandaydi: pano KPI kartlari mobilde de
   * YAN YANA duruyordu -- `grid-items-group` 336px, icinde 112px'lik uc
   * `grid-child`. O genislikte baslik icin yer kalmiyor ve yukaridaki grid
   * ikinci sutunu sifira dusuruyordu. Kartlari alt alta almak sebebi
   * kokunden kaldiriyor; yukaridaki kural yine de duruyor cunku ikisi ayri
   * daralma yolunu kapatiyor.
   *
   * ⚠️ `flex-wrap`te `!important` SART. Kazanan kural
   * `.dashboardBodyWrapper-bc > .grid-holder:first-child .grid-items-group`
   * ile `nowrap` diyor (ozgulluk 0,3,0); duz sinif secicim (0,1,0)
   * kaybediyordu. Bu dosyada ucuncu kez ayni sinif sorun -- ilk ikisi satir
   * ici stildi, bu ozgulluk.
   *
   * 🔴 Bu blogu ilk yazisimda yorumu YANLIS kapattim -- kapanis isareti
   * ortada kaldi ve sonraki kurallar ayristirici tarafindan yutuldu. Olcum
   * uc tur boyunca "kural uygulanmiyor" dedi, ben de ustune uc farkli
   * tahmin yazdim. Cozen sey tahmin degil, ESLESEN KURALLARI OKUMAK oldu:
   * kuralim listede HIC yoktu -- yani sorun ozgullukte degil, dosyanin
   * kendisindeydi. */
  .grid-items-group { flex-wrap: wrap !important; }
  .grid-child { flex: 1 1 100% !important; min-width: 0; max-width: 100%; }

  /* 7. Tanitim sayfasi ust seridi -- CIHAZA GORE AYRI ISARETLEME.
   *
   * Kaynak uygulama masaustunde `header-bc`, mobilde `headerMobile-bc` +
   * `mobileHiddenMenu-bc` + `fixedAuthorisationRow-bc` basiyor (olculdu:
   * `mobile.txt`te `header-bc` HIC YOK). Kopyada o karari veren JS olmadigi
   * icin birlestirici IKISINI DE basiyor; secimi burasi yapiyor.
   *
   * Onceki surum masaustu seridini mobilde DARALTIYORDU (sarma + yatay
   * kaydirma). Calisiyordu ama kaynak panele benzemiyordu; sekiz kural
   * silindi, yerine bir `display` kaldi. Gorunumun tamami kaynak panelin
   * kendi `67.4fff8ea9` chunk'indan geliyor -- burada yazilan tek sey
   * HANGISININ gorunecegi.
   */
  header.header-bc { display: none; }

  /* Alt sabit serit (`fixedAuthorisationRow-bc`) `position: fixed` --
   * sayfanin son satirlarinin USTUNE biniyor ve altyapi satirini
   * kapatiyordu. Bosluk seridin KENDI olculerinden turuyor, uydurma degil:
   * 4.2rem dugme + 2 x 0.7rem dolgu = 5.6rem, ustune bir satir pay. */
  .poweredByWrapper-bc { padding-bottom: 7rem; }
}

/* --------------------------------------------------- masaustu (> 768px) */
/* 🔴 Tumleyen sorgu, `min-width: 769px` DEGIL -- 768,5 px gibi kesirli
 * genisliklerde ikisi de tutmaz ve mobil serit masaustunde de gorunurdu.
 * Ayni gerekce chunk ayriminda da yazili (`birlestir.py > MASAUSTU_SORGU`).
 * Onay kutusu da listede: onu ekran disina tasiyan kural MOBIL chunk'ta ve
 * masaustunde YUKLENMIYOR -- yani gizlenmezse gercek bir onay kutusu olarak
 * sayfanin tepesinde gorunurdu. */
@media not all and (max-width: 768px) {
  #openHiddenMenu,
  .headerMobile-bc,
  .mobileHiddenMenu-bc,
  .fixedAuthorisationRow-bc,
  /* Panel kabugu: bu ikisinin kurallari YALNIZ mobil chunk'ta, yani
   * masaustunde stilsiz ama GORUNUR kalirlardi -- icerik tasiyan iki blok
   * sayfanin basina ve sonuna dagilirdi. */
  .mobileHeader,
  .mobileFooter,
  /* Sayfa ici mobil karsiliklar (bkz. bolum 1b). Kurallari MOBIL chunk'ta
   * oldugu icin masaustunde stilsiz ama GORUNUR kalirlardi: adres ikinci
   * kez duz metin olarak, tiklama sayaci ikinci kez, "Baglanti ekle"
   * ucuncu kez. */
  [data-betgo-yalniz-mobil] { display: none !important; }
}

/* ------------------------------------------------------------ <= 480px */
@media (max-width: 480px) {
  /* KPI kartlari tek sutun -- iki sutunda rakamlar kirpilip "…" oluyordu */
  .walletWrapper-bc,
  .wallerGroup-bc { width: 100%; }

  /* Oturum kutulari ve kartlar tam genislik */
  .authorisationGrandBody-bc,
  .authorisationFormWrapper-bc { width: 100%; padding-left: 1.6rem; padding-right: 1.6rem; }

  /* Yuzen dil secici (login/register/forgotPassword) kenara yapismasin */
  .betgo-dil-yuzen { top: 1rem; right: 1rem; }
}
