/* Lecture seule – même look que l'admin, sans boutons ni inputs */

/* sous-onglets A–H */
.subsub-tabs{
  display:flex; flex-wrap:wrap; gap:4px; border-bottom:1px solid #333; margin-bottom:12px;
}
.subsub-tab-button{
  background:#2a2a2a; color:#ccc; border:none; padding:8px 14px; cursor:pointer;
  font-size:.9rem; transition:background .2s,color .2s; border-radius:4px 4px 0 0; text-decoration:none;
}
.subsub-tab-button:hover{ color:#e0e0e0; }
.subsub-tab-button.active{
  background:#1e1e1e; color:#66afe9; border-bottom:2px solid #66afe9;
}

/* blocs */
.group-content{ padding:15px; background:#1f1f1f; border-radius:0 4px 4px 4px; margin-top:-1px; }
.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:.85rem; margin-bottom:16px; }
.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; color:#ddd; }
.classement-table .empty-row td{ color:#777; }
.small-logo{ max-width:30px; max-height:30px; display:block; margin:0 auto; border-radius:3px; border:1px solid #444; }
.below-highlight{ background-color:rgba(255,0,0,.08); }
.below-highlight td{ color:#ff4f4f; font-weight:600; }

/* 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; }
.schedule-header{ font-weight:600; font-size:1rem; color:#fff; margin-bottom:14px; }
.week-match{ margin-bottom:12px; }
.week-match-title{ font-size:1.05rem; margin-bottom:6px; color:#ececec; }
.slots{ display:flex; gap:12px; flex-wrap:wrap; }
.slot{ background:#1e1e1e; border:1px solid #444; border-radius:6px; padding:10px; flex:1 1 220px; min-width:180px; display:flex; flex-direction:column; gap:8px; }
.match-line{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.logo-placeholder{ width:36px; height:36px; background:#1f1f1f; border:1px dashed #555; display:flex; align-items:center; justify-content:center; font-size:.65rem; color:#999; border-radius:4px; flex-shrink:0; }
.mini-match-logo{ max-width:100%; max-height:100%; display:block; border-radius:3px; }
.team-name{ flex:1 1 auto; min-width:80px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.9rem; color:#fff; }

/* score en lecture seule */
.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){
  .subsub-tabs{ overflow-x:auto; }
  .subsub-tab-button{ flex:1 0 auto; white-space:nowrap; padding:6px 10px; font-size:.8rem; }
  .group-content{ padding:10px; }
  .slots{ flex-direction:column; }
  .slot{ flex-direction:column; }
  .match-line{ flex-direction:column; align-items:flex-start; }
}
