/*
 * ============================================================
 * BNI ANS EXCELLENCE - APPLICATION SHELL V1
 *
 * IMPORTANT :
 * - invisible dans un navigateur normal
 * - actif uniquement en mode PWA standalone
 * - aucun impact sur le backend
 * ============================================================
 */

.bni-app-bottom-nav {
    display: none !important;
}


/*
 * ------------------------------------------------------------
 * APPLICATION INSTALLEE
 * ------------------------------------------------------------
 */
@media (display-mode: standalone) and (max-width: 900px) {

    html {
        -webkit-tap-highlight-color: transparent;
    }

    body {
        padding-bottom:
            calc(
                82px
                + env(safe-area-inset-bottom, 0px)
            ) !important;
    }


    /*
     * Barre de navigation principale.
     */
    .bni-app-bottom-nav {
        position: fixed;

        left: 0;
        right: 0;
        bottom: 0;

        z-index: 2147483000;

        display: grid !important;

        grid-template-columns:
            repeat(5, minmax(0, 1fr));

        min-height: 68px;

        padding:
            7px
            6px
            calc(
                7px
                + env(safe-area-inset-bottom, 0px)
            );

        background:
            rgba(255, 255, 255, 0.97);

        border-top:
            1px solid
            rgba(15, 23, 42, 0.10);

        box-shadow:
            0 -10px 32px
            rgba(15, 23, 42, 0.10);

        -webkit-backdrop-filter:
            blur(18px);

        backdrop-filter:
            blur(18px);
    }


    /*
     * Bouton.
     */
    .bni-app-bottom-nav a {
        position: relative;

        display: flex;

        flex-direction: column;
        align-items: center;
        justify-content: center;

        gap: 3px;

        min-width: 0;
        min-height: 54px;

        padding: 5px 2px;

        color: #64748b;

        text-decoration: none !important;

        border-radius: 13px;

        font-family:
            Arial,
            Helvetica,
            sans-serif;

        font-size: 10px;
        font-weight: 700;

        line-height: 1.1;

        transition:
            background-color 0.18s ease,
            color 0.18s ease,
            transform 0.18s ease;
    }


    .bni-app-bottom-nav a:active {
        transform:
            scale(0.96);
    }


    /*
     * Icônes.
     */
    .bni-app-bottom-nav svg {
        display: block;

        width: 22px;
        height: 22px;

        fill: none;

        stroke: currentColor;
        stroke-width: 2;

        stroke-linecap: round;
        stroke-linejoin: round;
    }


    /*
     * Onglet actif.
     */
    .bni-app-bottom-nav a.is-active {
        color: #cf2030;

        background:
            rgba(207, 32, 48, 0.08);
    }


    .bni-app-bottom-nav a.is-active::before {
        content: "";

        position: absolute;

        top: 2px;

        width: 18px;
        height: 3px;

        border-radius: 999px;

        background: #cf2030;
    }


    /*
     * Libellé.
     */
    .bni-app-bottom-nav span {
        display: block;

        max-width: 100%;

        overflow: hidden;

        white-space: nowrap;

        text-overflow: ellipsis;
    }
}


/*
 * Très petits téléphones.
 */
@media (display-mode: standalone) and (max-width: 360px) {

    .bni-app-bottom-nav span {
        font-size: 9px;
    }

    .bni-app-bottom-nav svg {
        width: 20px;
        height: 20px;
    }
}


/*
 * ============================================================
 * BNI PWA APPLICATION POLISH V1
 *
 * Finitions visuelles uniquement.
 * Actives exclusivement dans l'application installée.
 * ============================================================
 */

