/* Sous-onglets */
.subsub-tabs {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #333;
  margin-bottom: 12px;
  gap: 4px;
}
.subsub-tab-button {
  background: #2a2a2a;
  color: #ccc;
  border: none;
  padding: 8px 14px;
  cursor: pointer;
  font-size: 0.9rem;
  border-radius: 4px 4px 0 0;
  text-decoration: none;
}
.subsub-tab-button.active {
  background: #1e1e1e;
  color: #66afe9;
  border-bottom: 2px solid #66afe9;
}

/* Contenu */
.subsub-content { display:none; }
.subsub-content.active { display:block; }

/* Classement */
.classement-block { margin-top: 20px; }
.classement-block h4 {
  margin: 0 0 8px;
  font-size: 1.1rem;
  color: #61dafb;
  border-bottom: 1px solid #444;
  padding-bottom: 4px;
}
.classement-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.85rem;
  margin-bottom: 16px;
  color: #ddd;
}
.classement-table thead th {
  background: #2a2a2a;
  padding: 8px;
  color: #fff;
  border-bottom: 2px solid #444;
  text-align: center;
}
.classement-table td {
  padding: 6px;
  border-bottom: 1px solid #333;
  text-align: center;
}
.classement-table .empty-row td { color: #777; }

.below-highlight { background-color: rgba(255,0,0,0.08); }
.below-highlight td {
  color: #ff4f4f;
  font-weight: 600;
}

.mini-match-logo {
  max-width: 30px;
  max-height: 30px;
  display: block;
  margin: 0 auto;
  border-radius: 3px;
  border: 1px solid #444;
}
.round-cell { min-width: 84px; }
.opp-logo { margin-bottom: 4px; }
.round-score {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

/* Calendrier */
.calendrier-block { margin-top: 30px; }
.calendrier-block h4 {
  margin: 0 0 14px;
  font-size: 1.2rem;
  color: #61dafb;
  border-bottom: 1px solid #444;
  padding-bottom: 6px;
}
.schedule-section {
  background: #242424;
  padding: 14px;
  border-radius: 6px;
  margin-bottom: 16px;
  border-left: 4px solid #66afe9;
}
.week-match-title {
  font-size: 1.05rem;
  margin-bottom: 8px;
  color: #ececec;
}

/* Grille dynamique (2 ou 3 colonnes) */
.schedule-section .set-matches {
  display: grid;
  gap: 10px;
}
.schedule-section[data-cols="2"] .set-matches { grid-template-columns: repeat(2, 1fr); }
.schedule-section[data-cols="3"] .set-matches { grid-template-columns: repeat(3, 1fr); }

.score-set { margin-bottom: 12px; }
.score-set-label {
  color:#bbb; font-size: .9rem; margin: 4px 0 8px;
}

/* Case de match */
.slot {
  background: #1e1e1e;
  border: 1px solid #444;
  border-radius: 6px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 100px;
}
.match-line {
  display: flex;
  align-items: center;
  gap: 6px;
}
.logo-placeholder {
  width: 36px; height: 36px;
  background: #1f1f1f;
  border: 1px dashed #555;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.65rem; color: #999;
  border-radius: 4px;
  flex-shrink: 0;
}
.team-name {
  flex: 1 1 auto;
  min-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.9rem;
  color: #fff;
}
.score-badge{
  min-width:40px; text-align:center; padding:6px 8px; background:#1e1e1e; border:1px solid #444;
  border-radius:4px; color:#fff; font-size:.85rem; font-variant-numeric:tabular-nums;
}

/* Responsive */
@media (max-width: 900px) {
  .schedule-section .set-matches { grid-template-columns: 1fr !important; }
  .match-line { flex-direction: column; align-items: flex-start; }
  .score-badge { margin-left: 0; width: 100%; }
  .subsub-tabs { overflow-x: auto; }
}
