/* =========================================================
   ARCHERS AGATHOIS
   COMPETITIONS
========================================================= */

.aa-next-comps,
.aa-competition-dashboard{

    --aa-yellow:#f3c400;

    --aa-bg:#080808;

    --aa-card:#111111;

    --aa-card-2:#141414;

    --aa-border:#2a2a2a;

    --aa-white:#f5f5f5;

    --aa-muted:#7f7f7f;

    box-sizing:border-box;

    font-family:inherit;
}


.aa-next-comps *,
.aa-competition-dashboard *{

    box-sizing:border-box;
}


/* =========================================================
   ACCUEIL
========================================================= */

.aa-next-comps{

    width:100vw;

    margin-left:
        calc(50% - 50vw);

    margin-right:
        calc(50% - 50vw);

    padding:
        70px 0;

    background:#0b0b0b;

    color:#fff;
}


.aa-next-comps-inner{

    width:min(
        1450px,
        calc(100% - 60px)
    );

    margin:0 auto;
}


.aa-next-comps-head{

    display:flex;

    align-items:flex-end;

    justify-content:
        space-between;

    gap:30px;

    margin-bottom:32px;
}


.aa-comp-kicker{

    margin-bottom:10px;

    color:
        var(--aa-yellow);

    text-transform:
        uppercase;

    letter-spacing:2px;

    font-size:10px;

    font-weight:900;
}


.aa-next-comps h2{

    margin:0;

    color:#fff;

    font-size:
        clamp(
            34px,
            4vw,
            54px
        );

    line-height:1;

    letter-spacing:-2px;

    font-weight:900;
}


.aa-next-comps h2 span{

    color:
        var(--aa-yellow);
}


.aa-all-comps{

    display:inline-flex;

    align-items:center;

    gap:12px;

    min-height:46px;

    padding:0 18px;

    border:
        1px solid #333;

    border-radius:8px;

    color:#fff;

    text-decoration:none;

    font-size:12px;

    font-weight:900;
}


.aa-next-comps-grid{

    display:grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap:14px;
}


.aa-comp-card{

    display:grid;

    grid-template-columns:
        88px
        minmax(
            0,
            1fr
        );

    min-height:205px;

    border:
        1px solid
        var(--aa-border);

    border-radius:14px;

    overflow:hidden;

    background:
        var(--aa-card);
}


.aa-comp-date{

    padding:
        23px 12px;

    display:flex;

    flex-direction:column;

    align-items:center;

    border-right:
        1px solid
        var(--aa-border);

    background:#0d0d0d;
}


.aa-comp-date strong{

    color:#fff;

    font-size:34px;

    line-height:1;

    font-weight:900;
}


.aa-comp-date span{

    margin-top:6px;

    color:
        var(--aa-yellow);

    font-size:9px;

    font-weight:900;

    letter-spacing:1px;
}


.aa-comp-card-content{

    padding:
        23px 22px;
}


.aa-comp-meta{

    display:flex;

    align-items:center;

    gap:8px;

    margin-bottom:15px;

    color:#666;

    font-size:9px;

    font-weight:800;
}


.aa-comp-discipline{

    display:inline-flex;

    align-items:center;

    min-height:25px;

    padding:
        0 9px;

    border:
        1px solid
        var(--aa-yellow);

    border-radius:99px;

    color:
        var(--aa-yellow);

    font-size:9px;

    font-weight:900;

    text-transform:
        uppercase;
}


.aa-nature{

    border-color:#a86bea;

    color:#a86bea;
}


.aa-3d{

    border-color:#579cef;

    color:#579cef;
}


.aa-taei,
.aa-taen,
.aa-tae{

    border-color:#5dbd8a;

    color:#5dbd8a;
}


.aa-comp-card h3{

    margin:
        0 0 10px;

    color:#fff;

    font-size:16px;

    line-height:1.3;

    font-weight:900;
}


.aa-comp-card p{

    margin:0;

    color:#8b8b8b;

    font-size:11px;

    line-height:1.5;
}