@media (display-mode: standalone) and (max-width: 900px) {

    /*
     * --------------------------------------------------------
     * BASE APPLICATION
     * --------------------------------------------------------
     */

    html {
        min-height: 100%;

        scroll-padding-bottom:
            calc(
                100px
                + env(safe-area-inset-bottom, 0px)
            );

        background: #f4f5f7;
    }


    body {
        min-height: 100%;

        background:
            linear-gradient(
                180deg,
                #ffffff 0,
                #f7f7f8 180px,
                #f2f3f5 100%
            );

        overscroll-behavior-x: none;

        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }


    /*
     * --------------------------------------------------------
     * ZONES PRINCIPALES
     * --------------------------------------------------------
     */

    .home-shell {
        width: 100%;

        margin-left: auto;
        margin-right: auto;
    }


    /*
     * --------------------------------------------------------
     * HEADERS EXISTANTS
     *
     * On ne les remplace pas.
     * On améliore simplement leur aspect en mode app.
     * --------------------------------------------------------
     */

    .home-brand,
    .member-brand {
        position: relative;

        border-radius:
            0 0 24px 24px;

        box-shadow:
            0 10px 30px
            rgba(15, 23, 42, 0.08);
    }


    /*
     * Header liste membres.
     */
    .header {
        border-radius: 20px;

        box-shadow:
            0 8px 24px
            rgba(15, 23, 42, 0.07);
    }


    /*
     * --------------------------------------------------------
     * INTERACTIONS TACTILES
     * --------------------------------------------------------
     */

    button,
    input[type="submit"],
    input[type="button"],
    input[type="reset"],
    a.btn,
    .btn {
        min-height: 44px;
    }


    button,
    a,
    input,
    select,
    textarea {
        -webkit-tap-highlight-color:
            rgba(207, 32, 48, 0.08);
    }


    button,
    input,
    select,
    textarea {
        font-size: max(
            16px,
            1em
        );
    }


    /*
     * Evite le zoom automatique iPhone
     * dans les champs de formulaire.
     */
    input,
    select,
    textarea {
        touch-action: manipulation;
    }


    /*
     * --------------------------------------------------------
     * CARTES
     * --------------------------------------------------------
     */

    .profile-bottom {
        border-radius: 20px;

        box-shadow:
            0 8px 24px
            rgba(15, 23, 42, 0.06);
    }


    /*
     * --------------------------------------------------------
     * NAVIGATION APPLICATION
     * --------------------------------------------------------
     */

    .bni-app-bottom-nav {
        border-radius:
            20px 20px 0 0;

        border-top:
            1px solid
            rgba(15, 23, 42, 0.08);

        background:
            rgba(255, 255, 255, 0.96);

        box-shadow:
            0 -12px 35px
            rgba(15, 23, 42, 0.12);
    }


    .bni-app-bottom-nav a {
        isolation: isolate;
    }


    .bni-app-bottom-nav a::after {
        content: "";

        position: absolute;

        inset: 4px;

        z-index: -1;

        border-radius: 12px;

        background: transparent;

        transition:
            background-color 0.18s ease;
    }


    .bni-app-bottom-nav a:active::after {
        background:
            rgba(207, 32, 48, 0.07);
    }


    .bni-app-bottom-nav a.is-active {
        background: transparent;
    }


    .bni-app-bottom-nav a.is-active::after {
        background:
            rgba(207, 32, 48, 0.08);
    }


    /*
     * --------------------------------------------------------
     * SAFE AREA IPHONE / ANDROID
     * --------------------------------------------------------
     */

    @supports (
        padding:
        env(safe-area-inset-top)
    ) {

        body {
            padding-left:
                env(
                    safe-area-inset-left,
                    0px
                );

            padding-right:
                env(
                    safe-area-inset-right,
                    0px
                );
        }

    }


    /*
     * --------------------------------------------------------
     * SCROLL
     * --------------------------------------------------------
     */

    body {
        scrollbar-width: thin;
    }


    /*
     * Dernier contenu jamais caché
     * derrière la barre basse.
     */
    .home-footer,
    .member-footer,
    .profile-bottom {
        margin-bottom:
            calc(
                18px
                + env(
                    safe-area-inset-bottom,
                    0px
                )
            );
    }

}


/*
 * ------------------------------------------------------------
 * PETITS TELEPHONES
 * ------------------------------------------------------------
 */

@media (display-mode: standalone) and (max-width: 390px) {

    .home-brand,
    .member-brand {
        border-radius:
            0 0 20px 20px;
    }


    .bni-app-bottom-nav {
        padding-left: 3px;
        padding-right: 3px;
    }

}


