/* ==============================================================
   Bandeau de consentement Cookiebot aux couleurs de Cepes et Bouchons
   Charge depuis index.php, uniquement quand Cookiebot est actif.

   Cookiebot injecte sa propre feuille de style APRES celle-ci, a
   specificite souvent egale : les !important sont donc necessaires
   pour que la charte l'emporte.

   Palette (voir _include/config.php) :
     rouge     #BC2523   bouton principal, interrupteurs actifs
     brique    #B1512F   liens
     olive     #4C4B25   texte, boutons secondaires
     kaki      #7F7C5A   texte secondaire, interrupteurs inactifs
     creme     #F2E4D4   filets, fonds secondaires
     vermillon #D03919   survol du bouton principal
   ============================================================== */

#CybotCookiebotDialog {
    --cb-rouge: #BC2523;
    --cb-brique: #B1512F;
    --cb-olive: #4C4B25;
    --cb-kaki: #7F7C5A;
    --cb-creme: #F2E4D4;
    --cb-vermillon: #D03919;
    --cb-blanc: #FFFFFF;

    background-color: var(--cb-blanc) !important;
    color: var(--cb-olive) !important;
    font-family: "Poppins", sans-serif !important;
    border-top: 6px solid var(--cb-rouge) !important;
    border-radius: 8px !important;
    box-shadow: 0 30px 70px rgba(76, 75, 37, .35) !important;
}

/* --- Voile entre le site et la fenetre -------------------------
   Le gabarit "popup" de Cookiebot n'en pose pas : on l'affiche tant
   que le bandeau porte la classe CybotCookiebotDialogActive (retiree
   des que le visiteur a fait son choix). Juste sous le z-index du
   bandeau (2147483631), il bloque aussi les clics sur la page.
   Navigateurs sans :has() : pas de voile, le bandeau reste utilisable. */
body:has(#CybotCookiebotDialog.CybotCookiebotDialogActive)::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 2147483630;
    background-color: rgba(76, 75, 37, .6); /* olive de la charte */
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    animation: cb-voile .3s ease both;
}
body:has(#CybotCookiebotDialog.CybotCookiebotDialogActive) {
    overflow: hidden;
}
@keyframes cb-voile {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
    body:has(#CybotCookiebotDialog.CybotCookiebotDialogActive)::after {
        animation: none;
    }
}

#CybotCookiebotDialog *,
#CybotCookiebotDialog button,
#CybotCookiebotDialog input {
    font-family: "Poppins", sans-serif !important;
}

/* --- Titre ----------------------------------------------------- */
#CybotCookiebotDialog .CybotCookiebotDialogBodyContentHeading {
    font-family: "Cepes-et-bouchon", "Poppins", sans-serif !important;
    color: var(--cb-rouge) !important;
    font-weight: normal !important;
    letter-spacing: .02em;
}

/* --- Textes ---------------------------------------------------- */
#CybotCookiebotDialogBodyContentText,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieTypeIntro,
#CybotCookiebotDialogDetailBodyContentTextAbout,
#CybotCookiebotDialogDetailFooter {
    color: var(--cb-olive) !important;
}

#CybotCookiebotDialogDetailFooter,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyEmptyCategoryMessage {
    color: var(--cb-kaki) !important;
}

/* --- Liens ----------------------------------------------------- */
#CybotCookiebotDialog a:not(.CybotCookiebotDialogNavItemLink):not(#CybotCookiebotDialogPoweredbyCybot),
#CybotCookiebotDialogBodyEdgeMoreDetailsLink {
    color: var(--cb-brique) !important;
}
#CybotCookiebotDialog a:not(.CybotCookiebotDialogNavItemLink):not(#CybotCookiebotDialogPoweredbyCybot):hover,
#CybotCookiebotDialogBodyEdgeMoreDetailsLink:hover {
    color: var(--cb-rouge) !important;
}
#CybotCookiebotDialogBodyEdgeMoreDetailsLink:after {
    border-color: currentColor !important;
}

/* --- Logo "powered by" : discret, dans le ton ------------------ */
#CybotCookiebotDialogPoweredbyCybot svg {
    fill: var(--cb-kaki) !important;
}

