/* ============================================================
   consentement.css - habillage du bandeau cookies (tarteaucitron)
   ==========================================================================
   Le bandeau est genere par tarteaucitron (voir www/consentement.php). Sans
   habillage, la librairie applique ses styles par defaut : une barre NOIRE
   pleine largeur, texte centre, boutons vert et rouge. Ce fichier la remplace
   par une petite carte discrete aux couleurs du site (violet #64008d,
   Poppins, coins arrondis, ombre douce).

   Pourquoi les selecteurs commencent par « html body #tarteaucitronRoot » :
   tarteaucitron injecte sa propre feuille de style APRES le chargement de la
   page, donc apres ce fichier. A specificite egale, c'est la derniere qui
   gagne : on prend une longueur d'avance en prefixant par html body et en
   precisant le type des elements (div#..., button#..., span#...).

   Le contenu et la logique de consentement ne changent pas : seuls les
   couleurs, tailles, espacements et coins sont repris.
   ============================================================ */

/* --- 0. Position verticale de la carte ---------------------------------- */
/* Hauteur de la carte au-dessus du bas de page. La valeur par defaut (96 px)
   laisse passer le bouton « Demander un devis » du site public. Les sites
   postuler et prescripteurs, ou ce coin est libre, la ramenent a 20 px :
   consentement.php ajoute alors un <style> (les deux sites partagent ce
   fichier : voir www/consentement.php). */
:root {
    --tac-marge-basse: 96px;
}

/* --- 1. La carte elle-meme --------------------------------------------- */
/* Placee en bas a DROITE, AU-DESSUS du bouton « Demander un devis » (qui
   occupe deja le coin) : rien n'est recouvert. En bas a gauche se trouvent la
   bulle du chat et son panneau : la carte reste donc a droite. */
html body #tarteaucitronRoot div#tarteaucitronAlertBig {
    left: auto;
    right: 20px;
    bottom: var(--tac-marge-basse);
    width: auto;
    max-width: 430px;
    box-sizing: border-box;
    text-align: left;
    padding: 22px 24px 18px;
    background: #ffffff;
    color: #2c3e50;
    border: 1px solid rgba(100, 0, 141, 0.12);
    border-radius: 16px;
    box-shadow: 0 18px 45px rgba(64, 10, 108, 0.20);
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 14px !important;
    line-height: 1.55;
    animation: tacApparition 0.35s ease-out;
}

/* Petit trait violet en haut de la carte : rappelle la charte sans crier. */
html body #tarteaucitronRoot div#tarteaucitronAlertBig::before {
    content: '';
    position: absolute;
    top: 0;
    left: 24px;
    width: 46px;
    height: 3px;
    border-radius: 0 0 3px 3px;
    background: #64008d;
}

@keyframes tacApparition {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* --- 2. Le texte ------------------------------------------------------- */
html body #tarteaucitronRoot #tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert {
    display: block;
    padding: 0 0 16px;
    max-height: none;
    color: #2c3e50 !important;
    font-size: 14px;
    line-height: 1.55;
    text-align: left;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig span#tarteaucitronDisclaimerAlert strong {
    color: #64008d;
    font-weight: 600;
}

/* --- 3. Les boutons ---------------------------------------------------- */
/* Les cases a cocher dessinees par la librairie (☐ / ☑) sont deja masquees
   par son propre CSS dans le grand bandeau : rien a faire de ce cote. */
html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2,
html body #tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton {
    display: inline-block;
    box-sizing: border-box;
    margin: 0 8px 0 0;
    padding: 11px 20px;
    border: 0;
    border-radius: 10px;
    background: #64008d;
    color: #ffffff;
    font-family: inherit;
    font-size: 13.5px !important;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2:hover,
html body #tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronAllow:hover {
    background: #470063;
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(100, 0, 141, 0.28);
}

/* « Tout refuser » a la meme taille que « Tout accepter » : refuser doit etre
   aussi simple qu'accepter (et aussi visible). */
html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2,
html body #tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronDeny {
    background: transparent;
    color: #64008d;
    border: 1.5px solid rgba(100, 0, 141, 0.35);
}

html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2:hover {
    background: rgba(100, 0, 141, 0.07);
    border-color: #64008d;
}