.aa-comp-card p span{

    color:#666;
}


.aa-comp-links{

    display:flex;

    gap:12px;

    flex-wrap:wrap;

    margin-top:18px;
}


.aa-mandate,
.aa-detail{

    color:
        var(--aa-yellow);

    text-decoration:none;

    font-size:10px;

    font-weight:900;
}


.aa-detail{

    color:#777;
}


/* =========================================================
   DASHBOARD PAGE
========================================================= */

.aa-competition-dashboard{

    width:100vw;

    margin-left:
        calc(50% - 50vw);

    margin-right:
        calc(50% - 50vw);

    padding:
        70px 0
        100px;

    min-height:100vh;

    background:
        radial-gradient(
            circle at 92% 4%,
            rgba(243,196,0,.07),
            transparent 28%
        ),
        #080808;

    color:#fff;
}


.aa-dashboard-inner{

    width:min(
        1450px,
        calc(100% - 60px)
    );

    margin:0 auto;
}


/* =========================================================
   HEADER
========================================================= */

.aa-dashboard-header{

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap:65px;

    align-items:end;

    margin-bottom:38px;
}


.aa-dashboard-heading{

    max-width:800px;
}


.aa-dashboard-kicker{

    margin-bottom:12px;

    color:
        var(--aa-yellow);

    font-size:10px;

    font-weight:900;

    letter-spacing:2px;

    text-transform:uppercase;
}


.aa-dashboard-heading h1{

    margin:0;

    color:#fff;

    font-size:
        clamp(
            43px,
            5vw,
            70px
        );

    line-height:1;

    letter-spacing:-3px;

    font-weight:900;
}


.aa-dashboard-heading p{

    max-width:720px;

    margin:
        20px 0
        0;

    color:#969696;

    font-size:15px;

    line-height:1.7;
}


/* =========================================================
   STATS
========================================================= */

.aa-dashboard-stats{

    display:grid;

    grid-template-columns:
        repeat(3,155px);

    gap:12px;
}


.aa-dashboard-stat{

    min-height:135px;

    padding:20px;

    border:
        1px solid
        var(--aa-border);

    border-radius:13px;

    background:#111;
}


.aa-dashboard-stat-icon{

    margin-bottom:20px;

    color:
        var(--aa-yellow);

    font-size:25px;
}


.aa-dashboard-stat strong{

    display:block;

    color:#fff;

    font-size:27px;

    line-height:1;

    font-weight:900;
}


.aa-dashboard-stat span{

    display:block;

    margin-top:10px;

    color:#666;

    font-size:8px;

    font-weight:900;

    text-transform:uppercase;

    letter-spacing:1px;
}


/* =========================================================
   FILTERS
========================================================= */

.aa-dashboard-filters{

    display:grid;

    grid-template-columns:
        minmax(300px,1fr)
        175px
        190px
        165px;

    gap:12px;

    margin-bottom:22px;
}


.aa-dashboard-search{

    position:relative;
}


.aa-dashboard-search span{

    position:absolute;

    top:50%;

    left:18px;

    transform:
        translateY(-50%);

    color:
        var(--aa-yellow);

    font-size:14px;

    pointer-events:none;
}


.aa-dashboard-search input,
.aa-dashboard-filters select{

    width:100%;

    height:56px;

    border:
        1px solid
        var(--aa-border);

    border-radius:11px;

    outline:0;

    background:#111;

    color:#ddd;

    font-size:13px;
}


.aa-dashboard-search input{

    padding:
        0 20px
        0 48px;
}


.aa-dashboard-filters select{

    padding:
        0 15px;
}


.aa-dashboard-search input:focus,
.aa-dashboard-filters select:focus{

    border-color:
        var(--aa-yellow);
}


/* =========================================================
   MAIN
========================================================= */

.aa-dashboard-main{

    display:grid;

    grid-template-columns:
        260px
        minmax(0,1fr);

    gap:22px;

    align-items:start;
}


