/* ==========================================================================
   OrcaScore — yerleşim v2: varlık sayfaları (maç, lig, takım, oyuncu, teknik direktör, hakem, stadyum; çok sporlu maç merkezi).
   docs/REBRAND-ORCASCORE.md "İç sayfalar v2". Yalnızca v2 sayfalarında, orca.css'ten (v2 kabuğu dahil) sonra yüklenir ('styles-v2' yığını; orca.css'in
   üstünde) — bu yüzden seçiciler [data-layout] öneki taşımaz; her kural kendi kabına bağlıdır (.ex-match, .ex-mh, .ex-page, .ex-hero,
   .ex-tabbar …): Canlı sayfasının maç paneli (live-split.js) bu dosyayı da yükler, panel dışındaki öğelere dokunulmaz.
   Görsel dil ana sayfa kahramanının (home-v2.css "Maç merkezi") devamı: derin okyanus degradesi, yumuşak vurgu ışıması, çok soluk saha
   çizgileri (SVG maske; rengi --primary), Space Grotesk sayılar, durum hapları, panel 24 / kart 18 / kontrol 12 px.
   Kurallar: renk yalnızca değişkenden; mantıksal özellikler (RTL); koyu + açık eşit özenle; odak görünür; "hareketi azalt"ta
   kendiliğinden hareket yok. Dar kaplar kapsayıcı sorgusuyla (maç tabelası Canlı panelinde de doğru çizilir).
   ========================================================================== */

.ex-mh,
.ex-page,
.ex-match {
  --ex-pitch-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1050 680' fill='none' stroke='%23000' stroke-width='3'%3E%3Crect x='6' y='6' width='1038' height='668' rx='4'/%3E%3Cpath d='M525 6v668'/%3E%3Ccircle cx='525' cy='340' r='91.5'/%3E%3Ccircle cx='525' cy='340' r='4' fill='%23000'/%3E%3Cpath d='M6 138.5h165v403H6M1044 138.5H879v403h165M6 248.5h55v183H6M1044 248.5h-55v183h55'/%3E%3Cpath d='M171 266.9a91.5 91.5 0 0 1 0 146.2M879 266.9a91.5 91.5 0 0 0 0 146.2'/%3E%3Ccircle cx='116' cy='340' r='3.5' fill='%23000'/%3E%3Ccircle cx='934' cy='340' r='3.5' fill='%23000'/%3E%3C/svg%3E");
  --ex-hero-bg: var(--gradient-heroDark), linear-gradient(180deg, color-mix(in srgb, var(--surface2) 70%, var(--bg-elevated)) 0%, var(--bg-elevated) 100%);
  --ex-hero-shadow: 0 1px 0 rgba(255, 255, 255, 0.04) inset, 0 30px 80px -40px rgba(0, 0, 0, 0.75);
  --ex-glass: color-mix(in srgb, var(--bg) 46%, transparent);
  --ex-tile: color-mix(in srgb, var(--surface2) 72%, transparent);
  --ex-line: color-mix(in srgb, var(--border) 85%, transparent);
  --ex-pitch: 0.055;
  --ex-glow: color-mix(in srgb, var(--primary) 15%, transparent);
  --ex-crest-shadow: drop-shadow(0 10px 22px rgba(0, 0, 0, 0.45));
}
:root[data-theme="light"] :is(.ex-mh, .ex-page, .ex-match) {
  --ex-hero-bg: var(--gradient-heroLight), linear-gradient(180deg, var(--surface) 0%, color-mix(in srgb, var(--primary) 5%, var(--surface)) 100%);
  --ex-hero-shadow: var(--elev2);
  --ex-glass: color-mix(in srgb, var(--surface) 78%, transparent);
  --ex-tile: color-mix(in srgb, var(--surface2) 80%, transparent);
  --ex-pitch: 0.07;
  --ex-glow: color-mix(in srgb, var(--primary) 10%, transparent);
  --ex-crest-shadow: drop-shadow(0 8px 16px rgba(10, 22, 38, 0.16));
}
@media (prefers-color-scheme: light) {
  :root:not([data-theme]) :is(.ex-mh, .ex-page, .ex-match) {
    --ex-hero-bg: var(--gradient-heroLight), linear-gradient(180deg, var(--surface) 0%, color-mix(in srgb, var(--primary) 5%, var(--surface)) 100%);
    --ex-hero-shadow: var(--elev2);
    --ex-glass: color-mix(in srgb, var(--surface) 78%, transparent);
    --ex-tile: color-mix(in srgb, var(--surface2) 80%, transparent);
    --ex-pitch: 0.07;
    --ex-glow: color-mix(in srgb, var(--primary) 10%, transparent);
    --ex-crest-shadow: drop-shadow(0 8px 16px rgba(10, 22, 38, 0.16));
  }
}
/* Yapışkan sekme şeridiyle sayfa içi bağlantılar şeridin altında kalmasın */
html:has(.ex-tabbar) { scroll-padding-top: calc(var(--shell-header, 64px) + 64px); }

