/* 🔴 DAMGA TAZELIGI GARANTI DEGIL -- olculdu 2026-09-14, CANLIDA.
 *
 * `birlestir.py` bu dosyayi `?s=<hash>` ile damgaliyor, yani icerik
 * degisince adres de degisiyor. Ama statik sunucu SORGU DIZESINI YOK
 * SAYIYOR: eski konteynere gelen `?s=<YENI hash>` istegi ESKI baytlari
 * doner. Deploy penceresinde iki konteyner birden servis ettigi icin
 * (bkz. CLAUDE.md 7.3) HTML yeni konteynerden, CSS eski konteynerden
 * gelebiliyor -- ve Cloudflare o cevabi YENI adresin altina yaziyor.
 *
 * Olculdu: `mobil.css?s=359a20b5` -> CF HIT, 20.474 bayt, yeni kural YOK;
 * ayni dosya `?rastgele=...` ile -> MISS, 22.328 bayt, kural VAR.
 * `cache-control: max-age=31536000` oldugu icin zehirlenen girdi BIR YIL
 * yasardi; purge denendi, token'da yetki yok. Cozum damgayi tazelemek.
 *
 * ⚠️ DERS: deploy sonrasi dogrulamayi damgali adresten YAPMA. Once
 * `?rastgele=` ile ORIJINI olc, konteynerin tek ve yeni oldugunu gor,
 * damgali adrese ANCAK ondan sonra dokun -- erken bir istek onbellegi
 * kendi elinle zehirliyor (bu tur tam olarak boyle oldu).
 */

