/* ==========================================================================
   İFA SPOR — bileşenler: hero, maç merkezi, liderler, puan durumu, kadro
   ========================================================================== */

/* ------------------------------------------------------------------ header */
.ust{position:sticky;top:0;z-index:80;background:var(--koyu-yesil);
  border-bottom:1px solid var(--cizgi)}
.ust-ic{max-width:var(--sayfa);margin:0 auto;padding:0 24px;
  display:flex;align-items:center;gap:26px;height:70px}
.marka{display:flex;align-items:center;gap:11px;flex-shrink:0}
.marka img{width:42px;height:42px;object-fit:contain}
.marka-ad{font-family:var(--baslik);color:#fff;font-size:19px;font-weight:700;
  line-height:1;letter-spacing:.02em}
.marka-alt{display:block;font-family:var(--govde);font-size:10.5px;font-weight:500;
  letter-spacing:.17em;color:var(--parlak-yesil);margin-top:3px;text-transform:uppercase}

.menu{display:flex;align-items:center;gap:2px;margin-left:auto}
.menu > li{position:relative;list-style:none}
.menu a,.menu button{
  display:flex;align-items:center;gap:5px;background:none;border:0;cursor:pointer;
  font-family:var(--baslik);font-size:15.5px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:rgba(255,255,255,.86);padding:12px 13px;
  transition:var(--gecis);position:relative;
}
.menu a:hover,.menu button:hover,.menu a.aktif{color:#fff}
.menu a.aktif::after{content:"";position:absolute;left:13px;right:13px;bottom:6px;
  height:2px;background:var(--kirmizi)}
.alt-menu{position:absolute;top:100%;left:0;min-width:190px;background:var(--koyu-2);
  border:1px solid var(--cizgi);border-radius:var(--r);padding:6px;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:var(--gecis);
  list-style:none;margin:0;z-index:90}
.menu li:hover > .alt-menu,.menu li:focus-within > .alt-menu{
  opacity:1;visibility:visible;transform:none}
.alt-menu a{padding:9px 12px;font-size:14.5px;border-radius:3px}
.alt-menu a:hover{background:rgba(255,255,255,.07)}

.ara-btn,.hamburger,.ara-mobil{background:none;border:0;color:#fff;cursor:pointer;padding:9px;
  display:flex;align-items:center;justify-content:center;border-radius:var(--r);
  transition:var(--gecis)}
.ara-btn:hover,.hamburger:hover,.ara-mobil:hover{background:rgba(255,255,255,.1)}
/* Geniş ekranda arama menünün içinde (.ara-btn); üst banttaki mobil
   kopyası gizli. Dar ekranda tam tersi olur (bkz. responsive blok). */
.hamburger,.ara-mobil{display:none}

/* -------------------------------------------------------------------- hero */
.hero{position:relative;min-height:clamp(440px,64vh,620px);display:flex;
  align-items:flex-end;background:var(--koyu-yesil);overflow:hidden}
.hero-foto{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;opacity:.5}
.hero::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(3,26,18,.55) 0%,rgba(3,26,18,.80) 55%,var(--koyu-yesil) 100%)}
.hero-ic{position:relative;z-index:2;width:100%;max-width:var(--sayfa);
  margin:0 auto;padding:0 24px 62px}
.hero-ust{font-family:var(--baslik);font-size:15px;font-weight:600;letter-spacing:.24em;
  color:var(--parlak-yesil);margin-bottom:14px;text-transform:uppercase}
.hero h1{font-size:clamp(42px,8vw,88px);color:#fff;white-space:pre-line;
  letter-spacing:-.005em;margin-bottom:18px}
.hero p{color:rgba(255,255,255,.82);font-size:clamp(15px,1.5vw,18px);
  max-width:56ch;margin:0 0 28px}
.hero-btn{display:flex;gap:12px;flex-wrap:wrap}