/* ---------------------------------------------------------------- Hızlı işlem düğmeleri (takip, takvim, paylaş) */
.ex-act {
  position: relative; flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 36px; min-width: 36px;
  padding: 0 9px; border-radius: var(--orca-ctl); border: 1px solid var(--ex-line); background: var(--ex-glass); color: var(--text-secondary);
  font: 600 0.8125rem/1 var(--font-body); white-space: nowrap; cursor: pointer; list-style: none;
  transition: background var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast);
}
.ex-act::-webkit-details-marker { display: none; }
.ex-act[hidden] { display: none; }
.ex-act .icon { width: 16px; height: 16px; }
.ex-act--text { padding-inline: 11px 13px; }
.ex-act:hover { background: var(--surface2); color: var(--text); border-color: var(--border-strong); }
.ex-act:focus-visible { outline-offset: 2px; }
.ex-act.is-on { color: var(--primary-text); border-color: color-mix(in srgb, var(--primary) 45%, transparent); background: color-mix(in srgb, var(--primary) 10%, var(--ex-glass)); }
.ex-act.is-on .icon { color: var(--warning); }
.ex-act__chev { width: 12px !important; height: 12px !important; margin-inline-start: -2px; opacity: 0.7; transition: transform var(--motion-fast); }
.ex-follow[open] .ex-act__chev { transform: rotate(180deg); }
.ex-act__done {
  position: absolute; inset-block-start: calc(100% + 8px); inset-inline-end: 0; z-index: 5; padding: 6px 10px; border-radius: 9px;
  background: var(--text); color: var(--bg); font-size: 0.75rem; font-weight: 600; white-space: nowrap; pointer-events: none;
}
.ex-act__done:empty { display: none; }
.ex-follow { position: relative; }
.ex-follow > summary { list-style: none; }
.ex-follow__panel {
  position: absolute; inset-block-start: calc(100% + 8px); inset-inline-end: 0; z-index: 30; width: min(300px, 86vw); padding: 8px;
  border-radius: 14px; border: 1px solid var(--border); background: var(--surface); box-shadow: var(--elev3, var(--elev2));
}
.ex-follow__head { margin: 4px 8px 8px; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); }
.ex-follow__list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.ex-follow__list form { margin: 0; }
.ex-follow__item {
  display: grid; grid-template-columns: 22px minmax(0, 1fr) 16px; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0;
  border-radius: 10px; background: none; color: var(--text); text-align: start; font: inherit; cursor: pointer;
}
.ex-follow__item:hover { background: var(--surface2); }
.ex-follow__item:focus-visible { outline-offset: -2px; }
.ex-follow__name { display: grid; min-width: 0; line-height: 1.25; font-size: var(--fs-sm); font-weight: 600; }
.ex-follow__name small { color: var(--muted); font-size: 0.71875rem; font-weight: 500; }
.ex-follow__star { width: 16px; height: 16px; color: var(--muted); }
.ex-follow__item.is-on .ex-follow__star { color: var(--warning); }
.ex-follow1 { margin: 0; display: inline-flex; }

/* ---------------------------------------------------------------- Maç tabelası (section.mh-card.ex-mh; v1 .mh sınıfları + v2 ekleri) */
.ex-mh {
  container: ex-mh / inline-size;
  overflow: visible; isolation: isolate; border-radius: var(--orca-panel); border-color: var(--border);
  background: radial-gradient(42% 70% at 50% 34%, var(--ex-glow), transparent 72%), var(--ex-hero-bg); box-shadow: var(--ex-hero-shadow);
}
:root[data-theme="light"] .ex-mh { background: radial-gradient(42% 70% at 50% 34%, var(--ex-glow), transparent 72%), var(--ex-hero-bg); }
@media (prefers-color-scheme: light) { :root:not([data-theme]) .ex-mh { background: radial-gradient(42% 70% at 50% 34%, var(--ex-glow), transparent 72%), var(--ex-hero-bg); } }
/* Saha çizgileri: skorun arkasında (tabela satırının içinde), çok soluk */
.mh--v2 .mh__row { position: relative; isolation: isolate; }
.mh--v2 .mh__row::before {
  content: ''; position: absolute; z-index: -1; inset-block: -6px -2px; inset-inline: 22%; pointer-events: none;
  background: var(--primary); opacity: var(--ex-pitch);
  -webkit-mask: var(--ex-pitch-svg) center / contain no-repeat; mask: var(--ex-pitch-svg) center / contain no-repeat;
}
/* Canlı: üst kenarda köşelere değmeyen ince canlı çizgisi */
.ex-mh.mh-card--live { border-color: color-mix(in srgb, var(--live) 34%, var(--border)); }
.ex-mh.mh-card--live::before { inset-inline: 28px; height: 2px; border-radius: 0 0 2px 2px; }

.mh--v2 { gap: var(--space-5); padding: var(--space-5) var(--space-6) var(--space-5); }
.ex-mh__top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); min-height: 36px; min-width: 0; }
.ex-mh__comp { display: inline-flex; align-items: center; gap: 10px; min-width: 0; color: var(--text); font-size: var(--fs-md); font-weight: 600; }
.ex-mh__comp:hover { color: var(--text); }
.ex-mh__comp:hover .truncate { text-decoration: underline; text-underline-offset: 4px; }
.ex-mh__compname { display: inline-flex; align-items: baseline; gap: 6px; min-width: 0; }
.ex-mh__compname small { flex: none; font-size: var(--fs-sm); font-weight: 500; color: var(--text-secondary); }
.ex-mh__compname small::before { content: '·'; margin-inline-end: 6px; color: var(--muted); }
.ex-mh__actions { flex: none; display: inline-flex; align-items: center; gap: 6px; }

