﻿/* ==========================================================================
   STRUCTURE ORIGINALE PRÉSERVÉE (Ne pas modifier les dimensions)
   ========================================================================== */
div.tas-panel-tableau-combat {
    overflow-x: auto; /* Remplacé scroll par auto pour masquer la barre si inutile */
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    padding-bottom: 16px;
}

table.tas-tableau-combat {
    border: 0px;
    border-collapse: collapse;
    border-spacing: 0px;
}

    table.tas-tableau-combat td {
        padding: 0px;
    }

table.tas-tableau-repechage-combat {
    border: 0px;
    border-collapse: collapse;
    border-spacing: 0px;
}

    table.tas-tableau-repechage-combat td {
        padding: 0px;
        vertical-align: top;
    }

table.tas-tableau-prochain-combat {
    border: 0px;
    border-collapse: collapse;
    border-spacing: 0px;
    width: 100%
}

    table.tas-tableau-prochain-combat tr {
        /* CORRECTION : Remplace le 'white' en dur par la couleur de fond dynamique */
        border-bottom: 6px solid var(--bg-color);
    }

    table.tas-tableau-prochain-combat div.tas-info-combat {
        position: relative;
        display: inline-block;
    }

        table.tas-tableau-prochain-combat div.tas-info-combat footer {
            display: flex;
            justify-content: center;
        }

div.tas-combat-niveau {
    width: 100%;
}

    div.tas-combat-niveau table {
        border: 0px;
        border-collapse: collapse;
        border-spacing: 0px;
        width: 100%;
        height: 100%;
    }

        div.tas-combat-niveau table td {
            padding: 0px;
            vertical-align: middle;
        }

        div.tas-combat-niveau table tr.tas-combat-spacer {
            height: 6px;
        }

        div.tas-combat-niveau table tr div.tas-combattant {
            width: 100%;
            margin-top: 25px;
            min-width: 100px;
        }

        div.tas-combat-niveau table tr div.tas-participant {
            width: 100%;
            min-width: 100px;
        }

div.tas-combat-repechage-niveau {
    width: 100%;
}

    div.tas-combat-repechage-niveau table {
        border: 0px;
        border-collapse: collapse;
        border-spacing: 0px;
        width: 100%;
        height: 100%;
    }

        div.tas-combat-repechage-niveau table td {
            padding: 0px;
            vertical-align: middle;
        }

        div.tas-combat-repechage-niveau table tr {
            height: 35px;
        }

            div.tas-combat-repechage-niveau table tr.tas-combat-repechage {
                height: 25px;
            }

            div.tas-combat-repechage-niveau table tr div.tas-combattant {
                width: 100%;
                margin-top: 25px;
                min-width: 100px;
            }

            div.tas-combat-repechage-niveau table tr div.tas-participant {
                width: 100%;
                min-width: 100px;
            }

div.tas-combat-final-niveau {
    width: 100%;
}

    div.tas-combat-final-niveau table {
        border: 0px;
        border-collapse: collapse;
        border-spacing: 0px;
        width: 100%;
        height: 100%;
    }

        div.tas-combat-final-niveau table td {
            padding: 0px;
            vertical-align: middle;
        }

        div.tas-combat-final-niveau table tr div.tas-combattant {
            width: 100%;
            margin-top: 25px;
            min-width: 100px;
        }

        div.tas-combat-final-niveau table tr div.tas-participant {
            width: 100%;
            min-width: 100px;
        }

div.tas-combat-repechage-final-niveau {
    width: 100%;
}

    div.tas-combat-repechage-final-niveau table {
        border: 0px;
        border-collapse: collapse;
        border-spacing: 0px;
        width: 100%;
        height: 100%;
    }

        div.tas-combat-repechage-final-niveau table td {
            padding: 0px;
            vertical-align: middle;
        }

        div.tas-combat-repechage-final-niveau table tr div.tas-combattant {
            width: 100%;
            margin-top: 25px;
            min-width: 100px;
        }

        div.tas-combat-repechage-final-niveau table tr div.tas-participant {
            width: 100%;
            min-width: 100px;
        }

td.tas-combat-vertical {
    height: 50%;
    width: 6px;
}

    td.tas-combat-vertical div {
        border-radius: 0 50% 50% 0;
        height: 100%;
        width: 100%;
    }

td.tas-combat-repechage-vertical {
    width: 6px;
}

    td.tas-combat-repechage-vertical div {
        border-radius: 0 50% 50% 0;
        width: 100%;
    }