/* ------------------------------------------------------- maç merkezi (§6) */
.mac-serit{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.mac-kart{background:var(--koyu-2);border:1px solid var(--cizgi);border-radius:var(--r-buyuk);
  padding:20px;display:flex;flex-direction:column;gap:14px;transition:var(--gecis)}
.mac-kart:hover{border-color:var(--parlak-yesil)}
.mac-kart.canli{border-color:var(--kirmizi);
  box-shadow:0 0 0 1px var(--kirmizi),0 10px 34px rgba(215,25,32,.15)}
.mac-ust{display:flex;align-items:center;justify-content:space-between;gap:10px}
.mac-org{font-size:12.5px;color:var(--sonuk);letter-spacing:.05em;text-transform:uppercase;
  font-weight:600}
.mac-takimlar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
.mac-takim{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center}
.mac-takim img{width:44px;height:44px;object-fit:contain}
.mac-logo-bos{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;font-family:var(--baslik);
  font-size:15px;color:var(--sonuk)}
.mac-takim span{font-family:var(--baslik);font-size:15px;font-weight:600;color:#fff;
  letter-spacing:.03em;line-height:1.15}
.mac-skor{font-family:var(--baslik);font-size:38px;font-weight:700;color:#fff;
  letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.mac-skor.yeni{animation:skor-vurgu 1s ease}       /* §68 */
@keyframes skor-vurgu{
  0%{color:var(--parlak-yesil);transform:scale(1.16)}
  100%{color:#fff;transform:none}}
.mac-vs{font-family:var(--baslik);font-size:17px;color:var(--sonuk);letter-spacing:.1em}
.mac-alt{display:flex;align-items:center;justify-content:center;gap:16px;
  padding-top:12px;border-top:1px solid var(--cizgi);font-size:13.5px;color:var(--sonuk)}
.mac-alt b{color:#fff;font-weight:600}
.mac-kod{text-align:center;padding-top:8px;font-size:13px;color:var(--sonuk);letter-spacing:.03em}
.mac-kod b{color:#fff;font-weight:700}

/* ------------------------------------------------- haftanın maçları (§9) */
.hafta-satir{display:grid;grid-template-columns:118px 62px 1fr auto;align-items:center;
  gap:16px;padding:15px 4px;border-bottom:1px solid var(--cizgi-acik);transition:var(--gecis)}
.hafta-satir:hover{background:#fff;padding-left:12px;padding-right:12px}
.hafta-kod{grid-column:3/-1;margin-top:-12px;font-size:12.5px;color:var(--sonuk-koyu);letter-spacing:.02em}
.hafta-kod b{font-weight:700;color:var(--metin,#111)}
.hafta-tarih{font-family:var(--baslik);font-size:14.5px;font-weight:600;
  color:var(--sonuk-koyu);letter-spacing:.05em}
.hafta-eslesme{font-family:var(--baslik);font-size:17px;font-weight:600;letter-spacing:.02em;
  display:flex;align-items:center;gap:10px}
.hafta-eslesme .biz{color:var(--kulup-yesil)}
/* Rakip logosu: grid yapısını DEĞİŞTİRMEMEK için .hafta-eslesme içinde flex
   öğesi olarak durur — ayrı grid kolonu eklemek mobil yerleşimi bozuyordu.
   Logolar ŞEFFAF PNG (256×256, içerik ortalanmış) olduğu için beyaz kutu
   KONMAZ: kutu logonun kendi zeminini taklit edip şeffaflığı gizliyordu. */
.hafta-logo{width:30px;height:30px;object-fit:contain;flex:none;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.18))}

/* ------------------------------------------------ puan durumu sekmeleri (§12) */
/* 5 sekme TEK SAYI: flex-wrap ile sonuncusu alt satırda ortada asılı
   kalıyordu — grid eşit böler. */
.puan-sekmeler{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));
  gap:8px;margin-bottom:16px}
.puan-sekmeler button{font-family:var(--baslik);font-size:15px;font-weight:600;
  letter-spacing:.04em;padding:10px 6px;border:1px solid var(--cizgi-acik);
  border-radius:8px;background:#fff;color:var(--sonuk-koyu);cursor:pointer;
  transition:var(--gecis)}
.puan-sekmeler button:hover{border-color:var(--kulup-yesil);color:var(--kulup-yesil)}
.puan-sekmeler button[aria-selected="true"]{background:var(--kulup-yesil);
  border-color:var(--kulup-yesil);color:#fff}
.puan-kutu{padding:6px 16px}

/* ------------------------------------------------ istatistik liderleri (§10) */
.lider-filtre{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.lider-filtre button{
  font-family:var(--baslik);font-size:14.5px;font-weight:600;letter-spacing:.09em;
  text-transform:uppercase;padding:10px 18px;border-radius:var(--r);cursor:pointer;
  background:transparent;color:rgba(255,255,255,.62);border:1px solid var(--cizgi);
  transition:var(--gecis);min-height:42px}
.lider-filtre button:hover{color:#fff;border-color:rgba(255,255,255,.3)}
.lider-filtre button[aria-selected="true"]{
  background:var(--kirmizi);border-color:var(--kirmizi);color:#fff}
.lider-kutu{background:var(--koyu-2);border:1px solid var(--cizgi);
  border-radius:var(--r-buyuk);padding:18px}
.lider-kutu h3{font-size:21px;color:#fff;margin-bottom:14px;
  padding-bottom:11px;border-bottom:1px solid var(--cizgi);letter-spacing:.04em}
.lider-satir{display:grid;grid-template-columns:26px 1fr auto;align-items:center;
  gap:11px;padding:9px 0}
.lider-satir + .lider-satir{border-top:1px solid rgba(255,255,255,.05)}
.lider-sira{font-family:var(--baslik);font-size:14px;font-weight:700;color:var(--sonuk);
  font-variant-numeric:tabular-nums}
.lider-ad{font-size:14.5px;color:#fff;font-weight:500;line-height:1.25;
  overflow-wrap:anywhere;word-break:break-word;min-width:0}
.lider-deger{font-family:var(--baslik);font-size:16px;font-weight:700;
  color:var(--parlak-yesil);white-space:nowrap;letter-spacing:.04em}
.lider-bos{color:var(--sonuk);font-size:13.5px;padding:14px 0;text-align:center}

/* --------------------------------------------------------- puan durumu (§12) */
.puan-tablo{width:100%;border-collapse:collapse;font-size:14.5px}
.puan-tablo th{font-family:var(--baslik);font-size:13px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--sonuk-koyu);text-align:center;padding:11px 6px;
  border-bottom:2px solid var(--cizgi-acik)}
.puan-tablo th:nth-child(2){text-align:left}
.puan-tablo td{padding:12px 6px;text-align:center;border-bottom:1px solid var(--cizgi-acik);
  font-variant-numeric:tabular-nums}
.puan-tablo td:nth-child(2){text-align:left;font-weight:500}
.puan-tablo tr.biz{background:rgba(0,102,51,.07)}
.puan-tablo tr.biz td{font-weight:700;color:var(--kulup-yesil)}
.puan-tablo td.p{font-weight:700}

/* --------------------------------------------------------- takım kartı (§8) */
.takim-kart{position:relative;aspect-ratio:3/4;border-radius:var(--r-buyuk);
  overflow:hidden;background:var(--koyu-2);display:flex;align-items:flex-end;
  border:1px solid var(--cizgi);transition:var(--gecis)}
.takim-kart img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:.62;transition:var(--gecis)}
.takim-kart:hover img{opacity:.78;transform:scale(1.02)}
.takim-kart::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 34%,rgba(3,26,18,.92) 100%)}
.takim-ic{position:relative;z-index:2;padding:18px;width:100%}
.takim-ad{font-family:var(--baslik);font-size:34px;font-weight:700;color:#fff;
  line-height:1;letter-spacing:.02em}
.takim-alt{font-size:12.5px;color:var(--sonuk);margin-top:5px;letter-spacing:.05em}

/* -------------------------------------------------------- oyuncu kartı (§18) */
.oyuncu-kart{background:var(--koyu-2);border:1px solid var(--cizgi);
  border-radius:var(--r-buyuk);overflow:hidden;transition:var(--gecis)}
.oyuncu-foto{position:relative;aspect-ratio:3/4;background:
  linear-gradient(150deg,var(--koyu-3),var(--koyu-yesil));overflow:hidden}
.oyuncu-foto img{width:100%;height:100%;object-fit:cover}
.oyuncu-bosluk{width:100%;height:100%;display:flex;align-items:center;
  justify-content:center;font-family:var(--baslik);font-size:40px;color:rgba(255,255,255,.18)}
/* Fotoğrafın üst bandına hafif karartma: forma numarası parlak zeminli
   fotoğraflarda da okunur kalsın (sayı .oyuncu-no ile perdenin ÜSTÜNDE). */
.oyuncu-foto::after{content:"";position:absolute;left:0;right:0;top:0;height:36%;
  background:linear-gradient(rgba(0,0,0,.42),rgba(0,0,0,0));pointer-events:none;z-index:1}
.oyuncu-no{position:absolute;top:10px;right:12px;z-index:2;font-family:var(--baslik);
  font-size:30px;font-weight:700;color:#fff;opacity:.95;line-height:1;
  text-shadow:0 2px 12px rgba(0,0,0,.55)}
.oyuncu-alt{padding:13px 14px}
/* CEZALI rozeti: forma no sağ üstte, ceza etiketi SOL üstte — çakışmaz */
.oyuncu-ceza{position:absolute;top:10px;left:10px;z-index:2;
  background:var(--kirmizi);color:#fff;font-size:10.5px;font-weight:700;
  letter-spacing:.08em;padding:3px 7px;border-radius:3px;
  box-shadow:0 2px 8px rgba(0,0,0,.35)}
.oyuncu-ad{font-family:var(--baslik);font-size:18px;font-weight:600;color:#fff;
  line-height:1.12;letter-spacing:.02em}
.oyuncu-mevki{font-size:12.5px;color:var(--parlak-yesil);letter-spacing:.09em;
  text-transform:uppercase;margin-top:5px;font-weight:600}

/* ---------------------------------------------------------- haber kartı (§7) */
.haber-kart{display:flex;flex-direction:column;height:100%}
.haber-foto{aspect-ratio:16/10;overflow:hidden;background:#DDE2DC}
.haber-foto img{width:100%;height:100%;object-fit:cover;transition:var(--gecis)}
.haber-kart:hover .haber-foto img{transform:scale(1.03)}
.haber-ic{padding:16px 17px 20px;display:flex;flex-direction:column;gap:9px;flex:1}
.haber-ust{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--sonuk-koyu)}
.haber-kart h3{font-size:21px;line-height:1.13;letter-spacing:.01em}
.haber-ozet{font-size:14.5px;color:#4A5A51;line-height:1.55;margin:0}
.haber-buyuk{grid-column:span 2}
.haber-buyuk .haber-foto{aspect-ratio:16/9}
.haber-buyuk h3{font-size:30px}

/* --------------------------------------------------------------- intro (§65) */
.intro{position:fixed;inset:0;z-index:999;background:var(--koyu-yesil);
  display:flex;align-items:center;justify-content:center;
  animation:intro-kapan .45s ease 1.05s forwards}
.intro img,.intro svg{width:110px;height:110px;object-fit:contain;
  animation:intro-logo .75s cubic-bezier(.2,.8,.3,1) both}
.intro::before{content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 38%,rgba(0,168,90,.16) 50%,transparent 62%);
  animation:intro-isik 1.5s ease-in-out}
@keyframes intro-logo{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}
@keyframes intro-isik{from{transform:translateX(-45%)}to{transform:translateX(45%)}}
@keyframes intro-kapan{to{opacity:0;visibility:hidden}}
@media (prefers-reduced-motion:reduce){.intro{display:none}}

/* -------------------------------------------------------------- footer (§73) */
.alt{background:var(--koyu-yesil);color:var(--sonuk);padding:52px 0 26px;
  border-top:1px solid var(--cizgi)}
.alt-izgara{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:36px;margin-bottom:34px}
.alt h4{font-size:15px;color:#fff;letter-spacing:.11em;margin-bottom:14px}
.alt a{display:block;padding:5px 0;font-size:14.5px;transition:var(--gecis)}
.alt a:hover{color:#fff}
.alt-sosyal{display:flex;gap:10px;margin-top:16px}
.alt-sosyal a{width:38px;height:38px;border:1px solid var(--cizgi);border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;padding:0}
.alt-sosyal a:hover{border-color:var(--parlak-yesil);color:#fff}
.alt-son{border-top:1px solid var(--cizgi);padding-top:20px;font-size:13px;
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;letter-spacing:.03em;
  align-items:center}
/* Yönetim bağlantısı: parmakla basılabilir olmalı (min 44x44, WCAG 2.5.5).
   Eski hâli 60x33 px ve %40 saydamdı; küçük telefonlarda basılamıyordu. */
.alt-yonetim{display:inline-flex;align-items:center;gap:7px;
  min-height:44px;padding:10px 16px;border:1px solid var(--cizgi);
  border-radius:var(--r);opacity:.75;font-size:13.5px;
  -webkit-tap-highlight-color:rgba(0,168,90,.25);touch-action:manipulation}
.alt-yonetim:hover,.alt-yonetim:focus-visible{opacity:1;border-color:var(--parlak-yesil);
  color:#fff}
.alt-yonetim svg{flex:none}

/* --------------------------------------------------------------- responsive */
@media (max-width:960px){
  .hamburger{display:flex}
  /* Arama üst bantta, hamburger'in solunda dursun — menü içindeki
     kopya listenin en altında (~1300px aşağıda) kaldığı için
     kullanıcı "mobilde arama yok" diyordu. */
  .ara-mobil{display:flex;margin-left:auto;margin-right:2px}
  .menu .ara-btn{display:none}
  .menu{position:fixed;inset:70px 0 auto;flex-direction:column;align-items:stretch;
    background:var(--koyu-yesil);border-bottom:1px solid var(--cizgi);padding:10px 16px 22px;
    margin:0;gap:0;max-height:calc(100vh - 70px);overflow-y:auto;
    transform:translateY(-12px);opacity:0;visibility:hidden;transition:var(--gecis);
    /* KAPALIYKEN tıklamaları YUTMASIN: paneli kaplayan görünmez katman
       alttaki bağlantıları (footer'daki Yönetim) erişilemez yapıyordu. */
    pointer-events:none}
  .menu.acik{transform:none;opacity:1;visibility:visible;pointer-events:auto}
  .menu a,.menu button{width:100%;padding:14px 6px;font-size:17px;min-height:48px}
  .alt-menu{position:static;opacity:1;visibility:visible;transform:none;
    background:transparent;border:0;border-left:2px solid var(--cizgi);
    border-radius:0;margin:0 0 8px 8px;padding:0 0 0 10px}
  .haber-buyuk{grid-column:span 2}
  .alt-izgara{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .hafta-satir{grid-template-columns:1fr auto;gap:8px;row-gap:4px}
  .hafta-tarih{grid-column:1/-1;font-size:13px}
  .hafta-kod{grid-column:1/-1;margin-top:-2px}
  .haber-buyuk{grid-column:span 2}
  .haber-buyuk h3{font-size:24px}
  .puan-tablo{font-size:13px}
  .puan-tablo th,.puan-tablo td{padding:9px 3px}
  .alt-izgara{grid-template-columns:1fr;gap:26px}
  .mac-skor{font-size:32px}
}
@media (max-width:460px){
  .haber-buyuk{grid-column:span 1}
  .takim-ad{font-size:27px}
}


/* ==========================================================================
   SPONSOR BANDI (ana sayfa en alt)
   ========================================================================== */
.sponsor-bolum{background:var(--acik-bg);border-top:1px solid var(--cizgi-acik);
  padding-top:46px;padding-bottom:48px}
.sponsor-kademe{margin-bottom:18px}
.sponsor-kademe:last-child{margin-bottom:0}
.sponsor-etiket{font-family:var(--baslik);font-size:12px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--sonuk-koyu);
  text-align:center;margin-bottom:10px;position:relative}
.sponsor-etiket::before,.sponsor-etiket::after{content:"";position:absolute;top:50%;
  width:min(80px,12%);height:1px;background:var(--cizgi-acik)}
.sponsor-etiket::before{left:8%}
.sponsor-etiket::after{right:8%}
.sponsor-bant{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:14px}
.sponsor-kutu{display:flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--cizgi-acik);border-radius:var(--r);
  width:158px;height:80px;padding:14px;transition:var(--gecis)}
.sponsor-bant.ana .sponsor-kutu{width:212px;height:106px;padding:18px}
.sponsor-kutu img{max-width:100%;max-height:100%;object-fit:contain;
  /* Beyaz zeminli logolarda gri filtre + saydamlık logoyu beyaza
     yakınlaştırıp GÖRÜNMEZ yapıyordu (NURPET/POLİMA beyaz kutu çıktı).
     Kontrastı koruyan hafif bir doygunluk azaltması kullanılır. */
  filter:saturate(.25) contrast(1.06);opacity:.88;transition:var(--gecis)}
a.sponsor-kutu:hover{border-color:var(--kulup-yesil);transform:translateY(-3px);
  box-shadow:0 8px 22px rgba(0,102,51,.1)}
a.sponsor-kutu:hover img{filter:none;opacity:1}
.sponsor-ad{font-family:var(--baslik);font-size:15.5px;font-weight:600;
  letter-spacing:.03em;color:var(--sonuk-koyu);text-align:center;line-height:1.2}
a.sponsor-kutu:hover .sponsor-ad{color:var(--kulup-yesil)}
@media (max-width:760px){
  .sponsor-bolum{padding-top:38px;padding-bottom:40px}
  .sponsor-bant{gap:10px}
  .sponsor-kutu{width:calc(50% - 5px);height:78px;padding:12px}
  .sponsor-bant.ana .sponsor-kutu{width:100%;height:104px}
  .sponsor-kutu img{filter:none;opacity:1}   /* dokunmatikte hover yok */
}
@media (prefers-reduced-motion:reduce){
  a.sponsor-kutu:hover{transform:none}
}


/* ==========================================================================
   PWA — "ana ekrana ekle" çubuğu + çevrimdışı sayfası
   ========================================================================== */
@keyframes kur-gir{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.kur-evet{background:var(--parlak-yesil);color:#04140d;
  padding:10px 16px;min-height:42px;font-size:13.5px}
.kur-hayir{background:transparent;color:#9fb3a8;font-size:24px;line-height:1;
  min-width:42px;min-height:42px;padding:0}
.kur-evet:hover{background:#00c46a}
.kur-hayir:hover{color:#fff}
@media (min-width:760px){
  }
@media (prefers-reduced-motion:reduce){
  }

/* çevrimdışı sayfası */
.cevrimdisi{min-height:62vh;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;gap:16px;
  padding:60px 20px}
.cevrimdisi svg{opacity:.5}
.cevrimdisi h1{font-size:clamp(30px,6vw,46px)}
.cevrimdisi p{color:var(--sonuk-koyu);max-width:44ch;margin:0}

/* Maç merkezi: boş günde en yakın maçlara yönlendirme başlığı */
.mm-yonlendirme{font-family:var(--baslik);font-size:13px;font-weight:600;
  letter-spacing:.05em;color:var(--sonuk-koyu);text-transform:uppercase;
  margin:0 0 12px;padding-left:2px}

/* Kartı olmayan kadro üyesi: adı görünür ama tıklanamaz (sayfası yok) */
.md-kartsiz{cursor:default}
.md-kartsiz:hover{background:transparent}
.md-kartsiz .md-ad{color:var(--sonuk-koyu)}

/* ------------------------------------- tüm takım istatistik dökümü (§10) */
.dokum-tablo{width:100%;border-collapse:collapse;font-size:14.5px;
  table-layout:fixed}
.dokum-tablo th{font-family:var(--baslik);font-size:12px;font-weight:600;
  letter-spacing:.08em;color:var(--sonuk-koyu);text-align:center;
  padding:12px 4px;border-bottom:1px solid var(--cizgi-acik);white-space:nowrap}
.dokum-tablo td{text-align:center;padding:11px 4px;color:var(--metin);
  border-bottom:1px solid var(--cizgi-acik);font-variant-numeric:tabular-nums}
.dokum-tablo tr:last-child td{border-bottom:none}
.dokum-tablo .d-ad{text-align:left;width:auto;padding-left:18px}
.dokum-tablo th:not(.d-ad),.dokum-tablo td:not(.d-ad){width:9%}
.dokum-tablo .d-ad a{color:var(--metin);text-decoration:none;font-weight:500}
.dokum-tablo .d-ad a:hover{color:var(--kulup-yesil);text-decoration:underline}
.dokum-tablo .d-kartsiz{color:var(--sonuk-koyu)}
.dokum-tablo .d-mevki{display:block;font-size:11.5px;color:var(--sonuk-koyu);
  letter-spacing:.04em;margin-top:2px}
.dokum-tablo .d-vurgu{color:var(--kulup-yesil);font-weight:600}
.dokum-tablo .d-sari{color:var(--metin);font-weight:700}
.dokum-tablo .d-kirmizi{color:var(--kulup-kirmizi)}
.dokum-tablo tbody tr:hover{background:var(--zemin-acik)}
@media (max-width:640px){
  /* Yatay kaydırma YOK: dar ekranda ikincil sütunlar gizlenir */
  .dokum-tablo{font-size:13.5px}
  .dokum-tablo .d-ad{padding-left:12px}
  /* sütunlar: 1=ad 2=O 3=İ11 4=SNR 5=KD 6=DK 7=G 8=A 9=S 10=K
     dar ekranda İ11/SNR/KD/DK/A gizlenir → ad, O, G, S, K kalır */
  .dokum-tablo th:nth-child(3),.dokum-tablo td:nth-child(3),
  .dokum-tablo th:nth-child(4),.dokum-tablo td:nth-child(4),
  .dokum-tablo th:nth-child(5),.dokum-tablo td:nth-child(5),
  .dokum-tablo th:nth-child(6),.dokum-tablo td:nth-child(6),
  .dokum-tablo th:nth-child(8),.dokum-tablo td:nth-child(8){display:none}
  .dokum-tablo th:not(.d-ad),.dokum-tablo td:not(.d-ad){width:13%}
}

/* ------------------------------------------- takım sayfası sekme şeridi
   ESKİ HÂLİ: display:flex + overflow-x:auto + white-space:nowrap
   → 7 sekme mobilde 740px yapıyordu (ekran 390px) ve son 4 sekme
   yatay kaydırma arkasında kalıyordu; kimse fark etmiyordu.
   YENİ: şerit sarmalanır, hiçbir sekme gizli kalmaz.            */
.sekme-serit{display:flex;flex-wrap:wrap;gap:2px;overflow-x:visible}
.sekme-btn{background:none;border:0;color:rgba(255,255,255,.65);
  font-family:var(--baslik);font-size:15px;font-weight:600;letter-spacing:.08em;
  padding:15px 15px;cursor:pointer;white-space:nowrap;
  border-bottom:2px solid transparent;transition:var(--gecis)}
.sekme-btn:hover{color:#fff}
.sekme-btn[aria-selected="true"]{color:#fff;border-bottom-color:var(--kulup-kirmizi,#D71920)}
@media (max-width:760px){
  /* Izgara: 7 sekme eşit hücrelere oturur, son satırdaki tek öğe
     ortada asılı kalmaz (flex-wrap'ta oluyordu) — son sekme tüm
     satırı kaplar. */
  .sekme-serit{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
  .sekme-btn{font-size:12.5px;letter-spacing:.03em;
    padding:12px 6px;text-align:center;min-width:0;
    border-bottom:2px solid transparent}
  .sekme-btn:last-child:nth-child(odd){grid-column:1 / -1}
}

/* ------------------------------------------------- sezon seçici (§10, §47) */
.sezon-sec{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.sezon-sec-etiket{font-family:var(--baslik);font-size:12px;font-weight:600;
  letter-spacing:.1em;color:var(--sonuk-koyu)}
.sezon-dugme{display:inline-block;font-family:var(--baslik);font-size:14px;
  font-weight:600;letter-spacing:.04em;padding:7px 15px;border-radius:3px;
  border:1px solid var(--cizgi-acik);color:var(--sonuk-koyu);
  text-decoration:none;transition:var(--gecis);background:transparent}
.sezon-dugme:hover{color:var(--metin);border-color:var(--sonuk-koyu)}
.sezon-dugme[aria-current="true"]{background:var(--kulup-yesil);color:#fff;
  border-color:var(--kulup-yesil)}
.sezon-dugme.bos{opacity:.55}
@media (max-width:520px){
  .sezon-sec{width:100%}
  .sezon-dugme{flex:1 1 0;text-align:center;padding:9px 6px}
}

/* ---------------------------------------------- içeriğe atla (erişilebilirlik)
   Klavye kullanıcısı her sayfada menüyü tab'lamak zorunda kalmasın. Normalde
   ekran dışında durur, odaklanınca sol üstte görünür; hedefi <main id="ana">
   tabindex="-1" taşıdığı için odak gerçekten içeriğe geçer. */
.atla{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--parlak-yesil);color:#04220f;
  padding:10px 16px;font-weight:700;font-size:14px;
  border-radius:0 0 6px 0;text-decoration:none;
}
.atla:focus{left:0;outline:3px solid #fff;outline-offset:2px}

/* --- GERİ BARI: uygulama içi geri (PWA'da tarayıcı geri tuşu yok) --- */
.geribar{max-width:1180px;margin:0 auto;padding:12px 16px 0;display:flex;align-items:center;
  gap:12px;flex-wrap:wrap}
.geributon{display:inline-flex;align-items:center;gap:7px;cursor:pointer;
  font-family:var(--baslik,inherit);font-size:14px;font-weight:600;letter-spacing:.03em;
  min-height:44px;padding:8px 16px;border-radius:24px;background:#fff;
  color:var(--metin,#121212);border:1.5px solid rgba(0,0,0,.14);transition:.16s;
  -webkit-tap-highlight-color:transparent}
.geributon:hover{border-color:var(--yesil,#006633);color:var(--yesil,#006633)}
.geributon:active{background:var(--yesil,#006633);border-color:var(--yesil,#006633);color:#fff}
.geributon:focus-visible{outline:2px solid var(--yesil,#006633);outline-offset:2px}
@media(max-width:600px){.geribar{padding:10px 14px 0}.geributon{font-size:13.5px;padding:8px 14px}}

/* geri barının gövde içeriğiyle aynı hizaya gelmesi */
.geribar + .bolum, .geribar + section, .geribar + div{margin-top:0}

/* ---- görsel cila (05.10) ---- */
.puan-tablo .tk-ic{display:flex;align-items:center;gap:10px}
.puan-tablo .tk-ic img{width:26px;height:26px;flex:0 0 26px;object-fit:contain}
.puan-tablo .tk-bos{width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:rgba(0,0,0,.07)}
.hero.hero-fotosuz{min-height:0;align-items:flex-start}
.hero.hero-fotosuz .hero-ic{padding-top:clamp(56px,9vh,96px);padding-bottom:56px}
@media(max-width:600px){
  .md-merkez-link{display:none}
  .hero.hero-fotosuz .hero-ic{padding-top:44px;padding-bottom:40px}
}

/* canlı maç şeridi: ana sayfanın EN ÜSTÜ, yalnız maç canlıyken */
.canli-serit{display:flex;align-items:center;gap:12px;background:var(--kirmizi,#D71920);
  color:#fff;padding:11px 18px;text-decoration:none;font-size:14.5px;line-height:1.3;
  position:sticky;top:0;z-index:40}
.canli-serit-rozet{display:inline-flex;align-items:center;gap:7px;font-family:var(--baslik);
  font-weight:700;letter-spacing:.08em;white-space:nowrap}
.canli-serit-mac{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.canli-serit-mac b{font-size:16px;margin:0 4px}
.canli-serit-ok{font-family:var(--baslik);font-weight:700;letter-spacing:.08em;white-space:nowrap}
.canli-serit .canli-nokta{width:9px;height:9px;border-radius:50%;background:#fff;display:inline-block;
  animation:cs-nabiz 1.2s ease-in-out infinite}
@keyframes cs-nabiz{0%,100%{opacity:1}50%{opacity:.25}}
@media(prefers-reduced-motion:reduce){.canli-serit .canli-nokta{animation:none}}

.puan-tablo tr.bolge-ust td:first-child{box-shadow:inset 4px 0 0 #00A85A}
.puan-tablo tr.bolge-alt td:first-child{box-shadow:inset 4px 0 0 #D71920}
.puan-form{display:inline-flex;gap:3px;justify-content:center}
.puan-form i{font-style:normal;width:19px;height:19px;border-radius:50%;font-size:10.5px;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;color:#fff}
.puan-form .pf-G{background:#00A85A}.puan-form .pf-B{background:#8FA89B}.puan-form .pf-M{background:#D71920}
@media(max-width:600px){.puan-form-th,.puan-form-td{display:none}}

@media(max-width:440px){.canli-serit{gap:9px;padding:11px 14px}.canli-serit-ok{display:none}}

.ifa-form{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-family:var(--baslik);
  font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--sonuk-koyu)}

/* ---- paylaşım düğmesi (paylas.js) ---------------------------------------- */
.pyl{display:inline-flex;align-items:center;gap:8px;background:var(--kulup-yesil,#006633);
  color:#fff;border:none;border-radius:10px;padding:11px 18px;font-family:var(--baslik),sans-serif;
  font-size:14px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;
  transition:background .18s ease,transform .18s ease;white-space:nowrap;text-decoration:none}
.pyl:hover{background:#00A85A;transform:translateY(-1px)}
.pyl:active{transform:translateY(0)}
.pyl svg{width:16px;height:16px;flex:0 0 16px}
.pyl-cizgi{background:transparent;border:1.5px solid var(--kulup-yesil,#006633);
  color:var(--kulup-yesil,#006633)}
.pyl-cizgi:hover{background:var(--kulup-yesil,#006633);color:#fff}
.pyl-satir{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:16px}


/* ---- haber kartı: kapak görselleri 16:9, kutu da 16:9 → yazı kesilmez ---- */
.haber-foto,.haber-buyuk .haber-foto{aspect-ratio:16/9}
.haber-foto img{object-position:center}
.haber-foto:not(:has(img)){background:#006633 center center / 15% no-repeat url("/static/app/ikon-192.png")}

/* ---- gol krallığı: fotoğraflı, tıklanır (paylaşım kartıyla aynı düzen) ---- */
.zirve{background:linear-gradient(180deg,#006633 0%,#031A12 100%);border-radius:var(--r-buyuk);
  padding:20px 18px 14px;margin-bottom:30px}
.zirve-bas{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.zirve-bas .etiket{color:#fff;font-size:22px}
.zirve-alt{font-size:13px;color:rgba(255,255,255,.72)}
.zirve-satir{display:flex;align-items:center;gap:14px;padding:10px 14px;margin-bottom:8px;
  background:rgba(3,26,18,.62);border:1px solid rgba(255,255,255,.16);border-radius:var(--r-buyuk);
  color:#fff;text-decoration:none;transition:border-color .18s,transform .18s}
a.zirve-satir:hover{border-color:#00A85A;transform:translateY(-1px)}
.zirve-satir.bir{border:2px solid #00A85A}
.zirve-sira{font-family:var(--baslik);font-size:30px;line-height:1;width:30px;text-align:center;color:#8FA89B}
.bir .zirve-sira{color:#00A85A}
.zirve-av{width:56px;height:56px;flex:0 0 56px;border-radius:50%;overflow:hidden;border:2px solid #00A85A;
  background:#06251A;display:flex;align-items:center;justify-content:center;color:#8FA89B;
  font-family:var(--baslik);font-size:24px}
.zirve-av img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.zirve-ad{flex:1;min-width:0}
.zirve-ad b{display:block;font-size:17px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zirve-ad span{font-size:13px;color:#8FA89B;letter-spacing:.06em}
.zirve-deger{font-family:var(--baslik);font-size:38px;line-height:1;font-weight:700;color:#00A85A}
.lider-av{width:30px;height:30px;flex:0 0 30px;border-radius:50%;overflow:hidden;margin:0 10px 0 4px;
  background:#E8EDE9;border:1px solid #006633;display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--baslik);font-size:14px;color:#5B6B62}
.lider-av img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
@media(max-width:600px){.zirve-av{width:48px;height:48px;flex-basis:48px}.zirve-deger{font-size:32px}.zirve-bas .etiket{font-size:20px}}
@media(max-width:600px){.zirve-ad b{white-space:normal;overflow:visible;text-overflow:clip;font-size:16px}}

/* ---- acilir menu sagdan tasmasi (olcum: sayfa yana 17px kayiyordu) --------
   `ul.alt-menu` mutlak konumlu ve sola hizali; sagdaki son menu ogelerinde
   menu viewport disina cikip belge genisligini buyutuyordu
   (body scrollWidth 1297 > viewport 1280). Son iki ogede menu SAGA hizalanir. */
.menu > li{position:relative}
.menu > li:nth-last-child(1) > .alt-menu,
.menu > li:nth-last-child(2) > .alt-menu{left:auto;right:0}
.alt-menu{max-width:min(320px,calc(100vw - 32px))}

/* ---- lider avatarı tıklanabilir buton (oyuncu kartı modalı) -------------- */
button.lider-av{padding:0;border:1.5px solid var(--cizgi-acik,#DDE3DF);cursor:zoom-in;
  background:#E8EDE9;transition:border-color .18s ease,transform .18s ease;font:inherit;
  font-family:var(--baslik),sans-serif;font-size:14px;color:#5B6B62}
button.lider-av:hover{border-color:var(--kulup-yesil,#006633);transform:scale(1.08)}
button.lider-av img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}

/* kategori süzgeci aktif düğmesi (btn-yesil sınıfı yoktu) */
.btn-yesil{background:var(--kulup-yesil,#006633);color:#fff;border:2px solid var(--kulup-yesil,#006633)}
.btn-yesil:hover{background:#00A85A;border-color:#00A85A;color:#fff}

/* Döküm tablosunda oyuncu hücresi: avatar + ad (istatistik/takım sayfası ortak) */
.dokum-oyuncu{display:inline-flex;align-items:center;gap:10px;min-width:0}
.dokum-av{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none;
  background:var(--acik, #F4F5F3);display:inline-flex;align-items:center;
  justify-content:center;font:700 13px/1 Inter,sans-serif;color:var(--kulup-yesil,#006633)}
.dokum-av-bos{border:1px solid var(--cizgi,#e2e5e1)}
@media(max-width:520px){.dokum-av{width:28px;height:28px;font-size:12px}
  .dokum-oyuncu{gap:7px}}

/* Lider/istatistik listesinde isim bağlantısı — tıklanabilir olduğu belli olsun.
   span.lider-ad (kartı olmayan oyuncu) etkilenmez, yalnız a.lider-ad. */
a.lider-ad{text-decoration:none;transition:color .15s ease}
a.lider-ad:hover,a.lider-ad:focus-visible{color:var(--parlak-yesil,#00A651);text-decoration:underline}

/* Kart + paylaş düğmesi sarmalayıcısı (haber listesi, galeri albümleri).
   Kartın TAMAMI bağlantı olduğu için düğme bağlantının içine konamaz;
   sarmalayıcı ızgara hücresi olur ve kartı tam yüksekliğe gerer. */
.kart-sar{display:flex;flex-direction:column;height:100%}
.kart-sar>.kart,.kart-sar>.alb-kart{flex:1;min-height:0}
.kart-sar>.pyl{align-self:flex-start;margin-top:12px}

/* ---------------------------------------------------------------- ANA EKRANA EKLE
   Sitenin en altındaki kalıcı kurulum düğmesi + iPhone kılavuz penceresi.
   Yalnız kulüp paleti: #031A12, #006633, #00A85A, #D71920, beyaz, #F4F5F3. */
.alt .kur-alt{display:flex;flex-direction:column;align-items:center;gap:8px;
  margin:26px 0 6px;padding:22px 0 4px;border-top:1px solid rgba(255,255,255,.12)}
.kur-alt-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:#00A85A;color:#031A12;border:0;border-radius:12px;padding:15px 26px;
  font:inherit;font-weight:700;letter-spacing:.7px;cursor:pointer;min-height:52px;width:100%;max-width:340px}
.kur-alt-btn:active{background:#006633;color:#FFFFFF}
.kur-alt-btn[disabled]{background:#2A3A33;color:#8FA39A;cursor:default}
.kur-alt-not{margin:0;font-size:14px;color:#B9C6C0;text-align:center;max-width:44ch}

.kur-perde{position:fixed;inset:0;background:rgba(3,26,18,.72);
  /* Sabit üst menünün (z-index'i daha düşük) ÜSTÜNDE kalmalı: aksi halde
     pencere açıkken arkadaki menüye dokunulabiliyordu. */
  z-index:100000;
  display:flex;align-items:flex-end;justify-content:center;padding:0}
.kur-perde[hidden]{display:none}
.kur-pencere{position:relative;background:#FFFFFF;color:#121212;width:100%;max-width:520px;
  border-radius:16px 16px 0 0;padding:22px 22px 14px;
  /* iPhone'da alt kılavuz çubuğu (home indicator) pencerenin üstüne binmesin */
  padding-bottom:calc(14px + env(safe-area-inset-bottom, 0px));
  box-shadow:0 -8px 30px rgba(3,26,18,.35);animation:kurAc .22s ease-out}
@keyframes kurAc{from{transform:translateY(24px)}to{transform:translateY(0)}}
.kur-pencere h3{margin:0 0 12px;font-size:19px;letter-spacing:.4px;color:#031A12}
.kur-kapat{position:absolute;top:10px;right:12px;background:none;border:0;font-size:26px;
  line-height:1;color:#6B726F;cursor:pointer;padding:6px 10px}
.kur-adim-liste{margin:0;padding-left:20px;line-height:1.75;color:#2A3230}
.kur-adim-liste li{margin-bottom:8px}
.kur-safari-uyari{background:#F4F5F3;border:1px solid #D9DEDB;border-radius:10px;
  padding:12px 14px;margin:0 0 14px;font-size:14.5px;line-height:1.6}
.kur-kopyala{display:block;margin-top:10px;background:#006633;color:#FFFFFF;border:0;
  border-radius:8px;padding:10px 14px;font:inherit;font-weight:700;letter-spacing:.5px;
  cursor:pointer;width:100%}
.kur-ok{display:flex;justify-content:center;color:#00A85A;padding:6px 0 2px;
  animation:kurOk 1.3s ease-in-out infinite}
@keyframes kurOk{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@media(min-width:820px){.kur-perde{align-items:center}.kur-pencere{border-radius:16px}}

/* ------------------------------------------------------ MAÇ MAÇ GELİŞİM (oyuncu)
   Oyuncu sayfasındaki sezon toplamının yanına maç kırılımı. Yalnız kulüp
   paleti: yeşil tonları + tek kırmızı vurgu; sarı kart rozeti NÖTR (sarı
   renk kullanılmaz — 4 renk kuralı). */
.gelisim .gelisim-ozet{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:14.5px;
  color:#3B4441;align-items:baseline}
.gelisim .gelisim-ozet b{font-family:var(--baslik);font-size:20px;color:var(--kulup-yesil)}
.gelisim-grafik{margin:10px 0 4px}
.gelisim-anahtar{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12.5px;
  color:#6E8478;align-items:center}
.gelisim-cubuk{display:inline-block;width:14px;height:9px;border-radius:2px;
  margin-right:6px;vertical-align:0}
.gelisim-cubuk.yesil{background:#00A85A}
.gelisim-cubuk.gri{background:#D9DEDB}
.gelisim-nokta{display:inline-block;width:9px;height:9px;border-radius:50%;
  margin-right:6px;box-sizing:border-box}
.gelisim-nokta.kirmizi{background:#D71920}
.gelisim-nokta.yesil-halka{border:2px solid #006633}
.gelisim-tablo-sar{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:36px}
.gelisim-tablo{width:100%;border-collapse:collapse;font-size:14.5px;min-width:540px}
.gelisim-tablo th{text-align:left;font-size:11.5px;letter-spacing:.09em;color:#6E8478;
  padding:9px 10px;border-bottom:1px solid #E4E7E5;font-weight:600}
.gelisim-tablo td{padding:9px 10px;border-bottom:1px solid #F0F2F1;white-space:nowrap}
.gelisim-tablo tbody tr:hover{background:#FAFBFA}
.gelisim-ev{color:#8A9490;font-size:12.5px;letter-spacing:.04em}
.gelisim-g{color:#006633}
.gelisim-b{color:#3B4441}
.gelisim-m{color:#D71920}
.gelisim-kart{display:inline-block;min-width:16px;text-align:center;border-radius:4px;
  font-size:11.5px;font-weight:700;padding:1px 5px}
.gelisim-kart.kirmizi{background:#FDECEC;color:#D71920}
.gelisim-kart.notr{background:#F1F3F2;color:#121212}
