/*
Theme Name: DevenirAgentFoot
Theme URI: https://app.deveniragentfoot.fr
Description: Thème enfant de Twenty Twenty-Five pour DevenirAgentFoot — LMS de préparation à l'examen d'agent sportif. Direction artistique noir / or / Serif.
Author: Walid Joudi Guerraa
Author URI: https://deveniragentfoot.fr
Template: twentytwentyfive
Version: 1.0.0
Text Domain: deveniragentfoot
*/

/* ===================================================================
   DEVENIRAGENTFOOT — DIRECTION ARTISTIQUE
   Chantier 2 — DA noir/or/Serif (étapes 2.2 → 2.6b)
   Chantier 3 — Pont 2b : page d'accueil "portail élève"
   =================================================================== */

/* -------------------------------------------------------------------
   1. VARIABLES
   ------------------------------------------------------------------- */
:root {
    --daf-fond-lecture: #faf8f3;
    --daf-fond-sombre: #0a0a0a;
    --daf-fond-carte: #ffffff;
    --daf-or: #d4af37;
    /* Or foncé assombri de #a08840 à #7e6832 : l'ancienne valeur plafonnait à
       3,45:1 sur fond clair, sous le minimum de 4,5:1 du critère 3.2 du RGAA.
       #7e6832 tient 4,68:1 sur le fond encadré, 5,06:1 sur le fond de lecture
       et 5,37:1 sur blanc. Cette variable ne sert jamais de fond, uniquement de
       texte et de bordure : l'assombrir ne peut qu'améliorer les contrastes. */
    --daf-or-fonce: #7e6832;
    --daf-texte: #1a1a1a;
    --daf-texte-clair: #e8e8e8;
    --daf-texte-secondaire: #666666;
    --daf-bordure: #e0ddd5;
    --daf-fond-encadre: #f4efe4;
    --daf-serif: Georgia, 'Times New Roman', serif;
    --daf-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

/* -------------------------------------------------------------------
   2. TYPOGRAPHIE — Titres en Georgia Serif
   ------------------------------------------------------------------- */
h1, h2, h3,
.wp-block-heading,
.tutor-course-name,
.tutor-course-title,
.tutor-lesson-title,
.tutor-segment-title {
    font-family: var(--daf-serif);
    color: var(--daf-or-fonce);
    font-weight: 700;
    line-height: 1.25;
}

h1, h1.wp-block-heading {
    font-size: 2.4rem;
    margin-bottom: 0.6em;
}

h2, h2.wp-block-heading {
    font-size: 1.8rem;
    margin-top: 1.6em;
    margin-bottom: 0.5em;
}

h3, h3.wp-block-heading {
    font-size: 1.35rem;
    margin-top: 1.3em;
    margin-bottom: 0.4em;
}

h4, h5, h6,
h4.wp-block-heading, h5.wp-block-heading, h6.wp-block-heading {
    font-family: var(--daf-serif);
    color: var(--daf-texte);
    font-weight: 700;
}

/* -------------------------------------------------------------------
   3. TITRES TUTOR LMS
   ------------------------------------------------------------------- */
h1.tutor-color-black,
h2.tutor-color-black,
h3.tutor-color-black,
h4.tutor-color-black,
.tutor-course-details-title,
.tutor-course-content-title {
    color: var(--daf-or-fonce);
    font-family: var(--daf-serif);
}

.tutor-course-content-list-item-title {
    font-family: var(--daf-serif);
}

.tutor-accordion-item-header {
    font-family: var(--daf-serif);
    color: var(--daf-or-fonce);
}

/* -------------------------------------------------------------------
   4. FOND + CORPS DE TEXTE
   ------------------------------------------------------------------- */
body {
    background-color: var(--daf-fond-lecture);
    color: var(--daf-texte);
    font-family: var(--daf-sans);
}

p,
li,
.tutor-course-content p,
.tutor-lesson-content p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--daf-texte);
}

.wp-element-caption,
figcaption {
    color: var(--daf-texte-secondaire);
    font-size: 0.9rem;
}

.tutor-lesson-content,
.tutor-course-content {
    background-color: var(--daf-fond-carte);
}

/* -------------------------------------------------------------------
   5. BLOCKQUOTES
   ------------------------------------------------------------------- */
blockquote,
.wp-block-quote {
    background-color: var(--daf-fond-encadre);
    border-left: 5px solid var(--daf-or);
    margin: 1.6em 0;
    padding: 1.1em 1.4em;
    border-radius: 0 4px 4px 0;
    font-style: normal;
}

blockquote p:first-child,
.wp-block-quote p:first-child {
    margin-top: 0;
}

blockquote p:last-child,
.wp-block-quote p:last-child {
    margin-bottom: 0;
}

blockquote strong,
.wp-block-quote strong {
    color: var(--daf-or-fonce);
}

/* -------------------------------------------------------------------
   6. TABLEAUX
   ------------------------------------------------------------------- */
table,
.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
    margin: 1.6em 0;
    font-size: 0.98rem;
    background-color: var(--daf-fond-carte);
}

table thead th,
.wp-block-table thead th {
    background-color: var(--daf-fond-sombre);
    color: var(--daf-texte-clair);
    font-family: var(--daf-serif);
    font-weight: 700;
    text-align: left;
    padding: 0.75em 1em;
    border: 1px solid var(--daf-fond-sombre);
}

table td,
table tbody th,
.wp-block-table td,
.wp-block-table tbody th {
    padding: 0.7em 1em;
    border: 1px solid var(--daf-bordure);
    vertical-align: top;
}

table tbody tr:nth-child(even),
.wp-block-table tbody tr:nth-child(even) {
    background-color: var(--daf-fond-lecture);
}

table td strong,
table tbody th strong,
.wp-block-table td strong {
    color: var(--daf-or-fonce);
}

/* -------------------------------------------------------------------
   7. LIENS
   ------------------------------------------------------------------- */
.tutor-lesson-content a,
.tutor-course-content a,
.entry-content a,
article a {
    color: var(--daf-or-fonce);
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}

.tutor-lesson-content a:hover,
.tutor-course-content a:hover,
.entry-content a:hover,
article a:hover {
    color: var(--daf-or);
    text-decoration-thickness: 2px;
}

/* -------------------------------------------------------------------
   8. FILETS HORIZONTAUX
   ------------------------------------------------------------------- */
hr,
.wp-block-separator {
    border: none;
    border-top: 2px solid var(--daf-or);
    opacity: 0.5;
    margin: 2em 0;
    max-width: 100%;
}

/* -------------------------------------------------------------------
   9. HEADER
   ------------------------------------------------------------------- */
.wp-site-blocks > header,
body > header {
    background-color: var(--daf-fond-sombre);
}

header .wp-block-site-title,
header .wp-block-site-title a {
    font-family: var(--daf-serif);
    color: var(--daf-or);
    font-weight: 700;
    text-decoration: none;
}

header .wp-block-site-title a:hover {
    color: var(--daf-or-fonce);
}

