/* Communauté : vote mensuel, paliers, hall of fame, fil d'activité, engagements. Fichier propre à ces pages. */

/* Sélecteur de mois */
.mois { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }
.mois__lien { padding: 5px 14px; border: 2px solid var(--filet); border-radius: 999px; background: var(--sombre-2); color: var(--texte-sombre); font-weight: 600; text-decoration: none; text-transform: capitalize; }
.mois__lien:hover { border-color: var(--or); color: var(--or-clair); }
.mois__lien--actif { background: linear-gradient(180deg, #f6a03f, var(--orange-fonce)); border-color: var(--or); color: var(--creme); }
.vote-mois-info { margin: 0 0 8px; }
.vote-position { margin: 0 0 14px; padding: 8px 12px; background: rgba(240, 137, 31, 0.14); border-left: 4px solid var(--orange); border-radius: 4px; }

/* Podium */
.podium { list-style: none; margin: 8px 0 18px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; align-items: end; }
.podium__carte { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 16px 10px 14px; text-align: center; border: 3px solid var(--filet); border-radius: 10px; background: rgba(255, 255, 255, 0.45); box-shadow: 0 3px 8px rgba(70, 38, 8, 0.25); }
.podium__carte--or { order: 2; padding-block: 26px 20px; border-color: var(--or); background: linear-gradient(180deg, #fbe9b0, #f1cd7a); }
.podium__carte--argent { order: 1; border-color: #8e97a0; background: linear-gradient(180deg, #eef0f1, #cfd4d8); }
.podium__carte--bronze { order: 3; border-color: #a0602b; background: linear-gradient(180deg, #f1d3b4, #d9a273); }
.podium__rang { position: relative; display: inline-grid; place-items: center; }
.podium__numero { position: absolute; right: -10px; bottom: -6px; min-width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: var(--bois); color: var(--or); font-family: var(--police-titre); font-weight: 700; font-size: 0.95rem; }
.podium__pseudo { font-family: var(--police-titre); font-size: 1.25rem; color: var(--encre); overflow-wrap: anywhere; }
.podium__votes { font-weight: 700; color: var(--encre); }
.podium__gain { font-size: 0.85rem; color: var(--encre-douce); }

/* Paliers */
.palier-barre { margin: 0 0 16px; }
.palier-barre__titre { margin: 0 0 6px; }
.palier-barre__jauge { appearance: none; -webkit-appearance: none; display: block; width: 100%; height: 18px; border: 2px solid var(--bois); border-radius: 999px; background: #d8c79e; overflow: hidden; }
.palier-barre__jauge::-webkit-progress-bar { background: #d8c79e; }
.palier-barre__jauge::-webkit-progress-value { background: linear-gradient(180deg, #f6a03f, var(--orange-fonce)); border-radius: 999px; }
.palier-barre__jauge::-moz-progress-bar { background: linear-gradient(180deg, #f6a03f, var(--orange-fonce)); }
.paliers { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.palier { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border: 2px solid var(--filet); border-radius: 8px; background: rgba(255, 255, 255, 0.35); }
.palier--actuel { border-color: var(--orange); background: rgba(240, 137, 31, 0.18); box-shadow: 0 0 0 2px rgba(240, 137, 31, 0.35); }
.palier__nom { font-family: var(--police-titre); font-size: 1.15rem; font-weight: 700; color: var(--bois); }
.palier__seuil { font-size: 0.9rem; color: var(--encre-douce); }
.palier__bonus { font-weight: 700; color: var(--encre); }

/* Hall of fame de l'accueil (sur parchemin) */
.hall { list-style: none; margin: 0 0 12px; padding: 0; }
.hall__ligne { display: flex; align-items: center; gap: 10px; padding: 8px 4px; border-bottom: 1px dashed var(--filet); }
.hall__ligne:last-child { border-bottom: 0; }
.hall__rang { flex: none; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: var(--bois); color: var(--or); font-family: var(--police-titre); font-weight: 700; }
.hall__ligne--1 .hall__rang { background: linear-gradient(180deg, var(--or-clair), var(--or)); color: var(--encre); }
.hall__ligne--2 .hall__rang { background: linear-gradient(180deg, #eef0f1, #aab2b9); color: var(--encre); }
.hall__ligne--3 .hall__rang { background: linear-gradient(180deg, #e3b184, #b8733a); color: var(--encre); }
.hall__icone { flex: none; width: 32px; height: 32px; }
.hall__nom { flex: 1; min-width: 0; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hall__detail { color: var(--encre-douce); font-size: 0.92rem; white-space: nowrap; }

/* Fil d'activité */
.fil { list-style: none; margin: 0; padding: 0; }
.fil__ligne { padding: 8px 2px; border-bottom: 1px dashed var(--filet); overflow-wrap: anywhere; }
.fil__ligne:last-child { border-bottom: 0; }
.fil__quand { color: var(--encre-douce); font-size: 0.92rem; white-space: nowrap; }

/* Engagements */
.engagements { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.engagement { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 18px 16px; text-align: center; border: 2px solid var(--filet); border-radius: var(--rayon); background-color: var(--parchemin); background-image: var(--grain-parchemin); color: var(--encre); box-shadow: var(--ombre); }
.engagement__titre { margin: 4px 0 0; font-size: 1.2rem; color: var(--bois); }
.engagement__texte { margin: 0; font-size: 0.98rem; color: var(--encre-douce); }

@media (max-width: 900px) {
  .paliers { grid-template-columns: repeat(2, 1fr); }
  .engagements { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .podium { grid-template-columns: 1fr; }
  .podium__carte--or { order: 1; }
  .podium__carte--argent { order: 2; }
  .podium__carte--bronze { order: 3; }
  .paliers, .engagements { grid-template-columns: 1fr; }
}

/* Audit 30/10 : accueil allégé sur mobile (héros, statut, actualités, classements et Discord restent). */
@media (max-width: 640px) {
  section[aria-labelledby='pourquoi'],
  section[aria-labelledby='captures'],
  section[aria-labelledby='engagements'],
  section[aria-labelledby='activite'],
  section[aria-labelledby='comment'] { display: none; }
}