/*
 * ------------------------------------------------------------
 * ACCESSIBILITE
 * ------------------------------------------------------------
 */

@media (
    display-mode: standalone
)
and (
    prefers-reduced-motion: reduce
) {

    .bni-app-bottom-nav a,
    .bni-app-bottom-nav a::after {
        transition: none;
    }

}

/* /BNI PWA APPLICATION POLISH V1 */


/*
 * ============================================================
 * BNI PWA ADMIN NAV STYLE V1
 * ============================================================
 */

@media (display-mode: standalone) and (max-width: 900px) {

    .bni-app-bottom-nav.has-admin {
        grid-template-columns:
            repeat(
                6,
                minmax(0, 1fr)
            );
    }


    .bni-app-bottom-nav
    .bni-app-nav-admin {
        color: #111827;
    }


    .bni-app-bottom-nav
    .bni-app-nav-admin:active {
        color: #cf2030;
    }


    .bni-app-bottom-nav.has-admin
    a {
        font-size: 9px;
    }


    .bni-app-bottom-nav.has-admin
    svg {
        width: 21px;
        height: 21px;
    }

}


@media (display-mode: standalone) and (max-width: 370px) {

    .bni-app-bottom-nav.has-admin
    span {
        font-size: 8px;
    }

}

/* /BNI PWA ADMIN NAV STYLE V1 */


/*
 * ============================================================
 * BNI PWA MOBILE APP DESIGN V2
 *
 * Refonte visuelle forte, mais CSS uniquement.
 * Active seulement dans l'application installée.
 * ============================================================
 */

