/* Défi du mois dans l'appli : titre du défi, classement en lignes à filet. */
.pm-defi-titre { margin: 6px 0 2px; font-size: 20px; font-weight: 800; line-height: 1.2; color: var(--white); }
.pm-defi-dates { margin: 0 0 10px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--blue); }
.pm-defi-section { margin: 24px 0 0; padding-bottom: 6px; border-bottom: 2px solid var(--white); font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif; font-size: 22px; font-weight: 400; letter-spacing: .04em; text-transform: uppercase; }
.pm-defi-ligne { display: grid; grid-template-columns: 2rem minmax(0, 1fr) auto; align-items: baseline; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--rule); color: var(--white); text-decoration: none; }
.pm-defi-ligne:not(:has(.rang)) { grid-template-columns: minmax(0, 1fr) auto; }
.pm-defi-ligne .rang { font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif; font-size: 22px; }
.pm-defi-ligne .rang.podium { color: var(--blue); }
.pm-defi-ligne .nom { font-size: 15px; font-weight: 600; }
.pm-defi-ligne .nom small { display: block; overflow: hidden; font-size: 12px; font-weight: 400; color: color-mix(in srgb, var(--white) 60%, transparent); white-space: nowrap; text-overflow: ellipsis; }
.pm-defi-ligne .valeur { font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif; font-size: 20px; }
.pm-defi-ligne.moi .nom { color: var(--blue); }