.mh--v2 .mh__row {
  grid-template-columns: minmax(0, 1fr) minmax(200px, auto) minmax(0, 1fr); align-items: start; gap: var(--space-6);
  width: 100%; max-width: 920px; margin-inline: auto; padding-block: var(--space-1) var(--space-2);
}
.mh--v2 .mh__team { flex-direction: column; justify-content: flex-start; gap: var(--space-4); padding-block-start: 4px; text-align: center; }
.mh--v2 .mh__team--home { flex-direction: column-reverse; justify-content: flex-end; text-align: center; }
.mh--v2 .mh__team .crest { --crest: 96px !important; background: none; filter: var(--ex-crest-shadow); }
.mh--v2 .mh__team .crest--fallback { background: var(--surface2); font-size: 1.75rem; filter: none; }
.mh--v2 .mh__name { max-width: 16ch; font-size: clamp(1.0625rem, 0.82rem + 0.6vw, 1.5rem); letter-spacing: -0.02em; text-wrap: balance; }
.mh--v2 .mh__team:hover .mh__name { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 6px; }
.mh--v2 .mh__team:focus-visible { outline-offset: 6px; border-radius: 14px; }
.mh--v2 .mh__center { gap: 12px; min-width: 200px; padding-block-start: 2px; }
/* Durum hapı skorun üstünde (DOM sırası v1 ile aynı; görsel sıra) */
.mh--v2 .mh__status {
  order: -1; min-height: 32px; padding: 0 14px; gap: 8px; border: 1px solid var(--ex-line); background: var(--ex-glass);
  color: var(--text-secondary); font: 700 0.84375rem/1 var(--font-display); letter-spacing: 0.01em;
}
.mh--v2 .mh__status .icon { width: 15px; height: 15px; color: var(--text-secondary); }
.mh--v2.mh--live .mh__status { border-color: color-mix(in srgb, var(--live) 45%, transparent); background: var(--live-soft); color: var(--live-text); }
.mh--v2.mh--live .mh__status .clock { color: var(--live-text); }
.mh--v2:not(.mh--live) .ex-mh__tag,
.mh--v2:not(.mh--live) .mh__dot { display: none; }
.ex-mh__tag { font-size: 0.6875rem; letter-spacing: 0.1em; text-transform: uppercase; }
.mh--v2.mh--finished .mh__status { color: var(--text); }
.mh--v2.mh--postponed .ex-mh__day,
.mh--v2.mh--cancelled .ex-mh__day { border-color: color-mix(in srgb, var(--warning) 40%, transparent); background: color-mix(in srgb, var(--warning) 12%, transparent); color: var(--warning-text); }
.mh--v2.mh--postponed .ex-mh__day .icon,
.mh--v2.mh--cancelled .ex-mh__day .icon { color: var(--warning-text); }
.mh--v2.mh--postponed .mh__kick,
.mh--v2.mh--cancelled .mh__kick { color: var(--text-secondary); }
.mh--v2 .mh__score { font-size: clamp(3.25rem, 1.9rem + 3vw, 5rem); gap: 0.16em; line-height: 0.92; letter-spacing: -0.04em; }
.mh--v2 .mh__dash { transform: translateY(-0.04em); }
.mh--v2 .mh__kick { font-size: clamp(3rem, 1.8rem + 2.6vw, 4.5rem); letter-spacing: -0.035em; }
.mh--v2 .mh__countdown,
.mh--v2 .mh__sub > span {
  display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: var(--radius-pill); border: 1px solid var(--ex-line);
  background: var(--ex-glass); color: var(--text-secondary); font-size: var(--fs-xs); font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap;
}
.mh--v2 .mh__sub { gap: 6px; }
.mh--v2 .mh__sub > span[hidden] { display: none; }
.mh--v2 .mh__sub > .strong { color: var(--text); border-color: color-mix(in srgb, var(--primary) 40%, transparent); }
.mh--v2 .mh__note { max-width: 32ch; }
.mh--v2 .mh__phase { margin-block-start: -4px; }
/* Canlı dakika çubuğu (entity-v2.js 20 sn'de bir tazeler; normal süre 90', uzatmada 120') */
.ex-mh__progress {
  position: relative; display: block; width: min(220px, 100%); height: 3px; border-radius: 3px; overflow: hidden;
  background: color-mix(in srgb, var(--live) 18%, transparent);
}
.ex-mh__progress i { position: absolute; inset-block: 0; inset-inline-start: 0; width: var(--p, 0%); border-radius: inherit; background: var(--gradient-live); transition: width 0.8s var(--ease); }
.mh--v2:not(.mh--live) .ex-mh__progress { display: none; }
/* Golcüler: takım sütunlarının altında, ortada top */
.mh--v2 .mh__scorers {
  grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr); width: 100%; max-width: 920px; margin-inline: auto;
  padding-block-start: var(--space-4); border-block-start: 1px dashed var(--ex-line);
}
.mh--v2 .mh__list { gap: 6px; font-size: var(--fs-sm); }
.mh--v2 .mh__ball { width: 28px; height: 28px; margin-inline: auto; border-radius: 50%; background: var(--ex-glass); border: 1px solid var(--ex-line); }
.mh--v2 .mh__ball:empty { visibility: hidden; }
.mh--v2 .mh__ball .icon { width: 14px; height: 14px; }
.mh--v2 .mh__legs { gap: 6px; margin: 0; }
.mh--v2 .mh__legs > span[aria-hidden] { display: none; }
.mh--v2 .mh__legs > :not([aria-hidden]) {
  display: inline-flex; align-items: center; padding: 5px 12px; border-radius: var(--radius-pill); border: 1px solid var(--ex-line); background: var(--ex-glass);
}
.mh--v2 .mh__legs > .is-through { border-color: color-mix(in srgb, var(--success) 40%, transparent); }
.ex-mh__foot {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px var(--space-5); margin: 0; padding: var(--space-4) 0 0;
  list-style: none; border-block-start: 1px solid var(--ex-line); color: var(--text-secondary); font-size: var(--fs-sm);
}
.ex-mh__foot li { display: inline-flex; align-items: center; gap: 7px; min-width: 0; font-variant-numeric: tabular-nums; }
.ex-mh__foot li .icon { flex: none; color: var(--muted); }
.ex-mh__foot li > span[aria-hidden] { color: var(--muted); }
.ex-mh__foot a { color: var(--text-secondary); }
.ex-mh__foot a:hover { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }
.ex-mh__muted { color: var(--muted); }

