/* ============================================================================
   K2 AETHER - SIRALAMALAR MODULU  (rotalar: /Rankings/*)
   ----------------------------------------------------------------------------
   9 siralama sayfasi ortak kabuk kullanir. Eskiden her sayfa
   _activity_rank_helper.php icindeki IKI ayri heredoc'tan sayfa-ici stil
   basiyordu (k2r_rank_page_style_html + k2r_clan_sort_tabs_html); ikisinin de
   kurallari buraya tasindi ve token'landi.

   Korunan kanca adlari (JS ve ranktable.css bagli):
     #prizes_table, #prizes_wrapper, #tableRanking, .k2r-sort-tab, .k2r-sort-pane,
     .k2r-rank-no, .k2r-player-cell, .k2r-score-main
   ========================================================================= */

/* 1. Kabuk -----------------------------------------------------------------*/
.k2r-hero { padding-bottom: var(--k2-space-5); }
.k2r-body { padding: var(--k2-space-6) 0 var(--k2-space-10); }

/* 2. Siralama turu secici (eski col-lg-3 kenar cubugunun yerine) ------------*/
.k2r-switch {
  display: flex;
  gap: 6px;
  margin-top: var(--k2-space-5);
  padding-bottom: 4px;
  overflow-x: auto;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}
.k2r-switch__item {
  display: inline-flex;
  align-items: center;
  gap: var(--k2-space-2);
  flex: 0 0 auto;
  min-height: var(--k2a-tap);
  padding: 8px var(--k2-space-3);
  border: 1px solid var(--k2-border);
  border-radius: var(--k2-radius-pill);
  background: var(--k2-surface);
  color: var(--k2-text-muted);
  font-size: var(--k2-fs-sm);
  font-weight: var(--k2-fw-medium);
  white-space: nowrap;
  text-decoration: none;
  transition: color var(--k2-t-fast) var(--k2-ease),
              border-color var(--k2-t-fast) var(--k2-ease),
              background var(--k2-t-fast) var(--k2-ease);
}
.k2r-switch__item img { width: 22px; height: 22px; object-fit: contain; }
.k2r-switch__item:hover,
.k2r-switch__item:focus {
  color: var(--k2-text);
  border-color: var(--k2-border-strong);
  background: var(--k2-surface-2);
  text-decoration: none;
}
.k2r-switch__item:focus-visible { outline: none; box-shadow: var(--k2-focus-ring); }
.k2r-switch__item.is-on {
  background: rgba(255, 215, 106, .10);
  border-color: var(--k2-border-gold);
  color: var(--k2-gold);
}

/* 3. Tablo -----------------------------------------------------------------*/
.k2x-rank #prizes_wrapper,
.k2x-rank .k2r-tablewrap {
  border: 1px solid var(--k2-border);
  border-radius: var(--k2-radius-card);
  background: var(--k2-bg-elev);
  box-shadow: var(--k2-shadow-md);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.k2x-rank #prizes_table thead th,
.k2x-rank #tableRanking thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--k2-surface);
  border-bottom: 1px solid var(--k2-border);
  color: var(--k2-gold);
  font-size: var(--k2-fs-xs);
  font-weight: var(--k2-fw-bold);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.k2x-rank #prizes_table tbody td,
.k2x-rank #tableRanking tbody td {
  border-top: 1px solid var(--k2-border);
  color: var(--k2-text-soft);
}
.k2x-rank #prizes_table tbody tr:hover td,
.k2x-rank #tableRanking tbody tr:hover td { background: rgba(255, 255, 255, .045); }