/* =========================================================
   SIDEBAR
========================================================= */

.aa-dashboard-sidebar{

    padding:18px;

    border:
        1px solid
        var(--aa-border);

    border-radius:13px;

    background:#111;
}


/* =========================================================
   MINI CALENDAR
========================================================= */

.aa-mini-calendar{

    padding-bottom:20px;

    border-bottom:
        1px solid
        #292929;
}


.aa-mini-calendar-header{

    display:grid;

    grid-template-columns:
        36px
        1fr
        36px;

    align-items:center;

    gap:5px;

    margin-bottom:18px;
}


.aa-mini-calendar-header button{

    width:36px;

    height:36px;

    padding:0;

    border:
        1px solid
        #303030;

    border-radius:50%;

    background:#151515;

    color:#aaa;

    cursor:pointer;
}


.aa-mini-calendar-header button:hover{

    color:
        var(--aa-yellow);

    border-color:
        var(--aa-yellow);
}


.aa-mini-calendar-header strong{

    color:#fff;

    text-align:center;

    font-size:11px;

    font-weight:900;
}


.aa-mini-weekdays,
.aa-mini-days{

    display:grid;

    grid-template-columns:
        repeat(
            7,
            1fr
        );

    gap:4px;

    text-align:center;
}


.aa-mini-weekdays{

    margin-bottom:7px;
}


.aa-mini-weekdays span{

    color:#666;

    font-size:8px;

    font-weight:900;
}


.aa-mini-days span,
.aa-mini-days button{

    position:relative;

    width:28px;

    height:28px;

    margin:auto;

    padding:0;

    display:grid;

    place-items:center;

    border:1px solid transparent;

    border-radius:50%;

    background:transparent;

    color:#ddd;

    font-size:9px;

    cursor:default;
}


.aa-mini-days button{

    cursor:pointer;
}


.aa-mini-days button:hover{

    border-color:#555;
}


.aa-mini-days .aa-calendar-outside{

    color:#3f3f3f;
}


.aa-mini-days button.has-event{

    border-color:#555;
}


.aa-mini-days button.has-event::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:2px;

    width:4px;

    height:4px;

    transform:
        translateX(-50%);

    border-radius:50%;

    background:
        var(--aa-yellow);
}


/* =========================================================
   SIDEBAR BLOCKS
========================================================= */

.aa-sidebar-block{

    padding:
        20px 0;

    border-bottom:
        1px solid
        #292929;
}


.aa-sidebar-block:last-child{

    padding-bottom:0;

    border-bottom:0;
}


.aa-sidebar-title{

    margin-bottom:12px;

    color:#666;

    font-size:8px;

    font-weight:900;

    text-transform:uppercase;

    letter-spacing:1.2px;
}


.aa-sidebar-filter,
.aa-sidebar-department{

    width:100%;

    border:0;

    background:none;

    color:#aaa;

    cursor:pointer;

    text-align:left;
}


.aa-sidebar-filter{

    display:flex;

    align-items:center;

    gap:10px;

    padding:
        6px 0;

    font-size:10px;
}


.aa-sidebar-filter:hover{

    color:#fff;
}


.aa-sidebar-dot{

    width:9px;

    height:9px;

    border-radius:50%;
}


.aa-dot-18{

    background:
        var(--aa-yellow);
}


.aa-dot-nature{

    background:#a86bea;
}


.aa-dot-3d{

    background:#579cef;
}


.aa-dot-tae{

    background:#5dbd8a;
}


.aa-sidebar-department{

    padding:
        7px 0;

    display:flex;

    align-items:center;

    justify-content:
        space-between;

    gap:15px;

    font-size:10px;
}


.aa-sidebar-department strong{

    color:#fff;

    font-size:10px;
}


.aa-sidebar-department:hover span{

    color:
        var(--aa-yellow);
}


/* =========================================================
   RESULTS
========================================================= */

.aa-dashboard-results{

    border:
        1px solid
        var(--aa-border);

    border-radius:13px;

    overflow:hidden;

    background:#111;
}