/* Dar tabela (telefon, tablet dikey, Canlı paneli): 56 px arma, 44 px skor, işlemler yalnız simge */
@container ex-mh (max-width: 640px) {
  .mh--v2 { gap: var(--space-4); padding: var(--space-4); }
  .ex-mh__comp { gap: 8px; font-size: var(--fs-sm); }
  .ex-mh__comp .crest { --crest: 22px !important; }
  .ex-act--text > span:not(.ex-act__done) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } /* görünmez ama erişilebilir ad */
  .ex-act--text { padding-inline: 9px; }
  .ex-act__chev { display: none; }
  .mh--v2 .mh__row { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: var(--space-2); }
  .mh--v2 .mh__team { gap: var(--space-2); }
  .mh--v2 .mh__team .crest { --crest: 56px !important; }
  .mh--v2 .mh__name { font-size: var(--fs-sm); line-height: 1.2; }
  .mh--v2 .mh__center { min-width: 0; gap: 8px; }
  .mh--v2 .mh__status { min-height: 26px; padding: 0 10px; font-size: 0.75rem; gap: 6px; }
  .mh--v2 .mh__score { font-size: 2.75rem; }
  .mh--v2 .mh__kick { font-size: 2.5rem; }
  .mh--v2 .mh__countdown,
  .mh--v2 .mh__sub > span { padding: 4px 8px; font-size: 0.6875rem; white-space: normal; text-align: center; }
  .ex-mh__progress { width: 100%; }
  .mh--v2 .mh__scorers { grid-template-columns: minmax(0, 1fr) 22px minmax(0, 1fr); gap: var(--space-2); }
  .mh--v2 .mh__ball { width: 22px; height: 22px; }
  .mh--v2 .mh__list { font-size: var(--fs-xs); }
  .ex-mh__foot { gap: 4px var(--space-3); font-size: var(--fs-xs); padding-block-start: var(--space-3); }
  .mh--v2 .mh__row::before { inset-inline: 14%; }
}
@container ex-mh (max-width: 400px) {
  .ex-mh__compname small { display: none; }
  .mh--v2 .mh__team .crest { --crest: 52px !important; }
  .mh--v2 .mh__score { font-size: 2.5rem; }
}
/* Canlı sayfasının paneli: kendi başlık çubuğu ve "tam sayfa" bağlantısı var — hızlı işlemler gizli */
.lsp__match .ex-mh__actions { display: none; }