header .wp-block-site-tagline {
    color: var(--daf-texte-secondaire);
}

/* -------------------------------------------------------------------
   10. MENU DE NAVIGATION
   ------------------------------------------------------------------- */
header .wp-block-navigation a,
header .wp-block-navigation .wp-block-navigation-item__content,
header .wp-block-navigation .wp-block-pages-list__item__link,
header .wp-block-navigation__container a,
header .wp-block-page-list a {
    color: var(--daf-texte-clair) !important;
}

header .wp-block-navigation a:hover,
header .wp-block-navigation .wp-block-navigation-item__content:hover,
header .wp-block-navigation .wp-block-pages-list__item__link:hover,
header .wp-block-navigation__container a:hover,
header .wp-block-page-list a:hover {
    color: var(--daf-or) !important;
}

header .wp-block-navigation .wp-block-navigation-submenu__container {
    background-color: #1a1a1a;
    border: 1px solid var(--daf-or-fonce);
}

header .wp-block-navigation .wp-block-navigation-submenu__container a {
    color: var(--daf-texte-clair) !important;
}

header .wp-block-navigation .wp-block-navigation-submenu__container a:hover {
    color: var(--daf-or) !important;
}

/* -------------------------------------------------------------------
   11. FOOTER
   ------------------------------------------------------------------- */
.wp-site-blocks > footer,
body > footer {
    background-color: var(--daf-fond-sombre);
    color: var(--daf-texte-clair);
}

footer h1, footer h2, footer h3,
footer .wp-block-heading,
footer .wp-block-site-title,
footer .wp-block-site-title a {
    color: var(--daf-or);
}

footer p,
footer li,
footer .wp-block-site-tagline {
    color: var(--daf-texte-clair);
}

footer a {
    color: var(--daf-or);
    text-decoration: none;
}

footer a:hover {
    color: var(--daf-or-fonce);
    text-decoration: underline;
}

footer hr,
footer .wp-block-separator {
    border-top-color: var(--daf-or);
}

/* -------------------------------------------------------------------
   12. PAGES COURS — Boutons, cartes, badges, onglets Tutor LMS
   ------------------------------------------------------------------- */
