/* ==========================================================================
   OrcaScore — yerleşim v2: iç sayfalar (kalanlar) — diğer sporların takım / sporcu / oyuncu / turnuva sayfaları, arama sonuçları,
   Keşfet ve ülke sayfaları, topluluk (merkez, sıralama, özel ligler, lig, tahminlerim, profil, bildirimler) ve sohbet lobisi.
   docs/REBRAND-ORCASCORE.md "İç sayfalar v2 — kalanlar". Yalnızca v2'de, orca.css'ten (v2 kabuğu dahil; ve sayfaya göre entity-v2.css /
   lists-v2.css'ten) sonra yüklenir ('styles-v2' yığını) — seçiciler [data-layout] öneki taşımaz, her kural kendi sayfa kabına bağlıdır
   (.ex-page--sport, .sr-*, .ex-* (Keşfet), .cm-*, .chat-lobby …). Yeni sınıf önekleri: .sv- (spor varlıkları), .pv- (ortak).
   Görsel dil: panel 24 / kart 18 / kontrol 12 px, Space Grotesk sayılar, bölüm başlığı + sayı çipi + sağda bağlantı; koyu + açık eşit
   özenle; odak görünür; "hareketi azalt"ta kendiliğinden hareket yok. Telefon 360 / 390 px yatay taşmasız.
   ========================================================================== */

/* ---------------------------------------------------------------- Ortak: sayı çipi, bölüm başlığı */
.sv-count, .pv-count {
  display: inline-grid; place-items: center; min-width: 28px; height: 24px; padding-inline: 8px; margin-inline-start: 2px; border-radius: var(--radius-pill);
  background: var(--surface2); border: 1px solid var(--border); color: var(--text-secondary);
  font: 700 0.8125rem/1 var(--font-display); font-variant-numeric: tabular-nums; letter-spacing: 0;
}

/* ==========================================================================
   Diğer sporlar: takım / sporcu / oyuncu / turnuva (entity-v2.css'in .ex-page / .ex-hero / .ex-tabbar dili üstüne)
   ========================================================================== */
.ex-page--sport .ex-body > .layout { margin-block-start: 0; }
.ex-page--sport .section-head { align-items: center; margin-block-end: var(--space-4); }
.ex-page--sport .section-head h2 { gap: 10px; font: 700 clamp(1.1875rem, 1.05rem + 0.35vw, 1.375rem)/1.2 var(--font-display); letter-spacing: -0.02em; }
.ex-page--sport .section-head h2 > .icon { width: 18px; height: 18px; color: var(--primary-text); }
/* Sayfa içi bölüm şeridi: geçerli bölüm (pages-v2.js) seçili sekme gibi */
.ex-tabs .tab[aria-current="location"] { color: var(--primary-text); }
.ex-tabs .tab[aria-current="location"]::after {
  content: ''; position: absolute; inset-inline: 12px; inset-block-end: -1px; height: 2px; border-radius: 2px 2px 0 0; background: var(--primary);
}
.ex-page--sport [id^="sv-"] { scroll-margin-top: calc(var(--shell-header, 64px) + 70px); }

/* Maç blokları: kart dili (18 px), başlık blok dışında */
.sv-block { border-radius: var(--orca-card); overflow: hidden; }
.sv-block .league-block__rows > .mrow:first-child { border-block-start: 0; }
.sv-duo { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-6); align-items: start; container: sv-duo / inline-size; }
@media (min-width: 1280px) {
  .sv-duo:not(.sv-duo--single) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.sv-duo .srow .mrow__time { min-width: 0; }

/* Kadro kartları: fotoğraf + forma numarası, ad, mevki · ülke · boy */
.sv-group {
  display: flex; align-items: center; gap: 8px; margin: var(--space-5) 0 var(--space-3); color: var(--text-secondary);
  font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
}
.sv-group span { color: var(--muted); font-family: var(--font-display); letter-spacing: 0; }
.sv-people { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); gap: 10px; }
.sv-person {
  display: flex; align-items: center; gap: 12px; min-width: 0; padding: 10px 14px 10px 10px; border-radius: var(--orca-ctl);
  border: 1px solid var(--border); background: var(--surface); color: var(--text);
  transition: border-color var(--motion-fast), background var(--motion-fast);
}
.sv-person:hover { color: var(--text); border-color: color-mix(in srgb, var(--primary) 40%, var(--border)); background: color-mix(in srgb, var(--surface2) 50%, var(--surface)); }
.sv-person:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.sv-person__media { position: relative; flex: none; display: grid; }
.sv-person__media .crest { border-radius: 50%; background: var(--surface2); }
.sv-person__media .crest img { object-fit: cover; }
.sv-person__num {
  position: absolute; inset-block-end: -4px; inset-inline-end: -8px; min-width: 22px; height: 20px; padding-inline: 5px; display: grid; place-items: center;
  border-radius: var(--radius-pill); border: 2px solid var(--surface); background: var(--btn-primary-bg, var(--primary)); color: var(--btn-primary-fg, var(--on-primary));
  font: 800 0.625rem/1 var(--font-display);
}
.sv-person__main { display: grid; gap: 2px; min-width: 0; }
.sv-person__main strong { font-size: var(--fs-sm); font-weight: 700; }
.sv-person__main small { color: var(--muted); font-size: 0.75rem; }

