/* Tableau des stats de joueurs d'une équipe — voir team-stats.js.
   Partagé par activity.html (onglet Équipes) et equipe.html. */
.st-scroll { overflow-x: auto; }
.teams-table { width:100%; border-collapse:collapse; background:var(--surface); border:1px solid var(--border); border-radius:10px; overflow:hidden; }
.teams-table th, .teams-table td { padding: 0.55rem 0.35rem; text-align:left; border-bottom:1px solid var(--border); font-size:0.85rem; }
.teams-table td { white-space: nowrap; }
.teams-table th { background: var(--surface2); color:var(--muted); font-weight:600; font-size:0.65rem; text-transform:uppercase; letter-spacing:.05em; }
.teams-table tr:last-child td { border-bottom:none; }
.teams-table .c { text-align:center; padding-left:0.6rem; padding-right:0.6rem; }
.teams-table tr.is-me { background: rgba(88,166,255,.08); }
.teams-table .rank { color:var(--muted); font-weight:600; width:2.5rem; }
.teams-table .player-name { font-weight:600; }
.teams-table .player-name .me-tag { color: var(--futsal); font-size:0.7rem; margin-left:0.4rem; }
.teams-table .pct-bar { display:inline-block; width:50px; height:6px; background:var(--surface2); border-radius:3px; overflow:hidden; vertical-align:middle; margin-right:0.3rem; }
.teams-table .pct-bar > div { height:100%; background:var(--win); }
.teams-table .st-frac { color:var(--muted); font-size:0.78rem; margin-left:0.3rem; }
.teams-table .st-vide { text-align:center; color:var(--muted); padding:1.2rem; white-space:normal; }
/* Joueur+ (feature view_stats) : les cellules floutées portent des valeurs
   FACTICES, jamais les vraies. */
.teams-table .locked { display: inline-block; filter: blur(4px); opacity: .55; user-select: none; cursor: pointer; }
.teams-table th.th-lock { cursor: pointer; }
/* Sans Joueur+, une seule colonne verrouillée en bout de ligne : son en-tête
   montre ce qu'elle contient (💬 ⌛ 🚫 🟨 🟥), la cellule une pastille floutée. */
.teams-table th.st-plus { color: var(--futsal); }
.teams-table .st-plus-ico { display:block; margin-top:2px; font-size:0.72rem; letter-spacing:0.08em; text-transform:none; opacity:.85; }
.teams-table td.st-plus { cursor: pointer; }
.played-link { cursor: pointer; border-bottom: 1px dashed currentColor; padding-bottom: 1px; }
.played-link:hover { opacity: 0.75; }
.stats-lock-note.bas { margin: 0.9rem 0 0; }
.stats-lock-note {
  display:flex; align-items:center; gap:0.6rem; flex-wrap:wrap;
  margin: 0 0 0.75rem; padding: 0.6rem 0.9rem; border-radius: 8px;
  background: var(--surface2); border: 1px solid var(--border);
  font-size: 0.8rem; color: var(--muted);
}
.stats-lock-note a { color: var(--futsal); font-weight: 600; text-decoration: none; white-space: nowrap; }
.stats-lock-note a:hover { text-decoration: underline; }
/* Légende sous le tableau : les icônes ne parlent pas d'elles-mêmes. */
.st-legende { margin-top:0.6rem; display:flex; flex-wrap:wrap; gap:0.25rem 0.9rem; font-size:0.72rem; color:var(--muted); line-height:1.5; }
.st-legende b { color:var(--text); font-weight:600; }

/* Bloc « Équipe » au-dessus du tableau : forfaits, retards, absences. */
/* Trois compteurs de discipline, presque toujours à zéro. En grille étirée
   sur trois colonnes, ils occupaient toute la largeur de la page pour dire
   « 0, 0, 0 » — un poids visuel sans rapport avec ce qu'ils apprennent. Ils
   passent en ligne, dimensionnés par leur contenu, valeur et libellé côte à
   côte : deux fois moins haut, et l'œil va au tableau, qui est le sujet. */
/* Marge HAUTE indispensable : ces tuiles suivent le bandeau de l'équipe, qui
   est une image pleine largeur. Sans elle, « 0 Forfaits » venait se coller au
   bas de l'écusson — Daniel l'a relevé le 27/09. */
.st-equipe { display:flex; flex-wrap:wrap; gap:0.45rem; margin:0.9rem 0 1rem; }
.st-tuile {
  display:inline-flex; align-items:baseline; gap:0.4rem; flex:0 0 auto;
  background:var(--surface); border:1px solid var(--border); border-radius:999px;
  padding:0.35rem 0.8rem;
}
.st-tuile.lk { cursor:pointer; }
.st-tv { font-size:0.95rem; font-weight:700; color:var(--muted); line-height:1.2; }
.st-tv.st-tv-on { color:var(--loss); }
.st-tv.locked { display:inline-block; filter:blur(4px); opacity:.55; user-select:none; }
.st-tl { font-size:0.72rem; color:var(--muted); white-space:nowrap; }
@media (max-width: 420px) { .st-equipe { gap:0.35rem; } .st-tuile { padding:0.3rem 0.6rem; } }

/* Ce que l'on compte : tous les événements, un championnat, une période. */
/* Respiration : la bannière d'équipe, la barre « Compter » et les compteurs
   se touchaient. Un écart franc entre chaque bloc, sinon on lit un pavé. */
.st-scope { display:flex; align-items:center; gap:0.4rem; flex-wrap:wrap; margin:1rem 0 0.9rem; }
.st-scope .st-l { font-size:0.68rem; text-transform:uppercase; letter-spacing:0.06em; color:var(--muted); font-weight:700; margin-right:0.15rem; }
.st-b {
  font-size:0.76rem; padding:0.28rem 0.75rem; border-radius:20px; border:1px solid var(--border);
  background:transparent; color:var(--muted); font-family:inherit; cursor:pointer; transition:all .15s;
}
.st-b:hover { background:var(--surface2); color:var(--text); border-color:var(--text); }
.st-b.on { background:var(--surface2); border-color:var(--futsal); color:var(--futsal); font-weight:600; }
.st-b.lk { opacity:.6; }

@media (max-width: 600px) {
  .teams-table th, .teams-table td { font-size: 0.8rem; }
}
