/**
 * Thème Tarte au Citron — Violette & Berlingot
 *
 * Surcharge visuelle de la CSS vendor (tarteaucitron.css) pour coller à
 * l'identité du site. Chargée APRÈS la CSS vendor (voir Assets.php).
 * Utilise les variables CSS globales définies par le thème (main.scss / :root).
 */

#tarteaucitronRoot {
    --tac-primary: var(--color-primary, #48245a);
    --tac-secondary: var(--color-secondary, #c03070);
    --tac-light: var(--color-primary-light, #f8e9ff);
    --tac-white: var(--color-white, #fff);
    --tac-font: var(--ff-text, "Futura", "Trebuchet MS", sans-serif);
    --tac-font-title: var(--ff-title, "Bebas Neue", sans-serif);
    --tac-pill: 999px;
    --tac-panel-radius: 16px;
    --tac-shadow: 0 20px 60px rgba(72, 36, 90, 0.22);
}

/* Typographie globale du widget */
#tarteaucitronRoot * {
    font-family: var(--tac-font);
}

/* ============================================================
 * Bandeau bas
 * ============================================================ */
#tarteaucitronRoot #tarteaucitronAlertBig {
    background: var(--tac-white);
    color: var(--tac-primary);
    border-top: 1px solid var(--tac-light);
    box-shadow: 0 -6px 24px rgba(72, 36, 90, 0.12);
    padding: 18px 0;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert * {
    color: var(--tac-primary);
}

/* ============================================================
 * Boutons — base
 * ============================================================ */
#tarteaucitronRoot #tarteaucitronAlertBig button.tarteaucitronCTAButton,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
    font-size: 14px;
    font-weight: 500;
    border-radius: var(--tac-pill);
    padding: 10px 26px;
    cursor: pointer;
    transition: filter 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

/* Accepter — plein, couleur primaire */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitron .tarteaucitronCTAButton.tarteaucitronAllow {
    background: var(--tac-primary);
    color: var(--tac-white);
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2:hover {
    filter: brightness(1.15);
    color: var(--tac-white);
}

/* Refuser — contour primaire */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2 {
    background: transparent;
    color: var(--tac-primary);
    box-shadow: inset 0 0 0 1px var(--tac-primary);
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied2:hover {
    background: var(--tac-light);
    color: var(--tac-primary);
}

/* Personnaliser — lien discret secondaire */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert {
    background: transparent;
    color: var(--tac-secondary);
    text-decoration: underline;
    padding: 10px 18px;
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert:hover {
    filter: brightness(1.1);
}

/* ============================================================
 * Panneau de gestion
 * ============================================================ */
#tarteaucitronRoot #tarteaucitron div#tarteaucitronServices {
    border-radius: var(--tac-panel-radius);
    box-shadow: var(--tac-shadow);
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronH1 {
    font-family: var(--tac-font-title);
    color: var(--tac-primary);
    letter-spacing: 0.02em;
}

#tarteaucitronRoot #tarteaucitron .tarteaucitronH2,
#tarteaucitronRoot #tarteaucitron .tarteaucitronH3 {
    color: var(--tac-primary);
}

/* Barre de catégorie */
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    border-color: var(--tac-light) !important;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName button,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronTitle a {
    color: var(--tac-primary);
}

/* Lignes de service */
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine {
    border-left: 4px solid var(--tac-light);
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
    border-color: var(--tac-primary);
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
    border-color: rgba(72, 36, 90, 0.18);
}

/* Boutons Autoriser / Interdire dans le panneau */
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronAsk .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronAsk .tarteaucitronDeny {
    background: var(--tac-light);
    color: var(--tac-primary);
    border-radius: var(--tac-pill);
    font-weight: 500;
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronLine button.tarteaucitronAllow {
    background: var(--tac-primary);
    color: var(--tac-white);
}

#tarteaucitronRoot #tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected,
#tarteaucitronRoot #tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied2.tarteaucitronIsSelected {
    background: var(--tac-secondary);
    color: var(--tac-white);
}

/* Barre de progression du consentement */
#tarteaucitronRoot #tarteaucitronPercentage {
    background: var(--tac-primary) !important;
}

/* Boutons enregistrer / retour / fermer */
html body #tarteaucitronRoot button#tarteaucitronSaveButton {
    background: var(--tac-secondary);
    color: var(--tac-white);
    border-radius: var(--tac-pill);
}

#tarteaucitronRoot button#tarteaucitronBack {
    background: var(--tac-light);
}

#tarteaucitronRoot button#tarteaucitronClosePanel {
    background: var(--tac-primary);
    color: var(--tac-white);
}

#tarteaucitronRoot #tarteaucitronCloseCross {
    color: var(--tac-primary);
}

/* ============================================================
 * Accessibilité — focus visible
 * ============================================================ */
#tarteaucitronRoot a:focus-visible,
#tarteaucitronRoot button:focus-visible {
    outline: 3px solid var(--tac-secondary);
    outline-offset: 2px;
}

/* ============================================================
 * Icône flottante de réouverture
 * ============================================================ */
#tarteaucitronRoot #tarteaucitronIcon #tarteaucitronManager img {
    width: 48px;
    height: 48px;
    background: transparent;
}