/* Modül bölümü (sezon istatistikleri) ve bireysel spor blokları: aynı başlık ölçeği */
.sv-slot > section, .sv-sec > section { margin: 0; }

/* Kahraman: lider kutusu, oyuncunun takım kartı */
.sv-leader { display: inline-flex; align-items: center; gap: 10px; min-width: 0; max-width: 100%; color: var(--text); }
.sv-leader strong { font: 700 1.125rem/1.1 var(--font-display); letter-spacing: -0.015em; }
.sv-leader:hover strong { text-decoration: underline; text-underline-offset: 3px; }
.sv-teamcard__row { display: flex; align-items: center; gap: 14px; min-width: 0; }
.sv-teamcard__row .crest { flex: none; }
.sv-teamcard__name { display: grid; gap: 2px; min-width: 0; flex: 1 1 auto; }
.sv-teamcard__name strong { font: 700 1.0625rem/1.2 var(--font-display); letter-spacing: -0.01em; }
.sv-teamcard__name small { color: var(--muted); font-size: 0.75rem; font-weight: 600; }
.sv-teamcard__chev { flex: none; width: 16px; height: 16px; color: var(--muted); }
.sv-teamcard:hover .sv-teamcard__name strong { text-decoration: underline; text-underline-offset: 3px; }

/* Oyuncu profili: künye kutuları */
.sv-facts { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 10px; margin: 0; }
.sv-fact {
  display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 12px 16px 13px; border-radius: var(--orca-ctl);
  border: 1px solid var(--border); background: var(--surface);
}
.sv-fact dt { color: var(--text-secondary); font-size: 0.75rem; font-weight: 600; }
.sv-fact dd { margin: 0; min-width: 0; font-weight: 700; overflow-wrap: anywhere; }
.sv-fact dd a { color: var(--text); text-decoration: underline; text-decoration-color: var(--border-strong); text-underline-offset: 3px; }

@media (max-width: 767px) {
  .sv-people { grid-template-columns: minmax(0, 1fr); }
}

/* ==========================================================================
   Arama sonuçları (/arama): sonuç grupları — bölüm başlığı (simge kutusu, başlık, sayı çipi, sağda "Tümünü gör"), varlık kartları
   (arma levhası, ad, alt satır, form / sıradaki maç), haberler kırpılmayan kapakla; boş / başlangıç durumu kartları. search.js kancaları
   (data-sr-page, data-sr-item, data-sr-more, data-sr-recent) aynı; işaretleme değişmez.
   ========================================================================== */