.k2x-rank .k2r-rank-no.k2r-top1 { background: var(--k2-grad-gold); border-color: rgba(255,226,128,.65); color: var(--k2-text-ondark); font-weight: var(--k2-fw-heavy); }
.k2x-rank .k2r-rank-no.k2r-top2 { background: linear-gradient(180deg, #f1f5fb, #9fb0c4); border-color: rgba(214,226,240,.6); color: #1b2330; font-weight: var(--k2-fw-heavy); }
.k2x-rank .k2r-rank-no.k2r-top3 { background: linear-gradient(180deg, #f2b585, #9c5a26); border-color: rgba(242,181,133,.55); color: #2a1505; font-weight: var(--k2-fw-heavy); }
.k2x-rank .k2r-score-main strong { color: var(--k2-gold); }

/* Tablodaki tum baglar eski temada KIRMIZI (hata rengi) geliyordu (ranktable.css /
   style.css). Kirmizi bir uyari rengidir; klan ve oyuncu adi uyari degildir. */
.k2x-rank #prizes_table a,
.k2x-rank #tableRanking a,
.k2x-rank .k2r-clan-link {
  color: var(--k2-text-soft);
  font-weight: var(--k2-fw-medium);
  text-decoration: none;
}
.k2x-rank #prizes_table a:hover,
.k2x-rank #tableRanking a:hover,
.k2x-rank #prizes_table a:focus,
.k2x-rank #tableRanking a:focus,
.k2x-rank .k2r-clan-link:hover { color: var(--k2-gold); text-decoration: none; }
.k2x-rank .k2r-player-name { color: var(--k2-text); font-weight: var(--k2-fw-bold); }

/* 4. NP / Bagis segment sekmeleri (klan sayfalari) --------------------------*/
.k2x-rank .k2r-sort-tabs {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px;
  margin: 0 0 var(--k2-space-4);
  border: 1px solid var(--k2-border);
  border-radius: var(--k2-radius-pill);
  background: var(--k2-surface);
}
.k2x-rank .k2r-sort-tab {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px var(--k2-space-4);
  border: 1px solid transparent;
  border-radius: var(--k2-radius-pill);
  color: var(--k2-text-muted);
  font-size: var(--k2-fs-xs);
  font-weight: var(--k2-fw-bold);
  letter-spacing: .06em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: color var(--k2-t-fast) var(--k2-ease), background var(--k2-t-fast) var(--k2-ease);
}
.k2x-rank .k2r-sort-tab .fa { color: inherit; }
.k2x-rank .k2r-sort-tab:hover { color: var(--k2-gold); text-decoration: none; }
.k2x-rank .k2r-sort-tab:focus-visible { outline: none; box-shadow: var(--k2-focus-ring); }
.k2x-rank .k2r-sort-tab.k2r-on {
  background: var(--k2-grad-gold);
  border-color: rgba(255, 226, 128, .65);
  color: var(--k2-text-ondark);
}
.k2x-rank .k2r-top-donors {
  display: block;
  margin-top: 4px;
  font-size: var(--k2-fs-xs);
  line-height: 1.5;
  color: var(--k2-text-faint);
}
.k2x-rank .k2r-top-donors .fa { color: var(--k2-gold); margin-right: 3px; }
.k2x-rank .k2r-top-donors b { color: var(--k2-text-soft); font-weight: var(--k2-fw-medium); }
.k2x-rank .k2r-donor-sep { margin: 0 5px; color: var(--k2-text-faint); }

.k2x-rank select {
  background: var(--k2-surface);
  border: 1px solid var(--k2-border);
  border-radius: var(--k2-radius-xs);
  color: var(--k2-text);
  padding: 8px var(--k2-space-3);
  font-size: var(--k2-fs-sm);
}
.k2x-rank select:focus { outline: none; border-color: var(--k2-gold); box-shadow: var(--k2-focus-ring); }

@media (max-width: 600px) {
  .k2x-rank .k2r-sort-tabs { display: flex; width: 100%; justify-content: center; }
  .k2x-rank .k2r-sort-tab { flex: 1; justify-content: center; padding: 8px 10px; }
}

/* 5. Nisan / aura tablo uyumu ----------------------------------------------
   Paylasilan kurallar k2-aether.css bolum 20'de. Burada YALNIZCA tabloya
   ozgu boyut/hizalama duzeltmeleri var (ranktable.css'in eski !important
   yiginiyla ayni satirda kalabilmek icin). */

/* Rutbe nisani ikon sutununda: nation (26px) + bosluk (7px) + nisan (40px)
   = 73px; .k2r-clan-icons 86px genisliginde rahat durur. */
#prizes_wrapper .k2r-grade { width: 40px !important; min-width: 40px !important; height: 32px !important; }
#prizes_wrapper .k2r-clan-icons { align-items: center !important; }

/* Bagis sutunu klan siralamasinin siralama anahtaridir; ilk 3 satirda
   halesi biraz daha belirgin olur. */
.k2x-rank #prizes_table tbody tr:nth-child(-n+3) .k2r-np--donate::before {
  background: radial-gradient(56% 74% at 42% 50%, rgba(255, 201, 40, .26), transparent 72%);
}
#prizes_wrapper .k2r-np__val { font-size: 16px !important; line-height: 1.15 !important; }
#prizes_wrapper .k2r-np--np .k2r-np__val { font-size: 15px !important; }
#prizes_wrapper .k2r-np__sub { font-size: 10px !important; }

@media (max-width: 800px) {
  #prizes_wrapper .k2r-grade { width: 36px !important; min-width: 36px !important; height: 30px !important; }
  #prizes_wrapper .k2r-np__val { font-size: 15px !important; }
}


/* ==========================================================================
   6. SIRALAMA SATIRLARI - BANT + SATIRIN TAMAMINA YAYILAN AURA
   --------------------------------------------------------------------------
   Satirlar ayrilir, koseleri yuvarlanir ve ILK 10 satirin TAMAMI kendi
   renginde aura alir. Aurayi dort katman birlikte kurar:

     1) DIS HALE  : tr uzerinde box-shadow -> bandin cevresine tasan isik.
                    "Satirda aura yok, sadece sira numarasinda var" sikayeti
                    tam olarak bunun eksikligiydi.
     2) IC BLOOM  : inset box-shadow -> isik bandin icine de dolar.
     3) YIKAMA    : soldan saga renk; sag ucta SIFIRLANMAZ, plato yapar ki
                    satirin sag yarisi olu kalmasin.
     4) ISIK GECISI: bant boyu akan parlaklik (9sn, siralara gore gecikmeli).

   Aura NEDEN tr'de? Hucreye verilseydi her hucre gradyani bastan baslatir,
   satir boyunca basamak basamak kirilirdi. tr kutusu tablonun TAM genisligi
   oldugu icin isik bastan sona kesintisiz akar. Kose yuvarlamayi tr
   tasiyamaz; onu bas/son hucre ustlenir, renkleri tr gradyaniyla eslesir.

   Kademe: 1-3 sicak metal | 4-10 serin rampa (mor->limon) | 11-20 soluk
   celik (halesiz) | 21+ notr bant.
   ========================================================================== */

.k2x-rank #prizes_table,
.k2x-rank #tableRanking { border-collapse: separate; border-spacing: 0 12px; }

.k2x-rank #prizes_table tbody td,
.k2x-rank #tableRanking tbody td { border-top: 0; background: transparent; }

.k2x-rank #prizes_table tbody tr,
.k2x-rank #tableRanking tbody tr {
  background-image: linear-gradient(90deg, rgba(255,255,255,.030), rgba(255,255,255,.016));
  transition: filter var(--k2-t-fast) var(--k2-ease);
}
.k2x-rank #prizes_table tbody td:first-child,
.k2x-rank #tableRanking tbody td:first-child { border-radius: 13px 0 0 13px; background: rgba(255,255,255,.030); }
.k2x-rank #prizes_table tbody td:last-child,
.k2x-rank #tableRanking tbody td:last-child { border-radius: 0 13px 13px 0; background: rgba(255,255,255,.016); }

.k2x-rank #prizes_table tbody tr:hover,
.k2x-rank #tableRanking tbody tr:hover { filter: brightness(1.2); }
.k2x-rank #prizes_table tbody tr:hover td,
.k2x-rank #tableRanking tbody tr:hover td { background-color: transparent; }

.k2x-rank #prizes_table thead th,
.k2x-rank #tableRanking thead th { border-bottom: 0; box-shadow: 0 1px 0 var(--k2-border); }

/* Uzun satirin sag ucu: sayisal sutunlar saga yaslanir. */
.k2x-rank #prizes_table thead th:last-child,
.k2x-rank #prizes_table tbody td:last-child,
.k2x-rank #tableRanking thead th:last-child,
.k2x-rank #tableRanking tbody td:last-child { text-align: right; padding-right: 18px !important; }
.k2x-rank .k2r-clan-ranking-table thead th:nth-child(4),
.k2x-rank .k2r-clan-ranking-table thead th:nth-child(5),
.k2x-rank .k2r-clan-ranking-table tbody td:nth-child(4),
.k2x-rank .k2r-clan-ranking-table tbody td:nth-child(5) { text-align: right; }

/* --- 1. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(1),
.k2x-rank #tableRanking tbody tr:nth-child(1) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(255,201,40,.20) 42%, transparent 60%),
    linear-gradient(180deg, rgba(255,201,40,.60), rgba(255,201,40,0) 2px, rgba(255,201,40,0) calc(100% - 2px), rgba(255,201,40,.60)),
    linear-gradient(90deg, rgba(255,201,40,.26), rgba(255,201,40,.15) 48%, rgba(255,201,40,.11));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(255,201,40,.40),
              0 0 14px rgba(255,201,40,.34),
              inset 0 0 38px rgba(255,201,40,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 0s;
}
.k2x-rank #prizes_table tbody tr:nth-child(1) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(1) td:first-child {
  background: linear-gradient(90deg, rgba(255,201,40,.26), rgba(255,201,40,0.229));
  box-shadow: inset 3px 0 0 #ffe889, inset 16px 0 28px -14px rgba(255,201,40,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(1) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(1) td:last-child {
  background: rgba(255,201,40,.11);
  box-shadow: inset -3px 0 0 rgba(255,201,40,.50);
}

/* --- 2. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(2),
.k2x-rank #tableRanking tbody tr:nth-child(2) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(214,226,240,.17) 42%, transparent 60%),
    linear-gradient(180deg, rgba(214,226,240,.60), rgba(214,226,240,0) 2px, rgba(214,226,240,0) calc(100% - 2px), rgba(214,226,240,.60)),
    linear-gradient(90deg, rgba(214,226,240,.21), rgba(214,226,240,.12) 48%, rgba(214,226,240,.085));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(214,226,240,.34),
              0 0 14px rgba(214,226,240,.27),
              inset 0 0 38px rgba(214,226,240,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 0.85s;
}
.k2x-rank #prizes_table tbody tr:nth-child(2) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(2) td:first-child {
  background: linear-gradient(90deg, rgba(214,226,240,.21), rgba(214,226,240,0.185));
  box-shadow: inset 3px 0 0 #f4f8ff, inset 16px 0 28px -14px rgba(214,226,240,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(2) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(2) td:last-child {
  background: rgba(214,226,240,.085);
  box-shadow: inset -3px 0 0 rgba(214,226,240,.50);
}

/* --- 3. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(3),
.k2x-rank #tableRanking tbody tr:nth-child(3) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(226,155,98,.16) 42%, transparent 60%),
    linear-gradient(180deg, rgba(226,155,98,.60), rgba(226,155,98,0) 2px, rgba(226,155,98,0) calc(100% - 2px), rgba(226,155,98,.60)),
    linear-gradient(90deg, rgba(226,155,98,.20), rgba(226,155,98,.115) 48%, rgba(226,155,98,.08));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(226,155,98,.33),
              0 0 14px rgba(226,155,98,.26),
              inset 0 0 38px rgba(226,155,98,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 1.7s;
}
.k2x-rank #prizes_table tbody tr:nth-child(3) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(3) td:first-child {
  background: linear-gradient(90deg, rgba(226,155,98,.20), rgba(226,155,98,0.176));
  box-shadow: inset 3px 0 0 #f7c08a, inset 16px 0 28px -14px rgba(226,155,98,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(3) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(3) td:last-child {
  background: rgba(226,155,98,.08);
  box-shadow: inset -3px 0 0 rgba(226,155,98,.50);
}

/* --- 4. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(4),
.k2x-rank #tableRanking tbody tr:nth-child(4) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(169,124,255,.14) 42%, transparent 60%),
    linear-gradient(180deg, rgba(169,124,255,.60), rgba(169,124,255,0) 2px, rgba(169,124,255,0) calc(100% - 2px), rgba(169,124,255,.60)),
    linear-gradient(90deg, rgba(169,124,255,.17), rgba(169,124,255,.095) 48%, rgba(169,124,255,.065));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(169,124,255,.28),
              0 0 14px rgba(169,124,255,.22),
              inset 0 0 38px rgba(169,124,255,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 2.55s;
}
.k2x-rank #prizes_table tbody tr:nth-child(4) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(4) td:first-child {
  background: linear-gradient(90deg, rgba(169,124,255,.17), rgba(169,124,255,0.15));
  box-shadow: inset 3px 0 0 #c9a7ff, inset 16px 0 28px -14px rgba(169,124,255,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(4) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(4) td:last-child {
  background: rgba(169,124,255,.065);
  box-shadow: inset -3px 0 0 rgba(169,124,255,.50);
}

/* --- 5. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(5),
.k2x-rank #tableRanking tbody tr:nth-child(5) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(140,150,255,.13) 42%, transparent 60%),
    linear-gradient(180deg, rgba(140,150,255,.60), rgba(140,150,255,0) 2px, rgba(140,150,255,0) calc(100% - 2px), rgba(140,150,255,.60)),
    linear-gradient(90deg, rgba(140,150,255,.16), rgba(140,150,255,.090) 48%, rgba(140,150,255,.062));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(140,150,255,.27),
              0 0 14px rgba(140,150,255,.21),
              inset 0 0 38px rgba(140,150,255,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 3.4s;
}
.k2x-rank #prizes_table tbody tr:nth-child(5) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(5) td:first-child {
  background: linear-gradient(90deg, rgba(140,150,255,.16), rgba(140,150,255,0.141));
  box-shadow: inset 3px 0 0 #aeb4ff, inset 16px 0 28px -14px rgba(140,150,255,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(5) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(5) td:last-child {
  background: rgba(140,150,255,.062);
  box-shadow: inset -3px 0 0 rgba(140,150,255,.50);
}

/* --- 6. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(6),
.k2x-rank #tableRanking tbody tr:nth-child(6) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(110,170,255,.13) 42%, transparent 60%),
    linear-gradient(180deg, rgba(110,170,255,.60), rgba(110,170,255,0) 2px, rgba(110,170,255,0) calc(100% - 2px), rgba(110,170,255,.60)),
    linear-gradient(90deg, rgba(110,170,255,.155), rgba(110,170,255,.086) 48%, rgba(110,170,255,.059));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(110,170,255,.26),
              0 0 14px rgba(110,170,255,.20),
              inset 0 0 38px rgba(110,170,255,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 4.25s;
}
.k2x-rank #prizes_table tbody tr:nth-child(6) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(6) td:first-child {
  background: linear-gradient(90deg, rgba(110,170,255,.155), rgba(110,170,255,0.136));
  box-shadow: inset 3px 0 0 #92c2ff, inset 16px 0 28px -14px rgba(110,170,255,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(6) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(6) td:last-child {
  background: rgba(110,170,255,.059);
  box-shadow: inset -3px 0 0 rgba(110,170,255,.50);
}

/* --- 7. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(7),
.k2x-rank #tableRanking tbody tr:nth-child(7) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(90,200,255,.12) 42%, transparent 60%),
    linear-gradient(180deg, rgba(90,200,255,.60), rgba(90,200,255,0) 2px, rgba(90,200,255,0) calc(100% - 2px), rgba(90,200,255,.60)),
    linear-gradient(90deg, rgba(90,200,255,.150), rgba(90,200,255,.082) 48%, rgba(90,200,255,.056));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(90,200,255,.25),
              0 0 14px rgba(90,200,255,.19),
              inset 0 0 38px rgba(90,200,255,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 5.1s;
}
.k2x-rank #prizes_table tbody tr:nth-child(7) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(7) td:first-child {
  background: linear-gradient(90deg, rgba(90,200,255,.150), rgba(90,200,255,0.132));
  box-shadow: inset 3px 0 0 #7fdcff, inset 16px 0 28px -14px rgba(90,200,255,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(7) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(7) td:last-child {
  background: rgba(90,200,255,.056);
  box-shadow: inset -3px 0 0 rgba(90,200,255,.50);
}

/* --- 8. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(8),
.k2x-rank #tableRanking tbody tr:nth-child(8) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(90,225,205,.12) 42%, transparent 60%),
    linear-gradient(180deg, rgba(90,225,205,.60), rgba(90,225,205,0) 2px, rgba(90,225,205,0) calc(100% - 2px), rgba(90,225,205,.60)),
    linear-gradient(90deg, rgba(90,225,205,.145), rgba(90,225,205,.078) 48%, rgba(90,225,205,.053));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(90,225,205,.24),
              0 0 14px rgba(90,225,205,.18),
              inset 0 0 38px rgba(90,225,205,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 5.95s;
}
.k2x-rank #prizes_table tbody tr:nth-child(8) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(8) td:first-child {
  background: linear-gradient(90deg, rgba(90,225,205,.145), rgba(90,225,205,0.128));
  box-shadow: inset 3px 0 0 #7fe8dd, inset 16px 0 28px -14px rgba(90,225,205,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(8) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(8) td:last-child {
  background: rgba(90,225,205,.053);
  box-shadow: inset -3px 0 0 rgba(90,225,205,.50);
}

/* --- 9. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(9),
.k2x-rank #tableRanking tbody tr:nth-child(9) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(100,225,150,.11) 42%, transparent 60%),
    linear-gradient(180deg, rgba(100,225,150,.60), rgba(100,225,150,0) 2px, rgba(100,225,150,0) calc(100% - 2px), rgba(100,225,150,.60)),
    linear-gradient(90deg, rgba(100,225,150,.140), rgba(100,225,150,.074) 48%, rgba(100,225,150,.050));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(100,225,150,.23),
              0 0 14px rgba(100,225,150,.17),
              inset 0 0 38px rgba(100,225,150,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 6.8s;
}
.k2x-rank #prizes_table tbody tr:nth-child(9) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(9) td:first-child {
  background: linear-gradient(90deg, rgba(100,225,150,.140), rgba(100,225,150,0.123));
  box-shadow: inset 3px 0 0 #90efb6, inset 16px 0 28px -14px rgba(100,225,150,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(9) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(9) td:last-child {
  background: rgba(100,225,150,.050);
  box-shadow: inset -3px 0 0 rgba(100,225,150,.50);
}

/* --- 10. sira --- */
.k2x-rank #prizes_table tbody tr:nth-child(10),
.k2x-rank #tableRanking tbody tr:nth-child(10) {
  background-image:
    linear-gradient(100deg, transparent 24%, rgba(180,225,120,.11) 42%, transparent 60%),
    linear-gradient(180deg, rgba(180,225,120,.60), rgba(180,225,120,0) 2px, rgba(180,225,120,0) calc(100% - 2px), rgba(180,225,120,.60)),
    linear-gradient(90deg, rgba(180,225,120,.135), rgba(180,225,120,.070) 48%, rgba(180,225,120,.047));
  background-size: 240% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, no-repeat, no-repeat;
  box-shadow: 0 0 0 1px rgba(180,225,120,.22),
              0 0 14px rgba(180,225,120,.16),
              inset 0 0 38px rgba(180,225,120,.10);
  animation: k2r-row-sweep 9s var(--k2-ease) infinite;
  animation-delay: 7.65s;
}
.k2x-rank #prizes_table tbody tr:nth-child(10) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(10) td:first-child {
  background: linear-gradient(90deg, rgba(180,225,120,.135), rgba(180,225,120,0.119));
  box-shadow: inset 3px 0 0 #c2ef8f, inset 16px 0 28px -14px rgba(180,225,120,.7);
}
.k2x-rank #prizes_table tbody tr:nth-child(10) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(10) td:last-child {
  background: rgba(180,225,120,.047);
  box-shadow: inset -3px 0 0 rgba(180,225,120,.50);
}