/* --- Filets de separation -------------------------------------- */
#CybotCookiebotDialogHeader,
#CybotCookiebotDialogNav,
#CybotCookiebotDialogFooter,
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonWrapper,
#CybotCookiebotDialog .CookieCard,
#CybotCookiebotDialogBodyLevelButtonsSelectPane,
#CybotCookiebotDialogBodyFieldsetInnerContainer {
    border-color: var(--cb-creme) !important;
}

/* --- Onglets --------------------------------------------------- */
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink {
    color: var(--cb-olive) !important;
    border-bottom-color: transparent !important;
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink:hover {
    color: var(--cb-rouge) !important;
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
    color: var(--cb-rouge) !important;
    border-bottom: 3px solid var(--cb-rouge) !important;
}

/* --- Libelles des categories ----------------------------------- */
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonDescription,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentIABv2Tab {
    color: var(--cb-olive) !important;
}
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton:hover,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentIABv2Tab:hover {
    color: var(--cb-rouge) !important;
}
/* Compteur de cookies par categorie */
#CybotCookiebotDialog .CybotCookiebotDialogDetailBulkConsentCount {
    background-color: var(--cb-creme) !important;
    color: var(--cb-olive) !important;
}

/* --- Interrupteurs --------------------------------------------- */
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: var(--cb-kaki) !important;
}
#CybotCookiebotDialog input[type="checkbox"]:checked + .CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: var(--cb-rouge) !important;
}
/* "Necessaires" : toujours actif, non modifiable -> rouge attenue */
#CybotCookiebotDialog input[type="checkbox"]:disabled + .CybotCookiebotDialogBodyLevelButtonSlider,
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSliderWrapperDisabled .CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: var(--cb-rouge) !important;
    opacity: .45 !important;
}

/* --- Onglet Details : chevrons et cartes ----------------------- */
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton:before,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentIABv2Tab:before {
    border-color: var(--cb-olive) !important;
}
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton:hover:before {
    border-color: var(--cb-rouge) !important;
}
#CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CookieCard,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieTypeTableContainer {
    border-color: var(--cb-creme) !important;
}
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieTabContent,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieTabContent li {
    background-color: rgba(242, 228, 212, .4) !important;
    color: var(--cb-olive) !important;
}

/* --- Boutons --------------------------------------------------- */
#CybotCookiebotDialog .CybotCookiebotDialogBodyButton {
    background-color: transparent !important;
    border: 2px solid var(--cb-olive) !important;
    border-radius: 999px !important;
    color: var(--cb-olive) !important;
    font-weight: 600 !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
#CybotCookiebotDialog .CybotCookiebotDialogBodyButton:hover {
    background-color: var(--cb-olive) !important;
    border-color: var(--cb-olive) !important;
    color: var(--cb-creme) !important;
}

/* Bouton principal : Tout autoriser */
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
    background-color: var(--cb-rouge) !important;
    border-color: var(--cb-rouge) !important;
    color: var(--cb-blanc) !important;
}
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:hover {
    background-color: var(--cb-vermillon) !important;
    border-color: var(--cb-vermillon) !important;
}

/* --- Focus clavier visible ------------------------------------- */
#CybotCookiebotDialog a:focus-visible,
#CybotCookiebotDialog button:focus-visible,
#CybotCookiebotDialog input:focus-visible + .CybotCookiebotDialogBodyLevelButtonSlider {
    outline: 2px solid var(--cb-brique) !important;
    outline-offset: 2px !important;
}

/* --- Barre de defilement --------------------------------------- */
#CybotCookiebotDialog .CybotCookiebotScrollArea {
    scrollbar-color: var(--cb-kaki) var(--cb-creme);
}
#CybotCookiebotDialog ::-webkit-scrollbar-thumb {
    background-color: var(--cb-kaki) !important;
}

/* --- Widget de reouverture du consentement (pastille en bas) --- */
#CookiebotWidget .CookiebotWidget-logo svg circle {
    fill: #BC2523 !important;
}
#CookiebotWidget #CookiebotWidget-buttons #CookiebotWidget-btn-change {
    background-color: #BC2523 !important;
    border-color: #BC2523 !important;
}
#CookiebotWidget #CookiebotWidget-buttons #CookiebotWidget-btn-withdraw {
    border-color: #4C4B25 !important;
    color: #4C4B25 !important;
}
#CookiebotWidget .CookiebotWidget-consent-details button,
#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-consents-list li.CookiebotWidget-approved svg {
    color: #B1512F !important;
    fill: #B1512F !important;
}
