/* ================================================================
   SCOREBOARD & PODIUMS - THEME UFL PREMIUM (VERSION RESPONSIVE 3 MARCHES)
   ================================================================ */

.number-holder {
    transition: all 500ms ease-in-out;
}

.scoreboard {
    border-radius: 12px;
    display: flex;
    margin: 0 auto;
    flex-direction: column;
    background: #060913;
    color: #ffffff;
    padding: 25px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.8);
    max-width: 100%; /* Sécurité mobile */
}

/* --- PODIUMS - STRUCTURE DE BASE (CONSERVÉE) --- */
.scoreboard__podiums {
    display: flex;
    flex-direction: row; /* Force l'alignement horizontal (3 marches) */
    justify-content: center; /* Centre le podium */
    margin: 40px 0;
    min-height: 380px;
    align-items: flex-end; /* Aligne les socles en bas */
}

.scoreboard__podiums .scoreboard__podium {
    margin: 0 10px; /* Espace entre les marches (PC) */
    display: flex;
    flex-direction: column;
    align-self: flex-end;
    flex: 1; /* Chaque marche prend un tiers de la largeur disponible */
    max-width: 200px; /* Largeur max sur PC pour un look épuré */
    opacity: 0;
    position: relative;
}

.scoreboard__podiums .scoreboard__podium.is-visible {
    opacity: 1;
    transition: all 600ms cubic-bezier(.4,.2,.2,1);
}

/* Chiffre de rang (1, 2, 3) */
.scoreboard__podiums .scoreboard__podium-rank {
    font-size: 5.5rem;
    font-weight: 900;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 20px;
    z-index: 1;
    color: rgba(255, 255, 255, 0.12);
    -webkit-text-stroke: 1px rgba(255,255,255,0.2);
    pointer-events: none;
}

/* Socles du podium */
.scoreboard__podiums .scoreboard__podium-base {
    height: 0;
    min-width: 90px;
    width: 100%;
    border-radius: 6px 6px 2px 2px;
    transition: all 1200ms cubic-bezier(.17,.67,.83,.67);
    opacity: 0;
    position: relative;
    z-index: 2;
    box-shadow: 0 10px 25px rgba(0,0,0,0.6);
}

.scoreboard__podiums .scoreboard__podium-base.is-expanding {
    opacity: 1;
}

.scoreboard__podiums .scoreboard__podium-base--first {
    background: linear-gradient(to bottom, #f8b864 0%, #c5a059 100%);
    border: 1px solid rgba(255,255,255,0.4);
}

.scoreboard__podiums .scoreboard__podium-base--second {
    background: linear-gradient(to bottom, #e0e0e0 0%, #8e8e8e 100%);
    border: 1px solid rgba(255,255,255,0.3);
}

.scoreboard__podiums .scoreboard__podium-base--third {
    background: linear-gradient(to bottom, #a37e45 0%, #5e4a28 100%);
    border: 1px solid rgba(255,255,255,0.2);
}

/* Texte sous le podium (Nom et Score) */
.scoreboard__podiums .scoreboard__podium-number {
    text-align: center;
    font-weight: 800;
    margin-top: 15px;
    color: #ffffff;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.9);
}

.scoreboard__podiums .scoreboard__podium-number b {
    font-size: 1.2rem;
    color: #ffffff;
}

.scoreboard__podiums .scoreboard__podium-number small {
    display: block;
    font-size: 0.75rem;
    color: #c5a059; /* Or UFL */
    text-transform: uppercase;
    font-weight: 700;
    margin-top: 4px;
}

/* ================================================================
   ADAPTATION MOBILE - FORCE L'ASPECT 3 MARCHES (AJOUTÉ/CORRIGÉ)
   ================================================================ */

/* --- TABLETTES ET GRANDS MOBILES --- */
@media (max-width: 768px) {
    .scoreboard {
        padding: 15px;
    }

    .scoreboard__podiums {
        margin: 20px 0;
        min-height: 280px; /* Hauteur réduite pour mobile */
        gap: 5px; /* Espace minimal entre les marches */
    }

    .scoreboard__podiums .scoreboard__podium {
        margin: 0; /* On enlève les marges PC */
        max-width: none; /* On laisse le flex gérer la largeur */
    }

    .scoreboard__podiums .scoreboard__podium-base {
        min-width: 70px; /* Socles plus étroits */
    }

    /* Réduction des textes */
    .scoreboard__podiums .scoreboard__podium-number b {
        font-size: 0.95rem; /* Score plus petit */
    }

    .scoreboard__podiums .scoreboard__podium-number small {
        font-size: 0.65rem; /* Nom du joueur plus petit */
        letter-spacing: 0.5px;
    }
}

/* --- PETITS MOBILES (iPhone SE, etc.) --- */
@media (max-width: 420px) {
    .scoreboard__podiums {
        min-height: 240px; /* Encore plus bas */
        gap: 2px; /* Presque collés pour gagner de la place */
    }

    .scoreboard__podiums .scoreboard__podium-base {
        min-width: 60px; /* Socles ultra-étroits */
    }

    /* Le chiffre derrière devient envahissant, on le réduit ou on le masque */
    .scoreboard__podiums .scoreboard__podium-rank {
        font-size: 3rem;
        bottom: 30px;
    }

    /* Texte sous le podium : C'est ici que ça se joue */
    .scoreboard__podiums .scoreboard__podium-number {
        margin-top: 8px;
        line-height: 1.1; /* Resserre les lignes */
    }

    .scoreboard__podiums .scoreboard__podium-number b {
        font-size: 0.85rem; /* Très petit */
    }

    .scoreboard__podiums .scoreboard__podium-number small {
        font-size: 0.6rem; /* Micro texte pour le nom */
        display: -webkit-box;
        -webkit-line-clamp: 2; /* Force le nom sur 2 lignes si trop long */
        -webkit-box-orient: vertical;
        overflow: hidden; /* Coupe le texte si ça dépasse */
    }
}

/* --- LE RESTE DU CSS (LISTES) RESTE IDENTIQUE --- */
.scoreboard__item { /*...*/ }
.scoreboard__title { /*...*/ }
.scoreboard__numbers { /*...*/ }
.scoreboard__bar { /*...*/ }
.bump { /*...*/ }
@keyframes bump { /*...*/ }