.tutor-btn-primary,
.tutor-course-entry-box .tutor-btn,
.tutor-enroll-course-button,
.tutor-add-to-cart-button,
button.tutor-btn-primary,
a.tutor-btn-primary {
    background-color: var(--daf-or) !important;
    border-color: var(--daf-or) !important;
    color: var(--daf-fond-sombre) !important;
    font-weight: 700 !important;
    font-family: var(--daf-sans) !important;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.tutor-btn-primary:hover,
.tutor-course-entry-box .tutor-btn:hover,
.tutor-enroll-course-button:hover,
.tutor-add-to-cart-button:hover,
button.tutor-btn-primary:hover,
a.tutor-btn-primary:hover {
    background-color: var(--daf-or-fonce) !important;
    border-color: var(--daf-or-fonce) !important;
    color: var(--daf-fond-sombre) !important;
}

.tutor-btn-outline-primary,
a.tutor-btn-outline-primary,
button.tutor-btn-outline-primary {
    border-color: var(--daf-or) !important;
    color: var(--daf-or-fonce) !important;
    background-color: transparent !important;
    font-weight: 700 !important;
}

.tutor-btn-outline-primary:hover,
a.tutor-btn-outline-primary:hover,
button.tutor-btn-outline-primary:hover {
    background-color: var(--daf-or) !important;
    color: var(--daf-fond-sombre) !important;
}

.tutor-card.tutor-course-card {
    background-color: var(--daf-fond-carte);
    border: 1px solid var(--daf-bordure);
    border-radius: 6px;
    overflow: hidden;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.tutor-card.tutor-course-card:hover {
    border-color: var(--daf-or);
    box-shadow: 0 4px 16px rgba(212, 175, 55, 0.15);
}

.tutor-course-price,
.tutor-course-price span,
.list-item-price,
.tutor-card-footer .price {
    color: var(--daf-or-fonce) !important;
    font-family: var(--daf-serif);
    font-weight: 700;
}

.tutor-badge-label,
.tutor-course-level,
.tutor-course-card .tutor-meta-value {
    background-color: var(--daf-fond-encadre);
    color: var(--daf-or-fonce);
    border-radius: 3px;
}

.tutor-course-details-tab .tutor-nav-item a,
.tutor-nav .tutor-nav-link {
    color: var(--daf-texte-secondaire);
    font-family: var(--daf-serif);
    font-weight: 700;
}

.tutor-course-details-tab .tutor-nav-item a.is-active,
.tutor-nav .tutor-nav-link.is-active,
.tutor-course-details-tab .tutor-nav-item a.active,
.tutor-nav .tutor-nav-link.active {
    color: var(--daf-or-fonce) !important;
    border-bottom: 3px solid var(--daf-or) !important;
}

.tutor-progress-bar .tutor-progress-value,
.tutor-progress-filled {
    background-color: var(--daf-or) !important;
}

.tutor-icon-star-bold,
.tutor-ratings-stars i {
    color: var(--daf-or) !important;
}

.tutor-single-course-sidebar .tutor-card {
    background-color: var(--daf-fond-carte);
    border: 1px solid var(--daf-bordure);
    border-radius: 6px;
}

.tutor-single-course-sidebar .tutor-card .tutor-color-black {
    color: var(--daf-or-fonce);
}

/* -------------------------------------------------------------------
   13. DASHBOARD ÉLÈVE
   ------------------------------------------------------------------- */
.tutor-dashboard-permalinks .tutor-dashboard-menu-item-link {
    color: var(--daf-texte);
    font-family: var(--daf-sans);
    transition: color 0.2s ease, background-color 0.2s ease;
}

.tutor-dashboard-permalinks .tutor-dashboard-menu-item:not(.active) .tutor-dashboard-menu-item-link:hover {
    color: var(--daf-or-fonce);
}

.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-permalinks li.active a {
    background-color: var(--daf-fond-sombre);
    color: var(--daf-or);
    border-radius: 4px;
}

.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-permalinks li.active a i,
.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-permalinks li.active a [class*="tutor-icon-"] {
    color: var(--daf-or) !important;
}

.tutor-dashboard-permalinks .tutor-dashboard-menu-item:not(.active) .tutor-dashboard-menu-item-link i,
.tutor-dashboard-permalinks .tutor-dashboard-menu-item:not(.active) .tutor-dashboard-menu-item-link [class*="tutor-icon-"] {
    color: var(--daf-or-fonce);
}

.tutor-dashboard-content .tutor-card {
    background-color: var(--daf-fond-carte);
    border: 1px solid var(--daf-bordure);
    border-radius: 6px;
}

.tutor-dashboard-content .tutor-card i,
.tutor-dashboard-content .tutor-card [class*="tutor-icon-"] {
    color: var(--daf-or-fonce);
}

.tutor-course-progress-item.tutor-card {
    background-color: var(--daf-fond-carte);
    border: 1px solid var(--daf-bordure);
    border-radius: 6px;
}

.tutor-frontend-dashboard-header {
    background-color: var(--daf-fond-encadre);
    border-radius: 6px;
    padding: 1.2em 1.4em;
}

.tutor-dashboard-header-avatar img,
.tutor-dashboard-header-avatar .tutor-avatar {
    border: 2px solid var(--daf-or);
}

.tutor-dashboard-header-avatar .tutor-avatar-text {
    background-color: var(--daf-fond-sombre);
    color: var(--daf-or);
}

.tutor-dashboard-title {
    font-family: var(--daf-serif);
    color: var(--daf-or-fonce);
}

/* -------------------------------------------------------------------
   14. PORTAIL D'ACCUEIL — Page d'accueil minimaliste du LMS
   Élève qui arrive sur app.deveniragentfoot.fr/
   ------------------------------------------------------------------- */
.daf-portail {
    max-width: 520px;
    margin: 3em auto;
    padding: 2.5em 2em;
    background-color: var(--daf-fond-carte);
    border: 1px solid var(--daf-bordure);
    border-radius: 8px;
    text-align: center;
}

.daf-portail h1 {
    font-size: 2rem;
    color: var(--daf-or-fonce);
    margin-top: 0;
    margin-bottom: 0.4em;
}

.daf-portail-sous-titre {
    color: var(--daf-texte-secondaire);
    font-size: 1.05rem;
    margin-bottom: 2em;
    line-height: 1.5;
}

/* CTA principal — bouton or */
.daf-portail-cta-principal {
    margin: 2em 0 1em;
}

.daf-portail-bouton {
    display: inline-block;
    background-color: var(--daf-or);
    color: var(--daf-fond-sombre);
    font-family: var(--daf-sans);
    font-weight: 700;
    font-size: 1.05rem;
    padding: 0.9em 2em;
    border-radius: 4px;
    text-decoration: none;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}

.daf-portail-bouton:hover {
    background-color: var(--daf-or-fonce);
    color: var(--daf-fond-sombre);
    text-decoration: none;
}

/* Lien "Mot de passe oublié" — petit, sous le bouton */
.daf-portail-lien-secondaire {
    margin-top: 0.5em;
    font-size: 0.95rem;
}

.daf-portail-lien-secondaire a {
    color: var(--daf-or-fonce);
    text-decoration: underline;
}

.daf-portail-lien-secondaire a:hover {
    color: var(--daf-or);
}

/* Séparateur "ou" / "Une question ?" */
.daf-portail-separateur {
    display: flex;
    align-items: center;
    text-align: center;
    color: var(--daf-texte-secondaire);
    margin: 2em 0 1.5em;
    font-size: 0.95rem;
}

.daf-portail-separateur::before,
.daf-portail-separateur::after {
    content: '';
    flex: 1;
    border-top: 1px solid var(--daf-or);
    opacity: 0.4;
}

.daf-portail-separateur span {
    padding: 0 1em;
    font-style: italic;
}

/* Bloc secondaire (vers le site marketing) */
.daf-portail-bloc-secondaire {
    margin: 1em 0;
}

.daf-portail-question {
    color: var(--daf-texte-secondaire);
    margin-bottom: 0.3em;
}

.daf-portail-lien-marketing {
    color: var(--daf-or-fonce);
    font-weight: 700;
    text-decoration: none;
    font-size: 1.05rem;
}

.daf-portail-lien-marketing:hover {
    color: var(--daf-or);
    text-decoration: underline;
}

/* Bloc contact (mailto) */
.daf-portail-bloc-contact {
    margin: 1em 0 0;
}

.daf-portail-bloc-contact p {
    margin: 0.3em 0;
    color: var(--daf-texte-secondaire);
}

.daf-portail-mailto {
    color: var(--daf-or-fonce);
    font-weight: 700;
    text-decoration: none;
    font-size: 1.05rem;
}

.daf-portail-mailto:hover {
    color: var(--daf-or);
    text-decoration: underline;
}

/* Responsive — sur mobile, padding réduit */
@media (max-width: 600px) {
    .daf-portail {
        margin: 1.5em 1em;
        padding: 1.8em 1.2em;
    }
    .daf-portail h1 {
        font-size: 1.6rem;
    }
}

/* Masquer le titre WP sur la page d'accueil (doublon avec H1 de la carte) */
.home .wp-block-post-title,
body.home .wp-block-post-title {
    display: none;
}

/* -------------------------------------------------------------------
   15. PAGE DE CONNEXION /wp-login.php — DA DevenirAgentFoot
   WordPress utilise des classes spécifiques sur cette page :
   - body.login : le body de wp-login.php
   - #login : le conteneur principal (centré)
   - h1 a : le logo en haut (remplacé en image WP par défaut)
   - form#loginform : le formulaire
   - input#user_login, input#user_pass : champs identifiant et MDP
   - input#wp-submit : bouton de connexion
   - #nav, #backtoblog : liens sous le formulaire
   ------------------------------------------------------------------- */

/* Fond noir étendu sur toute la page */
body.login,
body.login.wp-core-ui {
    background-color: var(--daf-fond-sombre);
    color: var(--daf-texte-clair);
    font-family: var(--daf-sans);
}

/* Conteneur principal — un peu plus large pour respirer */
body.login #login {
    width: 360px;
    padding: 5% 0 2em;
}

/* Logo (en haut du formulaire) — remplace l'image WordPress par
   un texte stylé "Le Manuel · DevenirAgentFoot" en or Serif */
body.login h1 a {
    background-image: none !important;
    background: none !important;
    width: auto !important;
    height: auto !important;
    text-indent: 0 !important;
    overflow: visible !important;
    display: block;
    font-family: var(--daf-serif) !important;
    font-size: 1.6rem !important;
    color: var(--daf-or) !important;
    text-align: center;
    text-decoration: none;
    line-height: 1.3 !important;
    margin-bottom: 1.5em;
    font-weight: 700;
}

body.login h1 a:hover {
    color: var(--daf-or-fonce) !important;
}

/* Carte du formulaire — crème, bordure, radius (comme la carte portail) */
body.login form {
    background-color: var(--daf-fond-carte) !important;
    border: 1px solid var(--daf-bordure) !important;
    border-radius: 6px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
    padding: 26px 24px 24px !important;
    margin-top: 0 !important;
}

/* Labels (Identifiant, Mot de passe) */
body.login form label {
    color: var(--daf-texte) !important;
    font-family: var(--daf-sans) !important;
    font-weight: 600 !important;
}

/* Champs de saisie */
body.login input[type="text"],
body.login input[type="password"],
body.login input[type="email"] {
    background-color: var(--daf-fond-lecture) !important;
    border: 1px solid var(--daf-bordure) !important;
    color: var(--daf-texte) !important;
    border-radius: 4px !important;
    padding: 8px 10px !important;
    font-size: 1rem !important;
    box-shadow: none !important;
}

/* Focus des champs — bordure or */
body.login input[type="text"]:focus,
body.login input[type="password"]:focus,
body.login input[type="email"]:focus {
    border-color: var(--daf-or) !important;
    box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.2) !important;
    outline: none !important;
}

