

/* =====================================================
   FICHE CLUB - DESIGN MODERNE
===================================================== */

.fiche-club{

    width:900px;
    margin:40px auto;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.12);
    font-family:Arial,Helvetica,sans-serif;
}

.fiche-entete{

    display:flex;
    align-items:center;
    gap:35px;
    padding:30px;
    background:linear-gradient(135deg,#123d7a,#1e62b8);
    color:#fff;
}

.fiche-logo{

    width:170px;
    text-align:center;
}

.fiche-logo img{

    max-width:140px;
    max-height:140px;
    background:white;
    padding:12px;
    border-radius:12px;
    box-shadow:0 3px 12px rgba(0,0,0,.35);
}

.fiche-titre h1{

    margin:0;
    font-size:42px;
    font-weight:bold;
}

.fiche-titre h2{

    margin-top:12px;
    font-size:24px;
    font-weight:normal;
    color:#d8e7ff;
}

.fiche-ligne{

    display:flex;
    border-bottom:1px solid #ececec;
}

.fiche-ligne:nth-child(even){

    background:#fafafa;
}

.fiche-libelle{

    width:240px;
    background:#f2f4f8;
    padding:18px;
    font-weight:bold;
    color:#1d4f91;
}

.fiche-valeur{

    flex:1;
    padding:18px;
    color:#333;
}

.fiche-bloc{

    padding:25px 30px;
    line-height:1.8;
}

.fiche-bloc h3{

    margin-top:0;
    margin-bottom:18px;
    color:#123d7a;
    font-size:24px;
    border-left:6px solid #1e62b8;
    padding-left:15px;
}

@media screen and (max-width:900px){

    .fiche-club{

        width:98%;
    }

    .fiche-entete{

        flex-direction:column;
        text-align:center;
    }

    .fiche-ligne{

        flex-direction:column;
    }

    .fiche-libelle{

        width:auto;
    }

}

.bloc-stats{

    width:900px;
    margin:30px auto;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.10);
    font-family:Arial, Helvetica, sans-serif;
}