/* --- 11-20: soluk celik bandi (hale YOK, sadece bant) --- */
.k2x-rank #prizes_table tbody tr:nth-child(n+11):nth-child(-n+20),
.k2x-rank #tableRanking tbody tr:nth-child(n+11):nth-child(-n+20) {
  background-image:
    linear-gradient(180deg, rgba(160,190,230,.26), rgba(160,190,230,0) 2px, rgba(160,190,230,0) calc(100% - 2px), rgba(160,190,230,.26)),
    linear-gradient(90deg, rgba(160,190,230,.075), rgba(160,190,230,.038) 48%, rgba(160,190,230,.025));
  box-shadow: 0 0 0 1px rgba(160,190,230,.14);
}
.k2x-rank #prizes_table tbody tr:nth-child(n+11):nth-child(-n+20) td:first-child,
.k2x-rank #tableRanking tbody tr:nth-child(n+11):nth-child(-n+20) td:first-child {
  background: rgba(160,190,230,.075);
  box-shadow: inset 2px 0 0 rgba(207,224,245,.55);
}
.k2x-rank #prizes_table tbody tr:nth-child(n+11):nth-child(-n+20) td:last-child,
.k2x-rank #tableRanking tbody tr:nth-child(n+11):nth-child(-n+20) td:last-child {
  background: rgba(160,190,230,.025);
}

