/* ===== SCROLLING BANNER — MODE FONDU ENCHAÎNÉ ===== */

.sbp-banner-container {
    width: 100%;
    overflow: hidden;
    position: relative;
    white-space: nowrap;
    /* Dégradé horizontal : transparent sur les bords → rouge plein au centre.
       On neutralise le fond rouge plein posé en inline par le plugin. */
    background-color: transparent !important;
    background-image: linear-gradient(
        to right,
        rgba(224, 0, 15, 0) 0%,
        rgba(224, 0, 15, 0) 8%,
        rgba(224, 0, 15, 1) 32%,
        rgba(224, 0, 15, 1) 68%,
        rgba(224, 0, 15, 0) 92%,
        rgba(224, 0, 15, 0) 100%
    );
    box-shadow: none;
}

/* Zone d'affichage : les messages se superposent et se relaient en fondu */
.sbp-banner-content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    overflow: hidden;
    /* Police alignée sur la stats bar du thème (Barlow Condensed) */
    font-family: var(--font-display, 'Barlow Condensed', sans-serif);
    font-weight: 700;
    text-transform: uppercase;
    /* Texte élargi : espacement des lettres plus généreux */
    letter-spacing: .16em;
}

/* Le conteneur des messages occupe toute la zone */
.sbp-banner-text {
    position: relative;
    display: block;
    width: 100%;
    height: 1.5em;
}

/* Chaque message est empilé au centre et masqué par défaut */
.sbp-item {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
    text-align: center;
    width: 100%;
    opacity: 0;
    transition: opacity .6s ease;
    pointer-events: none;
    /* Léger agrandissement pour un texte plus imposant */
    font-size: 1.12em;
}

/* Message actuellement affiché */
.sbp-item.is-active {
    opacity: 1;
    pointer-events: auto;
}

/* En mode fondu, les séparateurs générés par le plugin sont inutiles */
.sbp-separator {
    display: none !important;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
    .sbp-banner-content {
        font-size: 14px !important;
        padding: 10px !important;
        min-height: 40px;
        letter-spacing: .12em;
    }
    /* Sur mobile, le rouge s'étend un peu plus vers les bords pour rester lisible */
    .sbp-banner-container {
        background-image: linear-gradient(
            to right,
            rgba(224, 0, 15, 0) 0%,
            rgba(224, 0, 15, 1) 22%,
            rgba(224, 0, 15, 1) 78%,
            rgba(224, 0, 15, 0) 100%
        );
    }
}

@media (max-width: 480px) {
    .sbp-banner-content {
        font-size: 12px !important;
        padding: 8px !important;
        min-height: 35px;
        letter-spacing: .08em;
    }
    .sbp-banner-container {
        background-image: linear-gradient(
            to right,
            rgba(224, 0, 15, 0) 0%,
            rgba(224, 0, 15, 1) 15%,
            rgba(224, 0, 15, 1) 85%,
            rgba(224, 0, 15, 0) 100%
        );
    }
}

/* ===== ACCESSIBILITÉ ===== */
/* Respecte la préférence "réduire les animations" */
@media (prefers-reduced-motion: reduce) {
    .sbp-item {
        transition: none;
    }
}