@media (display-mode: standalone) and (max-width: 900px) {

    /*
     * --------------------------------------------------------
     * BASE GENERALE
     * --------------------------------------------------------
     */

    html {
        background: #eef1f4;
    }

    body {
        margin: 0 !important;

        background:
            linear-gradient(
                180deg,
                #f8f9fb 0,
                #eef1f4 100%
            ) !important;

        color: #1f2937;

        padding-bottom:
            calc(
                96px
                + env(safe-area-inset-bottom, 0px)
            ) !important;
    }


    /*
     * Conteneurs principaux façon application.
     */
    .home-shell,
    .member-shell,
    .container {
        width: 100% !important;
        max-width: 760px !important;

        margin: 0 auto !important;

        box-sizing: border-box;

        padding-left: 12px !important;
        padding-right: 12px !important;
    }


    /*
     * --------------------------------------------------------
     * HEADERS
     * --------------------------------------------------------
     */

    .home-brand,
    .member-brand,
    .directory-brand {
        position: relative;

        overflow: hidden;

        margin:
            0 -12px 16px !important;

        padding-top:
            max(
                12px,
                env(safe-area-inset-top, 0px)
            ) !important;

        border: 0 !important;

        border-radius:
            0 0 28px 28px !important;

        background:
            rgba(255, 255, 255, 0.98) !important;

        box-shadow:
            0 10px 35px
            rgba(15, 23, 42, 0.10) !important;
    }


    .home-brand::before,
    .member-brand::before,
    .directory-brand::before {
        content: "";

        position: absolute;

        top: 0;
        left: 0;
        right: 0;

        height: 5px;

        background:
            linear-gradient(
                90deg,
                #98152a,
                #cf2030,
                #e53a48
            );
    }


    /*
     * --------------------------------------------------------
     * BARRES DE LIENS MEMBRE
     * --------------------------------------------------------
     */

    .member-topbar {
        margin:
            0 0 14px !important;

        padding:
            8px !important;

        border: 1px solid
            rgba(15, 23, 42, 0.07);

        border-radius: 18px !important;

        background:
            rgba(255, 255, 255, 0.96) !important;

        box-shadow:
            0 7px 20px
            rgba(15, 23, 42, 0.06) !important;

        overflow-x: auto;

        scrollbar-width: none;
    }


    .member-topbar::-webkit-scrollbar {
        display: none;
    }


    .member-topbar-links {
        display: flex !important;

        gap: 7px !important;

        flex-wrap: nowrap !important;

        min-width: max-content;
    }


    .member-top-link {
        min-height: 40px !important;

        padding:
            9px 13px !important;

        border-radius:
            999px !important;

        background:
            #f4f5f7 !important;

        white-space: nowrap;
    }


    /*
     * --------------------------------------------------------
     * ACCUEIL
     * --------------------------------------------------------
     */

    .home-hero {
        position: relative;

        overflow: hidden;

        margin-bottom: 16px !important;

        padding:
            25px 20px !important;

        border: 0 !important;

        border-radius:
            26px !important;

        background:
            linear-gradient(
                135deg,
                #921226 0%,
                #b5122b 48%,
                #d72a3e 100%
            ) !important;

        color: #ffffff !important;

        box-shadow:
            0 16px 38px
            rgba(181, 18, 43, 0.22) !important;
    }


    .home-hero::after {
        content: "";

        position: absolute;

        width: 180px;
        height: 180px;

        right: -70px;
        top: -80px;

        border-radius: 50%;

        background:
            rgba(255, 255, 255, 0.08);

        pointer-events: none;
    }


    .home-hero h1,
    .home-hero h2,
    .home-hero p,
    .home-hero .home-kicker {
        color: #ffffff !important;
    }


    /*
     * Cartes accueil.
     */
    .home-card,
    .members-showcase,
    .member-photo-gallery {
        overflow: hidden;

        margin-bottom: 14px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.06) !important;

        border-radius:
            22px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 9px 26px
            rgba(15, 23, 42, 0.075) !important;
    }


    .home-card {
        padding:
            18px !important;

        transition:
            transform 0.18s ease,
            box-shadow 0.18s ease !important;
    }


    .home-card:active {
        transform:
            scale(0.985);

        box-shadow:
            0 5px 16px
            rgba(15, 23, 42, 0.08) !important;
    }


    .home-card-label,
    .members-showcase-kicker,
    .member-photo-gallery-kicker {
        letter-spacing:
            0.08em;

        text-transform:
            uppercase;
    }


    .member-photo-card,
    .member-logo-card {
        border-radius:
            18px !important;

        overflow: hidden;
    }


    /*
     * --------------------------------------------------------
     * MON ESPACE
     * --------------------------------------------------------
     */

    .member-profile {
        width: 100% !important;

        max-width: none !important;
    }


    .profile-hero {
        position: relative;

        margin-bottom:
            14px !important;

        padding:
            20px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.06) !important;

        border-radius:
            24px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 10px 28px
            rgba(15, 23, 42, 0.08) !important;
    }


    .profile-photo-wrap {
        transform:
            scale(0.96);

        transform-origin:
            center;
    }


    .profile-name {
        margin-top:
            3px !important;

        font-size:
            clamp(
                25px,
                7vw,
                34px
            ) !important;

        line-height:
            1.08 !important;
    }


    .profile-company {
        margin-top:
            6px !important;
    }


    .profile-section-title {
        margin:
            22px 4px 10px !important;

        font-size:
            17px !important;

        font-weight:
            800 !important;
    }


    .profile-grid {
        display: grid !important;

        grid-template-columns:
            1fr !important;

        gap:
            9px !important;
    }


    .profile-field {
        padding:
            14px 15px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.055) !important;

        border-radius:
            16px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 4px 14px
            rgba(15, 23, 42, 0.045) !important;
    }


    .profile-field-label {
        margin-bottom:
            5px !important;

        font-size:
            11px !important;

        font-weight:
            800 !important;

        letter-spacing:
            0.06em;

        text-transform:
            uppercase;

        color:
            #7b8491 !important;
    }


    .profile-field-value {
        font-size:
            15px !important;

        line-height:
            1.45 !important;
    }


    /*
     * Petit déjeuner.
     */
    .breakfast-module {
        margin-top:
            18px !important;

        padding:
            18px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.06) !important;

        border-radius:
            22px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 9px 26px
            rgba(15, 23, 42, 0.07) !important;
    }


    /*
     * Evénements membres.
     */
    .member-events-module {
        margin-top:
            18px !important;

        padding:
            17px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.06) !important;

        border-radius:
            22px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 9px 26px
            rgba(15, 23, 42, 0.07) !important;
    }


    .member-event-card {
        border-radius:
            17px !important;

        box-shadow:
            0 4px 14px
            rgba(15, 23, 42, 0.045) !important;
    }


    .member-event-answer {
        min-height:
            46px !important;

        border-radius:
            13px !important;
    }


    /*
     * --------------------------------------------------------
     * ANNUAIRE MEMBRES
     * --------------------------------------------------------
     */

    .header {
        margin:
            0 0 12px !important;

        padding:
            20px 18px !important;

        border:
            0 !important;

        border-radius:
            22px !important;

        background:
            linear-gradient(
                135deg,
                #98152a,
                #c51e32
            ) !important;

        color:
            #ffffff !important;

        box-shadow:
            0 13px 30px
            rgba(181, 18, 43, 0.20) !important;
    }


    .header h1,
    .header p {
        color:
            #ffffff !important;
    }


    .filter-box {
        margin-bottom:
            14px !important;

        padding:
            15px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.06) !important;

        border-radius:
            19px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 7px 20px
            rgba(15, 23, 42, 0.06) !important;
    }


    .filter-form input,
    .filter-form select {
        min-height:
            46px !important;

        border-radius:
            13px !important;
    }


    .search-btn,
    .reset-btn,
    .pdf-btn {
        min-height:
            46px !important;

        border-radius:
            13px !important;
    }


    .members-grid {
        display: grid !important;

        grid-template-columns:
            1fr !important;

        gap:
            14px !important;
    }


    .members-grid .card {
        overflow: hidden;

        border:
            1px solid
            rgba(15, 23, 42, 0.06) !important;

        border-radius:
            22px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 9px 25px
            rgba(15, 23, 42, 0.07) !important;
    }


    .members-grid .card .info {
        padding:
            15px !important;
    }


    .photo-frame,
    .logo-frame,
    .image-frame {
        overflow: hidden;

        border-radius:
            16px !important;
    }


    /*
     * --------------------------------------------------------
     * CONFERENCES
     * --------------------------------------------------------
     */

    .conf-form {
        width:
            100% !important;
    }


    .conf-calendar {
        display: grid !important;

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            ) !important;

        gap:
            10px !important;
    }


    .conf-date-card {
        min-height:
            142px;

        margin:
            0 !important;

        padding:
            13px !important;

        border-radius:
            18px !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.07) !important;

        background:
            #ffffff !important;

        box-shadow:
            0 5px 16px
            rgba(15, 23, 42, 0.055) !important;
    }


    .conf-date-card.is-available {
        border-color:
            rgba(33, 134, 78, 0.28) !important;

        background:
            linear-gradient(
                180deg,
                #ffffff,
                #f3fbf6
            ) !important;
    }


    .conf-date-card.is-unavailable {
        opacity:
            0.74;

        background:
            #f3f4f6 !important;

        box-shadow:
            none !important;
    }


    .conf-date-number {
        font-size:
            30px !important;

        line-height:
            1 !important;
    }


    .conf-fields {
        display:
            grid !important;

        grid-template-columns:
            1fr !important;

        gap:
            10px !important;
    }


    .conf-field {
        padding:
            15px !important;

        border-radius:
            17px !important;
    }


    .conf-field input,
    .conf-field textarea {
        width:
            100% !important;

        box-sizing:
            border-box;

        min-height:
            46px;

        border-radius:
            12px !important;
    }


    .conf-submit {
        width:
            100% !important;

        min-height:
            52px !important;

        border-radius:
            15px !important;

        font-size:
            15px !important;
    }


    /*
     * --------------------------------------------------------
     * FOOTERS
     * --------------------------------------------------------
     */

    .home-footer,
    .member-footer {
        margin-top:
            20px !important;

        padding:
            12px !important;

        opacity:
            0.52;

        font-size:
            11px !important;
    }


    .profile-bottom {
        margin-top:
            16px !important;

        padding:
            15px !important;

        border-radius:
            19px !important;

        background:
            #ffffff !important;

        box-shadow:
            0 7px 20px
            rgba(15, 23, 42, 0.055) !important;
    }


    /*
     * --------------------------------------------------------
     * BOUTONS
     * --------------------------------------------------------
     */

    .member-btn,
    .home-card-link,
    .edit-btn {
        border-radius:
            13px !important;
    }


    /*
     * --------------------------------------------------------
     * NAVIGATION BASSE
     * --------------------------------------------------------
     */

    .bni-app-bottom-nav {
        min-height:
            74px !important;

        padding-top:
            7px !important;

        background:
            rgba(255, 255, 255, 0.98) !important;

        border-radius:
            24px 24px 0 0 !important;

        box-shadow:
            0 -10px 35px
            rgba(15, 23, 42, 0.14) !important;
    }


    .bni-app-bottom-nav a {
        min-height:
            56px !important;

        border-radius:
            15px !important;
    }


    .bni-app-bottom-nav a.is-active {
        color:
            #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #b5122b,
                #d1263a
            ) !important;

        box-shadow:
            0 6px 15px
            rgba(181, 18, 43, 0.22);
    }


    .bni-app-bottom-nav
    a.is-active::before {
        display:
            none !important;
    }


    .bni-app-bottom-nav
    a.is-active::after {
        background:
            transparent !important;
    }

}