/* Bant boyu isik gecisi. Turun yarisi bekleme -> satir surekli parlamaz;
   her sira farkli gecikmeyle basladigi icin tablo boyunca dalga akar. */
@keyframes k2r-row-sweep {
  0%   { background-position: -150% 0, 0 0, 0 0; }
  50%  { background-position:  250% 0, 0 0, 0 0; }
  100% { background-position:  250% 0, 0 0, 0 0; }
}

/* --- Denetim sonrasi dizginler ------------------------------------------
   1) Isik gecisi YALNIZCA podyumda (1-3). 10 satirda birden calisinca
      background-position compositor'a cikmadigi icin tablo boyunca surekli
      yeniden boyama oluyordu (~576k px/kare). 4-10 statik kalir; renk
      ayrimi zaten yikama + sol ray + sira numarasindan okunuyor.
   2) Royal rutbe parlamasi da ilk 10 satirla sinirli. Royal klan sayisi
      artarsa 100 ayri animasyon birden donerdi.
   3) Dis hale #prizes_wrapper tarafindan kirpiliyordu; sarmalayiciya dolgu
      verilir ki bant araligindaki isik kesilmesin. */
.k2x-rank #prizes_table tbody tr:nth-child(n+4):nth-child(-n+10),
.k2x-rank #tableRanking tbody tr:nth-child(n+4):nth-child(-n+10) { animation: none; }

