/**
 * Dock vitrine : cookie, Aria, promo, CTA — empilés sans chevauchement.
 * Les offsets sont pilotés par --vitrine-dock-* (floating-widgets.js).
 */
:root {
    --vitrine-dock-bar: 0px;
    --vitrine-dock-cookie: 0px;
    --vitrine-dock-manage: 0px;
    --vitrine-dock-fab: 0px;
    --vitrine-dock-promo: 0px;
    --vitrine-dock-sticky-cta: 0px;
    --vitrine-dock-safe: env(safe-area-inset-bottom, 0px);
    --vitrine-dock-gap: 12px;
    --vitrine-dock-edge: 12px;
    --vitrine-dock-stack: calc(
        var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-cookie)
        + var(--vitrine-dock-manage) + var(--vitrine-dock-fab) + var(--vitrine-dock-promo)
        + var(--vitrine-dock-sticky-cta)
    );
}

/* Page galerie : CTA dédié en bas, pas la pilule globale */
body.page-galerie-landing #sticky-cta {
    display: none !important;
}

body.vitrine-dock-active {
    padding-bottom: calc(var(--vitrine-dock-stack) + var(--vitrine-dock-gap));
}

/* Barre galerie — toujours au fond */
body.page-galerie-landing .gl-sticky-cta {
    z-index: 8000;
    padding-bottom: max(10px, var(--vitrine-dock-safe));
}

/* Bandeau cookies — au-dessus de la barre galerie */
.cookie-banner:not([hidden]) {
    bottom: calc(var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-gap)) !important;
    left: var(--vitrine-dock-edge) !important;
    right: var(--vitrine-dock-edge) !important;
    max-width: none;
    margin: 0;
    z-index: 8200;
}

/* Pilule CTA globale — au-dessus du cookie / barre */
.sticky-cta:not([hidden]) {
    bottom: calc(
        var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-cookie) + var(--vitrine-dock-gap)
    ) !important;
    z-index: 7900;
}

/* Colonne droite : manage → Aria → promo (du bas vers le haut) */
.cookie-manage-btn:not([hidden]) {
    left: auto !important;
    right: var(--vitrine-dock-edge) !important;
    bottom: calc(
        var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-cookie)
        + var(--vitrine-dock-sticky-cta) + var(--vitrine-dock-gap)
    ) !important;
    z-index: 8150;
}

.aria-fab {
    left: auto !important;
    right: var(--vitrine-dock-edge) !important;
    bottom: calc(
        var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-cookie)
        + var(--vitrine-dock-sticky-cta) + var(--vitrine-dock-manage)
        + var(--vitrine-dock-gap)
    ) !important;
    z-index: 8100;
}

.promo-sticky.is-visible {
    left: var(--vitrine-dock-edge) !important;
    right: calc(var(--vitrine-dock-edge) + var(--vitrine-dock-fab) + var(--vitrine-dock-gap)) !important;
    width: auto !important;
    max-width: none !important;
    bottom: calc(
        var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-cookie)
        + var(--vitrine-dock-sticky-cta) + var(--vitrine-dock-manage) + var(--vitrine-dock-fab)
        + var(--vitrine-dock-gap)
    ) !important;
    z-index: 8050;
}

@media (max-width: 600px) {
    .aria-fab {
        bottom: calc(
            var(--vitrine-dock-safe) + var(--vitrine-dock-bar) + var(--vitrine-dock-cookie)
            + var(--vitrine-dock-sticky-cta) + var(--vitrine-dock-manage)
            + var(--vitrine-dock-gap)
        ) !important;
        left: auto !important;
        right: var(--vitrine-dock-edge) !important;
    }
}

@media (max-width: 540px) {
    .cookie-banner:not([hidden]) {
        left: 8px !important;
        right: 8px !important;
    }
}