/* ---------------------------------------------------------------- Sekme şeridi (yapışkan, alt çizgili, kaydırmalı) */
.ex-tabbar {
  position: sticky; inset-block-start: var(--shell-header, 64px); z-index: 25; margin-block-end: var(--space-6);
  display: flex; align-items: stretch; min-width: 0;
}
/* Takılınca: içerik kabının kenar boşluklarına kadar uzanan cam şerit + ince çizgi (üst bilgiyle aynı dil) */
.ex-tabbar::before {
  content: ''; position: absolute; z-index: -1; inset-block: 0; inset-inline: calc(-1 * var(--page-gutter, 24px));
  background: var(--shell-glass, var(--bg)); -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px);
  border-block-end: 1px solid var(--shell-hairline, var(--border)); opacity: 0; transition: opacity var(--motion-base) var(--ease);
}
.ex-tabbar.is-stuck::before { opacity: 1; }
.ex-tabs {
  flex: 1 1 auto; min-width: 0; gap: 2px; margin: 0; padding: 0; border-block-end: 1px solid var(--border);
  scroll-behavior: smooth; overscroll-behavior-x: contain;
}
.ex-tabbar.is-stuck .ex-tabs { border-block-end-color: transparent; }
.ex-tabs .tab {
  height: 50px; padding: 0 14px; gap: 7px; border-radius: 0; color: var(--text-secondary); font-size: 0.90625rem; font-weight: 600; letter-spacing: -0.005em;
}
.ex-tabs .tab:hover { color: var(--text); }
.ex-tabs .tab:focus-visible { outline-offset: -6px; border-radius: 10px; }
.ex-tabs .tab[aria-current="page"] { color: var(--primary-text); }
.ex-tabs .tab[aria-current="page"]::after { inset-inline: 12px; height: 2px; border-radius: 2px 2px 0 0; }
.ex-tabs .tab .icon { width: 15px; height: 15px; }
.ex-tabs .tab__lock { display: inline-flex; color: var(--muted); }
.ex-tabs .tab[aria-current="page"] .tab__lock { color: var(--primary-text); }
.ex-tabs .tab .badge--ai { height: 18px; padding-inline: 6px; border-radius: 6px; font-size: 10px; letter-spacing: 0.04em; }
/* Taşma: kenar soluklaşması + (fareyle) oklar */
.ex-tabbar.is-scrollable .ex-tabs {
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
}
.ex-tabbar.is-scrollable.is-start .ex-tabs { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 56px), transparent 100%); mask-image: linear-gradient(90deg, #000 calc(100% - 56px), transparent 100%); }
.ex-tabbar.is-scrollable.is-end .ex-tabs { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 56px); mask-image: linear-gradient(90deg, transparent 0, #000 56px); }
[dir="rtl"] .ex-tabbar .ex-tabs { -webkit-mask-image: none !important; mask-image: none !important; }
.ex-tabbar__arrow {
  position: relative; z-index: 2; flex: none; align-self: center; display: inline-grid; place-items: center; width: 32px; height: 32px; padding: 0;
  border-radius: 50%; border: 1px solid var(--border); background: var(--surface); color: var(--text); box-shadow: var(--elev2); cursor: pointer;
  opacity: 0; transition: opacity var(--motion-base) var(--ease);
}
.ex-tabbar__arrow[hidden] { display: none; }
.ex-tabbar__arrow .icon { width: 16px; height: 16px; }
.ex-tabbar__arrow--prev { margin-inline: 0 -32px; }
.ex-tabbar__arrow--next { margin-inline: -32px 0; }
.ex-tabbar:hover .ex-tabbar__arrow:not(:disabled),
.ex-tabbar__arrow:focus-visible { opacity: 1; }
.ex-tabbar__arrow:disabled { opacity: 0 !important; pointer-events: none; }
@media (hover: none) { .ex-tabbar__arrow { display: none !important; } }
@media (max-width: 767px) {
  .ex-tabbar { margin-block-end: var(--space-5); margin-inline: calc(-1 * var(--page-gutter, 16px)); }
  .ex-tabs { padding-inline: var(--page-gutter, 16px); scroll-padding-inline: var(--page-gutter, 16px); }
  .ex-tabbar::before { inset-inline: 0; }
  .ex-tabs .tab { height: 46px; padding: 0 12px; font-size: 0.875rem; }
}

/* ---------------------------------------------------------------- Maç sayfası düzeni: sekme şeridi tam genişlik, altında iki sütun */
.ex-match .breadcrumb { margin-block-end: var(--space-4); }
.ex-match .match-momentum:not(:empty) { margin-block-start: var(--space-5); }
.ex-match .match-layout.ex-layout { display: block; margin-block-start: var(--space-6); }
.ex-cols { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-6); align-items: start; }
@media (min-width: 1024px) { .ex-cols { grid-template-columns: minmax(0, 1fr) 340px; gap: var(--space-7); } }
@media (min-width: 1440px) { .ex-cols { grid-template-columns: minmax(0, 1fr) 368px; gap: var(--space-8); } }
.ex-match .match-layout__main > .section + .section,
.ex-match .match-layout__main .stack--lg { gap: var(--space-6); }

/* Misafir: kazanma olasılığı kilidi (istatistik modülü, başlık altı yuvası) — tek satırlık ince şerit (önizleme iskeleti yok);
   kilit bileşeni ve metni aynen (docs/MEMBER-GATE.md), yalnızca yerleşim */
.ex-match > .st-wp-locked { margin-block: var(--space-5) 0; }
.ex-match > .st-wp-locked .locked--card {
  background: radial-gradient(80% 160% at 0% 50%, color-mix(in srgb, var(--primary) 9%, transparent), transparent 60%), var(--surface);
}
.ex-match > .st-wp-locked .locked__preview,
.ex-match > .st-wp-locked .locked__note { display: none; }
.ex-match > .st-wp-locked .locked__body {
  grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "badge title actions" "badge text actions";
  justify-items: start; align-items: center; gap: 2px var(--space-4); padding: var(--space-4) var(--space-5); text-align: start;
}
.ex-match > .st-wp-locked .locked__badge { grid-area: badge; }
.ex-match > .st-wp-locked .locked__title { grid-area: title; font-size: var(--fs-md); }
.ex-match > .st-wp-locked .locked__text { grid-area: text; max-width: none; }
.ex-match > .st-wp-locked .locked__actions { grid-area: actions; flex-wrap: nowrap; }
@media (max-width: 639px) {
  .ex-match > .st-wp-locked .locked__body { grid-template-columns: auto minmax(0, 1fr); grid-template-areas: "badge title" "badge text" "actions actions"; row-gap: 4px; }
  .ex-match > .st-wp-locked .locked__actions { justify-content: flex-start; margin-block-start: var(--space-2); }
}

/* Güven halkası boyutu app.css'te --ring-size (odak rengi --ring ile çakışma giderildi). */

/* Yan sütun kartları: v2 kart dili (başlık satırı, ikon kutusu, aralık) — modül kartları (Taraf tut, Canlı sohbet, Takvim ve alarm …) dahil */
.ex-match .match-layout__aside,
.ex-match .match-layout__aside .aside,
.ex-page .layout > .aside { gap: var(--space-5); }
:is(.ex-match .match-layout__aside, .ex-page .layout > .aside) .card { padding: var(--space-5); border-radius: var(--orca-card); }
:is(.ex-match .match-layout__aside, .ex-page .layout > .aside) :is(.card__title, .cm-pick__title, .chat-soon__title) {
  display: flex; align-items: center; gap: 10px; margin: 0; font: 700 1rem/1.25 var(--font-display); letter-spacing: -0.015em; color: var(--text);
}
:is(.ex-match .match-layout__aside, .ex-page .layout > .aside) :is(.card__title, .cm-pick__title, .chat-soon__title) > .icon:first-child {
  flex: none; width: 28px; height: 28px; padding: 6px; border-radius: 9px; background: var(--primary-soft); color: var(--primary-text);
}
:is(.ex-match .match-layout__aside, .ex-page .layout > .aside) .card__head { align-items: center; gap: var(--space-3); margin-block-end: var(--space-4); }
:is(.ex-match .match-layout__aside, .ex-page .layout > .aside) .kv { row-gap: 10px; }
.ex-match .match-layout__aside .disclaimer { border-radius: var(--orca-card); }

/* ---------------------------------------------------------------- Varlık kahramanı (lig, takım, oyuncu, TD, hakem, stadyum) */
.ex-page { min-width: 0; }
.ex-page > .breadcrumb { margin-block-end: var(--space-4); }
.ex-hero {
  container: ex-hero / inline-size;
  position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; gap: var(--space-6); min-width: 0;
  padding: var(--space-6) var(--space-6) var(--space-6) var(--space-8);
  border: 1px solid var(--border); border-radius: var(--orca-panel); background: var(--ex-hero-bg); box-shadow: var(--ex-hero-shadow);
}
/* Saha çizgileri sağ yarıda (çok soluk) + arma arkasında yumuşak ışıma */
.ex-hero::before {
  content: ''; position: absolute; z-index: -1; inset-block: 8% 8%; inset-inline: 52% 2%; pointer-events: none;
  background: var(--primary); opacity: var(--ex-pitch);
  -webkit-mask: var(--ex-pitch-svg) center / contain no-repeat; mask: var(--ex-pitch-svg) center / contain no-repeat;
}
.ex-hero::after {
  content: ''; position: absolute; z-index: -1; inset-block-start: -40%; inset-inline-start: -8%; width: 46%; height: 170%; pointer-events: none;
  background: radial-gradient(closest-side, var(--ex-glow), transparent);
}
.ex-hero__head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--space-6); min-width: 0; }
.ex-hero__media { position: relative; flex: none; display: grid; place-items: center; }
.ex-hero__media .crest { --crest: 96px !important; background: none; filter: var(--ex-crest-shadow); }
.ex-hero__media .crest--fallback { background: var(--surface2); font-size: 1.75rem; filter: none; }
.ex-hero__media .crest--square img { object-fit: contain; }
/* Kişiler: yuvarlak fotoğraf, ince halka */
:is(.ex-hero--player, .ex-hero--coach) .ex-hero__media .crest {
  border-radius: 50%; background: var(--surface2); filter: none; box-shadow: 0 0 0 4px color-mix(in srgb, var(--bg) 60%, transparent), 0 0 0 5px var(--border-strong), 0 18px 40px -18px rgba(0, 0, 0, 0.6);
}
:is(.ex-hero--player, .ex-hero--coach) .ex-hero__media .crest img { object-fit: cover; }
.ex-hero__num {
  position: absolute; inset-block-end: -2px; inset-inline-end: -8px; min-width: 34px; padding: 3px 9px; border-radius: var(--radius-pill);
  background: var(--btn-primary-bg); color: var(--btn-primary-fg); font: 800 0.8125rem/1.2 var(--font-display); text-align: center;
  box-shadow: 0 0 0 3px var(--surface);
}
/* Simge kutusu (hakem, stadyum) */
.ex-hero__glyph {
  display: grid; place-items: center; width: 96px; height: 96px; border-radius: 24px; border: 1px solid var(--ex-line);
  background: linear-gradient(135deg, color-mix(in srgb, var(--primary) 16%, transparent), transparent 70%), var(--ex-tile); color: var(--primary-text);
}
.ex-hero__glyph .icon { width: 42px; height: 42px; }
.ex-hero__id { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ex-hero__eyebrow { margin: 0; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--text-secondary); }
.ex-hero__title { margin: 0; font-size: clamp(1.75rem, 1.15rem + 1.7vw, 2.75rem); line-height: 1.05; letter-spacing: -0.035em; text-wrap: balance; overflow-wrap: anywhere; }
.ex-hero__meta { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 2px 0 0; padding: 0; list-style: none; color: var(--text-secondary); font-size: var(--fs-sm); }
.ex-hero__meta li { display: inline-flex; align-items: center; gap: 7px; min-width: 0; }
.ex-hero__meta .icon { flex: none; color: var(--muted); }
.ex-hero__meta .flag { flex: none; width: 18px; height: 13px; border-radius: 2px; object-fit: cover; box-shadow: 0 0 0 1px var(--ex-line); }
.ex-hero__meta a { display: inline-flex; align-items: center; gap: 6px; min-width: 0; color: var(--text); font-weight: 600; }
.ex-hero__meta a:hover { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }
.ex-hero__meta .ex-pos { font-weight: 700; }
.ex-hero__badges { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin-block-start: 2px; }
.ex-hero__badges .badge { height: 24px; }
.ex-hero__note { flex-basis: 100%; color: var(--muted); font-size: var(--fs-xs); }
.ex-hero__actions { align-self: start; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 8px; }
.ex-hero__foot { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); align-items: stretch; }
.ex-hero--aside .ex-hero__foot { grid-template-columns: minmax(0, 1fr) minmax(280px, 380px); }
.ex-hero__stats { display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 10px; margin: 0; min-width: 0; }
.ex-stat {
  display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 12px 16px 13px; border-radius: var(--orca-ctl);
  border: 1px solid var(--ex-line); background: var(--ex-tile);
}
.ex-stat dt { overflow: hidden; color: var(--text-secondary); font-size: 0.75rem; font-weight: 600; white-space: nowrap; text-overflow: ellipsis; }
.ex-stat dd { display: flex; align-items: baseline; gap: 6px; min-width: 0; margin: 0; }
.ex-stat strong { font: 700 1.75rem/1 var(--font-display); letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.ex-stat small { color: var(--text-secondary); font-family: var(--font-display); font-size: var(--fs-md); font-weight: 600; font-variant-numeric: tabular-nums; }
.ex-stat__sub { overflow: hidden; color: var(--muted); font-size: 0.75rem; white-space: nowrap; text-overflow: ellipsis; }
.ex-stat__meter { display: block; height: 4px; margin-block-start: auto; border-radius: 4px; overflow: hidden; background: color-mix(in srgb, var(--primary) 14%, transparent); }
.ex-stat__meter i { display: block; height: 100%; border-radius: inherit; background: var(--primary); }
.ex-stat dd.ex-stat__html { display: grid; gap: 7px; align-items: stretch; }
.ex-stat .pbar { margin-block-start: 6px; }
.ex-stat .pbar-legend { font-size: 0.75rem; }
.ex-stat dd .form { flex-wrap: nowrap; }
.ex-stat--good strong { color: var(--success-text); }
.ex-stat--warn strong { color: var(--warning-text); }
.ex-stat--bad strong { color: var(--danger-text); }
.ex-hero__aside { min-width: 0; display: flex; }
.ex-hero__aside > * { flex: 1 1 auto; }
/* Puan durumu bölgesi (takım sırası kutusu): sol kenar rengi */
.ex-stat--zone { box-shadow: inset 3px 0 0 var(--zc, transparent); }
.zone-c--ucl { --zc: var(--zone-ucl); } .zone-c--uel { --zc: var(--zone-uel); } .zone-c--uecl { --zc: var(--zone-uecl); }
.zone-c--promotion { --zc: var(--zone-promotion); } .zone-c--playoff { --zc: var(--zone-playoff); } .zone-c--relegation { --zc: var(--zone-relegation); }
.ex-stat__sub a { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; color: var(--text-secondary); font-weight: 600; }
.ex-stat__sub a:hover { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }
/* Takım: sıradaki maç kartı (kahramanın yan kartı) */
.ex-next {
  display: flex; flex-direction: column; gap: 12px; width: 100%; padding: 14px 16px; border-radius: var(--orca-card);
  border: 1px solid var(--ex-line); background: var(--ex-glass); color: var(--text);
  transition: border-color var(--motion-fast), background var(--motion-fast);
}
.ex-next:hover { border-color: var(--border-strong); color: var(--text); }
.ex-next:focus-visible { outline-offset: 2px; }
.ex-next--live { border-color: color-mix(in srgb, var(--live) 40%, transparent); }
.ex-hero__aside { container: ex-next / inline-size; }
.ex-next__head { display: flex; align-items: center; gap: 10px; min-width: 0; }
.ex-next__label { flex: none; display: inline-flex; align-items: center; gap: 6px; color: var(--text-secondary); font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.ex-next--live .ex-next__label { color: var(--live-text); }
.ex-next__label .pulse-dot { width: 6px; height: 6px; }
.ex-next__comp { display: inline-flex; align-items: center; gap: 6px; min-width: 0; color: var(--muted); font-size: 0.75rem; font-weight: 600; }
.ex-next__row { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 10px; }
.ex-next__team { display: flex; align-items: center; gap: 10px; min-width: 0; max-width: 100%; font-family: var(--font-display); font-size: var(--fs-md); font-weight: 700; letter-spacing: -0.01em; }
.ex-next__team--home { justify-content: flex-end; text-align: end; }
.ex-next__team .crest { flex: none; }
.ex-next__team:not(.is-self) { color: var(--text); }
.ex-next__team.is-self { color: var(--text-secondary); }
.ex-next__mid { display: flex; flex-direction: column; align-items: center; gap: 3px; }
.ex-next__mid strong { font: 700 1.375rem/1 var(--font-display); letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.ex-next__mid strong i { margin-inline: 4px; font-style: normal; color: var(--muted); }
.ex-next__mid small { color: var(--text-secondary); font-size: 0.75rem; font-weight: 600; }
.ex-next--live .ex-next__mid strong { color: var(--live-text); }
.ex-next__count { flex: none; margin-inline-start: auto; padding: 3px 9px; border-radius: var(--radius-pill); background: var(--primary-soft); color: var(--primary-text); font-size: 0.75rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.ex-next__count:empty { display: none; }
@container ex-next (max-width: 380px) {
  .ex-next__row { align-items: start; }
  .ex-next__team, .ex-next__team--home { flex-direction: column; justify-content: flex-start; gap: 6px; text-align: center; font-size: var(--fs-sm); }
  .ex-next__team--home { flex-direction: column-reverse; justify-content: flex-end; }
  .ex-next__team .truncate { max-width: 100%; }
  .ex-next__mid { padding-block-start: 4px; }
  .ex-next__comp .truncate { max-width: 12ch; }
}

/* Sezon seçici (ikonlu, kompakt) */
.ex-season { position: relative; display: inline-flex; align-items: center; margin: 0; }
.ex-season__icon { position: absolute; z-index: 1; inset-inline-start: 11px; width: 15px; height: 15px; color: var(--muted); pointer-events: none; }
.ex-season .select {
  width: auto; height: 36px; min-height: 36px; padding-block: 0; padding-inline-start: 34px; border-radius: var(--orca-ctl); border-color: var(--ex-line);
  background-color: var(--ex-glass); color: var(--text); font-family: var(--font-display); font-size: 0.875rem; font-weight: 700; font-variant-numeric: tabular-nums;
}
.ex-season .select:hover { border-color: var(--border-strong); }

/* Orta genişlik: yan kart sayıların altına */
@container ex-hero (max-width: 1100px) {
  .ex-hero--aside .ex-hero__foot { grid-template-columns: minmax(0, 1fr); }
}
/* Dar kahraman: işlemler alt satıra, sayılar ikişer */
@container ex-hero (max-width: 820px) {
  .ex-hero__head { grid-template-columns: auto minmax(0, 1fr); row-gap: var(--space-4); }
  .ex-hero__actions { grid-column: 1 / -1; justify-content: flex-start; }
  /* Tek işlem (yalnız paylaş: TD, hakem, stadyum): ayrı satır açmaz, sağ üstte kalır */
  .ex-hero__head:has(> .ex-hero__actions > :only-child) { grid-template-columns: auto minmax(0, 1fr) auto; }
  .ex-hero__actions:has(> :only-child) { grid-column: auto; align-self: start; }
  .ex-hero__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ex-stat__sub { white-space: normal; text-overflow: clip; }
  .ex-hero::before { inset-inline: 40% -6%; inset-block: 0 30%; }
}
@container ex-hero (max-width: 640px) {
  .ex-hero__head { gap: var(--space-4); }
  .ex-hero__media .crest { --crest: 72px !important; }
  .ex-hero__glyph { width: 72px; height: 72px; border-radius: 18px; }
  .ex-hero__glyph .icon { width: 32px; height: 32px; }
  .ex-stat strong { font-size: 1.5rem; }
}
/* Telefon: sonuç dağılımı çubuğu yarım kutuya sığmaz → sona, tam genişlik (yanındaki boşluk kalmasın diye son kutu da tam) */
@container ex-hero (max-width: 480px) {
  .ex-stat:has(.pbar) { order: 1; grid-column: 1 / -1; }
  .ex-hero__stats:has(.pbar) > .ex-stat:last-child:not(:has(.pbar)) { grid-column: 1 / -1; }
}
@container ex-hero (max-width: 440px) {
  .ex-hero__media .crest { --crest: 64px !important; }
  .ex-hero__glyph { width: 64px; height: 64px; }
  .ex-hero__title { font-size: 1.5rem; }
  .ex-hero__meta { gap: 4px 14px; font-size: var(--fs-xs); }
  .ex-stat { padding: 10px 12px; }
  .ex-stat strong { font-size: 1.3125rem; }
  .ex-stat small { font-size: var(--fs-sm); }
  .ex-act--text > span:not(.ex-act__done) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } /* görünmez ama erişilebilir ad */
  .ex-act--text { padding-inline: 9px; }
}
@media (max-width: 767px) {
  .ex-hero { gap: var(--space-5); padding: var(--space-5) var(--space-4); border-radius: 20px; }
}

/* Sekmeli varlık sayfası gövdesi (yapışkan şeridin kabı) */
.ex-body { min-width: 0; margin-block-start: var(--space-6); }

/* ---------------------------------------------------------------- Puan durumu (components/standings-table; yalnızca bu sayfalarda)
   Sıra: bölge renginde yumuşak kutu (sol kenar çizgisi korunur), puan sütunu vurgulu, form çipleri sıkı; geniş ekranda (≥ 1280)
   başlık satırı yapışkan (üst bilgi + sekme şeridinin altında) — tablo sığdığı için kap kaydırma kabı olmaz. */
:is(.ex-page, .ex-match) .table-wrap:has(.rank) { border-radius: var(--orca-card); }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) th { font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) th abbr { text-decoration: none; }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) td { padding-block: 9px; }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) .rank {
  width: 26px; height: 26px; border-radius: 8px; font-size: 0.8125rem; font-variant-numeric: tabular-nums; color: var(--text-secondary);
}
:is(.ex-page, .ex-match) .table-wrap:has(.rank) td.zone::before { inset-block: 8px; }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) td[class*="zone--"] .rank { background: color-mix(in srgb, var(--zc) 16%, transparent); color: color-mix(in srgb, var(--zc) 62%, var(--text)); }
:is(.ex-page, .ex-match) td.zone--ucl { --zc: var(--zone-ucl); } :is(.ex-page, .ex-match) td.zone--uel { --zc: var(--zone-uel); }
:is(.ex-page, .ex-match) td.zone--uecl { --zc: var(--zone-uecl); } :is(.ex-page, .ex-match) td.zone--promotion { --zc: var(--zone-promotion); }
:is(.ex-page, .ex-match) td.zone--playoff { --zc: var(--zone-playoff); } :is(.ex-page, .ex-match) td.zone--relegation { --zc: var(--zone-relegation); }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) .team-cell .crest { --crest: 22px !important; }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) td.n.strong { font-size: 0.9375rem; color: var(--text); }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) .form { gap: 3px; }
:is(.ex-page, .ex-match) .table-wrap:has(.rank) .form__pill { width: 19px; height: 19px; border-radius: 6px; font-size: 10px; }
:is(.ex-page, .ex-match) .zone-legend { gap: 6px 18px; margin-block-start: var(--space-4); }
:is(.ex-page, .ex-match) .zone-legend i { width: 10px; height: 10px; border-radius: 3px; }
@media (min-width: 1280px) {
  .ex-body--standings .table-wrap:has(.rank) { overflow: visible; }
  .ex-body--standings .table-wrap:has(.rank) thead th { inset-block-start: calc(var(--shell-header, 64px) + 51px); z-index: 3; }
  .ex-body--standings .table-wrap:has(.rank) thead th:first-child { border-start-start-radius: var(--orca-card); }
  .ex-body--standings .table-wrap:has(.rank) thead th:last-child { border-start-end-radius: var(--orca-card); }
}

/* ---------------------------------------------------------------- Hareketi azalt / zorunlu renkler */
@media (prefers-reduced-motion: reduce) {
  .ex-mh__progress i, .ex-tabbar::before, .ex-tabbar__arrow, .ex-act, .ex-act__chev { transition: none; }
  .ex-tabs { scroll-behavior: auto; }
}
@media (forced-colors: active) {
  .mh--v2 .mh__row::before { display: none; }
  .ex-tabs .tab[aria-current="page"] { outline: 2px solid CanvasText; outline-offset: -4px; }
}