.k2x-rank #prizes_table tbody tr:nth-child(n+11) .k2r-grade--royal::after,
.k2x-rank #tableRanking tbody tr:nth-child(n+11) .k2r-grade--royal::after { animation: none; }

.k2x-rank #prizes_wrapper { padding: 4px 6px 10px; }

/* ==========================================================================
   7. AYLIK / YILLIK - IKI ULUS KARTI (MonthlyRankings + YearlyRankings)
   --------------------------------------------------------------------------
   Eski sunum iki ulusu TEK tabloda yan yana koyuyordu (6 kolon, bir tr'de
   iki oyuncu); bolum 6'nin bant/aura tasarimi bu duzenle catisiyordu.
   Yeni sunum: her ulus kendi kartinda ayri tablo. Genis ekranda 2 sutun,
   900px altinda alt alta. Kart basligi ulus ikonu + ad + oyuncu sayisi.

   Tablolardan biri #prizes_table, digeri #tableRanking id'sini tasir
   (bolum 6 kurallari bu iki id'ye bagli; id tekrari gecersiz HTML).
   Sarmalayici id yerine .k2r-tablewrap class'i kullanir (satir 63-71'de
   #prizes_wrapper ile ayni kabuk gorunumune sahip). ranktable.css'in
   #prizes_wrapper kapsamindaki boyut kurallari class sarmalayiciya
   uygulanmadigi icin eksik kalanlar burada .k2r-tablewrap icin tekrarlanir.
   ========================================================================== */

/* --- Kart izgarasi: 2 sutun, dar ekranda tek sutun ---------------------- */
.k2x-rank .k2r-nations {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--k2-space-5);
  align-items: start;
}
@media (max-width: 900px) {
  .k2x-rank .k2r-nations { grid-template-columns: minmax(0, 1fr); }
}
.k2x-rank .k2r-nation-card { min-width: 0; }

/* --- Kart basligi ------------------------------------------------------- */
.k2x-rank .k2r-nation-head {
  display: flex;
  align-items: center;
  gap: var(--k2-space-3);
  margin: 0 0 var(--k2-space-3);
  padding: 10px var(--k2-space-4);
  border: 1px solid var(--k2-border);
  border-radius: var(--k2-radius-card);
  background: var(--k2-surface);
  box-shadow: var(--k2-shadow-md);
}
.k2x-rank .k2r-nation-head__ico {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  object-fit: contain;
}
.k2x-rank .k2r-nation-head__name {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  color: var(--k2-gold);
  font-size: var(--k2-fs-lg);
  font-weight: var(--k2-fw-heavy);
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.k2x-rank .k2r-nation-head__count {
  flex: 0 0 auto;
  padding: 4px 12px;
  border: 1px solid var(--k2-border);
  border-radius: var(--k2-radius-pill);
  background: var(--k2-bg-elev);
  color: var(--k2-text-muted);
  font-size: var(--k2-fs-xs);
  font-weight: var(--k2-fw-bold);
  letter-spacing: .04em;
  white-space: nowrap;
}

/* --- Sarmalayici: bolum 6'daki hale kirpilmasin diye ayni dolgu --------- */
.k2x-rank .k2r-tablewrap { padding: 4px 6px 10px; }

/* --- ranktable.css #prizes_wrapper boyut kurallarinin karsiligi --------- */
.k2x-rank .k2r-tablewrap #prizes_table,
.k2x-rank .k2r-tablewrap #tableRanking {
  width: 100%;
  min-width: 0; /* ranktable.css 800px altinda 720px dayatir; 3 kolonda gereksiz */
  table-layout: fixed !important;
}
.k2x-rank .k2r-tablewrap #prizes_table thead th,
.k2x-rank .k2r-tablewrap #tableRanking thead th {
  padding: 13px 14px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}