.aa-results-header{

    min-height:52px;

    padding:
        0 22px;

    display:flex;

    align-items:center;

    justify-content:
        space-between;

    gap:20px;

    border-bottom:
        1px solid
        var(--aa-border);

    color:#666;

    font-size:8px;

    font-weight:900;

    text-transform:uppercase;

    letter-spacing:1px;
}


.aa-results-list{
    min-height:0;
}


/* =========================================================
   EVENT
========================================================= */

.aa-dashboard-event{

    display:grid;

    grid-template-columns:
        88px
        minmax(0,1fr)
        175px;

    min-height:130px;

    border-bottom:
        1px solid
        var(--aa-border);

    background:#111;
}


.aa-dashboard-event[hidden]{

    display:none !important;
}


.aa-dashboard-event:last-of-type{

    border-bottom:0;
}


.aa-dashboard-event-date{

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    border-right:
        1px solid
        var(--aa-border);

    background:#0e0e0e;
}


.aa-dashboard-event-date strong{

    color:#fff;

    font-size:32px;

    line-height:1;

    font-weight:900;
}


.aa-dashboard-event-date span{

    margin-top:5px;

    color:
        var(--aa-yellow);

    font-size:8px;

    font-weight:900;

    letter-spacing:1px;
}


.aa-dashboard-event-date small{

    margin-top:7px;

    color:#444;

    font-size:7px;
}


.aa-dashboard-event-info{

    min-width:0;

    padding:
        21px 20px;

    display:flex;

    flex-direction:column;

    justify-content:center;
}


.aa-dashboard-event-tags{

    display:flex;

    align-items:center;

    gap:9px;

    margin-bottom:11px;
}


.aa-dashboard-discipline{

    min-height:25px;

    padding:
        0 10px;

    display:inline-flex;

    align-items:center;

    border:
        1px solid
        var(--aa-yellow);

    border-radius:99px;

    color:
        var(--aa-yellow);

    font-size:8px;

    font-weight:900;

    text-transform:uppercase;
}


.aa-dashboard-nature{

    color:#a86bea;

    border-color:#a86bea;
}


.aa-dashboard-3d{

    color:#579cef;

    border-color:#579cef;
}


.aa-dashboard-tae,
.aa-dashboard-taei,
.aa-dashboard-taen{

    color:#5dbd8a;

    border-color:#5dbd8a;
}


.aa-dashboard-department{

    color:#555;

    font-size:8px;

    font-weight:900;
}


.aa-dashboard-event-info h2{

    margin:
        0 0 12px;

    color:#fff;

    font-size:17px;

    line-height:1.2;

    font-weight:900;
}


.aa-dashboard-event-meta{

    display:flex;

    flex-wrap:wrap;

    gap:
        8px 20px;

    color:#686868;

    font-size:9px;
}


/* =========================================================
   ACTION
========================================================= */

.aa-dashboard-event-action{

    padding:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-left:
        1px solid
        var(--aa-border);

    background:#0e0e0e;
}


.aa-dashboard-event-action a{

    width:100%;

    min-height:42px;

    padding:
        0 13px;

    display:flex;

    align-items:center;

    justify-content:
        space-between;

    gap:10px;

    border:
        1px solid
        rgba(
            243,
            196,
            0,
            .45
        );

    border-radius:8px;

    color:
        var(--aa-yellow);

    text-decoration:none;

    font-size:10px;

    font-weight:900;
}


.aa-dashboard-event-action a:hover{

    background:
        var(--aa-yellow);

    color:#080808;
}


.aa-dashboard-event-action
.aa-dashboard-detail{

    border-color:#333;

    color:#888;
}


.aa-dashboard-event-action
.aa-dashboard-detail:hover{

    background:#202020;

    color:#fff;
}


.aa-dashboard-no-mandate{

    color:#555;

    font-size:9px;

    font-weight:700;
}


/* =========================================================
   EMPTY
========================================================= */