/* Les deux liens discrets, chacun sur sa ligne. */
html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
    display: block;
    margin: 14px 0 0;
    padding: 2px 0;
    background: transparent;
    color: #64008d;
    font-size: 13px !important;
    font-weight: 500;
    text-align: left;
    text-decoration: underline;
    text-decoration-color: rgba(100, 0, 141, 0.35);
    text-underline-offset: 3px;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert:hover {
    color: #470063;
    text-decoration-color: #470063;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPrivacyUrl,
html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPrivacyUrlDialog {
    display: block;
    margin: 6px 0 0;
    padding: 0;
    background: transparent;
    color: #7f8c8d;
    font-size: 12.5px !important;
    font-weight: 400;
    text-align: left;
    text-decoration: underline;
    text-decoration-color: rgba(127, 140, 141, 0.4);
    text-underline-offset: 3px;
}

html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPrivacyUrl:hover {
    color: #64008d;
    text-decoration-color: rgba(100, 0, 141, 0.5);
}

/* --- 4. Le pictogramme (rouvrir le bandeau) ---------------------------- */
/* Meme coin que la carte, juste au-dessus du bouton « Demander un devis ».
   Il est masque tant que le bandeau est ouvert (voir consentement.php) : les
   deux ne se superposent donc jamais. */
html body #tarteaucitronRoot div#tarteaucitronIcon {
    bottom: calc(var(--tac-marge-basse) - 4px);
    right: 26px;
    left: auto;
}

html body #tarteaucitronRoot #tarteaucitronIcon button#tarteaucitronManager {
    padding: 0;
    border: 0;
    background: transparent;
    line-height: 0;
    transition: transform 0.2s ease;
}

html body #tarteaucitronRoot #tarteaucitronIcon button#tarteaucitronManager img {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    box-shadow: 0 6px 16px rgba(64, 10, 108, 0.28);
}

html body #tarteaucitronRoot #tarteaucitronIcon button#tarteaucitronManager:hover {
    transform: scale(1.06);
}

/* --- 5. La fenetre « Personnaliser » ----------------------------------- */
html body #tarteaucitronRoot div#tarteaucitron {
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(44, 62, 80, 0.28);
}

html body #tarteaucitronRoot #tarteaucitron button#tarteaucitronClosePanel {
    background: #64008d;
    color: #ffffff;
    border-radius: 0 0 8px 8px;
    font-size: 12px;
    font-weight: 600;
    padding: 7px 0;
    width: 110px;
}

/* Les bandeaux de titre du panneau (violet au lieu du gris fonce). */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronInfo,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronDetails,
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
html body #tarteaucitronRoot .asCatToggleBtn {
    background: #64008d;
    color: #ffffff;
    border-radius: 8px 8px 0 0;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    background: #470063;
    border-color: #470063 !important;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:hover {
    background: #5d1178;
}

/* Boutons par service : vert pour autoriser, rouge (adouci) pour refuser. */
html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
html body #tarteaucitronRoot #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
    background-color: #27ae60;
    color: #ffffff;
}

html body #tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny,
html body #tarteaucitronRoot #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
    background-color: #c0392b;
    color: #ffffff;
}

/* --- 6. Telephone : carte compacte, posee au-dessus des boutons flottants -- */
@media screen and (max-width: 640px) {
    html body #tarteaucitronRoot div#tarteaucitronAlertBig {
        left: 10px;
        right: 10px;
        bottom: var(--tac-marge-basse);
        max-width: none;
        padding: 16px 16px 14px;
        border-radius: 16px;
        box-shadow: 0 14px 36px rgba(64, 10, 108, 0.24);
    }

    /* Les deux boutons cote a cote : la carte reste compacte et laisse voir le
       bouton de devis (en bas a droite) et la bulle du chat (en bas a gauche). */
    html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2,
    html body #tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton {
        width: calc(50% - 4px);
        margin: 0 8px 0 0;
        padding: 13px 8px;
        text-align: center;
        font-size: 13px !important;
    }

    html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2 {
        margin-right: 0;
    }

    html body #tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
        margin-top: 12px;
    }
}

/* --- 7. Accessibilite : pas d'animation si le systeme les refuse ------- */
@media (prefers-reduced-motion: reduce) {
    html body #tarteaucitronRoot div#tarteaucitronAlertBig {
        animation: none;
    }

    html body #tarteaucitronRoot #tarteaucitronIcon button#tarteaucitronManager:hover {
        transform: none;
    }
}