[data-sr-page] .sr-layout { gap: var(--space-10); margin-block-start: var(--space-8); }
.sr-section { display: flex; flex-direction: column; gap: var(--space-4); }
.sr-section__head { flex-wrap: wrap; gap: 10px 12px; margin: 0; }
.sr-section__head h2 { gap: 12px; font: 700 clamp(1.1875rem, 1.05rem + 0.35vw, 1.375rem)/1.2 var(--font-display); letter-spacing: -0.02em; }
.sr-section__head h2 > .icon {
  box-sizing: content-box; width: 16px; height: 16px; padding: 7px; border-radius: 10px; background: var(--primary-soft); color: var(--primary-text);
}
.sr-section__count {
  display: inline-grid; place-items: center; min-width: 28px; height: 24px; padding: 0 8px; border: 1px solid var(--border);
  font: 700 0.8125rem/1 var(--font-display);
}
.sr-section__more { gap: 6px; color: var(--primary-text); }
.sr-section__more:hover { color: var(--primary-text); text-decoration: underline; text-underline-offset: 4px; }
.sr-list { gap: 10px; }
@media (min-width: 900px) { .sr-list--2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); } }
/* Varlık kartı: arma levhası (kare logo / yuvarlak fotoğraf), Space Grotesk ad */
.sr-row {
  gap: 14px; min-height: 76px; padding: 12px 14px 12px 12px; border-radius: var(--orca-card); background: var(--surface); box-shadow: var(--orca-card-shadow, none);
}
.sr-row:hover { border-color: color-mix(in srgb, var(--primary) 42%, var(--border)); background: var(--surface); box-shadow: var(--elev2); }
.sr-row:active { transform: none; }
.sr-row:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.sr-row__media > .crest { --crest: 40px !important; box-sizing: content-box; padding: 6px; border-radius: 14px; background: var(--surface2); }
.sr-row__media > .crest--photo { padding: 0; --crest: 52px !important; border-radius: 50%; }
.sr-row__media .sx-icon { width: 52px; height: 52px; border-radius: 14px; }
.sr-row__sport { inset-inline-end: -5px; inset-block-end: -5px; width: 22px; height: 22px; background: var(--bg-elevated); }
.sr-row__name { font: 700 1rem/1.25 var(--font-display); letter-spacing: -0.012em; }
.sr-row__sub { font-size: 0.78125rem; color: var(--text-secondary); }
.sr-row__extra { color: var(--muted); }
.sr-row__next { padding: 3px 9px 3px 7px; border-radius: var(--radius-pill); background: var(--surface2); color: var(--text-secondary); font-weight: 600; }
.sr-row .chev { transition: transform var(--motion-base) var(--ease), color var(--motion-fast); }
.sr-row:hover .chev { transform: translateX(2px); color: var(--primary-text); }
[dir="rtl"] .sr-row:hover .chev { transform: translateX(-2px) scaleX(-1); }
.sr-form-dots .form__pill { width: 18px; height: 18px; font-size: 9.5px; border-radius: 5px; }
/* Haber: kapak kırpılmaz (1200 × 630) */
.sr-row--news { align-items: flex-start; }
.sr-row__thumb { width: 128px; height: auto; aspect-ratio: 1200 / 630; border-radius: 10px; object-fit: cover; }
.sr-row--news .sr-row__name { font-size: 0.96875rem; line-height: 1.35; }
/* Akıllı yanıt kartı: panel dili */
[data-sr-page] .sa { border-radius: var(--orca-panel); box-shadow: var(--lv-panel-shadow, var(--elev2)); }
/* Boş / başlangıç durumu */
.sr-empty { border-radius: var(--orca-panel); padding: var(--space-8); justify-items: center; text-align: center; }
.sr-empty__icon { width: 60px; height: 60px; border-radius: 18px; background: var(--primary-soft); color: var(--primary-text); }
.sr-cloud .chip { height: 38px; padding-inline: 10px 14px; border-radius: var(--orca-ctl); font-weight: 600; }
.sr-cloud .chip .crest { --crest: 22px; }
.sr-tips { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 10px; }
.sr-tips li { padding: 14px 16px; border-radius: var(--orca-card); border: 1px solid var(--border); background: var(--surface); line-height: 1.5; }
.sr-tips li .icon { box-sizing: content-box; padding: 4px; border-radius: 50%; background: var(--success-soft); color: var(--success-text); margin-block-start: 0; }
.sr-tiles { gap: 10px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); }
.sr-tile { gap: 14px; padding: 14px 16px 14px 14px; border-radius: var(--orca-card); box-shadow: var(--orca-card-shadow, none); }
.sr-tile:hover { border-color: color-mix(in srgb, var(--primary) 42%, var(--border)); background: var(--surface); }
.sr-tile .sx-icon { width: 42px; height: 42px; border-radius: 12px; }
.sr-tile strong { font: 700 var(--fs-md)/1.25 var(--font-display); }
@media (max-width: 479px) {
  .sr-row__thumb { width: 96px; }
  .sr-row__media > .crest { --crest: 32px !important; padding: 5px; }
  .sr-row__media > .crest--photo { --crest: 42px !important; padding: 0; }
}

/* ==========================================================================
   Keşfet (/kesfet) ve ülke sayfası: içerik kabı .pv-explore / .pv-country (yalnızca v2 işaretlemesi; explore.js kancaları aynı).
   Bölümler arası ritim, ana sayfa bölüm başlığı, kart 18 / kontrol 12, arma levhaları; "Tarhite bugün" ve "Büyük maçlar" eşit panel.
   ========================================================================== */