/*
 * ------------------------------------------------------------
 * TRES PETITS TELEPHONES
 * ------------------------------------------------------------
 */

@media (display-mode: standalone) and (max-width: 360px) {

    .conf-calendar {
        grid-template-columns:
            1fr !important;
    }


    .profile-hero {
        padding:
            16px !important;
    }


    .home-hero {
        padding:
            21px 17px !important;
    }


    .bni-app-bottom-nav {
        border-radius:
            20px 20px 0 0 !important;
    }

}


/*
 * ------------------------------------------------------------
 * MOUVEMENTS REDUITS
 * ------------------------------------------------------------
 */

@media (
    display-mode: standalone
)
and (
    prefers-reduced-motion: reduce
) {

    .home-card {
        transition:
            none !important;
    }

}

/* /BNI PWA MOBILE APP DESIGN V2 */


/*
 * ============================================================
 * BNI PWA MEMBER SPACE COLOR FIX V1
 *
 * Corrige les couleurs héritées de l'ancien design.
 * Uniquement sur Mon espace en mode application.
 * ============================================================
 */

@media (display-mode: standalone) and (max-width: 900px) {

    /*
     * IDENTITE MEMBRE
     */

    .bni-member-space-page
    .profile-hero {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .profile-name {
        color: #171717 !important;
    }

    .bni-member-space-page
    .profile-company {
        color: #374151 !important;
    }

    .bni-member-space-page
    .profile-sector {
        color: #5b6470 !important;
    }

    .bni-member-space-page
    .profile-eyebrow {
        color: #b5122b !important;
    }


    /*
     * INFORMATIONS DE LA FICHE
     */

    .bni-member-space-page
    .profile-section-title {
        color: #171717 !important;
    }

    .bni-member-space-page
    .profile-field {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .profile-field-label {
        color: #707985 !important;
    }

    .bni-member-space-page
    .profile-field-value {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .profile-field-value a {
        color: #a91229 !important;
        text-decoration: none;
    }

    .bni-member-space-page
    .profile-empty {
        color: #8a929d !important;
    }


    /*
     * BARRE DE LIENS SUPERIEURE
     */

    .bni-member-space-page
    .member-topbar-title {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .member-top-link {
        color: #343a43 !important;

        background:
            #f4f5f7 !important;
    }

    .bni-member-space-page
    .member-top-link:active {
        color: #b5122b !important;
    }


    /*
     * BOUTONS GENERAUX
     */

    .bni-member-space-page
    .member-btn {
        color: #252a31 !important;

        background:
            #ffffff !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.13) !important;

        box-shadow:
            0 3px 10px
            rgba(15, 23, 42, 0.06);
    }

    .bni-member-space-page
    .member-btn-primary {
        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #a91027,
                #cf2030
            ) !important;

        border-color:
            #b5122b !important;
    }

    .bni-member-space-page
    .member-btn-danger {
        color: #ffffff !important;

        background:
            #9f1239 !important;

        border-color:
            #9f1239 !important;
    }


    /*
     * PETIT DEJEUNER
     */

    .bni-member-space-page
    .breakfast-module {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .breakfast-eyebrow {
        color: #b5122b !important;
    }

    .bni-member-space-page
    .breakfast-label,
    .bni-member-space-page
    .breakfast-history-title,
    .bni-member-space-page
    .breakfast-qr-title {
        color: #4b5563 !important;
    }

    .bni-member-space-page
    .breakfast-value,
    .bni-member-space-page
    .breakfast-amount,
    .bni-member-space-page
    .breakfast-paid-title {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .breakfast-qr-note {
        color: #646d78 !important;
    }


    /*
     * EVENEMENTS MEMBRES
     */

    .bni-member-space-page
    .member-events-module {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .member-events-eyebrow {
        color: #b5122b !important;
    }

    .bni-member-space-page
    .member-event-card {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .member-event-description,
    .bni-member-space-page
    .member-event-meta,
    .bni-member-space-page
    .member-event-answer-title,
    .bni-member-space-page
    .member-event-current {
        color: #4b5563 !important;
    }


    /*
     * PIED DE FICHE
     */

    .bni-member-space-page
    .profile-bottom {
        color: #1f2937 !important;
    }

    .bni-member-space-page
    .profile-bottom-note {
        color: #59626e !important;
    }

}

/* /BNI PWA MEMBER SPACE COLOR FIX V1 */


/*
 * ============================================================
 * BNI PWA GLOBAL COLOR FIX V2
 *
 * Corrige les anciennes couleurs blanches héritées
 * dans les nouvelles cartes claires de la PWA.
 * ============================================================
 */

@media (display-mode: standalone) and (max-width: 900px) {

    /*
     * ========================================================
     * ACCUEIL
     * ========================================================
     */

    .home-card,
    .members-showcase,
    .member-photo-gallery {
        color: #1f2937 !important;
    }


    .home-card h1,
    .home-card h2,
    .home-card h3,
    .home-card strong,
    .members-showcase h1,
    .members-showcase h2,
    .members-showcase h3,
    .member-photo-gallery h1,
    .member-photo-gallery h2,
    .member-photo-gallery h3 {
        color: #171717 !important;
    }


    .home-card p,
    .home-card-description,
    .home-conference-member-name,
    .home-conference-company,
    .home-conference-sector,
    .event-meta,
    .event-meta-row {
        color: #4b5563 !important;
    }


    .home-card-label,
    .members-showcase-kicker,
    .member-photo-gallery-kicker {
        color: #b5122b !important;
    }


    .home-card-link,
    .members-showcase-link {
        color: #b5122b !important;
    }


    .member-photo-name,
    .member-logo-name {
        color: #1f2937 !important;
    }


    .member-photo-company,
    .member-photo-function {
        color: #5f6874 !important;
    }


    /*
     * Le hero rouge reste volontairement blanc.
     */
    .home-hero,
    .home-hero h1,
    .home-hero h2,
    .home-hero h3,
    .home-hero p,
    .home-hero .home-kicker {
        color: #ffffff !important;
    }


    /*
     * ========================================================
     * ANNUAIRE MEMBRES
     * ========================================================
     */

    .filter-box,
    .members-grid .card,
    .members-grid .card .info {
        color: #1f2937 !important;
    }


    .filter-title,
    .members-grid .card .name,
    .members-grid .card strong {
        color: #171717 !important;
    }


    .members-grid .card .societe {
        color: #374151 !important;
    }


    .members-grid .card .label,
    .members-grid .card .member-bni-role {
        color: #6b7280 !important;
    }


    .members-grid .card .links,
    .members-grid .card .links a,
    .members-grid .card a {
        color: #a91229 !important;
    }


    .filter-box label,
    .filter-box p,
    .counter {
        color: #4b5563 !important;
    }


    .filter-box input,
    .filter-box select {
        color: #1f2937 !important;

        background: #ffffff !important;
    }


    .search-btn {
        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #a91027,
                #cf2030
            ) !important;
    }


    .reset-btn,
    .pdf-btn {
        color: #1f2937 !important;

        background: #ffffff !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.13) !important;
    }


    /*
     * Header rouge annuaire reste blanc.
     */
    .header,
    .header h1,
    .header h2,
    .header p {
        color: #ffffff !important;
    }


    /*
     * ========================================================
     * CONFERENCES
     * ========================================================
     */

    .conf-form,
    .member-events-module,
    .conf-date-card,
    .conf-field,
    .profile-bottom {
        color: #1f2937 !important;
    }


    .conf-date-weekday,
    .conf-date-month,
    .conf-date-year {
        color: #5f6874 !important;
    }


    .conf-date-number {
        color: #171717 !important;
    }


    .conf-selected-date,
    .conf-submit-note,
    .member-events-head,
    .member-event-description,
    .member-event-meta {
        color: #4b5563 !important;
    }


    .member-events-eyebrow {
        color: #b5122b !important;
    }


    .conf-field label {
        color: #374151 !important;
    }


    .conf-field input,
    .conf-field textarea,
    .conf-field select {
        color: #1f2937 !important;

        background: #ffffff !important;
    }


    .conf-submit,
    .member-btn-primary {
        color: #ffffff !important;

        background:
            linear-gradient(
                135deg,
                #a91027,
                #cf2030
            ) !important;
    }


    .conf-date-status.available,
    .member-event-answer.yes {
        color: #166534 !important;

        background: #dcfce7 !important;
    }


    .conf-date-status.unavailable {
        color: #6b7280 !important;
    }


    .conf-date-status.mine {
        color: #991b1b !important;

        background: #fee2e2 !important;
    }


    /*
     * ========================================================
     * MON ESPACE
     * ========================================================
     */

    .profile-hero,
    .profile-grid,
    .profile-field,
    .breakfast-module,
    .member-events-module,
    .profile-bottom {
        color: #1f2937 !important;
    }


    .profile-name,
    .profile-field-value,
    .breakfast-value,
    .breakfast-amount {
        color: #171717 !important;
    }


    .profile-company,
    .profile-sector,
    .profile-bottom-note {
        color: #4b5563 !important;
    }


    .profile-eyebrow,
    .breakfast-eyebrow,
    .member-events-eyebrow {
        color: #b5122b !important;
    }


    /*
     * ========================================================
     * NAVIGATION HAUTE MEMBRE
     * ========================================================
     */

    .member-topbar {
        color: #1f2937 !important;
    }


    .member-topbar-title {
        color: #171717 !important;
    }


    .member-top-link {
        color: #303640 !important;

        background: #f4f5f7 !important;
    }


    /*
     * ========================================================
     * BOUTONS GENERIQUES
     * ========================================================
     */

    .member-btn:not(.member-btn-primary):not(.member-btn-danger) {
        color: #1f2937 !important;

        background: #ffffff !important;

        border:
            1px solid
            rgba(15, 23, 42, 0.13) !important;
    }


    .member-btn-primary {
        color: #ffffff !important;
    }


    .member-btn-danger {
        color: #ffffff !important;

        background: #9f1239 !important;
    }


    /*
     * ========================================================
     * LIENS SUR FOND BLANC
     * ========================================================
     */

    .profile-field a,
    .breakfast-module a,
    .member-events-module a,
    .members-grid a,
    .home-card a {
        color: #a91229 !important;
    }


    /*
     * ========================================================
     * BARRE BASSE
     * ========================================================
     */

    .bni-app-bottom-nav a {
        color: #66707c !important;
    }


    .bni-app-bottom-nav a.is-active {
        color: #ffffff !important;
    }

}

/* /BNI PWA GLOBAL COLOR FIX V2 */
