/*
  Sezon liderleri ve sezon istatistikleri (Ajan T): turnuva "İstatistikler" sekmesi ve genel bakış önizlemesi (lider kartları, takım
  tablosu), takım / oyuncu sayfası sezon kartları ve kariyer tablosu. Yalnızca tema değişkenleri (koyu / açık tema app.css'te).
  Mobil önce: kart ızgarası 360 px'te tek sütun, tablolar kendi kabında kayar (sayfa yatay taşmaz), ilk sütun yapışkan.
*/

/* ---------------------------------------------------------------- Lider kartları */
.ssl-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
@media (min-width: 600px) { .ssl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .ssl-grid:not(.ssl-grid--preview) { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.ssl-card {
  min-width: 0; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg);
  padding: var(--space-3) var(--space-4); box-shadow: var(--elev1);
}
.ssl-card__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-2); margin-block-end: var(--space-2); }
.ssl-card__title { margin: 0; font-family: var(--font-display); font-size: var(--fs-md); font-weight: 700; line-height: 1.25; min-width: 0; }
.ssl-card__note { flex: none; font-size: var(--fs-xs); color: var(--text-secondary); }

.ssl-list { list-style: none; margin: 0; padding: 0; }
.ssl-row {
  display: grid; grid-template-columns: 22px auto minmax(0, 1fr) auto; align-items: center; gap: var(--space-2);
  padding-block: 6px; border-block-start: 1px solid var(--border);
}
.ssl-list > .ssl-row:first-child { border-block-start: 0; }
.ssl-row__rank { font-variant-numeric: tabular-nums; font-weight: 700; font-size: var(--fs-xs); color: var(--text-secondary); text-align: center; }
.ssl-row__who { display: flex; flex-direction: column; min-width: 0; }
.ssl-row__who a { font-weight: 600; color: var(--text); }
.ssl-row__who a:hover { color: var(--link); }
.ssl-row__who small { display: inline-flex; align-items: center; gap: 4px; font-size: var(--fs-xs); color: var(--text-secondary); min-width: 0; }
.ssl-row__val { display: flex; flex-direction: column; align-items: flex-end; text-align: end; font-variant-numeric: tabular-nums; }
.ssl-row__val strong { font-family: var(--font-display); font-size: var(--fs-md); line-height: 1.1; }
.ssl-row__val small { font-size: var(--fs-2xs, 11px); color: var(--text-secondary); white-space: nowrap; }
.ssl-row--top .ssl-row__rank { color: var(--primary-text); }
.ssl-row--top .ssl-row__val strong { font-size: var(--fs-lg); color: var(--primary-text); }
.ssl-photo { background: var(--surface2); }

.ssl-more { margin-block-start: var(--space-1); }
.ssl-more > summary {
  cursor: pointer; list-style: none; font-size: var(--fs-xs); font-weight: 600; color: var(--link, var(--primary-text));
  padding-block: 6px; min-height: 32px; display: flex; align-items: center;
}
.ssl-more > summary::-webkit-details-marker { display: none; }
.ssl-more > summary::after { content: '▾'; margin-inline-start: 6px; font-size: 10px; }
.ssl-more[open] > summary::after { content: '▴'; }
.ssl-more > summary:focus-visible, .sst-all > summary:focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; border-radius: var(--radius-xs); }

/* ---------------------------------------------------------------- Tablolar (takım istatistikleri, kariyer) */
.ss-table-wrap { max-width: 100%; }
.ss-table th.ss-table__team, .ss-table td.ss-table__team {
  position: sticky; inset-inline-start: 0; z-index: 2; background: var(--surface); min-width: 112px; max-width: 150px; white-space: normal;
}
@media (min-width: 600px) { .ss-table th.ss-table__team, .ss-table td.ss-table__team { min-width: 150px; max-width: 220px; } }
.ss-table thead th.ss-table__team { background: var(--surface2); z-index: 3; }
.ss-table td.ss-table__team .ptable__team, .ss-season { display: flex; align-items: center; gap: 6px; min-width: 0; }
.ss-season__text { display: flex; flex-direction: column; min-width: 0; font-weight: 600; }
.ss-season__text small { font-weight: 400; font-size: var(--fs-xs); color: var(--text-secondary); }
.ss-sort { color: inherit; text-decoration: none; display: inline-block; padding: 2px 0; }
.ss-sort:hover, .ss-sort.is-active { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }
.ss-table abbr { text-decoration: none; cursor: help; }

/* ---------------------------------------------------------------- Sezon kartları (takım / oyuncu) */
.sst { min-width: 0; }
.sst__head { display: flex; align-items: center; gap: var(--space-2); margin-block-end: var(--space-3); min-width: 0; }
.sst__text { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.sst__title { margin: 0; font-size: var(--fs-md); font-family: var(--font-display); line-height: 1.25; overflow-wrap: anywhere; }
.sst__title a { color: var(--text); }
.sst__title a:hover { color: var(--link); }
.sst__sub { font-size: var(--fs-xs); color: var(--text-secondary); }
.sst__team { flex: none; display: inline-flex; }

.sst-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; background: var(--border); border: 1px solid var(--border); border-radius: var(--radius-md); overflow: hidden; }
@media (min-width: 560px) { .sst-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.sst-item { background: var(--surface); padding: 10px 12px; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sst-item dt { font-size: var(--fs-xs); color: var(--text-secondary); line-height: 1.3; overflow-wrap: anywhere; }
.sst-item dd { margin: 0; display: flex; flex-direction: column; gap: 1px; font-variant-numeric: tabular-nums; }
.sst-item strong { font-family: var(--font-display); font-size: var(--fs-lg); line-height: 1.15; }
.sst-item small { font-size: var(--fs-2xs, 11px); color: var(--text-secondary); min-height: 1em; }
.sst-rank {
  display: inline-block; padding: 0 6px; border-radius: var(--radius-pill); background: var(--primary-soft); color: var(--primary-text);
  font-weight: 700; font-size: 11px; line-height: 17px; font-variant-numeric: tabular-nums;
}

.sst-all { margin-block-start: var(--space-3); }
.sst-all > summary {
  cursor: pointer; font-size: var(--fs-sm); font-weight: 600; color: var(--link, var(--primary-text)); min-height: 36px; display: flex; align-items: center;
  list-style: none;
}
.sst-all > summary::-webkit-details-marker { display: none; }
.sst-all > summary::after { content: '▾'; margin-inline-start: 6px; font-size: 10px; }
.sst-all[open] > summary::after { content: '▴'; }
.sst-all__group { margin: var(--space-3) 0 var(--space-1); font-size: var(--fs-xs); text-transform: uppercase; letter-spacing: 0.04em; color: var(--text-secondary); }
.sst-list { display: grid; grid-template-columns: minmax(0, 1fr); margin: 0; }
@media (min-width: 600px) { .sst-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-6); } }
.sst-list > div { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-3); padding-block: 6px; border-block-end: 1px solid var(--border); min-width: 0; }
.sst-list dt { font-size: var(--fs-sm); color: var(--text-secondary); min-width: 0; overflow-wrap: anywhere; }
.sst-list dd { margin: 0; flex: none; font-variant-numeric: tabular-nums; font-weight: 600; text-align: end; }
.sst-list dd small { font-weight: 400; color: var(--text-secondary); font-size: var(--fs-xs); }

@media (forced-colors: active) { .sst-rank { forced-color-adjust: none; border: 1px solid CanvasText; } }