.aa-dashboard-empty{
    padding:60px 30px;

    align-items:center;
    justify-content:center;

    color:#666;

    text-align:center;

    font-size:13px;
}


/* IMPORTANT :
   ne jamais afficher le message
   tant que JS lui laisse l'attribut hidden
*/
.aa-dashboard-empty[hidden]{
    display:none !important;
}


.aa-dashboard-empty:not([hidden]){
    display:flex;
}


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

@media(max-width:1200px){


    .aa-dashboard-header{

        grid-template-columns:1fr;
    }


    .aa-dashboard-stats{

        grid-template-columns:
            repeat(
                3,
                1fr
            );
    }


    .aa-dashboard-filters{

        grid-template-columns:
            1fr 1fr;
    }


}



@media(max-width:950px){


    .aa-dashboard-main{

        grid-template-columns:1fr;
    }


    .aa-dashboard-sidebar{

        display:grid;

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

        gap:20px;
    }


    .aa-mini-calendar{

        border-bottom:0;
    }


    .aa-sidebar-block{

        padding:0;

        border-bottom:0;
    }


}



@media(max-width:700px){


    .aa-next-comps{

        padding:
            55px 0;
    }


    .aa-next-comps-inner,
    .aa-dashboard-inner{

        width:
            calc(
                100% - 30px
            );
    }


    .aa-next-comps-head{

        flex-direction:column;

        align-items:flex-start;
    }


    .aa-next-comps-grid{

        grid-template-columns:1fr;
    }


    .aa-competition-dashboard{

        padding:
            55px 0
            70px;
    }


    .aa-dashboard-heading h1{

        font-size:43px;
    }


    .aa-dashboard-heading p{

        font-size:13px;
    }


    .aa-dashboard-stats{

        grid-template-columns:1fr;
    }


    .aa-dashboard-stat{

        min-height:100px;
    }


    .aa-dashboard-filters{

        grid-template-columns:1fr;
    }


    .aa-dashboard-sidebar{

        display:block;
    }


    .aa-mini-calendar{

        padding-bottom:20px;

        border-bottom:
            1px solid
            var(--aa-border);
    }


    .aa-sidebar-block{

        padding:
            20px 0;

        border-bottom:
            1px solid
            var(--aa-border);
    }


    .aa-dashboard-event{

        grid-template-columns:
            70px
            minmax(
                0,
                1fr
            );
    }


    .aa-dashboard-event-action{

        grid-column:2;

        padding:
            0 18px
            18px;

        border-left:0;

        justify-content:flex-start;

        background:#111;
    }


    .aa-dashboard-event-action a{

        max-width:230px;
    }


    .aa-results-header{

        padding:
            0 15px;
    }

}

/* =========================================================
   SUPPRESSION DU TRAIT BLANC SOUS LE HEADER
========================================================= */

body.page-id-42 #content,
body.page-id-42 .site-content,
body.page-id-42 .site-main,
body.page-id-42 .ast-container,
body.page-id-42 .elementor,
body.page-id-42 .e-con,
body.page-id-42 .e-con-inner,
body.page-id-42.elementor-element,
body.page-id-42 .elementor-widget,
body.page-id-42 .elementor-widget-container{
    margin-top:0 !important;
    padding-top:0 !important;
    border-top:0 !important;
    background:#080808 !important;
}

body.page-id-42 .aa-competition-dashboard{
    margin-top:-1px !important;
}

/* =========================================================
   LISIBILITÉ — TEXTES CALENDRIER
========================================================= */

/* En-tête de la liste */
.aa-results-header{
    font-size:10px;
    letter-spacing:1.2px;
}

/* Titre du mois dans le mini calendrier */
.aa-mini-calendar-header strong{
    font-size:12px;
}

/* Jours L M M J V S D */
.aa-mini-weekdays span{
    font-size:10px;
}

/* Numéros des jours */
.aa-mini-days span,
.aa-mini-days button{
    font-size:10px;
}