/* 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; }

  /* 4. OTURUM KARTI -- KISA EKRANDA COKUYORDU (olculdu 2026-09-14).
   *
   * Arizanin adi "iPhone'da giris ekrani bozuluyor"du; kok neden ekran
   * GENISLIGI degil YUKSEKLIGI. Kaynak panel oturum sayfasini viewport
   * yuksekligine kilitliyor:
   *
   *   .authorisationGrandWrapper-bc { position:absolute; height:100% }
   *   .authorisationFormCol-bc      -> o kabin FLEX OGESI
   *
   * Flex ogesinin varsayilan `flex-shrink: 1`i, kap kisaldiginda karti
   * EZIYOR. Ve kap `position:absolute; height:100%` oldugu icin tasma
   * belgeyi BUYUTMUYOR -> sayfa kaydirilamiyor. Ikisi birlesince icerik
   * kirpilip ERISILEMEZ oluyor; bu dosyanin basindaki 2026-08-28 olcumuyle
   * ayni sinif, bu kez dikey eksende.
   *
   * Canlida olculdu (affiliates.betgo.digital/login.html):
   *   844x390 (iPhone 14 YATAY)      kart  2 px, scrollH == clientH
   *   390x420 (dikey + KLAVYE ACIK)  kart 420 px'e kirpik, kaydirma YOK
   *                                  -> "Giris Yap" dugmesi ekranda YOK
   * Duzeltmeden sonra ayni olculer: 584 px / 561 px, belge kaydirilabilir.
   *
   * 🔴 Esik 992: iPhone 14 yatayken 844 px GENIS, yani 768'lik blok bu
   * vakayi hic gormezdi. Yukseklige degil genislige bakan bir esik bu
   * arizayi ancak tesadufen yakalar.
   *
   * ⚠️ YENI DUZEN UYDURULMUYOR: kart kendi olcusunde kaliyor (`height:auto`),
   * yalnizca EZILMESI ve kaydirmanin kesilmesi durduruluyor. Masaustu
   * `@media` disinda kaldigi icin dokunulmamis durumda (1440x900'de
   * olculdu: kart hala `position:absolute`, 860 px, `overflow:auto`).
   */
  /* 🔴 KAPSAM DARALTILDI 2026-09-14, kullanici bildirimi uzerine: panelin
   * GIRIS SONRASI sayfalari iPhone'da BEYAZ geliyor (masaustunde degil).
   *
   * Ilk surumde secici duz `#root`tu, yani 33 sayfanin HEPSINI
   * etkiliyordu -- oysa duzeltmenin derdi yalniz oturum kartiydi.
   * Panel kabugunda `#root`un kutusu `height: 100%`ten `min-height: 100%`e
   * doner ve govde `flex: 1 1 0%` tasiyor: kap yuksekligi BELIRSIZ
   * sayilirsa o oge sifira iner, yani tam olarak bos beyaz govde.
   *
   * ⚠️ BU BIR KANIT DEGIL, ONLEM: Chrome'da olctum, panel kabugu iki
   * surumde de ayni cikiyor (`#root` 650, govde 501, altlik en altta).
   * Safari'yi buradan olcemiyorum. Ama duzeltmenin oturum karti disinda
   * bir yere dokunmasi icin hicbir sebep yok; kapsami daraltmak
   * supheyi bedelsiz kaldiriyor.
   *
   * ⚠️ `:has()` desteklenmezse (iOS 15.4 oncesi) kural HIC uygulanmaz:
   * giris karti eski davranisina doner, panel sayfalari ise zaten
   * dokunulmamis olur. Basarisizlik yonu bilerek bu: bir seyi
   * duzeltmemek, calisan bir seyi bozmaktan iyidir.
   */
  #root:has(.authorisationGrandWrapper-bc),
  .authorisationGrandWrapper-bc {
    position: relative;
    height: auto;
    min-height: 100%;
  }
  .authorisationFormCol-bc {
    /* Kabin kisalmasi karti EZMESIN. */
    flex: 0 0 auto;
    height: auto;
    /* 2 px'lik kutuda ic kaydirma yerine SAYFA kaysin. */
    overflow: visible;
  }

  /* 4b. GIRIS ALANLARI 14 px -- iOS odaklaninca SAYFAYI YAKINLASTIRIYOR.
   *
   * WebKit, yazi boyutu 16 px'in ALTINDA olan bir alana dokununca sayfayi
   * otomatik buyutuyor; `maximum-scale=1` iOS 10'dan beri yok sayiliyor,
   * yani viewport etiketiyle kapatilamiyor. Yakinlasma geri alinmadigi
   * icin kullanici adini yazdiktan sonra kart ekrandan tasmis halde
   * kaliyor -- 4. bolumdeki ezilmenin ardindan ayni ekranda kalan
   * IKINCI sikayet kaynagi.
   *
   * Olculdu canlida 390x844 (kural enjekte edilip geri alinarak):
   *   iki alan da 14px -> 16px; kart 561 px, alan kutulari 42 px,
   *   yer tutucu kirpilmiyor, yatay tasma yok, dugme 460'ta -- yani
   *   DUZEN HIC DEGISMIYOR, yalniz yazi boyutu esigin ustune cikiyor.
   *
   * 🔴 Hedef `input` DEGIL `.input-element`, ve sebebi olculdu: kazanan
   * bildirim `[data-gene-ui-version="2.16.5"] .input-element` (0,2,0)
   * icindeki `font: 600 1.4rem var(--font-family)` KISALTMASI.
   * `input`i hedefleyen bir kural (0,1,1) ona kaybediyor; `panel.css`in
   * `input { font: inherit }` satiri da ayni sebeple kazanmiyor, bu
   * yuzden alan ebeveyninden kalitim da ALMIYOR (ebeveyni 16px yapip
   * olctum: alan 14 px'te kaldi).
   *
   * ⚠️ `!important` YOK ve gerekmiyor: ozgulluk (0,2,0) ile ESIT ve bu
   * dosya `panel.css`ten SONRA yukleniyor, yani kaskadi sira cozuyor.
   * Canlida once `!important`siz denendi ve tuttu; bu dosyadaki
   * `!important`lerin hepsinin yazili bir sebebi var, bunun yok.
   *
   * ⚠️ Kapsam bilerek OTURUM KARTI: panelin ic sayfalarindaki alanlar da
   * 14 px ve ayni yakinlasmayi yasiyor, ama sikayet giris ekranindaydi
   * ve her alani buyutmek olculmemis bir duzen degisikligi olurdu.
   */
  .authorisationFormCol-bc .input-element { font-size: 16px; }

  /* 4c. TANITIM SAYFASI KAHRAMANI -- 4. bolumdeki arizanin AYNISI, baska
   * bir blokta (olculdu 2026-09-14, kullanicinin iPhone ekran goruntusu
   * uzerine).
   *
   * Kullanicinin bildirdigi sey: anasayfada basligin satirlari
   * 'KAYIT OL' / 'TANITIN' adimlarinin USTUNE biniyordu. Sebep yine
   * yukseklige kilitlenmis kap:
   *
   *   .heroBlock-bc          -> yuksekligi viewport'a esit
   *   .heroBlock-bc .wrapper-bc -> `display:flex` (sutun), o yukseklige sikisik
   *   .heroBody-bc / .heroFooter-bc -> o kabin FLEX OGELERI
   *
   * Varsayilan `flex-shrink: 1` kisa ekranda basligi tasiyan kutuyu
   * EZIYOR: kutu 247 px'e iniyor ama ICERIK 425 px ve tasan kisim
   * altindaki adimlarin uzerine dusuyor. Kirpilmiyor, UST USTE BINIYOR.
   *
   * 🔴 390x844'te GORUNMUYOR, o yuzden ilk turda kacirdim. iPhone'da
   * Safari'nin arac cubuklari ~190 px yiyor, yani gercek gorunur
   * yukseklik ~650. Olculdu canlida, cakismanin buyuklugu:
   *   390x844  ->  -25 px (bosluk var, SORUN YOK)
   *   390x650  -> +153 px UST USTE
   * Yani kusur genislige degil YUKSEKLIGE bagli; genislikle olcen bir
   * tarama bunu ancak tesadufen yakalar (4. bolumun ayni dersi).
   *
   * Duzeltmeden sonra ayni olculer: 844 / 650 / 500 -> ucunde de -25 px.
   *
   * ⚠️ `min-height: 100%` tasarimi KORUYOR: uzun ekranda kahraman yine
   * tam ekran (844 -> 844); yalniz kisa ekranda icerigi kadar buyuyup
   * (736) sayfayi kaydirilabilir birakiyor. Yalniz `height: auto`
   * yazsaydim 844'te de 736'ya duser, yani calisan bir tasarimi
   * olcmeden degistirmis olurdum.
   */
  .heroBlock-bc {
    height: auto;
    min-height: 100%;
  }
  .heroBlock-bc > .wrapper-bc { height: auto; }
  .heroBlock-bc .heroBody-bc,
  .heroBlock-bc .heroFooter-bc {
    /* Kabin kisalmasi metni EZMESIN -- 4. bolumdeki kartla ayni gerekce. */
    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. ALT SERIT GOVDEYI EZIYOR -- YALNIZ WEBKIT'TE (iPhone/Safari).
   *
   * Kullanicinin bildirdigi CANLI ariza (2026-09-14): giristen sonra
   * dashboard dahil BUTUN panel sayfalari iPhone'da bembeyaz aciliyor;
   * yalniz ust serit ve alt menu goruluyor. 33 sayfanin 29'u etkileniyor
   * (disarida kalan dort sayfa index/login/register/forgotPassword --
   * onlarda bu yapi zaten yok, kullanicinin tarifiyle birebir ayni).
   *
   * "Beyaz alan" BOS DEGIL: alt serit 597 px'e sisip govdeyi 0'a eziyor.
   * Kaynak panelin kendi zinciri (hicbiri bizim yazdigimiz degil):
   *   .mobileParent            -> display:flex; height:100%   (664 px, KESIN)
   *   .mobileFooter            -> min-height:5rem, height YOK (auto)
   *   .mobileFooterSections-bc -> height:100%                 <-- DONGU
   * Yani yuzde, yuksekligi `auto` olan bir ebeveyne yazilmis. Sartname
   * boyle bir yuzdeyi `auto`ya dusurur; Blink oyle yapiyor. WebKit ise
   * footer'i KESIN yukseklikli bir flex kabinin ogesi sayip yuzdeyi kalan
   * bosluga cozuyor -> 597 px, geriye govdeye 0 kaliyor.
   *
   * Olculdu 2026-09-14, CANLI sayfada, gercek WebKit ile (Playwright
   * webkit-2287, 390x664, iPhone UA) -- Chromium AYNI sayfada yan yana:
   *            #holderAppend   .mobileFooter
   *   WebKit :      0 px          597 px      <- ekranin ortasi: alt menu
   *   Chromium:   547 px           50 px
   *   WebKit + bu kural: 547 px / 50 px  (Chromium'un olcusuyle AYNI)
   *
   * 🔴 Kusur MOTORA bagli, olcuye degil: ayni genislik ve yukseklikte
   * Chromium'da hic gorunmuyor. O yuzden Chrome'da (ve DevTools cihaz
   * kipinde) ne kadar bakilirsa bakilsin bulunamaz -- bu is uc tur boyunca
   * tam da oyle kayboldu.
   *
   * `height: auto` dongüyu kirar; `min-height` YUZDE DEGIL UZUNLUK oldugu
   * icin yenisini kuramaz ve seridin bugunku 5rem'lik olcusunu aynen
   * korur (yalniz `auto` yazmak seridi 46 px'e dusurup 4 px olu bosluk
   * birakiyordu -- olculdu). Buyume de kapanmiyor: icerik 5rem'i asarsa
   * ikisi birden buyur.
   */
  .mobileFooter > .mobileFooterSections-bc {
    height: auto;
    min-height: 5rem;
  }

  /* 1c. 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; }
}