.k2x-rank .k2r-tablewrap #prizes_table tbody td,
.k2x-rank .k2r-tablewrap #tableRanking tbody td {
  padding: 10px 14px !important;
  font-size: 14px !important;
  line-height: 1.22 !important;
  height: auto !important;
  overflow: hidden;
}
.k2x-rank .k2r-tablewrap #prizes_table tbody tr,
.k2x-rank .k2r-tablewrap #tableRanking tbody tr {
  height: auto !important;
  min-height: 0 !important;
}
.k2x-rank .k2r-tablewrap .nation,
.k2x-rank .k2r-tablewrap .class,
.k2x-rank .k2r-tablewrap .grade,
.k2x-rank .k2r-tablewrap .symbol {
  width: 26px !important;
  min-width: 26px !important;
  height: 26px !important;
  border-radius: 8px !important;
  font-size: 10px !important;
  line-height: 1 !important;
}
.k2x-rank .k2r-tablewrap .rank-player-icons { gap: 6px !important; margin-right: 6px !important; }
.k2x-rank .k2r-tablewrap .k2r-rank-medal { gap: 6px !important; white-space: nowrap !important; }
.k2x-rank .k2r-tablewrap .k2r-rank-medal img {
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
}
.k2x-rank .k2r-tablewrap .k2r-rank-no {
  min-width: 36px !important;
  height: 28px !important;
  padding: 0 9px !important;
  font-size: 13px !important;
  line-height: 28px !important;
}
.k2x-rank .k2r-tablewrap .k2r-player-cell { font-size: 14px !important; line-height: 1.2 !important; }
.k2x-rank .k2r-tablewrap .k2r-player-name,
.k2x-rank .k2r-tablewrap #prizes_table a,
.k2x-rank .k2r-tablewrap #tableRanking a {
  font-size: 15px !important;
  line-height: 1.2 !important;
  max-width: 100%;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.k2x-rank .k2r-tablewrap .k2r-player-name {
  display: inline-block !important;
  max-width: 240px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  vertical-align: middle !important;
}
.k2x-rank .k2r-tablewrap .k2r-rank-badges {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
  margin: 0 !important;
  max-width: 100%;
}
.k2x-rank .k2r-tablewrap .k2r-rank-badge {
  min-height: 24px !important;
  height: 24px !important;
  padding: 2px 9px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  line-height: 18px !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}
.k2x-rank .k2r-tablewrap .k2r-rank-badge .nation,
.k2x-rank .k2r-tablewrap .k2r-rank-badge .grade {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  border-radius: 6px !important;
  font-size: 8px !important;
}
.k2x-rank .k2r-tablewrap .k2r-np__val { font-size: 16px !important; line-height: 1.15 !important; }
.k2x-rank .k2r-tablewrap .k2r-np--np .k2r-np__val { font-size: 15px !important; }
.k2x-rank .k2r-tablewrap .k2r-np__sub { font-size: 10px !important; }

/* --- 3 kolonluk genislikler: [sira | oyuncu | puan] --------------------- */
.k2x-rank .k2r-tablewrap #prizes_table th:nth-child(1),
.k2x-rank .k2r-tablewrap #tableRanking th:nth-child(1) { width: 122px; }
.k2x-rank .k2r-tablewrap #prizes_table th:nth-child(3),
.k2x-rank .k2r-tablewrap #tableRanking th:nth-child(3) { width: 150px; }
.k2x-rank .k2r-tablewrap #prizes_table tbody td:nth-child(3),
.k2x-rank .k2r-tablewrap #tableRanking tbody td:nth-child(3) { white-space: nowrap; }

/* --- Bos ulus durumu ---------------------------------------------------- */
.k2x-rank .k2r-tablewrap .k2r-nation-empty {
  padding: var(--k2-space-6) var(--k2-space-4) !important;
  color: var(--k2-text-muted);
  font-size: var(--k2-fs-sm) !important;
  text-align: center !important;
}

/* --- Dar ekran: kartlar zaten alt alta; tablo kendi icinde sikisir ------ */
@media (max-width: 800px) {
  .k2x-rank .k2r-tablewrap #prizes_table thead th,
  .k2x-rank .k2r-tablewrap #tableRanking thead th { padding: 11px 10px !important; }
  .k2x-rank .k2r-tablewrap #prizes_table tbody td,
  .k2x-rank .k2r-tablewrap #tableRanking tbody td { padding: 9px 10px !important; }
  .k2x-rank .k2r-tablewrap #prizes_table th:nth-child(1),
  .k2x-rank .k2r-tablewrap #tableRanking th:nth-child(1) { width: 106px; }
  .k2x-rank .k2r-tablewrap #prizes_table th:nth-child(3),
  .k2x-rank .k2r-tablewrap #tableRanking th:nth-child(3) { width: 118px; }
  .k2x-rank .k2r-tablewrap .k2r-player-name { max-width: 150px !important; }
  .k2x-rank .k2r-tablewrap .k2r-np__val { font-size: 15px !important; }
  .k2x-rank .k2r-nation-head__name { font-size: var(--k2-fs-md); }
}
/* Klan lideri adi da klanin sira rengini alir (ranktable.css'in
   td:nth-child(3) a renk kuralini ezmek icin ozgullugu yuksek tutuldu). */
