:root{--fav-gold:#d7a21e;--fav-green:#137c3e;--fav-navy:#0b1823;--fav-border:#d9dde3}
.fav-palmares-overlay{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;background:rgba(2,9,14,.72);padding:28px}.fav-palmares-overlay.is-open{display:flex}.fav-palmares-modal{width:min(980px,96vw);max-height:90vh;overflow:hidden;background:#fff;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.35);color:#1b2630}.fav-palmares-modal__header{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0a1824,#173448);color:#fff;padding:18px 22px}.fav-palmares-modal__header h2{margin:0;font-size:20px;color:#fff}.fav-palmares-close{border:0;background:transparent;color:#fff;font-size:34px;cursor:pointer}.fav-palmares-modal__body{padding:18px 22px 22px;overflow:auto;max-height:calc(90vh - 62px)}
.fav-palmares-filters,.fav-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fav-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fav-palmares-filters label,.fav-history-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#6d7782}.fav-palmares-filters select,.fav-history-form select,.fav-history-form input,.fav-history-form textarea{width:100%;border:1px solid var(--fav-border);border-radius:8px;padding:10px 12px;background:#fff;color:#18232c}.fav-palmares-tabs{display:grid;grid-template-columns:1fr 1fr;margin:16px 0 10px;border:1px solid var(--fav-border);border-radius:8px;overflow:hidden}.fav-tab{border:0;padding:12px;background:#f4f5f6;font-weight:800;cursor:pointer}.fav-tab.is-active{background:var(--fav-green);color:#fff}.fav-tab-panel{display:none}.fav-tab-panel.is-active{display:block}
.fav-history-list{border:1px solid var(--fav-border);border-radius:10px;overflow:hidden}.fav-history-row{display:grid;grid-template-columns:54px 150px 1fr 260px;gap:10px;align-items:center;padding:13px 14px;border-bottom:1px solid #e6e9ed;background:#fff}.fav-history-row:last-child{border-bottom:0}.fav-history-icon{font-size:30px;text-align:center}.fav-history-main,.fav-history-comp,.fav-history-proof{display:flex;flex-direction:column;gap:3px}.fav-history-main strong{font-size:17px}.fav-history-main span,.fav-history-comp span,.fav-history-proof span{font-size:12px;color:#6c7780}.fav-history-comp strong{font-size:13px}.fav-badge{display:inline-flex;width:max-content;font-style:normal;font-weight:800;font-size:10px;padding:4px 7px;border-radius:5px;background:#a0a7ad;color:#fff}.fav-badge--propose{background:#d7a21e}.fav-badge--confirme{background:#248650}.fav-badge--valide{background:#0e6a39}.fav-row-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.fav-mini-action{border:1px solid #dfe4e8;border-radius:6px;background:#f7f8f9;padding:5px 7px;font-size:10px;cursor:pointer}
.fav-add-history-toggle,.fav-submit-history,.fav-open-palmares{width:100%;border:0;border-radius:7px;background:var(--fav-green);color:#fff;padding:12px 14px;font-weight:900;cursor:pointer;margin-top:14px}.fav-history-form{margin-top:12px;padding:14px;border:1px solid var(--fav-border);border-radius:10px;background:#fafbfc}.fav-community-note,.fav-login-note{margin-top:12px;background:#eef7f0;border:1px solid #cce5d3;border-radius:8px;padding:10px 12px;font-size:12px;color:#355a42}.fav-form-message{margin-top:8px;font-size:12px;font-weight:700}.fav-empty-state{text-align:center;padding:32px 16px;color:#5d6872}.fav-empty-state strong{display:block;font-size:17px;color:#1c2831;margin:8px 0 4px}.fav-empty-cup{font-size:40px}
.fav-trophy-widget{border:2px solid #e6b42d;border-radius:12px;padding:15px;background:linear-gradient(180deg,#fffdf6,#fff9e8);color:#17222b}.fav-trophy-widget__title{font-weight:900;font-size:15px;margin-bottom:12px}.fav-trophy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:center}.fav-trophy-grid>div{padding:10px 6px}.fav-trophy-grid>div+div{border-left:1px solid #ded6bd}.fav-cup-line{font-size:25px;min-height:34px;letter-spacing:2px}.fav-trophy-grid strong{display:block;font-size:28px;line-height:1.05}.fav-trophy-grid span{font-size:11px;font-weight:900}.fav-trophy-total{text-align:center;font-size:16px;font-weight:900;margin:10px 0 2px}.fav-trophy-empty{text-align:center;padding:8px 4px}.fav-trophy-empty>div{font-size:36px}.fav-trophy-empty strong,.fav-trophy-empty span{display:block}.fav-trophy-empty span{font-size:11px;color:#68737d;margin-top:3px}.fav-open-palmares{font-size:11px;margin-top:10px}.fav-open-palmares--secondary{background:transparent;color:#17222b;margin-top:4px;padding:8px}

@media(max-width:900px){.fav-palmares-overlay{padding:10px}.fav-palmares-modal{width:100%;max-height:96vh}.fav-palmares-modal__body{max-height:calc(96vh - 62px)}.fav-palmares-filters,.fav-form-grid{grid-template-columns:1fr}.fav-history-row{grid-template-columns:42px 1fr}.fav-history-comp,.fav-history-proof{grid-column:2}}

/* v0.1.1 */
.fav-history-row--new{animation:favNewFact 1.4s ease}.fav-status-note{font-size:10px;color:#a77500;font-weight:800}.fav-form-message.is-success{color:#137c3e}.fav-mini-action.is-active{background:#e8f5ed;border-color:#72b58b;color:#116b38}@keyframes favNewFact{0%{background:#fff1b8}100%{background:#fff}}


/* FAV 0.1.2 — Bandeau Palmarès juste sous le header Club */
.fav-header-palmares-wrap{width:100%;clear:both;margin:14px 0 18px}
.fav-header-palmares{
 width:100%;display:grid;
 grid-template-columns:minmax(210px,1.25fr) minmax(145px,.8fr) minmax(130px,.75fr) minmax(260px,1.25fr) minmax(270px,1.25fr);
 align-items:stretch;overflow:hidden;border:1px solid #d7a21e;border-radius:11px;
 background:linear-gradient(90deg,#fffdf7 0%,#fff 52%,#fffaf0 100%);
 box-shadow:0 3px 14px rgba(15,31,42,.06)
}
.fav-header-palmares button{appearance:none;border:0;border-radius:0;background:transparent;color:#17242d;min-width:0;margin:0;cursor:pointer;font-family:inherit}
.fav-header-palmares button:not(:last-child){border-right:1px solid #e4e0d5}
.fav-header-palmares__identity,.fav-header-palmares__stat,.fav-header-palmares__cdf{min-height:92px}
.fav-header-palmares__identity{display:flex;align-items:center;gap:12px;padding:15px 20px!important;color:#116c39!important;font-size:17px;font-weight:900;text-align:left}
.fav-header-palmares__cup{font-size:32px;line-height:1}
.fav-header-palmares__stat{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-content:center;justify-content:center;column-gap:9px;padding:12px 14px!important}
.fav-header-palmares__icon{grid-row:1/span 2;align-self:center;font-size:35px;line-height:1}
.fav-header-palmares__icon--silver{filter:grayscale(1);opacity:.7}
.fav-header-palmares__number{align-self:end;text-align:left;font-size:24px;line-height:1;font-weight:900}
.fav-header-palmares__label{align-self:start;text-align:left;font-size:11px;font-weight:900}
.fav-header-palmares__cdf{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px!important;text-align:left}
.fav-header-palmares__flag{font-size:29px}.fav-header-palmares__cdf span:last-child{display:flex;flex-direction:column}
.fav-header-palmares__cdf small{font-size:10px;font-weight:800;color:#3e4952}.fav-header-palmares__cdf strong{font-size:13px;line-height:1.15}
.fav-header-palmares__cdf em{font-style:normal;font-size:17px;font-weight:900;color:#118044;margin-top:3px}
.fav-header-palmares__complete{min-height:92px;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px!important;background:linear-gradient(135deg,#08713a,#118b4a)!important;color:#fff!important;font-size:13px;line-height:1.25;font-weight:900;text-align:left}
.fav-header-palmares__plus{font-size:29px;font-weight:300}
@media(max-width:1100px){
 .fav-header-palmares{grid-template-columns:1fr 1fr 1fr}
 .fav-header-palmares__identity{grid-column:1/span 3}
 .fav-header-palmares__cdf{grid-column:1/span 2}
}
@media(max-width:700px){
 .fav-header-palmares{display:flex;flex-direction:column}
 .fav-header-palmares__identity,.fav-header-palmares__stat,.fav-header-palmares__cdf,.fav-header-palmares__complete{min-height:64px}
 .fav-header-palmares button{border-right:0!important;border-bottom:1px solid #e4e0d5}
}


/* ==========================================================
   FAV 0.1.3 — bandeau Palmarès réellement pleine largeur
   ========================================================== */

/* Une fois déplacé après #item-header, le bandeau devient un
   élément indépendant de la grille interne BuddyBoss. */
body.fav-club-page-active #buddypress > .fav-header-palmares-wrap,
body.fav-club-page-active #buddypress .fav-header-palmares-wrap.fav-header-palmares-relocate{
    width:100% !important;
    max-width:none !important;
    flex:0 0 100% !important;
    margin:14px 0 18px !important;
    padding:0 !important;
    clear:both !important;
}

/* Ne pas laisser une ancienne contrainte du thème limiter le bandeau */
body.fav-club-page-active .fav-header-palmares{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
}

/* Sur PC, le bandeau suit toute la largeur utile de la page Club,
   du bord gauche du contenu au bord droit de la sidebar. */
@media (min-width:1200px){
    body.fav-club-page-active #buddypress{
        position:relative;
    }
    body.fav-club-page-active .fav-header-palmares-wrap{
        box-sizing:border-box !important;
    }
}


/* ==========================================================
   FAV 0.1.4 — Le bandeau suit la largeur mesurée du header.
   Aucune modification de #primary / #secondary / .bb-grid ici.
   ========================================================== */
body.fav-club-page-active .fav-header-palmares-wrap.fav-header-palmares-relocate{
    display:block !important;
    clear:both !important;
    padding:0 !important;
    float:none !important;
    flex:none !important;
    max-width:none !important;
    position:relative !important;
}
body.fav-club-page-active .fav-header-palmares-wrap.fav-header-palmares-relocate .fav-header-palmares{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}


/* ==========================================================
   FAV 0.1.7 — Palmarès = même largeur que .fav-club-group-banner
   Aucun changement sur #primary, #secondary ou .bb-grid.
   ========================================================== */
body.fav-club-page-active .fav-header-palmares-wrap.fav-header-palmares-relocate{
    max-width:none !important;
    padding:0 !important;
    float:none !important;
    clear:both !important;
    overflow:visible !important;
    z-index:2;
}

body.fav-club-page-active .fav-header-palmares-wrap.fav-header-palmares-relocate .fav-header-palmares{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    box-sizing:border-box !important;
}


/* ==========================================================
   FAV 0.1.8 — le bandeau vit dans .groups-header,
   exactement comme .fav-club-group-banner.
   ========================================================== */
body.fav-club-page-active .groups-header > .fav-header-palmares-wrap{
    max-width:none !important;
    clear:both !important;
    float:none !important;
    padding:0 !important;
    overflow:visible !important;
}

body.fav-club-page-active .groups-header > .fav-header-palmares-wrap .fav-header-palmares{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    box-sizing:border-box !important;
}

/* ==========================================================
   FAV 0.2.0 — Tableau historique + contribution
   ========================================================== */
.fav-palmares-modal{width:min(1260px,96vw)}
.fav-palmares-modal__header h2{font-size:19px;letter-spacing:.2px}
.fav-history-table{margin-top:16px;border:1px solid var(--fav-border);border-radius:10px;overflow:hidden;background:#fff}
.fav-history-head,.fav-history-row{display:grid;grid-template-columns:72px 105px 135px minmax(220px,1.35fr) minmax(190px,1.1fr) 205px;gap:10px;align-items:center}
.fav-history-head{padding:9px 12px;background:#f1f3f5;border-bottom:1px solid var(--fav-border);font-size:10px;font-weight:900;color:#59636d;letter-spacing:.35px}
.fav-history-row{padding:11px 12px;border-bottom:1px solid #e6e9ed;background:#fff;min-height:68px}
.fav-history-row:last-child{border-bottom:0}.fav-history-row:hover{background:#fbfcfd}
.fav-history-icon{text-align:center}.fav-star{color:#e3b21b;font-size:28px;line-height:1;text-shadow:0 1px 0 #a77800}.fav-silver-cup{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(145deg,#f8f9fa,#aeb6bf);color:#5f6872;font-size:20px;border:1px solid #aeb6bf}.fav-cup-path,.fav-league-mark{display:inline-block;font-size:9px;font-weight:900;padding:5px 6px;border-radius:5px;background:#edf0f2;color:#5c6670}.fav-cell-season strong{font-size:16px}.fav-cell-category{font-size:13px;font-weight:800}.fav-cell-competition,.fav-cell-result,.fav-history-proof{display:flex;flex-direction:column;gap:3px}.fav-cell-competition strong,.fav-cell-result strong{font-size:13px}.fav-cell-competition small,.fav-cell-result small{font-size:11px;color:#707a83}.fav-validation-state{font-size:11px;font-weight:900}.fav-validation-state.is-valid{color:#137c3e}.fav-validation-state.is-pending{color:#a87300}.fav-confirm-count{font-size:11px!important}.fav-mini-action{width:max-content;margin-top:2px}.fav-palmares-legend{display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding:9px 4px 0;font-size:11px;color:#66717a}.fav-palmares-legend span{display:flex;align-items:center;gap:6px}.fav-palmares-legend .fav-star{font-size:18px}.fav-palmares-legend .fav-silver-cup{width:22px;height:22px;font-size:13px}
.fav-form-title{font-size:14px;font-weight:900;color:#17242d;margin-bottom:12px}.fav-history-form{padding:16px}.fav-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fav-cancel-edit{width:100%;border:1px solid #cfd5da;background:#fff;color:#36414a;border-radius:7px;padding:10px 14px;font-weight:800;cursor:pointer;margin-top:7px}.fav-admin-actions{display:flex;gap:5px;flex-wrap:wrap}.fav-admin-actions button{border:1px solid #d8dde1;background:#fff;border-radius:6px;padding:5px 7px;font-size:10px;cursor:pointer}.fav-delete-row{color:#9a2d2d}
.fav-history-table:has(.fav-admin-actions) .fav-history-head,.fav-history-table:has(.fav-admin-actions) .fav-history-row{grid-template-columns:62px 95px 125px minmax(200px,1.3fr) minmax(175px,1fr) 190px 105px}
@media(max-width:1050px) and (min-width:701px){.fav-palmares-modal{width:98vw}.fav-history-head,.fav-history-row{grid-template-columns:55px 88px 110px minmax(180px,1.2fr) minmax(160px,1fr) 170px}.fav-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fav-history-table{overflow-x:auto}.fav-history-head,.fav-history-row{min-width:900px}}
@media(max-width:700px){.fav-history-head{display:none}.fav-history-row,.fav-history-table:has(.fav-admin-actions) .fav-history-row{display:grid;grid-template-columns:44px 1fr;gap:7px;padding:12px}.fav-history-icon{grid-row:1/span 2}.fav-cell-season,.fav-cell-category,.fav-cell-competition,.fav-cell-result,.fav-history-proof,.fav-admin-actions{grid-column:2}.fav-cell-season strong{font-size:17px}.fav-form-grid{grid-template-columns:1fr}.fav-palmares-legend{gap:10px}.fav-palmares-modal__header h2{font-size:15px}}

/* ==========================================================
   FAV 0.2.1 — Validation communautaire à 8 + statut bandeau
   ========================================================== */
.fav-header-palmares__identity-text{display:flex;flex-direction:column;gap:3px;line-height:1.1}
.fav-header-palmares__identity-text strong{font-size:17px;font-weight:900;color:#116c39}
.fav-header-palmares__identity-text small{font-size:10px;font-weight:800;color:#68737d}
.fav-silver-cup{filter:grayscale(1);opacity:.82}


/* ==========================================================
   FAV 0.2.2 — Types nationaux, tournoi + widget d'accès FAV
   ========================================================== */
.fav-national-cup,.fav-tournament-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;font-size:16px;font-weight:900;border:1px solid #d4d9de;background:#f7f8f9;color:#394650}
.fav-tournament-mark{background:#f5f1e8;border-color:#ded4be;color:#715f34}
.fav-cup-path{font-size:16px;width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;filter:grayscale(1);opacity:.58}
.fav-field-coupe-locale,.fav-field-tournoi{display:none}
.fav-header-palmares__gamb .fav-header-palmares__flag{filter:grayscale(1);opacity:.8}

/* Colonne droite : uniquement un accès, aux couleurs Footeux d'Avant */
.fav-trophy-widget.fav-trophy-widget--access{border:0;border-radius:9px;padding:16px 14px;background:linear-gradient(145deg,#0c1b28,#163246);color:#fff;box-shadow:0 5px 18px rgba(7,20,31,.18);text-align:center}
.fav-trophy-widget--access .fav-trophy-widget__icon{font-size:31px;line-height:1;margin-bottom:7px;filter:grayscale(.35)}
.fav-trophy-widget--access .fav-trophy-widget__title{margin:0;color:#e6bd55;font-size:14px;font-weight:900;letter-spacing:.3px}
.fav-trophy-widget--access p{margin:8px 2px 12px;color:#eef3f6;font-size:12px;line-height:1.45}
.fav-trophy-widget--access .fav-trophy-widget__button{margin:0;width:100%;border:1px solid rgba(230,189,85,.75);background:linear-gradient(135deg,#0b7540,#108f4c);color:#fff;border-radius:7px;padding:10px 9px;font-size:11px;font-weight:900}
.fav-trophy-widget--access .fav-trophy-widget__button:hover{filter:brightness(1.05)}

@media(max-width:1280px) and (min-width:1101px){
 .fav-header-palmares{grid-template-columns:1.2fr .7fr .8fr 1.15fr 1.15fr 1fr}
 .fav-header-palmares__identity{padding-left:14px!important;padding-right:14px!important}
 .fav-header-palmares__identity-text strong{font-size:14px}
 .fav-header-palmares__cdf{padding-left:10px!important;padding-right:10px!important}
 .fav-header-palmares__cdf strong{font-size:11px}
}
@media(max-width:1100px){
 .fav-header-palmares{grid-template-columns:1fr 1fr 1fr!important}
 .fav-header-palmares__identity{grid-column:1/span 3}
 .fav-header-palmares__cdf{grid-column:auto}
 .fav-header-palmares__complete{grid-column:auto}
}

/* ==========================================================
   FAV 0.2.3 — Ajustements page Club PC
   1) Bandeau Palmarès sur une seule ligne
   2) Respiration symétrique autour du fil
   3) Widgets de droite compacts, sans gros cadre blanc
   ========================================================== */
@media (min-width:1101px){
  body.fav-club-page-active .fav-header-palmares{
    grid-template-columns:minmax(180px,1.15fr) minmax(115px,.70fr) minmax(125px,.78fr) minmax(185px,1.05fr) minmax(185px,1.05fr) minmax(190px,1.05fr) !important;
  }
  body.fav-club-page-active .fav-header-palmares__identity,
  body.fav-club-page-active .fav-header-palmares__stat,
  body.fav-club-page-active .fav-header-palmares__cdf,
  body.fav-club-page-active .fav-header-palmares__complete{
    min-height:86px;
  }
  body.fav-club-page-active .fav-header-palmares__identity{padding:10px 12px!important;gap:8px}
  body.fav-club-page-active .fav-header-palmares__identity-text strong{font-size:13px}
  body.fav-club-page-active .fav-header-palmares__identity-text small{font-size:9px}
  body.fav-club-page-active .fav-header-palmares__stat{padding:9px 8px!important;column-gap:6px}
  body.fav-club-page-active .fav-header-palmares__icon{font-size:28px}
  body.fav-club-page-active .fav-header-palmares__number{font-size:21px}
  body.fav-club-page-active .fav-header-palmares__label{font-size:9px}
  body.fav-club-page-active .fav-header-palmares__cdf{padding:8px 9px!important;gap:7px}
  body.fav-club-page-active .fav-header-palmares__flag{font-size:23px}
  body.fav-club-page-active .fav-header-palmares__cdf small{font-size:8px}
  body.fav-club-page-active .fav-header-palmares__cdf strong{font-size:10px}
  body.fav-club-page-active .fav-header-palmares__cdf em{font-size:14px}
  body.fav-club-page-active .fav-header-palmares__complete{padding:9px 11px!important;gap:7px;font-size:11px}
  body.fav-club-page-active .fav-header-palmares__plus{font-size:24px}

  /* La colonne gauche avait visuellement 0 espace avec le fil.
     On ajoute seulement une respiration locale, sans changer les largeurs. */
  body.fav-club-page-active #group-activity .bb-grid > :first-child,
  body.fav-club-page-active #group-activity .activity-list > :first-child{
    box-sizing:border-box;
  }

  /* Habillage compact des widgets de la colonne droite Club. */
  body.fav-club-page-active #secondary .widget,
  body.fav-club-page-active .bb-right-panel .widget,
  body.fav-club-page-active .group-sidebar .widget{
    padding:3px !important;
    border:1px solid rgba(255,255,255,.16) !important;
    border-radius:8px !important;
    background:rgba(255,255,255,.025) !important;
    box-shadow:none !important;
  }
  body.fav-club-page-active #secondary .widget .widget-title,
  body.fav-club-page-active .bb-right-panel .widget .widget-title,
  body.fav-club-page-active .group-sidebar .widget .widget-title{
    margin-left:0 !important;margin-right:0 !important;
  }
  body.fav-club-page-active .fav-trophy-widget.fav-trophy-widget--access{
    margin:0 !important;
  }
}
@media (min-width:1201px){
  body.fav-club-page-active #group-activity .bb-grid{
    column-gap:18px !important;
  }
  body.fav-club-page-active #group-activity .bb-grid > *{
    margin-left:0 !important;
    margin-right:0 !important;
  }
}