/* Titres DISCIPLINES / DÉPARTEMENTS */
.aa-sidebar-title{
    font-size:10px;
    letter-spacing:1.3px;
}

/* Disciplines à gauche */
.aa-sidebar-filter{
    font-size:12px;
    padding:7px 0;
}

/* Départements à gauche */
.aa-sidebar-department{
    font-size:12px;
    padding:8px 0;
}

.aa-sidebar-department strong{
    font-size:12px;
}

/* Badge discipline dans les concours */
.aa-dashboard-discipline{
    font-size:10px;
}

/* Numéro du département à côté du badge */
.aa-dashboard-department{
    font-size:10px;
}

/* Titre du concours */
.aa-dashboard-event-info h2{
    font-size:19px;
}

/* Ville / club / département sous le concours */
.aa-dashboard-event-meta{
    font-size:11px;
    line-height:1.5;
}

/* Mois sous la grosse date */
.aa-dashboard-event-date span{
    font-size:10px;
}

/* Année sous la date */
.aa-dashboard-event-date small{
    font-size:9px;
}

/* Mandat à venir */
.aa-dashboard-no-mandate{
    font-size:11px;
}

/* Boutons mandat / détail */
.aa-dashboard-event-action a{
    font-size:11px;
}

/* ============================================================
   ACCUEIL - PROCHAINS CONCOURS
   Actions plus visibles + suppression totale du bleu
============================================================ */

/* VOIR LE MANDAT */
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-mandate,
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-mandate:link,
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-mandate:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 46px !important;
    padding: 0 18px !important;

    border: 1px solid #f3c400 !important;
    border-radius: 7px !important;

    background: transparent !important;

    color: #f3c400 !important;

    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    text-decoration: none !important;

    opacity: 1 !important;
}

/* HOVER MANDAT */
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-mandate:hover,
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-mandate:focus {
    background: #f3c400 !important;
    border-color: #f3c400 !important;

    color: #090909 !important;
}


/* DÉTAIL FFTA */
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-detail,
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-detail:link,
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-detail:visited {
    display: inline-flex !important;
    align-items: center !important;

    min-height: 46px !important;

    color: #bdbdbd !important;

    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    text-decoration: none !important;

    opacity: 1 !important;
}

/* HOVER DÉTAIL FFTA */
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-detail:hover,
.aa-next-comps .aa-comp-card .aa-comp-links a.aa-detail:focus {
    color: #f3c400 !important;
}


/* TITRE DU CONCOURS UN PEU PLUS GROS */
.aa-next-comps .aa-comp-card h3 {
    font-size: 17px !important;
    line-height: 1.3 !important;
}


/* VILLE / CLUB */
.aa-next-comps .aa-comp-card p {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* ============================================================
   ACCUEIL - BOUTON VOIR TOUT LE CALENDRIER
============================================================ */

.aa-next-comps a.aa-all-comps,
.aa-next-comps a.aa-all-comps:link,
.aa-next-comps a.aa-all-comps:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 18px !important;

    min-height: 50px !important;
    padding: 0 22px !important;

    border: 1px solid #4a4a4a !important;
    border-radius: 8px !important;

    background: transparent !important;

    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    text-decoration: none !important;

    transition:
        color .2s ease,
        border-color .2s ease,
        background .2s ease,
        transform .2s ease !important;
}


/* SURVOL : JAUNE, JAMAIS BLEU */

.aa-next-comps a.aa-all-comps:hover,
.aa-next-comps a.aa-all-comps:focus,
.aa-next-comps a.aa-all-comps:active {
    color: #f3c400 !important;

    border-color: #f3c400 !important;

    background: rgba(243, 196, 0, 0.05) !important;

    text-decoration: none !important;

    transform: translateY(-2px);
}


/* LA FLÈCHE RESTE JAUNE AU SURVOL */

.aa-next-comps a.aa-all-comps:hover *,
.aa-next-comps a.aa-all-comps:focus * {
    color: #f3c400 !important;
}