#prizes_wrapper .k2r-clan-ranking-table td:nth-child(3) a.k2r-chief.k2r-elite--1,
#prizes_wrapper td a.k2r-chief.k2r-elite--1 { color: #ffe889 !important; }
#prizes_wrapper .k2r-clan-ranking-table td:nth-child(3) a.k2r-chief.k2r-elite--2,
#prizes_wrapper td a.k2r-chief.k2r-elite--2 { color: #dff2ff !important; }
#prizes_wrapper .k2r-clan-ranking-table td:nth-child(3) a.k2r-chief.k2r-elite--3,
#prizes_wrapper td a.k2r-chief.k2r-elite--3 { color: #ffb877 !important; }
#prizes_wrapper .k2r-clan-ranking-table td:nth-child(3) a.k2r-chief.k2r-elite--4,
#prizes_wrapper td a.k2r-chief.k2r-elite--4 { color: #cfa8ff !important; }
#prizes_wrapper .k2r-clan-ranking-table td:nth-child(3) a.k2r-chief.k2r-elite--5,
#prizes_wrapper td a.k2r-chief.k2r-elite--5 { color: #8ff0b5 !important; }

/* ==========================================================================
   8. GIRIS KOREOGRAFISI + PODYUM ISIM PARILTISI + ROZET NABZI (05.09.2026)
   --------------------------------------------------------------------------
   Sahibin istegi: "siralamadaki oyuncularin sirasina gore efektler".
   Bolum 6'daki bantlar/auralar SABIT kalir; buradakiler TEK SEFERLIK giris
   (ilk 20 satir podyumdan asagiya sirayla belirir) + podyum isimlerinde
   akan metal parilti + 1. sira rozetinde nabiz. Hepsi transform/opacity
   ya da kucuk alan repaint'i; 21+ satirda hicbir animasyon yok.
   ========================================================================== */

/* 05.09.2026 performans: tr uzerinde transform tablo genelinde yeniden boyama
   yaptiriyordu (Aylik/Yillik sayfada 2 tablo x 20 satir -> kasma). Giris artik
   YALNIZ opaklik; layout tetiklemez. */
@keyframes k2r-row-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes k2r-name-shimmer {
  0%   { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}
@keyframes k2r-badge-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(255,201,40,.45); }
  55%      { box-shadow: 0 0 0 7px rgba(255,201,40,0); }
}

/* Ilk 20 satir: tek seferlik giris. Podyum (1-3) sweep animasyonunu KAYBETMESIN
   diye iki animasyon birlikte yazilir; 4-20 yalniz giris. */
.k2x-rank #prizes_table tbody tr:nth-child(-n+20),
.k2x-rank #tableRanking tbody tr:nth-child(-n+20) {
  animation: k2r-row-in .6s cubic-bezier(.2,.8,.2,1) backwards;
}
/* Sampiyon satirinda da SUREKLI isik gecisi kapatildi: tr genisligindeki
   background-position animasyonu her karede tum satiri yeniden boyatiyor,
   200+ satirlik sayfada kaydirma takiliyordu. Isik gecisi acilista 2 tur
   doner, sonra durur (bant + hale sabit kalir). */
.k2x-rank #prizes_table tbody tr:nth-child(1),
.k2x-rank #tableRanking tbody tr:nth-child(1) { animation: k2r-row-sweep 6s var(--k2-ease) .3s 2, k2r-row-in .7s cubic-bezier(.2,.8,.2,1) .05s backwards; }
/* 2. ve 3. sirada SUREKLI isik gecisi kapatildi (performans): bant/hale/isim
   piriltisi duruyor, yalniz sonsuz background-position animasyonu yok.
   Isik gecisi sadece sampiyon satirinda kalir. */
.k2x-rank #prizes_table tbody tr:nth-child(2),
.k2x-rank #tableRanking tbody tr:nth-child(2) { animation: k2r-row-in .7s cubic-bezier(.2,.8,.2,1) .13s backwards; }
.k2x-rank #prizes_table tbody tr:nth-child(3),
.k2x-rank #tableRanking tbody tr:nth-child(3) { animation: k2r-row-in .7s cubic-bezier(.2,.8,.2,1) .21s backwards; }
.k2x-rank #prizes_table tbody tr:nth-child(4),  .k2x-rank #tableRanking tbody tr:nth-child(4)  { animation-delay: .29s; }
.k2x-rank #prizes_table tbody tr:nth-child(5),  .k2x-rank #tableRanking tbody tr:nth-child(5)  { animation-delay: .35s; }
.k2x-rank #prizes_table tbody tr:nth-child(6),  .k2x-rank #tableRanking tbody tr:nth-child(6)  { animation-delay: .41s; }
.k2x-rank #prizes_table tbody tr:nth-child(7),  .k2x-rank #tableRanking tbody tr:nth-child(7)  { animation-delay: .47s; }
.k2x-rank #prizes_table tbody tr:nth-child(8),  .k2x-rank #tableRanking tbody tr:nth-child(8)  { animation-delay: .53s; }
.k2x-rank #prizes_table tbody tr:nth-child(9),  .k2x-rank #tableRanking tbody tr:nth-child(9)  { animation-delay: .59s; }
.k2x-rank #prizes_table tbody tr:nth-child(10), .k2x-rank #tableRanking tbody tr:nth-child(10) { animation-delay: .65s; }
.k2x-rank #prizes_table tbody tr:nth-child(11), .k2x-rank #tableRanking tbody tr:nth-child(11) { animation-delay: .70s; }
.k2x-rank #prizes_table tbody tr:nth-child(12), .k2x-rank #tableRanking tbody tr:nth-child(12) { animation-delay: .74s; }
.k2x-rank #prizes_table tbody tr:nth-child(13), .k2x-rank #tableRanking tbody tr:nth-child(13) { animation-delay: .78s; }
.k2x-rank #prizes_table tbody tr:nth-child(14), .k2x-rank #tableRanking tbody tr:nth-child(14) { animation-delay: .82s; }
.k2x-rank #prizes_table tbody tr:nth-child(15), .k2x-rank #tableRanking tbody tr:nth-child(15) { animation-delay: .86s; }
.k2x-rank #prizes_table tbody tr:nth-child(16), .k2x-rank #tableRanking tbody tr:nth-child(16) { animation-delay: .90s; }
.k2x-rank #prizes_table tbody tr:nth-child(17), .k2x-rank #tableRanking tbody tr:nth-child(17) { animation-delay: .94s; }
.k2x-rank #prizes_table tbody tr:nth-child(18), .k2x-rank #tableRanking tbody tr:nth-child(18) { animation-delay: .98s; }
.k2x-rank #prizes_table tbody tr:nth-child(19), .k2x-rank #tableRanking tbody tr:nth-child(19) { animation-delay: 1.02s; }
.k2x-rank #prizes_table tbody tr:nth-child(20), .k2x-rank #tableRanking tbody tr:nth-child(20) { animation-delay: 1.06s; }