table.tas-tableau-combat-participant {
    border: 0px;
    border-collapse: collapse;
    border-spacing: 0px;
    width: 100%;
    padding: 4px;
}

    table.tas-tableau-combat-participant tr {
        /* CORRECTION : Même chose ici pour éviter le trait blanc */
        border-bottom: 6px solid var(--bg-color);
    }

        table.tas-tableau-combat-participant tr table {
            padding: 0px;
        }

            table.tas-tableau-combat-participant tr table td {
                padding: 0px;
            }

                table.tas-tableau-combat-participant tr table td.tas-winner {
                    padding: 0px;
                    width: 20px;
                }

                table.tas-tableau-combat-participant tr table td div.tas-resultat {
                    padding: 0px 2px 0px 2px;
                }

div.tas-combat-premiere-categorie {
    transform: translateY(-10px);
    width: 72px;
}

div.tas-participant-premiere-categorie {
    transform: translateY(-8px);
    width: 72px;
}

div.tas-prochain-combat-premiere-categorie {
    width: 72px;
}

/* ==========================================================================
   MODERNISATION DE LA CHARTE GRAPHIQUE (Cartes et Lignes d'arbre)
   ========================================================================== */

/* Lignes de liaison de l'arbre (Remplace le w3-gray en dur) */
td.tas-combat-vertical div,
td.tas-combat-repechage-vertical div {
    background-color: var(--text-muted); /* Gris thématique adaptatif */
    opacity: 0.4;
}

/* Base commune pour conserver les calculs de Padding du XSLT sans les casser */
.tas-base-card {
    border-radius: 6px;
    padding: 2px 8px; /* Padding minimal pour ne pas déformer la hauteur calculée */
    box-sizing: border-box;
}

/* Carte Combattant standard (Remplace w3-pale-yellow) */
.tas-athlete-card {
    background-color: var(--card-bg);
    border: 1px solid var(--card-accent-border); /* Bascule automatique Bleu/Blanc atténué */
    color: var(--text-color);
}

/* Carte Combattant vide (Remplace w3-light-grey) */
.tas-athlete-card-empty {
    /* Remplace rgba(118, 118, 128, 0.05) */
    background-color: color-mix(in srgb, var(--text-muted) 5%, transparent);
    border: 1px dashed var(--card-accent-border);
    color: var(--text-muted);
}

/* Carte Vainqueur final (Remplace w3-pale-red) */
.tas-athlete-card-winner {
    background-color: color-mix(in srgb, var(--fj-red) 10%, transparent);
    border: 1px solid color-mix(in srgb, var(--fj-red) 30%, transparent);
    color: var(--text-color);
    font-weight: 600;
}

body.dark-mode .tas-athlete-card-winner {
    background-color: color-mix(in srgb, var(--fj-red) 25%, transparent);
    border-color: color-mix(in srgb, var(--fj-red) 40%, transparent);
}

/* ==========================================================================
   OPTION 1 : Gouttière latérale (Color Bar) - Prochains Combats
   ========================================================================== */
.tas-upcoming-card {
    background-color: var(--card-bg);
    color: var(--text-color);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 8px 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    box-sizing: border-box;
}

    /* Combattant 1 (à gauche de l'écran) : La bande colorée est à droite (vers le centre) */
    .tas-upcoming-card.belt-right-blue {
        border-right: 6px solid var(--fj-blue);
        text-align: right;
    }

    .tas-upcoming-card.belt-right-red {
        border-right: 6px solid var(--fj-red);
        text-align: right;
    }

    .tas-upcoming-card.belt-right-neutral {
        border-right: 6px solid var(--belt-neutral); /* Bascule automatique Gris/Blanc pur */
        text-align: right;
    }

    /* Combattant 2 (à droite de l'écran) : La bande colorée est à gauche (vers le centre) */
    .tas-upcoming-card.belt-left-blue {
        border-left: 6px solid var(--fj-blue);
        text-align: left;
    }

    .tas-upcoming-card.belt-left-red {
        border-left: 6px solid var(--fj-red);
        text-align: left;
    }

    .tas-upcoming-card.belt-left-neutral {
        border-left: 6px solid var(--belt-neutral); /* Bascule automatique Gris/Blanc pur */
        text-align: left;
    }

/* État "En Attente" */
.tas-upcoming-card-waiting {
    /* Remplace rgba(118, 118, 128, 0.05) */
    background-color: color-mix(in srgb, var(--text-muted) 5%, transparent);
    border: 1px dashed var(--card-accent-border);
    color: var(--text-muted);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 10px;
    border-radius: 8px;
}

/* Bloc central d'information du combat */
.tas-upcoming-info {
    background-color: var(--card-bg);
    border: 1px solid var(--card-accent-border); /* Bascule automatique Bleu/Blanc atténué */
    border-radius: 8px;
    padding: 8px;
    color: var(--text-color);
}

/* ==========================================================================
   CORRECTION : Modificateur exclusif pour le Mode Équipe
   ========================================================================== */

.tas-mode-equipe .tas-upcoming-info {
    padding: 6px 8px; /* Réduit l'espace car le badge prend de la place */
}