.pv-explore, .pv-country { display: flex; flex-direction: column; gap: var(--space-10); min-width: 0; }
:is(.pv-explore, .pv-country) > .section, :is(.pv-explore, .pv-country) > .ex-split, :is(.pv-explore, .pv-country) > .ex-cta { margin-block: 0; }
:is(.pv-explore, .pv-country) > .ex-hero { margin-block: 0; }
:is(.pv-explore, .pv-country) .section-head { align-items: flex-end; margin-block-end: var(--space-4); }
:is(.pv-explore, .pv-country) .section-head h2 { gap: 12px; font: 700 clamp(1.25rem, 1.08rem + 0.45vw, 1.5rem)/1.2 var(--font-display); letter-spacing: -0.022em; }
:is(.pv-explore, .pv-country) .section-head h2 > .icon {
  box-sizing: content-box; width: 16px; height: 16px; padding: 7px; border-radius: 10px; background: var(--primary-soft); color: var(--primary-text);
}
:is(.pv-explore, .pv-country) .section-head p { margin-block-start: 6px; }
:is(.pv-explore, .pv-country) .section-head .link { display: inline-flex; align-items: center; gap: 6px; color: var(--primary-text); font-weight: 600; }
/* Spor kutucukları: sayı kutusu dili */
.pv-explore .ex-sports { grid-template-columns: repeat(auto-fill, minmax(min(100%, 184px), 1fr)); gap: 10px; }
@media (max-width: 639px) { .pv-explore .ex-sports { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .pv-explore .ex-sport { padding-inline-end: 10px; } }
.pv-explore .ex-sport { gap: 12px; min-height: 62px; padding: 10px 14px 10px 10px; border-radius: var(--orca-ctl); box-shadow: var(--orca-card-shadow, none); }
.pv-explore .ex-sport:hover { transform: none; border-color: color-mix(in srgb, var(--primary) 42%, var(--border)); }
.pv-explore .ex-sport__icon { width: 40px; height: 40px; border-radius: 11px; }
.pv-explore .ex-sport__text strong { font: 700 var(--fs-sm)/1.25 var(--font-display); }
.pv-explore .ex-sport--live { border-color: color-mix(in srgb, var(--live) 34%, var(--border)); }
.pv-explore .ex-sport__live { inset-block-start: -8px; inset-inline-end: 10px; height: 19px; padding-inline: 7px; font-family: var(--font-display); box-shadow: 0 0 0 3px var(--bg); }
/* Kartlar: 18 px */
:is(.pv-explore, .pv-country) :is(.ex-card, .ex-fact, .ex-league, .dircard, .poptile) { border-radius: var(--orca-card); }
:is(.pv-explore, .pv-country) .ex-card { gap: 10px; padding: 14px 16px; }
:is(.pv-explore, .pv-country) .ex-card:hover, :is(.pv-explore, .pv-country) .ex-fact:hover, :is(.pv-explore, .pv-country) .ex-league:hover { transform: none; border-color: color-mix(in srgb, var(--primary) 42%, var(--border)); }
:is(.pv-explore, .pv-country) .ex-card__score { font-size: 1.25rem; letter-spacing: -0.02em; }
.pv-explore .ex-fact { padding: var(--space-5); }
/* Tarihte bugün + büyük maçlar: eşit iki panel; uzun zaman çizelgesi panel içinde kayar (veri kesilmez) */
.pv-explore .ex-split { gap: var(--space-6); }
.pv-explore .ex-split > .section {
  display: flex; flex-direction: column; min-width: 0; padding: var(--space-5) var(--space-5) var(--space-4); border-radius: var(--orca-panel);
  border: 1px solid var(--border); background: var(--lv-panel-bg, var(--surface)); box-shadow: var(--lv-panel-shadow, none);
}
@media (min-width: 1024px) {
  .pv-explore .ex-timeline {
    max-height: 760px; overflow-y: auto; scrollbar-width: thin; overscroll-behavior: contain; padding-inline-end: 6px;
    -webkit-mask-image: linear-gradient(180deg, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(180deg, #000 calc(100% - 40px), transparent);
  }
}
.pv-explore .ex-timeline__year { border-radius: var(--orca-ctl); background: var(--surface); }
.pv-explore .ex-timeline__year strong { letter-spacing: -0.02em; }
.pv-explore .ex-split .ex-card { box-shadow: none; }
.pv-explore section[data-ex-tabs] .tabs { gap: 4px; padding: 4px; border: 1px solid var(--border); border-radius: var(--orca-ctl); background: var(--surface); width: fit-content; max-width: 100%; }
.pv-explore section[data-ex-tabs] .tab { height: 36px; padding-inline: 12px; border-radius: 9px; }
.pv-explore section[data-ex-tabs] .tab[aria-selected="true"] { background: color-mix(in srgb, var(--primary) 14%, var(--surface)); color: var(--text); }
.pv-explore section[data-ex-tabs] .tab[aria-selected="true"]::after { display: none; }
/* Popüler ligler: arma levhalı kutucuklar (Ligler dizini dili) */
:is(.pv-explore, .pv-country) .poptiles { grid-template-columns: repeat(auto-fill, minmax(min(100%, 248px), 1fr)); gap: var(--space-3); }
:is(.pv-explore, .pv-country) .poptile { gap: 14px; min-height: 72px; padding: 12px 16px 12px 12px; background: var(--surface); box-shadow: var(--orca-card-shadow, none); }
:is(.pv-explore, .pv-country) .poptile > .crest { --crest: 36px !important; box-sizing: content-box; flex: none; padding: 6px; border-radius: 12px; background: var(--surface2); }
:is(.pv-explore, .pv-country) .poptile__text strong { font: 700 var(--fs-md)/1.25 var(--font-display); }
:is(.pv-explore, .pv-country) .poptile:hover { border-color: color-mix(in srgb, var(--primary) 45%, var(--border)); transform: none; }
.pv-explore .dirgrid { gap: var(--space-4); }
.pv-explore .dircard { box-shadow: var(--orca-card-shadow, none); }
.pv-explore .dircard__head { gap: 10px; min-height: 48px; padding: 10px 16px; }
.pv-explore .dircard__head > .icon { box-sizing: content-box; width: 15px; height: 15px; padding: 6px; border-radius: 9px; background: var(--primary-soft); color: var(--primary-text); }
.pv-explore .dircard__name { font: 700 var(--fs-md)/1.2 var(--font-display); }
.pv-explore .dircard__list a { border-radius: 10px; }
.pv-explore .dircard__more { padding: 10px 16px; color: var(--primary-text); }
/* Ülke dizini */
.pv-explore .ex-dir__title { font: 700 var(--fs-lg)/1.2 var(--font-display); letter-spacing: -0.015em; }
.pv-explore .ex-countries { grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 8px; }
.pv-explore .ex-country { min-height: 44px; border-radius: var(--orca-ctl); }
.pv-explore .ex-country small { background: var(--surface2); border: 1px solid var(--border); font-family: var(--font-display); }
.pv-explore .ex-dirsearch { height: 40px; border-radius: var(--orca-ctl); }
:is(.pv-explore, .pv-country) .ex-cta { border-radius: var(--orca-panel); padding: var(--space-6); }
/* Ülke sayfası: lig kartları */
.pv-country .ex-leagues { gap: var(--space-4); }
.pv-country .ex-league { padding: var(--space-5); gap: var(--space-4); box-shadow: var(--orca-card-shadow, none); }
.pv-country .ex-league__head .crest { box-sizing: content-box; padding: 6px; border-radius: 12px; background: var(--surface2); }
.pv-country .ex-league__name strong { font: 700 var(--fs-md)/1.25 var(--font-display); }
.pv-country .ex-league__stats div { padding: 8px 10px; border-radius: 10px; }
.pv-country .ex-league__stats dd { font-size: var(--fs-lg); letter-spacing: -0.02em; }
:is(.pv-explore, .pv-country) .league-block { border-radius: var(--orca-card); }

/* ==========================================================================
   Topluluk (merkez, sıralama, özel ligler, lig, tahminlerim, profil, bildirimler) — community.css bileşenleri v2 dilinde;
   işaretleme ve community.js kancaları (data-cm-quick, data-cm-pct, data-copy, data-cm-panel …) aynı. Sıralama: ilk üç için kürsü.
   ========================================================================== */
[data-layout="v2"] .cm-subnav { gap: 2px; margin-block-end: var(--space-5); border-block-end: 1px solid var(--border); }
[data-layout="v2"] .cm-subnav .tab { height: 46px; padding: 0 14px; border-radius: 0; color: var(--text-secondary); font-weight: 600; }
[data-layout="v2"] .cm-subnav .tab[aria-current="page"] { color: var(--primary-text); }
[data-layout="v2"] .cm-subnav .tab[aria-current="page"]::after { inset-inline: 12px; height: 2px; }
/* Sayı kutuları (merkez, tahminlerim, profil) */
.cm-me { gap: 10px; }
.cm-tile { gap: 6px; padding: 12px 16px 13px; border-radius: var(--orca-ctl); border: 1px solid var(--border); background: var(--surface); }
.cm-hero .cm-tile { background: color-mix(in srgb, var(--surface2) 70%, transparent); }
a.cm-tile { color: var(--text); transition: border-color var(--motion-fast); }
a.cm-tile:hover { border-color: color-mix(in srgb, var(--primary) 45%, var(--border)); color: var(--text); }
.cm-tile__label { color: var(--text-secondary); text-transform: none; letter-spacing: 0; font-size: 0.75rem; }
.cm-tile__value { font-size: 1.75rem; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.cm-tile__sub { color: var(--muted); }
/* Taraf tut listesi: maç kartları */
[data-layout="v2"] .cm-fixtures { gap: 0; overflow: hidden; }
.cm-fx { gap: var(--space-3) var(--space-6); padding: var(--space-4) var(--space-5); transition: background var(--motion-fast); }
.cm-fx:hover { background: color-mix(in srgb, var(--surface2) 45%, transparent); }
.cm-fx__teams { gap: 6px; font-family: var(--font-display); font-size: var(--fs-md); letter-spacing: -0.01em; }
.cm-fx__team .crest { --crest: 24px !important; }
.cm-fx__meta { font-weight: 600; }
.cm-quick { gap: 6px; }
.cm-quick button, .cm-quick .btn { height: 42px; border-radius: var(--orca-ctl); }
.cm-crowd__bar { height: 6px; gap: 3px; }
@media (min-width: 720px) {
  .cm-fx { grid-template-columns: minmax(0, 1fr) minmax(280px, 340px); align-items: center; }
}
/* Yan sütun kartları: simge kutulu başlık (varlık sayfalarının dili) */
[data-layout="v2"] :is(.cm-hero ~ .layout, .chat-lobby .layout) > .aside .card,
[data-layout="v2"] .cm-forms > .card, [data-layout="v2"] #invite.card, [data-layout="v2"] #bans.card { padding: var(--space-5); border-radius: var(--orca-card); }
[data-layout="v2"] :is(.cm-hero ~ .layout, .chat-lobby .layout, .cm-board-tools ~ .layout) .aside .card__title,
[data-layout="v2"] .cm-forms .card__title, [data-layout="v2"] #invite .card__title {
  display: flex; align-items: center; gap: 10px; font: 700 1rem/1.25 var(--font-display); letter-spacing: -0.015em;
}
[data-layout="v2"] :is(.cm-hero ~ .layout, .chat-lobby .layout) .aside .card__title > :is(.icon, svg):first-child,
[data-layout="v2"] :is(.cm-forms, #invite) .card__title > :is(.icon, svg):first-child {
  flex: none; width: 28px; height: 28px; padding: 6px; border-radius: 9px; background: var(--primary-soft); color: var(--primary-text);
}
.cm-rank-list > li { padding: 10px 2px; }
.cm-feed__icon { border-radius: 10px; background: var(--primary-soft); color: var(--primary-text); }
.cm-feed__main a { color: var(--text); }
/* Sıra çipleri: altın / gümüş / bronz */
.cm-rank { width: 28px; height: 28px; border-radius: 9px; background: var(--surface2); color: var(--text-secondary); font-size: 0.8125rem; font-variant-numeric: tabular-nums; }
.cm-rank--1 { background: linear-gradient(135deg, #FFE08A, #E0A800); color: #3A2A00; }
.cm-rank--2 { background: linear-gradient(135deg, #E6ECF3, #9AA8BB); color: #1F2A38; }
.cm-rank--3 { background: linear-gradient(135deg, #F3C79C, #C27E45); color: #2A1504; }
/* Sıralama araçları: cam çubuk */
.cm-board-tools {
  gap: var(--space-3) var(--space-4); padding: 10px 12px; border-radius: var(--orca-card); border: 1px solid var(--border); background: var(--surface);
}
.cm-board-tools .seg { padding: 4px; border-radius: var(--orca-ctl); border: 1px solid var(--border); background: var(--bg-elevated); }
.cm-board-tools .seg a { min-height: 32px; border-radius: 9px; }
.cm-board-tools .select { height: 40px; border-radius: var(--orca-ctl); }
.cm-board-tools > h2 { margin: 0; font: 700 var(--fs-lg)/1.2 var(--font-display); }
.cm-period-nav__label { font-family: var(--font-display); font-variant-numeric: tabular-nums; }
.cm-mine { border-radius: var(--orca-card); padding: 14px 18px; }
.cm-mine strong { font-size: 1.5rem; letter-spacing: -0.02em; }
/* Kürsü: 2 · 1 · 3, basamak yükseklikleri, büyük avatar, puan Space Grotesk */
[data-layout="v2"] .cm-podium {
  grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); max-width: 880px; margin: var(--space-6) auto var(--space-6); align-items: end;
}
[data-layout="v2"] .cm-podium__item {
  position: relative; gap: 8px; padding: var(--space-5) var(--space-3) 0; border: 1px solid var(--border); border-block-end: 0;
  border-radius: var(--orca-card) var(--orca-card) 0 0; box-shadow: none; overflow: hidden;
  background: linear-gradient(180deg, color-mix(in srgb, var(--pd, var(--primary)) 14%, var(--surface)) 0%, var(--surface) 70%);
}
[data-layout="v2"] .cm-podium__item--1 { --pd: #E0A800; --step: 92px; border-color: color-mix(in srgb, #E0A800 45%, var(--border)); }
[data-layout="v2"] .cm-podium__item--2 { --pd: #9AA8BB; --step: 64px; }
[data-layout="v2"] .cm-podium__item--3 { --pd: #B9733A; --step: 44px; }
[data-layout="v2"] .cm-podium__item::after {
  content: ''; display: block; align-self: stretch; height: var(--step); margin: 6px calc(-1 * var(--space-3)) 0;
  border-block-start: 1px solid color-mix(in srgb, var(--pd) 40%, var(--border));
  background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--pd) 10%, transparent) 0 8px, transparent 8px 16px), color-mix(in srgb, var(--pd) 8%, var(--surface2));
}
[data-layout="v2"] .cm-podium__item .cm-rank { width: 34px; height: 34px; border-radius: 11px; font-size: 0.9375rem; }
[data-layout="v2"] .cm-podium__item .cm-avatar { box-shadow: 0 0 0 3px var(--surface), 0 0 0 5px color-mix(in srgb, var(--pd) 70%, transparent); }
[data-layout="v2"] .cm-podium__item--1 .cm-avatar { --cm-av: 76px; }
[data-layout="v2"] .cm-podium__item:not(.cm-podium__item--1) .cm-avatar { --cm-av: 52px; }
[data-layout="v2"] .cm-podium__name { font: 700 var(--fs-md)/1.2 var(--font-display); letter-spacing: -0.01em; }
[data-layout="v2"] .cm-podium__pts { font-size: 1.75rem; line-height: 1; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
[data-layout="v2"] .cm-podium__item--1 .cm-podium__pts { font-size: 2.25rem; }
/* Sıralama tablosu */
[data-layout="v2"] .table-wrap:has(.cm-board) { border-radius: var(--orca-card); }
.cm-board th { font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); }
.cm-board td { padding-block: 10px; }
.cm-board tbody tr { transition: background var(--motion-fast); }
.cm-board tbody tr:hover td { background: color-mix(in srgb, var(--surface2) 55%, transparent); }
.cm-board td.n.strong { font: 700 1rem/1 var(--font-display); font-variant-numeric: tabular-nums; }
.cm-board tr.is-me td { background: color-mix(in srgb, var(--primary) 12%, transparent); }
.cm-board tr.is-me td:first-child { box-shadow: inset 3px 0 0 var(--primary); }
.cm-board .meter { height: 6px; border-radius: 6px; }
.cm-board .cm-user__name { font-weight: 600; }
/* Özel ligler */
.cm-leagues { gap: var(--space-3); }
@media (min-width: 1024px) { .cm-leagues { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
[data-layout="v2"] .cm-league.card { gap: 10px; padding: var(--space-5); border-radius: var(--orca-card); }
[data-layout="v2"] .cm-league.card:hover { border-color: color-mix(in srgb, var(--primary) 45%, var(--border)); }
.cm-league__name { font-size: 1.125rem; letter-spacing: -0.015em; }
.cm-league__meta > span { display: inline-flex; align-items: center; gap: 5px; }
.cm-forms { gap: var(--space-4); }
.cm-code { border-radius: var(--orca-ctl); }
/* Tahminlerim / profil: tahmin satırları */
[data-layout="v2"] .cm-picks { overflow: hidden; }
.cm-prow { padding: 14px 18px; gap: 6px var(--space-4); }
.cm-prow__match a { font: 700 var(--fs-md)/1.3 var(--font-display); letter-spacing: -0.01em; color: var(--text); }
.cm-pickchip { height: 28px; padding-inline: 10px; border-radius: 9px; border: 1px solid var(--border); }
.cm-ptsbadge { height: 28px; border-radius: 9px; font-family: var(--font-display); font-variant-numeric: tabular-nums; }
.cm-prow:has(.badge--won) { box-shadow: inset 3px 0 0 var(--success); }
.cm-prow:has(.badge--lost) { box-shadow: inset 3px 0 0 color-mix(in srgb, var(--danger) 70%, transparent); }
/* Profil: panel başlık */
.cm-profile {
  gap: var(--space-6); padding: clamp(1.25rem, 0.9rem + 1.1vw, 1.875rem) clamp(1.25rem, 0.8rem + 1.6vw, 2.25rem); border: 1px solid var(--border);
  border-radius: var(--orca-panel); background: var(--lv-panel-bg, var(--surface)); box-shadow: var(--lv-panel-shadow, none);
}
.cm-profile > .cm-avatar { box-shadow: 0 0 0 4px color-mix(in srgb, var(--bg) 60%, transparent), 0 0 0 5px var(--border-strong); }
.cm-profile__name { font: 700 clamp(1.75rem, 1.15rem + 1.5vw, 2.5rem)/1.05 var(--font-display); letter-spacing: -0.035em; }
.cm-profile__meta { color: var(--text-secondary); }
.cm-profile .profile__actions .btn { border-radius: var(--orca-ctl); }
.cm-badges { grid-template-columns: repeat(auto-fill, minmax(min(100%, 150px), 1fr)); gap: 10px; }
.cm-badge { padding: var(--space-5) var(--space-3) var(--space-4); border-radius: var(--orca-card); border: 1px solid var(--border); background: var(--surface); }
.cm-badge__icon { width: 52px; height: 52px; box-shadow: 0 10px 24px -14px rgba(0, 0, 0, 0.6); }
.cm-badge--locked { opacity: 1; }
.cm-badge--locked .cm-badge__icon { box-shadow: none; }
.cm-badge--locked :is(.cm-badge__name, .cm-badge__desc) { color: var(--muted); }
/* Profil bölümleri: başlık ölçeği + simge kutusu, bölümler arası ritim */
.cm-profile ~ .section { margin-block-start: var(--space-8); }
.cm-profile ~ :is(.section, .grid) .section > h2, .cm-profile ~ .section > h2 {
  display: flex; align-items: center; gap: 12px; margin: 0 0 var(--space-4); font: 700 clamp(1.1875rem, 1.05rem + 0.35vw, 1.375rem)/1.2 var(--font-display); letter-spacing: -0.02em;
}
.cm-profile ~ .section > h2 > :is(.icon, svg):first-child {
  box-sizing: content-box; flex: none; width: 16px; height: 16px; padding: 7px; border-radius: 10px; background: var(--primary-soft); color: var(--primary-text);
}
.cm-profile ~ .grid { margin-block-start: var(--space-8); gap: var(--space-6); align-items: start; }
.cm-profile ~ .grid .section { margin: 0; }
/* Bildirimler */
[data-layout="v2"] .card--flush:has(> .cm-notifs) { overflow: hidden; }
.cm-notif__btn { gap: 14px; padding: 14px 18px; }
.cm-notif__icon { width: 36px; height: 36px; border-radius: 11px; }
.cm-notif--unread .cm-notif__btn { background: color-mix(in srgb, var(--primary) 9%, transparent); box-shadow: inset 3px 0 0 var(--primary); }
.cm-notif--unread .cm-notif__icon { background: var(--primary-soft); }
.cm-notif__text { font-size: var(--fs-md); line-height: 1.4; }
.cm-notif--unread .cm-notif__text { font-weight: 600; }
.cm-notif__excerpt { padding-inline-start: 10px; border-inline-start: 2px solid var(--border); margin-block: 2px; }
.cm-notif__btn:focus-visible { outline: 2px solid var(--primary); outline-offset: -2px; }

/* ==========================================================================
   Sohbet lobisi (/sohbet): genel oda kahraman kartı, oda kartları (canlıda üst çizgi + kırmızı dakika, büyük armalar, skor), bölüm
   başlıkları. chat.js kancaları (data-chat-lobby, data-chat-presence-*) aynı.
   ========================================================================== */
.chat-lobby .section-head h2 { gap: 12px; font: 700 clamp(1.1875rem, 1.05rem + 0.35vw, 1.375rem)/1.2 var(--font-display); letter-spacing: -0.02em; }
.chat-lobby .section-head h2 > .icon {
  box-sizing: content-box; width: 16px; height: 16px; padding: 7px; border-radius: 10px; background: var(--primary-soft); color: var(--primary-text);
}
.chat-lobby .section-head h2 > .live-dot { width: 10px; height: 10px; margin-inline: 9px; }
[data-layout="v2"] .chat-general.card {
  position: relative; overflow: hidden; gap: var(--space-5); padding: var(--space-5) var(--space-6); border-radius: var(--orca-panel);
  background: radial-gradient(60% 140% at 0% 50%, color-mix(in srgb, var(--primary) 16%, transparent), transparent 70%), var(--surface);
}
.chat-general__icon { width: 52px; height: 52px; border-radius: 15px; }
.chat-general__main strong { font: 700 var(--fs-lg)/1.2 var(--font-display); letter-spacing: -0.015em; }
.chat-lobby .chat-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr)); gap: var(--space-3); }
[data-layout="v2"] .chat-room.card { position: relative; gap: 14px; padding: var(--space-4) var(--space-5); border-radius: var(--orca-card); overflow: hidden; }
[data-layout="v2"] .chat-room.card:hover { border-color: color-mix(in srgb, var(--primary) 42%, var(--border)); }
[data-layout="v2"] .chat-room.card:has(.badge--live) { border-color: color-mix(in srgb, var(--live) 26%, var(--border)); }
[data-layout="v2"] .chat-room.card:has(.badge--live)::before {
  content: ''; position: absolute; inset-inline: 18px; inset-block-start: 0; height: 2px; border-radius: 0 0 2px 2px; background: var(--gradient-live, var(--live));
}
.chat-room__top { font-weight: 600; }
.chat-room__teams { gap: var(--space-3); }
.chat-room__team { font-family: var(--font-display); font-size: var(--fs-md); letter-spacing: -0.01em; }
.chat-room__team .crest { --crest: 28px !important; }
.chat-room__score { font-size: 1.375rem; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.chat-room__teams--single .chat-room__team { font-size: var(--fs-md); }
.chat-room__teams--single .crest { box-sizing: content-box; padding: 5px; border-radius: 10px; background: var(--surface2); }
.chat-room__foot { padding-block-start: 10px; border-block-start: 1px solid var(--border); }

/* ---------------------------------------------------------------- Hareketi azalt / zorunlu renkler */
@media (prefers-reduced-motion: reduce) {
  .sv-person, .sr-row, .sr-row .chev, a.cm-tile, .cm-fx, .cm-board tbody tr { transition: none; }
  .sr-row:hover .chev { transform: none; }
}
@media (forced-colors: active) {
  .ex-tabs .tab[aria-current="location"] { outline: 2px solid CanvasText; outline-offset: -4px; }
}