/* Podyum isimleri: metal parilti (altin / gumus / bronz), yavas ve surekli.
   Kucuk metin alani -> ucuz repaint. Hover'da renk degismez, parilti kalir. */
.k2x-rank #prizes_table tbody tr:nth-child(-n+3) .k2r-player-name,
.k2x-rank #tableRanking tbody tr:nth-child(-n+3) .k2r-player-name,
.k2x-rank #prizes_table tbody tr:nth-child(-n+3) a.k2r-chief,
.k2x-rank #tableRanking tbody tr:nth-child(-n+3) a.k2r-chief {
  background-size: 200% 100%;
  -webkit-background-clip: text; background-clip: text;
  color: transparent !important; -webkit-text-fill-color: transparent;
  animation: k2r-name-shimmer 4s linear 3;   /* 3 tur parlar, sonra sabit metal renk (sonsuz degil) */
  font-weight: 800;
}
.k2x-rank #prizes_table tbody tr:nth-child(1) .k2r-player-name,
.k2x-rank #tableRanking tbody tr:nth-child(1) .k2r-player-name,
.k2x-rank #prizes_table tbody tr:nth-child(1) a.k2r-chief,
.k2x-rank #tableRanking tbody tr:nth-child(1) a.k2r-chief {
  background-image: linear-gradient(90deg, #ffe889 0%, #fff8d6 22%, #e6a300 45%, #ffe889 62%, #fff8d6 80%, #ffe889 100%);
  /* filter: drop-shadow KALDIRILDI: animasyonlu ogede filtre her karede pahali repaint. */
}
.k2x-rank #prizes_table tbody tr:nth-child(2) .k2r-player-name,
.k2x-rank #tableRanking tbody tr:nth-child(2) .k2r-player-name,
.k2x-rank #prizes_table tbody tr:nth-child(2) a.k2r-chief,
.k2x-rank #tableRanking tbody tr:nth-child(2) a.k2r-chief {
  background-image: linear-gradient(90deg, #dfe8f5 0%, #ffffff 22%, #9fb0c4 45%, #dfe8f5 62%, #ffffff 80%, #dfe8f5 100%);
  animation-duration: 6.5s;
}
.k2x-rank #prizes_table tbody tr:nth-child(3) .k2r-player-name,
.k2x-rank #tableRanking tbody tr:nth-child(3) .k2r-player-name,
.k2x-rank #prizes_table tbody tr:nth-child(3) a.k2r-chief,
.k2x-rank #tableRanking tbody tr:nth-child(3) a.k2r-chief {
  background-image: linear-gradient(90deg, #f7c08a 0%, #ffe3c4 22%, #a35f27 45%, #f7c08a 62%, #ffe3c4 80%, #f7c08a 100%);
  animation-duration: 8s;
}

/* 1. siranin "Genel 1." rozeti: yavas nabiz halkasi. */
.k2x-rank #prizes_table tbody tr:nth-child(1) .k2r-rank-badge.overall,
.k2x-rank #tableRanking tbody tr:nth-child(1) .k2r-rank-badge.overall {
  animation: k2r-badge-pulse 2.6s ease-out 4;   /* 4 nabiz, sonra durur */
}

/* Sayac animasyonu sirasinda rakamlar titremesin. */
.k2x-rank .k2r-score-main strong,
.k2x-rank .k2r-np__val { font-variant-numeric: tabular-nums; }

/* Hover'da tr transform'u KALDIRILDI (fare her gecisinde tablo repaint'i);
   bolum 6'daki brightness hover yeterli. */

@media (prefers-reduced-motion: reduce) {
  .k2x-rank #prizes_table tbody tr,
  .k2x-rank #tableRanking tbody tr { animation: none !important; transform: none !important; opacity: 1 !important; }
  .k2x-rank .k2r-player-name, .k2x-rank a.k2r-chief, .k2x-rank .k2r-rank-badge.overall { animation: none !important; }
}

/* ==========================================================================
   9. KAYDIRMA PERFORMANSI (05.09.2026)
   --------------------------------------------------------------------------
   Siralama sayfalari 200+ satir. Ustteki yapisik bar (masthead / navbar)
   backdrop-filter blur kullaniyor: her kaydirma karesinde altindaki tablo
   yeniden bulaniklastiriliyor -> uzun sayfada takilma. Siralama sayfalarinda
   (html.k2r-page, k2r_page_open'daki script ekler) blur kapatilir, bar opak
   olur. Sonsuz animasyonlar da burada kisitlanir: madalya sprite'i ve
   sampiyon halesi kalir (kucuk alan), klan-adi akisi ve satir isik gecisi
   tek turla sinirlanir.
   ========================================================================== */
html.k2r-page .k2a-masthead,
html.k2r-page .navbar-wrapper {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: rgba(11, 14, 20, .97) !important;
}
html.k2r-page .k2r-elite { animation-iteration-count: 2 !important; }
html.k2r-page .k2r-rank-medal.k2r-aura--champ::before { animation-iteration-count: 3 !important; }
/* Tablo kaydirilirken satir hover'inda filter:brightness tum satiri
   yeniden boyar; onun yerine ucuz bir arka plan vurgusu. */
html.k2r-page .k2x-rank #prizes_table tbody tr:hover,
html.k2r-page .k2x-rank #tableRanking tbody tr:hover { filter: none; }
html.k2r-page .k2x-rank #prizes_table tbody tr:hover td,
html.k2r-page .k2x-rank #tableRanking tbody tr:hover td { background-color: rgba(255,255,255,.035); }