/* Case "Se souvenir de moi" */
body.login .forgetmenot label,
body.login p.forgetmenot {
    color: var(--daf-texte) !important;
    font-size: 0.9rem !important;
}

/* Bouton "Connexion" — or, texte noir */
body.login .button-primary,
body.login input#wp-submit,
body.login .wp-core-ui .button-primary {
    background-color: var(--daf-or) !important;
    border-color: var(--daf-or) !important;
    color: var(--daf-fond-sombre) !important;
    text-shadow: none !important;
    box-shadow: none !important;
    font-weight: 700 !important;
    border-radius: 4px !important;
    padding: 0 18px !important;
    height: 38px !important;
    line-height: 36px !important;
    font-size: 1rem !important;
    transition: background-color 0.2s ease;
}

body.login .button-primary:hover,
body.login input#wp-submit:hover {
    background-color: var(--daf-or-fonce) !important;
    border-color: var(--daf-or-fonce) !important;
    color: var(--daf-fond-sombre) !important;
}

/* Liens sous le formulaire (Mot de passe oublié + Retour) */
body.login #nav,
body.login #backtoblog {
    text-align: center;
    margin-top: 1em;
    padding: 0;
}

body.login #nav a,
body.login #backtoblog a {
    color: var(--daf-or) !important;
    text-decoration: none !important;
    font-size: 0.95rem !important;
    font-family: var(--daf-sans) !important;
}

body.login #nav a:hover,
body.login #backtoblog a:hover {
    color: var(--daf-texte-clair) !important;
    text-decoration: underline !important;
}

/* Messages d'erreur (mot de passe incorrect, etc.) */
body.login .message,
body.login #login_error {
    background-color: var(--daf-fond-encadre) !important;
    border-left: 4px solid var(--daf-or) !important;
    color: var(--daf-texte) !important;
    box-shadow: none !important;
    border-radius: 0 4px 4px 0 !important;
}

body.login #login_error {
    border-left-color: #c9700e !important; /* orange pour les erreurs */
}

/* Notice "Privacy Policy" si elle apparaît */
body.login .privacy-policy-page-link {
    text-align: center;
    margin-top: 1em;
}

body.login .privacy-policy-page-link a {
    color: var(--daf-or-fonce) !important;
    font-size: 0.9rem !important;
}

body.login .privacy-policy-page-link a:hover {
    color: var(--daf-or) !important;
}

/* -------------------------------------------------------------------
   16. MASQUAGE DU MENU AUTOMATIQUE DU HEADER
   Le thème Twenty Twenty-Five affiche automatiquement la liste
   de toutes les pages publiées dans le header (Cart, Checkout,
   Inscription apprenant/formateur, Tableau de bord, Espace
   élève). Ces pages sont techniques (Tutor LMS + WooCommerce)
   et ne doivent pas être visibles aux visiteurs.
   On masque le bloc de navigation tout en gardant les pages
   accessibles via leurs URLs directes (essentielles pour le
   fonctionnement de Tutor LMS et du checkout).
   ------------------------------------------------------------------- */
header.wp-block-template-part .wp-block-navigation {
    display: none !important;
}

/* Ceinture de sécurité — masquer aussi la liste auto si elle
   apparaît ailleurs dans le header */
header.wp-block-template-part .wp-block-page-list {
    display: none !important;
}


/* ===== Bloc 17 : Bouton portail conditionnel (16 mai 2026) ===== */
/* Par défaut (visiteur anonyme) : SE CONNECTER visible, MON TABLEAU DE BORD masqué */
.daf-btn-connecte { display: none; }
.daf-btn-anonyme { display: inline-block; }
/* WordPress ajoute body.logged-in pour tout user connecté : on inverse */
body.logged-in .daf-btn-anonyme { display: none; }
body.logged-in .daf-btn-connecte { display: inline-block; }

/* ===== Bloc 18 : Call-out pédagogiques Module 1 (17 mai 2026) ===== */

/* Base commune à tous les call-out */
.daf-callout {
  border-left: 4px solid;
  border-radius: 4px;
  padding: 16px 20px;
  margin: 24px 0;
  font-size: 0.97em;
  line-height: 1.6;
}