/* TITRE BLEU IDENTIQUE FICHE CLUB */
.bloc-stats-header{

    background:linear-gradient(135deg,#123d7a,#1e62b8);
    color:#fff;
    padding:18px 20px;
    font-size:20px;
    font-weight:bold;
}

/* TABLE VERSION FLEX */
.bloc-stats-table{
    display:flex;
    flex-direction:column;
}

/* LIGNES */
.bloc-stats-row{
    display:grid;
    grid-template-columns:
        90px 110px 110px 60px 40px
        40px 40px 40px 40px
        45px 45px 45px 40px; /* <-- NOUVELLE COLONNE */
    
    gap:10px;
    padding:12px 15px;
    border-bottom:1px solid #eee;
    align-items:center;
    font-size:14px;
    color:#333;
}

/* 13E COLONNE */
.bloc-resultats{
    text-align:center;
    display:flex;
    justify-content:center;
    align-items:center;
}

.bloc-resultats a{
    display:inline-flex;
    justify-content:center;
    align-items:center;

    width:28px;
    height:28px;

    border-radius:6px;

    background:#f5f5f5;
    border:1px solid #ddd;

    color:#555;
    font-size:15px;

    transition:0.2s ease;
}

.bloc-resultats a:hover{
    background:#eaf2ff;
    border-color:#0d6efd;
    color:#0d6efd;
}

.bloc-resultats a i{
    font-size:16px;
}


/* EN-TÊTE */
.bloc-stats-head{

    background:#f2f6ff;
    font-weight:bold;
    color:#123d7a;
    border-bottom:2px solid #1e62b8;
}

/* ZEBRA */
.bloc-stats-row:nth-child(even){
    background:#fafafa;
}

/* HOVER */
.bloc-stats-row:not(.bloc-stats-head):hover{
    background:#eaf2ff;
    transition:0.2s;
}

/* RESPONSIVE */
@media screen and (max-width:900px){

    .bloc-stats{
        width:98%;
    }

    .bloc-stats-row{
        grid-template-columns:1fr;
        gap:6px;
    }

    .bloc-stats-row div{
        padding:2px 0;
    }
}

/* =====================================================
   FICHE CLUB EUROPE - DESIGN MODERNE
===================================================== */

/* =====================================================
   CLUB EUROPE - CONFRONTATIONS
===================================================== */


.fiche-pays{

    margin-top:12px;
    font-size:20px;
    color:#d8e7ff;

}


/* BOUTON FICHE COMPLETE */

.fiche-bouton{

    margin-top:25px;

}


.fiche-bouton a{

    display:inline-block;

    background:#fff;

    color:#123d7a;

    padding:10px 22px;

    border-radius:8px;

    font-weight:bold;

    text-decoration:none;

    transition:.2s;

}


.fiche-bouton a:hover{

    background:#eaf2ff;

}



/* =====================================================
   BLOC PRINCIPAL EUROPE
===================================================== */


.bloc-europe{

    width:900px;

    margin:35px auto;

    background:#fff;

    border-radius:12px;

    overflow:hidden;

    box-shadow:0 8px 25px rgba(0,0,0,.10);

    font-family:Arial,Helvetica,sans-serif;

}



/* TITRE PRINCIPAL */


.bloc-europe-header{

    background:linear-gradient(135deg,#123d7a,#1e62b8);

    color:#fff;

    padding:20px 25px;

    font-size:24px;

    font-weight:bold;

}



/* =====================================================
   SAISON
===================================================== */


.bloc-saison{

    margin:25px;

    border-radius:10px;

    overflow:hidden;

    border:1px solid #e5e5e5;

}


.bloc-saison-header{

    background:#f2f6ff;

    color:#123d7a;

    padding:15px 20px;

    font-size:20px;

    font-weight:bold;

    border-bottom:2px solid #1e62b8;

}


/* =====================================================
   MATCH
===================================================== */


.ligne-match{

    display:grid;

    grid-template-columns:

    90px
    100px
    1fr
    70px
    1fr;


    align-items:center;

    gap:12px;

    padding:14px 15px;

    border-bottom:1px solid #ececec;

    font-size:14px;

    color:#333;

}



.ligne-match:nth-child(even){

    background:#fafafa;

}


.ligne-match:hover{

    background:#eaf2ff;

    transition:.2s;

}



/* DATE */


.date-match{

    font-weight:bold;

    color:#555;

}



/* NIVEAU */


.niveau-match{

    color:#1d4f91;

    font-weight:bold;

}



/* =====================================================
   CLUBS
===================================================== */


.club-dom,
.club-ext{

    display:flex;

    align-items:center;

    gap:10px;

}



.club-dom{

    justify-content:flex-end;

    text-align:right;

}



.club-ext{

    justify-content:flex-start;

}



.club-dom img,
.club-ext img{


    width:32px;

    height:32px;

    object-fit:contain;

    background:white;

    border-radius:5px;

}



.club-dom a,
.club-ext a{

    color:#123d7a;

    font-weight:bold;

    text-decoration:none;

}



.club-dom a:hover,
.club-ext a:hover{

    text-decoration:underline;

}



/* =====================================================
   SCORE
===================================================== */


.score-match{

    text-align:center;

    font-size:20px;

    font-weight:bold;

}



.score-normal{

    color:#000;

}



.score-victoire{

    color:#159447;

}



.score-nul{

    color:#e67e00;

}



.score-defaite{

    color:#c62828;

}



/* =====================================================
   RESPONSIVE
===================================================== */


@media screen and (max-width:900px){


    .bloc-europe{

        width:98%;

    }


    .ligne-match{

        grid-template-columns:1fr;

        text-align:center;

        gap:8px;

    }



    .club-dom,
    .club-ext{

        justify-content:center;

    }



    .bloc-saison{

        margin:15px;

    }


}




/* =====================================================
   TABLES COMPATIBLES FICHE CLUB (CLASSEMENTS / DETAILS)
===================================================== */

.table-stats{

    width:min(900px,95%);
    margin:25px auto;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(0,0,0,.10);
    font-family:Arial, Helvetica, sans-serif;
}

/* TITRE TABLEAU */
.table-stats caption{

    background:linear-gradient(135deg,#123d7a,#1e62b8);
    color:#fff;
    padding:15px;
    font-size:18px;
    font-weight:bold;
    text-align:left;
}

/* HEADER TABLE */
.table-stats .trtit,
.table-stats .tdtit1{

    background:#f2f6ff;
    color:#123d7a;
    font-weight:bold;
}

/* CELLS */
.table-stats td{

    padding:10px 12px;
    font-size:13px;
    border-bottom:1px solid #eee;
    text-align:center;
}

/* première colonne à gauche */
.table-stats td:first-child{
    text-align:left;
    font-weight:bold;
}

/* ZEBRA */
.table-stats tr:nth-child(even){
    background:#fafafa;
}

/* HOVER */
.table-stats tr:hover td{
    background:#eaf2ff;
    transition:0.2s;
}

/* =====================================================
   BLOCS EQUIPES (A / B / C / D)
===================================================== */

.team-block{

    width:min(900px,95%);
    margin:30px auto;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(0,0,0,.10);
}

/* TITRE */
.team-block caption{

    background:linear-gradient(135deg,#0f2f5f,#1e62b8);
    color:#fff;
    padding:14px;
    font-weight:bold;
}

/* =====================================================
   PALMARES
===================================================== */

.palmares-table {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0,0,0,.10);
}

/* HEADER = même bleu que bloc-stats */
.palmares-table thead {
    background: linear-gradient(135deg,#123d7a,#1e62b8);
}

.palmares-table thead th {
    padding: 14px 12px;
    color: #fff;
    font-weight: bold;
    text-align: left;
    border: none;
}

/* LIGNES */
.palmares-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #eee;
    color: #333;
}

/* ZEBRA */
.palmares-table tbody tr:nth-child(even) {
    background: #fafafa;
}

/* HOVER IDENTIQUE SITE */
.palmares-table tbody tr:hover {
    background: #eaf2ff;
    transition: 0.2s;
}

/* PREMIÈRE COLONNE (STYLE TITRE) */
.palmares-table tbody td:first-child {
    font-weight: bold;
    color: #123d7a;
}

/* LIENS */
.palmares-table a {
    color: #1e62b8;
    text-decoration: none;
    font-weight: 600;
}

.palmares-table a:hover {
    text-decoration: underline;
}

/* ALIGNEMENT NUMÉRIQUE */
.palmares-table tbody td:nth-child(n+4) {
    text-align: center;
}

/* MOBILE */
@media screen and (max-width: 900px) {
    .palmares-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

.palmares-table {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0,0,0,.10);
}

/* HEADER = même bleu que bloc-stats */
.palmares-table thead {
    background: linear-gradient(135deg,#123d7a,#1e62b8);
}

.palmares-table thead th {
    padding: 14px 12px;
    color: #fff;
    font-weight: bold;
    text-align: left;
    border: none;
}

/* LIGNES */
.palmares-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #eee;
    color: #333;
}

/* ZEBRA */
.palmares-table tbody tr:nth-child(even) {
    background: #fafafa;
}

/* HOVER IDENTIQUE SITE */
.palmares-table tbody tr:hover {
    background: #eaf2ff;
    transition: 0.2s;
}

/* PREMIÈRE COLONNE (STYLE TITRE) */
.palmares-table tbody td:first-child {
    font-weight: bold;
    color: #123d7a;
}

/* LIENS */
.palmares-table a {
    color: #1e62b8;
    text-decoration: none;
    font-weight: 600;
}

.palmares-table a:hover {
    text-decoration: underline;
}

.palmares-table th,
.palmares-table td {
    text-align: center;
}

/* Bloc statistiques résumé (8 colonnes) */

.bloc-stats-table.resume .bloc-stats-row{

    grid-template-columns:
        260px
        90px
        90px
        70px
        70px
        70px
        80px
        80px;

}


/* =====================================================
   EUROPE / INTERNATIONAL
===================================================== */

.europe-table{

    width:min(900px,95%);
    margin:30px auto;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.10);
}

.europe-table caption{

    background:linear-gradient(135deg,#1a1a1a,#3a3a3a);
    color:#fff;
    padding:14px;
    font-weight:bold;
}

/* HEADER EUROPE */
.europe-table .tdtit1{
    background:#eef3ff;
    color:#123d7a;
    font-weight:bold;
}

/* =====================================================
   LIENS MODERNES
===================================================== */

a{

    color:#1e62b8;
    text-decoration:none;
    font-weight:600;
    position:relative;
    transition:all .25s ease;

}

/* Soulignement animé */

a::after{

    content:"";
    position:absolute;
    left:0;
    bottom:-2px;
    width:0;
    height:2px;
    background:linear-gradient(90deg,#1e62b8,#5fa8ff);
    border-radius:2px;
    transition:width .25s ease;

}

a:hover{

    color:#123d7a;

}

a:hover::after{

    width:100%;

}

a:visited{

    color:#305ca8;

}

a:active{

    color:#e85d04;

}

.bloc-stats a,
.palmares-table a{

    font-weight:700;
    color:#1e62b8;

}

.bloc-stats a:hover,
.palmares-table a:hover{

    color:#0d4e99;

}


/*=====================================================
 COUPE DE FRANCE
=====================================================*/

.bloc-stats-table.cdf .bloc-stats-row{

    grid-template-columns:
        260px
        90px
        1fr;

    align-items:center;
    text-align:center;

}

.bloc-stats-table.cdf .bloc-stats-row div:first-child{

    text-align:left;
    font-weight:bold;
    color:#123d7a;

}

.bloc-stats-table.cdf .bloc-stats-row div:last-child{

    text-align:left;
    line-height:1.7;

}

/* MODIFICATION CSS FORMULAIRE CHAMPIONNAT */

.championnat-box {
    display: block;
    margin-bottom: 20px;
    justify-content: center;
    align-items: center;
    padding: 40px 0;
}

.championnat-form {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
    text-align: center;
}

.championnat-select {
    width: 320px;
    height: 260px;
    font-size: 15px;
    padding: 8px;
    border: 2px solid #ddd;
    border-radius: 8px;
    background: #fafafa;
    outline: none;
    cursor: pointer;
}

.championnat-select:hover {
    border-color: #888;
}

.championnat-select option {
    padding: 6px;
}


/* MODIFICATION PARAGRAPHE DE CHAMPIONNAT */

.bloc-groupe {
    background: linear-gradient(135deg, #f6f9ff, #eef3ff);
    border-left: 5px solid #3b82f6;
    padding: 15px 18px;
    margin: 15px 0;
    border-radius: 10px;
    font-family: Arial, sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: #1f2937;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
	text-align:center;
}

.bloc-groupe:hover {
    transform: translateY(-2px);
    transition: 0.2s ease;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
}

.bloc-global {
    background: linear-gradient(135deg, #fff7ed, #ffedd5);
    border-left: 5px solid #f97316;
    padding: 18px;
    margin-top: 25px;
    border-radius: 10px;
    font-family: Arial, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #7c2d12;
    box-shadow: 0 3px 10px rgba(0,0,0,0.06);
	text-align:center;
}


.classementf2 h1{

    width:900px;
    margin:25px auto 15px;
    padding:18px 25px;

    background:linear-gradient(135deg,#123d7a,#1e62b8);
    color:#fff;

    border-radius:12px;
    box-shadow:0 8px 20px rgba(0,0,0,.10);

    font-family:Arial, Helvetica, sans-serif;
    font-size:28px;
    font-weight:700;
    text-align:center;
    line-height:1.3;
}




.onglets{

    width:900px;
    margin:15px auto 0;
    display:flex;
    justify-content:center;
    gap:8px;
}

.onglets a{

    display:inline-block;
    padding:11px 22px;

    background:#f2f6ff;
    color:#123d7a;

    border:1px solid #d6e1f5;
    border-radius:10px 10px 0 0;

    text-decoration:none;
    font-family:Arial, Helvetica, sans-serif;
    font-size:15px;
    font-weight:bold;

    transition:.2s;
}

.onglets a:hover{

    background:#1e62b8;
    color:#fff;
}

.onglets a.actif{

    background:#123d7a;
    color:#fff;
    border-color:#123d7a;
}

.navigation-saison{

    width:900px;
    margin:20px auto;
    text-align:center;

    font-family:Arial, Helvetica, sans-serif;
}

.navigation-saison a{

    color:#123d7a;
    font-weight:bold;
    text-decoration:none;
    margin:0 15px;
}

.navigation-saison a:hover{

    color:#1e62b8;
    text-decoration:underline;
}

/* =====================================================
   BANNIERE STATFOOT
===================================================== */

.banniere-statfoot{

    width:100%;

    text-align:center;

    background:linear-gradient(135deg,#123d7a,#1e62b8);

    color:white;

    padding:20px 10px;

    box-sizing:border-box;

}


.logo-statfoot{

    width:120px;

    height:120px;

    object-fit:contain;

    display:block;

    margin:0 auto 10px auto;

}


.banniere-statfoot h1{

    margin:0;

    font-size:32px;

}


.banniere-statfoot p{

    margin:8px 0 0;

    color:#dceaff;

    font-size:16px;

}



/* =====================================================
   MENU PRINCIPAL
===================================================== */

.menu{

    width:100%;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:0;

    background:#123d7a;

    padding:0 10px;

    box-sizing:border-box;

}


.menu a{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    padding:14px 16px;

    color:white;

    text-decoration:none;

    font-size:15px;

    font-weight:bold;

    white-space:nowrap;

    box-sizing:border-box;

}


.menu a:hover{

    background:#1e62b8;

}


.menu a.actif{

    background:white;

    color:#123d7a;

}



/* =====================================================
   ICONES
===================================================== */


.menu .icone{

    font-size:22px;

    line-height:1;

}


.menu .texte{

    font-size:15px;

}



/* =====================================================
   LOGO ACCUEIL DANS MENU
===================================================== */


.logo-menu{

    width:26px;

    height:26px;

    object-fit:contain;

}



/* =====================================================
   RESPONSIVE TABLETTE
===================================================== */


@media screen and (max-width:900px){


    .menu{

        flex-wrap:wrap;

        padding:8px;

    }


    .menu a{

        flex:1 1 33%;

        padding:12px 8px;

    }


}



/* =====================================================
   RESPONSIVE TELEPHONE
===================================================== */


@media screen and (max-width:600px){


    .banniere-statfoot h1{

        font-size:22px;

    }


    .banniere-statfoot p{

        display:none;

    }


    .logo-statfoot{

        width:90px;

        height:90px;

    }


    .menu{

        flex-direction:column;

        align-items:stretch;

    }


    .menu a{

        width:100%;

    }


}



.site-footer {
    background: #0b4f8a;      /* même bleu que le menu/bannière */
    color: #fff;
    text-align: center;
    padding: 20px 15px;
    margin-top: 40px;
}

.site-footer a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}

.site-footer a:hover {
    text-decoration: underline;
}

.site-footer p {
    margin: 0;
}