.daf-callout .daf-callout-titre {
  display: block;
  font-weight: 700;
  font-size: 0.82em;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.daf-callout p:last-child { margin-bottom: 0; }

/* A RETENIR — vert */
.daf-retenir {
  background: #f0f9f2;
  border-left-color: #2d7a2d;
}
.daf-retenir .daf-callout-titre { color: #2d7a2d; }

/* PIEGE CLASSIQUE — orange */
.daf-piege {
  background: #fdf4e8;
  border-left-color: #c9700e;
}
.daf-piege .daf-callout-titre { color: #c9700e; }

/* REFLEXE AGENT — bleu */
.daf-reflexe {
  background: #eef3fc;
  border-left-color: #1856b8;
}
.daf-reflexe .daf-callout-titre { color: #1856b8; }

/* EXEMPLE — violet */
.daf-exemple {
  background: #f4f0fa;
  border-left-color: #6c3fb5;
}
.daf-exemple .daf-callout-titre { color: #6c3fb5; }

/* ARTICLE DE LOI — gris */
.daf-article {
  background: #f4f4f4;
  border-left-color: #777777;
  font-size: 0.93em;
}
.daf-article .daf-callout-titre { color: #555555; }
.daf-article .daf-article-source {
  display: block;
  margin-top: 8px;
  font-size: 0.85em;
  color: #888888;
  font-style: italic;
}

/* -------------------------------------------------------------------
   ACCESSIBILITÉ — contrastes hérités de Tutor LMS
   -------------------------------------------------------------------
   Tutor définit deux gris de texte qui plafonnent à 4,16:1 sur blanc,
   sous le minimum de 4,5:1 exigé par le critère 3.2 du RGAA. On les
   assombrit à #6b7183, qui tient 4,87:1, sans toucher au plugin :
   la correction survit donc à ses mises à jour.

   `html:root` plutôt que `:root` : même spécificité que la déclaration
   de Tutor, mais un sélecteur de plus, ce qui l'emporte quel que soit
   l'ordre de chargement des feuilles.
   ------------------------------------------------------------------- */
html:root {
    --tutor-color-muted: #6b7183;
    --tutor-color-hints: #6b7183;
}

/* Prix barrés de Tutor : le gris est posé directement sur <del>, hors variable.
   4,17:1 sur blanc, sous le minimum de 4,5:1. */
html:root .tutor-item-price del,
html:root .list-item-price del,
html:root .tutor-course-price del {
    color: #6b7183;
}

/* ===== Bloc 19 : Pied de page — gabarit parts/footer.html (13 septembre 2026) ===== */
/* Remplace le pied de démonstration de Twenty Twenty-Five (Blog, Boutique,
   « Conçu avec WordPress »…). Le fond sombre vient déjà du bloc 11.
   Contrastes sur #0a0a0a : --daf-texte-clair 16,2:1, --daf-or 9,4:1.
   --daf-or-fonce n'y tient que 3,7:1 : il ne sert donc pas au survol ici,
   contrairement à la règle `footer a:hover` du bloc 11. */
.wp-site-blocks > footer.wp-block-template-part {
    border-top: 1px solid var(--daf-or-fonce);
}

.daf-pied {
    max-width: 1120px;
    margin: 0 auto;
    padding: 36px 24px 40px;
    font-family: var(--daf-sans);
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--daf-texte-clair);
}

footer .daf-pied a {
    color: var(--daf-texte-clair);
    text-decoration: none;
}

footer .daf-pied a:hover {
    color: var(--daf-or);
    text-decoration: underline;
}

footer .daf-pied a:focus-visible {
    outline: 2px solid var(--daf-or);
    outline-offset: 2px;
}

/* Le logo est un lien : 44 px lui aussi. Pas d'inline-flex, qui mangerait
   l'espace entre « · » et <em>. */
footer .daf-pied .daf-pied-logo {
    display: inline-block;
    box-sizing: border-box;
    min-height: 44px;
    padding: 8px 0;
    font-family: var(--daf-serif);
    font-size: 1.1rem;
    font-weight: 700;
}

.daf-pied-logo em {
    font-style: normal;
    color: var(--daf-or);
}

/* Liens hauts de 44 px au pouce, comme sur la plateforme taxi */
.daf-pied-liens {
    display: flex;
    flex-wrap: wrap;
    gap: 0 22px;
}

.daf-pied-liens a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    overflow-wrap: anywhere;
}

/* =====================================================================
   Bloc 20 : une seule identité DAF (4 octobre 2026, expertise point 24)
   =====================================================================
   La plateforme reprend la charte de deveniragentfoot.fr (l'accueil) :
   noir #0A0A0A, vert #00D26A, Inter pour le texte et les titres, Archivo
   Black pour la marque, Archivo 800 en capitales pour les boutons d'achat,
   boutons en pilule, cartes à 12 px. L'or et Georgia disparaissent.
   On redéfinit les variables du bloc 1 : tout ce qui s'en sert suit.

   Contrastes mesurés (WCAG 2.1) :
     --daf-or (vert)        sur #0A0A0A 9,83:1 ; texte noir sur vert 9,83:1
     --daf-or-fonce #006B35 sur #FFFFFF 6,61:1, sur #F5F5F5 6,11:1,
                            sur l'encadré #EAF6EF 6,00:1
   Le vert vif ne sert jamais de texte sur fond clair (2,01:1 sur blanc).
   Les couvertures (images en or) ne sont pas recomposées ici.
   Retour arrière : supprimer ce bloc et le dossier fonts/. */

@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('fonts/Inter-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('fonts/Inter-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('fonts/Archivo-latin.woff2') format('woff2')}
@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;
  src:url('fonts/ArchivoBlack-latin.woff2') format('woff2')}

:root {
    --daf-fond-lecture: #F5F5F5;
    --daf-fond-sombre: #0A0A0A;
    --daf-or: #00D26A;            /* nom conservé : c'est l'accent, désormais vert */
    --daf-or-fonce: #006B35;      /* vert « encre » pour le texte sur fond clair */
    --daf-texte: #0A0A0A;
    --daf-bordure: #E2E2E2;
    --daf-fond-encadre: #EAF6EF;
    --daf-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    --daf-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    --daf-marque: 'Archivo Black', 'Archivo', Arial, sans-serif;
    --daf-bouton: 'Archivo', 'Inter', Arial, sans-serif;
    --daf-pilule: 999px;
    --daf-carte: 12px;
}

/* Tutor peint ses textes avec sa propre pile de polices : on la remplace.
   Sa couleur principale (bleu #3E64DE : « Se connecter », moyen de paiement,
   onglets) passe au vert « encre » sur fond clair : blanc dessus 6,61:1. */
html:root {
    --tutor-body-font-family: var(--daf-sans);
    --tutor-color-primary: #006B35;
    --tutor-color-primary-rgb: 0, 107, 53;
    --tutor-color-primary-hover: #00522A;
}
/* Page d'un lot, sur fond noir : le vert vif (9,83:1 sur #0A0A0A). */
body.single-course-bundle {
    --tutor-color-primary: #00D26A;
    --tutor-color-primary-rgb: 0, 210, 106;
    --tutor-color-primary-hover: #00A854;
}
body, button, input, select, textarea { font-family: var(--daf-sans); }

/* Titres : Inter 800, noirs sur fond clair (le vert reste l'accent) */
h1, h2, h3,
.wp-block-heading,
.tutor-course-name,
.tutor-course-title,
.tutor-lesson-title,
.tutor-segment-title,
h1.tutor-color-black, h2.tutor-color-black, h3.tutor-color-black, h4.tutor-color-black,
.tutor-course-details-title,
.tutor-course-content-title,
.tutor-dashboard-title,
.daf-portail h1 {
    color: var(--daf-texte);
    font-weight: 800;
    letter-spacing: -0.015em;
}
.tutor-accordion-item-header { color: var(--daf-texte); }

/* Survol des liens : jamais le vert vif sur fond clair */
.tutor-lesson-content a:hover, .tutor-course-content a:hover, .entry-content a:hover, article a:hover,
.daf-portail-lien-secondaire a:hover, .daf-portail-lien-marketing:hover, .daf-portail-mailto:hover {
    color: var(--daf-texte);
}

/* Marque dans l'en-tête et le pied : le logo de l'accueil */
header .wp-block-site-title, header .wp-block-site-title a,
footer .daf-pied .daf-pied-logo, body.login h1 a {
    font-family: var(--daf-marque) !important;
    font-weight: 400 !important;
    text-transform: uppercase;
    letter-spacing: -0.02em;
}
header .wp-block-site-title a {
    color: #FFFFFF;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
}
header .wp-block-site-title a::before {
    content: '';
    flex: 0 0 auto;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--daf-or);
}
header .wp-block-site-title a:hover { color: var(--daf-or); }
/* Taille du logo de l'accueil (17 px) : tient sur une ligne dès 320 px */
header .wp-block-site-title { font-size: 17px !important; line-height: 1.2; }
@media (max-width: 400px) { header .wp-block-site-title { font-size: 14px !important; } }
footer .daf-pied .daf-pied-logo { color: #FFFFFF; }
body.login h1 a { color: #FFFFFF !important; }

/* Boutons : pilule verte, texte noir, survol blanc (comme l'accueil) */
.tutor-btn-primary,
.tutor-course-entry-box .tutor-btn,
.tutor-enroll-course-button,
.tutor-add-to-cart-button,
button.tutor-btn-primary,
a.tutor-btn-primary,
.tutor-btn-outline-primary,
a.tutor-btn-outline-primary,
button.tutor-btn-outline-primary,
.daf-portail-bouton,
body.login .button-primary,
body.login input#wp-submit {
    border-radius: var(--daf-pilule) !important;
    font-family: var(--daf-bouton) !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em;
}
.tutor-btn-primary:hover,
.tutor-course-entry-box .tutor-btn:hover,
.tutor-enroll-course-button:hover,
.tutor-add-to-cart-button:hover,
button.tutor-btn-primary:hover,
a.tutor-btn-primary:hover,
.daf-portail-bouton:hover,
body.login .button-primary:hover,
body.login input#wp-submit:hover {
    background-color: #FFFFFF !important;
    border-color: var(--daf-or) !important;
    color: var(--daf-fond-sombre) !important;
}
.tutor-btn-outline-primary:hover,
a.tutor-btn-outline-primary:hover,
button.tutor-btn-outline-primary:hover { color: var(--daf-fond-sombre) !important; }

/* Boutons d'achat : les capitales espacées de l'accueil */
[data-cy="tutor-buy-now"],
.tutor-add-to-guest-cart,
[data-cy="tutor-native-add-to-cart"],
.tutor-enroll-course-button,
#tutor-checkout-pay-now-button,
.tutor-checkout-pay-now-button,
.daf-portail-bouton {
    text-transform: uppercase;
    letter-spacing: 0.05em !important;
    font-size: 15px !important;
    white-space: nowrap;
}

/* Bouton du portail d'accueil : la règle des liens d'article (.entry-content a)
   lui imposait le vert « encre » souligné sur fond vert, 3,31:1. Noir : 9,83:1. */
.entry-content a.daf-portail-bouton, article a.daf-portail-bouton,
.entry-content a.daf-portail-bouton:hover, article a.daf-portail-bouton:hover {
    color: var(--daf-fond-sombre);
    text-decoration: none;
}

/* Cartes : rayon de l'accueil */
.tutor-card.tutor-course-card,
.tutor-single-course-sidebar .tutor-card,
.tutor-dashboard-content .tutor-card,
.tutor-course-progress-item.tutor-card,
.daf-portail { border-radius: var(--daf-carte); }
.tutor-card.tutor-course-card:hover { box-shadow: 0 4px 16px rgba(0, 210, 106, 0.15); }

/* Champs de la page de connexion : halo vert au lieu de l'or */
body.login input[type="text"]:focus,
body.login input[type="password"]:focus,
body.login input[type="email"]:focus { box-shadow: 0 0 0 2px rgba(0, 210, 106, 0.3) !important; }

/* Focus visible */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    outline: 2px solid var(--daf-or-fonce);
    outline-offset: 2px;
}
.wp-site-blocks > header a:focus-visible, footer a:focus-visible,
body.single-course-bundle a:focus-visible, body.single-course-bundle button:focus-visible {
    outline-color: var(--daf-or);
}

/* Ruban de remise de la page d'un lot : il recouvrait le titre de la couverture
   (« FORMATION COMPLÈTE » amputé). Il passe sous l'image, même texte. */
body.single-course-bundle .tutor-course-thumbnail .tutor-bundle-discount-info {
    position: static !important;
    display: inline-flex !important;
    align-items: baseline;
    gap: 6px;
    width: auto !important;
    height: auto !important;
    margin: 12px 0 0;
    padding: 6px 14px !important;
    background: var(--daf-or) !important;
    color: var(--daf-fond-sombre) !important;
    border-radius: var(--daf-pilule);
    min-width: 0 !important;
    max-width: none !important;
    clip-path: none !important;
    transform: none !important;
}
body.single-course-bundle .tutor-course-thumbnail .tutor-bundle-discount-info::before,
body.single-course-bundle .tutor-course-thumbnail .tutor-bundle-discount-info::after { display: none !important; }
body.single-course-bundle .tutor-course-thumbnail .tutor-bundle-discount-info div {
    color: var(--daf-fond-sombre) !important;
    font-family: var(--daf-bouton);
    font-weight: 800;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1.4;
    margin: 0 !important;
}
body.single-course-bundle .tutor-course-thumbnail img { display: block; width: 100%; height: auto; }

/* Libellés lus par les lecteurs d'écran seulement (boutons de partage) */
.daf-lecteur-ecran {
    position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* Gris secondaires de Tutor sous le seuil (mesurés le 04/10) :
   caisse : prix barré 3,99:1, « Vos accès… » 3,83:1 → #5B6170, 5,68:1 sur #F5F5F5 ;
   page du lot (fond noir) : « Catégories : » 4,07:1 → #A8A8A8, 8,33:1 ;
   pastille « AW » : texte gris sur fond vert → noir, 9,83:1. */
html:root {
    --tutor-color-muted: #5B6170;   /* #6b7183 du 13/09 : 4,46:1 sur le nouveau fond #F5F5F5 */
    --tutor-color-hints: #5B6170;
}
body:not(.single-course-bundle) .tutor-color-muted,
body:not(.single-course-bundle) .tutor-course-wishlist-btn,
body:not(.single-course-bundle) .tutor-course-share-btn,
.tutor-checkout-discount-price { color: #5B6170 !important; }
body.single-course-bundle {
    --tutor-color-muted: #A8A8A8;
    --tutor-color-hints: #A8A8A8;
}
body.single-course-bundle .tutor-meta { color: #A8A8A8; }
body.single-course-bundle span.tutor-avatar-text { color: #0A0A0A !important; }

/* Auteur sans profil public : texte simple, plus de lien vers « # » */
.daf-auteur { font-weight: 600; }

@media (prefers-reduced-motion: reduce) {
    .tutor-btn, .daf-portail-bouton, .tutor-card.tutor-course-card { transition: none !important; }
}

/* Bouton de commande (C. conso. L. 221-14), 4 octobre 2026 : « Commander avec
   obligation de paiement » est trop long pour une ligne à 375 px ; il passe à la
   ligne au lieu de déborder du bouton. */
#tutor-checkout-pay-now-button,
.tutor-checkout-pay-now-button {
    white-space: normal;
    line-height: 1.3;
    text-align: center;
    padding-top: 14px;
    padding-bottom: 14px;
}


/* ===================================================================
   ESPACE ÉLÈVE ET COULEURS — 6 octobre 2026
   Maquette validée par Walid (_maquettes-plateforme-daf/index.html,
   « c'est parfait »). L'accueil est rendu par le mu-plugin
   daf-espace-eleve.php (code court [daf_espace_eleve], page n° 29) ;
   tout son style est ici, préfixé daf-ee-.
   Une couleur par parcours : vert Manuel FFF, bleu Manuel FIFA,
   or L'Entraînement — aussi sur les pages de cours et de lot.
   =================================================================== */
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/InstrumentSerif-Italic-latin.woff2') format('woff2')}
:root{--daf-fifa:#2F6FDB;--daf-ent:#E2B53A;--daf-pelouse:repeating-linear-gradient(90deg,#00D26A 0 60px,#00B85C 60px 120px)}

/* Bande pelouse sous l'en-tête, sur toutes les pages */
header.wp-block-template-part{position:relative}
header.wp-block-template-part::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--daf-pelouse)}
.tutor-learning-header{position:relative}
.tutor-learning-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--daf-pelouse)}

/* L'accueil sort de la colonne de lecture de Twenty Twenty-Five */
.is-layout-constrained > .daf-ee,.daf-ee{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important;margin-top:0!important;font-family:var(--daf-sans);color:#0A0A0A}
.home main > .wp-block-group:has(.daf-ee){padding-top:0!important;padding-bottom:0!important}
/* Sur DAF, l'écart vient de la marge haute de <main> (70 px) et de celle du contenu (19 px) */
.home main.wp-block-group:has(.daf-ee){margin-top:0!important}
.home .wp-block-post-content:has(.daf-ee){margin-top:0!important}
.home .wp-block-post-content.is-layout-constrained{overflow-x:clip}
.home .wp-block-post-title{display:none}
.daf-ee *{box-sizing:border-box}
.daf-ee img{display:block;max-width:100%}
.daf-ee-zone{max-width:1180px;margin:0 auto;padding:0 32px}
.daf-ee-serif{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;text-transform:none;letter-spacing:0}
.daf-ee h1,.daf-ee h2,.daf-ee h3{font-family:var(--daf-marque);font-weight:400;text-transform:uppercase;letter-spacing:-.02em;margin:0}
.daf-ee-btn{display:inline-flex;align-items:center;gap:10px;padding:17px 28px;border-radius:999px;font-family:var(--daf-bouton);font-weight:800;font-size:14px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none!important}
.daf-ee-btn-vert{background:#00D26A;color:#0A0A0A!important}
.daf-ee-btn-vert:hover{background:#fff}
.daf-ee-btn-trait{border:2px solid rgba(255,255,255,.7);color:#fff!important}
.daf-ee-btn-trait:hover{background:#fff;color:#0A0A0A!important}

.daf-ee-heros{position:relative;isolation:isolate;overflow:hidden;background:#0A0A0A;color:#fff;min-height:520px;display:flex;align-items:center}
.daf-ee-fond{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:50% 40%;z-index:-2}
.daf-ee-heros::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,10,10,.95) 0%,rgba(10,10,10,.82) 45%,rgba(10,10,10,.35) 100%)}
.daf-ee-heros .daf-ee-zone{width:100%;padding-top:70px;padding-bottom:80px}
.daf-ee-badge{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.07);padding:7px 14px;border-radius:999px;color:#fff}
.daf-ee-badge i{width:8px;height:8px;border-radius:50%;background:#00D26A;box-shadow:0 0 0 4px rgba(0,210,106,.25)}
.daf-ee-heros h1{color:#fff;font-size:clamp(46px,6.4vw,84px);line-height:.98;margin:22px 0 18px}
.daf-ee-heros h1 .daf-ee-serif{color:#00D26A;font-size:1.08em}
.daf-ee-chapeau{font-size:19px;line-height:1.6;color:rgba(255,255,255,.8);max-width:31em;margin:0}
.daf-ee-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.daf-ee-oubli{margin:16px 0 0}
.daf-ee-oubli a{color:rgba(255,255,255,.75);font-size:14px}
.daf-ee-credit{position:absolute;right:16px;bottom:10px;font-size:12px;color:rgba(255,255,255,.6)}

.daf-ee-reprendre{background:#fff;border-bottom:1px solid #E2E2E2}
.daf-ee-reprendre .daf-ee-zone{display:flex;align-items:center;gap:24px;padding-top:22px;padding-bottom:22px;flex-wrap:wrap}
.daf-ee-lbl{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#006B35}
.daf-ee-reprendre strong{font-size:17px}
.daf-ee-barre{flex:1;min-width:180px;height:10px;background:#E8E8E8;border-radius:99px;overflow:hidden}
.daf-ee-barre i{display:block;height:100%;background:var(--daf-pelouse)}
.daf-ee-pct{font-family:var(--daf-marque);font-size:18px}
.daf-ee-reprendre a{background:#0A0A0A;color:#fff!important;text-decoration:none!important;font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:13px 20px;border-radius:999px}

.daf-ee-bloc{padding:88px 0}
.daf-ee-sur{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#006B35;margin:0 0 12px}
.daf-ee h2{font-size:clamp(34px,4.4vw,56px);line-height:1}
.daf-ee h2 .daf-ee-serif{color:#006B35}
.daf-ee-intro{font-size:18px;line-height:1.6;color:#4A4A4A;max-width:40em;margin:16px 0 0}

.daf-ee-cartes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:44px}
.daf-ee-carte{--c:#00D26A;--sur-c:#0A0A0A;background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 60px -40px rgba(0,0,0,.45);border-top:8px solid var(--c)}
.daf-ee-fifa{--c:var(--daf-fifa);--sur-c:#fff}
.daf-ee-or{--c:var(--daf-ent)}
.daf-ee-ph{height:180px;position:relative}
.daf-ee-ph img{width:100%!important;height:100%!important;object-fit:cover}
.daf-ee-etat{position:absolute;left:14px;top:14px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 11px;border-radius:999px;background:#fff;color:#0A0A0A}
.daf-ee-etat.daf-ee-ok{background:#00D26A}
.daf-ee-corps{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.daf-ee-cat{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6B6B6B}
.daf-ee-carte h3{font-size:28px;line-height:1.02;margin:8px 0 6px}
.daf-ee-pour{font-weight:700;color:#4A4A4A;margin:0 0 16px}
.daf-ee-carte ul{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:9px}
.daf-ee-carte li{position:relative;padding-left:28px;font-size:15.5px;line-height:1.45;color:#4A4A4A;margin:0}
.daf-ee-carte li::before{content:"✓";position:absolute;left:0;top:1px;width:19px;height:19px;border-radius:50%;background:var(--c);color:var(--sur-c);font-size:11px;font-weight:900;display:grid;place-items:center}
.daf-ee-prix{font-family:var(--daf-marque);font-size:30px;margin:auto 0 14px}
.daf-ee-prix small{font-family:var(--daf-sans);font-size:14px;font-weight:600;color:#6B6B6B;margin-left:6px}
.daf-ee-bouton{margin-top:auto;display:flex;justify-content:center;gap:8px;padding:15px 18px;border-radius:999px;font-family:var(--daf-bouton);font-weight:800;font-size:14px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;background:var(--c);color:var(--sur-c)!important}
.daf-ee-bouton:hover{background:#0A0A0A;color:#fff!important}
.daf-ee-bouton.daf-ee-contour{background:transparent;border:2px solid #0A0A0A;color:#0A0A0A!important}
.daf-ee-boutons{margin-top:auto;display:grid;gap:10px}
.daf-ee-boutons .daf-ee-prix{margin:0 0 4px}

.daf-ee-noir{background:#0A0A0A;color:#fff;position:relative}
.daf-ee-noir::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--daf-pelouse)}
.daf-ee-noir h2{color:#fff}
.daf-ee-noir h2 .daf-ee-serif,.daf-ee-noir .daf-ee-sur{color:#00D26A}
.daf-ee-noir .daf-ee-intro{color:rgba(255,255,255,.72)}
.daf-ee-ecrans{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:40px;align-items:start}
.daf-ee-ecran{background:#1d1d1d;border:1px solid #2c2c2c;border-radius:14px;overflow:hidden;margin:0}
.daf-ee-bar{display:flex;gap:6px;padding:10px 12px;background:#111}
.daf-ee-bar i{width:10px;height:10px;border-radius:50%;background:#3a3a3a}
.daf-ee-ecran img{width:100%!important;height:440px!important;object-fit:cover;object-position:50% 0}
.daf-ee-ecran figcaption{font-size:13px;color:rgba(255,255,255,.6);padding:10px 14px;margin:0}

.daf-ee-vie{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.daf-ee-vie figure{margin:0;position:relative;height:340px;border-radius:18px;overflow:hidden;isolation:isolate;display:flex;align-items:flex-end}
.daf-ee-vie img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;z-index:-2}
.daf-ee-vie figure::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.88) 100%)}
.daf-ee-vie figcaption{color:#fff;padding:18px;font-size:15px;line-height:1.35}
.daf-ee-vie figcaption b{display:block;font-family:var(--daf-marque);font-weight:400;font-size:22px;text-transform:uppercase;line-height:1.05}

.daf-ee-aide{background:#0A0A0A;color:#fff;border-radius:20px;padding:34px 36px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;position:relative;overflow:hidden;margin-bottom:24px}
.daf-ee-aide::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--daf-pelouse)}
.daf-ee-aide h3{color:#fff;font-size:26px;margin:0 0 6px}
.daf-ee-aide p{margin:0;color:rgba(255,255,255,.72)}
.daf-ee-credits{max-width:1180px;margin:0 auto 64px;padding:0 32px;font-size:12px;color:#6B6B6B}

@media(max-width:960px){.daf-ee-cartes{grid-template-columns:1fr;max-width:560px}.daf-ee-vie{grid-template-columns:1fr 1fr}.daf-ee-vie figure{height:260px}.daf-ee-ecrans{grid-template-columns:1fr}.daf-ee-heros::before{background:linear-gradient(180deg,rgba(10,10,10,.9),rgba(10,10,10,.94))}}
@media(max-width:600px){.daf-ee-zone,.daf-ee-credits{padding:0 16px}.daf-ee-heros{min-height:0}.daf-ee-heros .daf-ee-zone{padding-top:44px;padding-bottom:60px}.daf-ee-btn{width:100%;justify-content:center}.daf-ee-bloc{padding:60px 0}.daf-ee-vie figure{height:200px}.daf-ee-vie figcaption b{font-size:17px}.daf-ee-ecran img{height:300px!important}.daf-ee-aide{padding:28px 22px}}

/* Pages de cours et de lot : bandeau noir, couleur du parcours */
.single-courses .tutor-course-details-header,.single-course-bundle .tutor-course-details-header{--c:#00D26A;position:relative;background:#0A0A0A;color:#fff;padding:34px 32px 30px;border-radius:14px;overflow:hidden}
.single-courses .tutor-course-details-header::before,.single-course-bundle .tutor-course-details-header::before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:var(--c)}
.single-courses .tutor-course-details-header::after,.single-course-bundle .tutor-course-details-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--daf-pelouse)}
body.single-courses .tutor-course-details-header h1.tutor-course-details-title,body.single-course-bundle .tutor-course-details-header h1.tutor-course-details-title{color:#fff!important;font-family:var(--daf-marque)!important;font-weight:400!important;text-transform:uppercase;font-size:clamp(28px,3.6vw,44px)!important;line-height:1.05}
.single-courses .tutor-course-details-header a,.single-courses .tutor-course-details-header span,.single-courses .tutor-course-details-header div,.single-course-bundle .tutor-course-details-header a,.single-course-bundle .tutor-course-details-header span,.single-course-bundle .tutor-course-details-header div{color:#D6D6D6!important}
.single-courses .tutor-course-details-header [class*="tutor-icon-"],.single-course-bundle .tutor-course-details-header [class*="tutor-icon-"]{color:#fff!important}
.postid-384 .tutor-course-details-header,.postid-366 .tutor-course-details-header,.postid-376 .tutor-course-details-header,.postid-377 .tutor-course-details-header,.postid-378 .tutor-course-details-header,.postid-379 .tutor-course-details-header,.postid-380 .tutor-course-details-header,.postid-381 .tutor-course-details-header,.postid-382 .tutor-course-details-header{--c:var(--daf-fifa)}
.postid-1113 .tutor-course-details-header,.postid-1114 .tutor-course-details-header,.postid-1115 .tutor-course-details-header,.postid-1116 .tutor-course-details-header,.postid-1053 .tutor-course-details-header,.postid-1074 .tutor-course-details-header,.postid-1087 .tutor-course-details-header{--c:var(--daf-ent)}
.tutor-single-course-sidebar .tutor-card{border-top:6px solid #00D26A;border-radius:0 0 12px 12px;box-shadow:0 30px 60px -40px rgba(0,0,0,.5)}
.postid-384 .tutor-single-course-sidebar .tutor-card{border-top-color:var(--daf-fifa)}
.postid-1113 .tutor-single-course-sidebar .tutor-card,.postid-1114 .tutor-single-course-sidebar .tutor-card,.postid-1115 .tutor-single-course-sidebar .tutor-card,.postid-1116 .tutor-single-course-sidebar .tutor-card{border-top-color:var(--daf-ent)}

/* Leçons : leçon en cours marquée en vert */
.tutor-learning-nav-item.active{box-shadow:inset 4px 0 0 #00D26A;background-color:#EAF6EF!important}

/* Tableau de bord : en-tête noir et bande pelouse, cartes colorées */
.tutor-dashboard-header{position:relative;background:#0A0A0A!important;color:#fff;border-radius:14px;overflow:hidden}
.tutor-dashboard-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--daf-pelouse)}
.tutor-dashboard-header *:not(.tutor-btn):not(.tutor-btn *){color:#fff}
.tutor-dashboard-header [class*="avatar"] *{color:#0A0A0A}
.tutor-stat-card{border-radius:12px!important;border-top:5px solid #00D26A!important}
.tutor-stat-card:nth-child(4n+2){border-top-color:var(--daf-fifa)!important}
.tutor-stat-card:nth-child(4n+3){border-top-color:var(--daf-ent)!important}
.tutor-stat-card:nth-child(4n){border-top-color:#0A0A0A!important}

/* Les infobulles des chapitres de Tutor débordaient sur téléphone */
.single-courses .wp-site-blocks,.single-course-bundle .wp-site-blocks{overflow-x:clip}

/* 7 octobre 2026 : sur téléphone, la grille de la caisse de Tutor (.tutor-row, gouttière négative)
   dépassait de 6 px à droite, et la page glissait de côté. Mesuré à 375 px. */
.tutor-checkout-page { overflow-x: clip; }
