/* ==========================================================================
   Impriclub — surcharges du design Woffice 5 (« Stellar »)
   Chargé après style.css. Objectif : retrouver le rendu du site historique
   (header centré, menu latéral replié, charte violette) sur le nouveau DOM.
   ========================================================================== */

:root {
    --impri-violet: #5B2C82;
    --impri-violet-dark: #4a2369;
    --impri-headline: #31348e;
    --impri-text: #555;
}

/* --------------------------------------------------------------------------
   Barre haute (woffice_top_navbar) : hamburger | logo centré | recherche, cloche, utilisateur
   -------------------------------------------------------------------------- */
#main-header .navbar-collapse {
    position: relative;
    min-height: 90px;
}

/* Logo centré (lien injecté par assets/custom.js, image en fond pour l'afficher sans JS) */
#main-header .impriclub-header-logo {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 210px;
    height: 60px;
    background: url("../../../../uploads/2023/02/02_Logo_Horizontal_Couleurs_Impriclub.png") center / contain no-repeat;
    z-index: 5;
}
#main-header .impriclub-header-logo img {
    display: none;
}

/* Bloc utilisateur : "Bonjour, Prénom Nom" + avatar (comme le site historique), sans e-mail */
#main-header .sidebar-userinfo,
#main-header .sidebar-userinfo_row,
#main-header .sidebar-userinfo .user-infodetail {
    width: auto !important;
    max-width: none !important;
}
#main-header .sidebar-userinfo .user-infodetail {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-direction: row-reverse;
}
#main-header .sidebar-userinfo figcaption {
    display: flex;
    align-items: center;
    gap: .5rem;
    position: static;
}
#main-header .sidebar-userinfo .user-name {
    max-width: none !important;
    width: auto;
    white-space: nowrap;
    font-size: 15px;
    font-weight: 600;
    text-transform: none;
    margin: 0;
}
#main-header .sidebar-userinfo .user-name::before {
    content: "Bonjour, ";
    font-weight: 400;
    color: var(--impri-text);
}
#main-header .sidebar-userinfo .user-email {
    display: none;
}
#main-header .sidebar-userinfo #user-thumb {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
}
#main-header .sidebar-userinfo #user-thumb img {
    width: 44px;
    height: 44px;
    border-radius: 50%;
}
#main-header .sidebar-userinfo .user-profile-trigger {
    position: static;
    margin-left: .25rem;
}

/* Recherche : à droite, juste avant la cloche (et non centrée sous le logo) */
#main-header .navbar-collapse > #main-search {
    margin-left: auto;
    margin-right: 1.25rem;
}
#main-header .navbar-collapse > ul.ml-auto {
    margin-left: auto !important;
}
#main-header #main-search input[type="text"] {
    max-width: 200px;
}
@media (max-width: 991px) {
    #main-header .sidebar-userinfo .user-name { display: none; }
}

/* --------------------------------------------------------------------------
   Typographie & contenu
   -------------------------------------------------------------------------- */
/* Woffice 5 coupe les titres au milieu des mots (word-break: break-all) */
#page-wrapper h1, #page-wrapper h2, #page-wrapper h3,
#page-wrapper h4, #page-wrapper h5, #page-wrapper h6,
#content-container .post .heading {
    word-break: normal;
    overflow-wrap: anywhere;
    hyphens: manual;
}

/* Woffice 5 met le contenu des articles en "Capitalize" : illisible en français */
#content-container #content .blog-content p,
#content-container #content .blog-content li,
#content-container #content .blog-content dl,
#content-container #content .blog-content table,
.wo_common_comment_wrapper .comment-content p {
    text-transform: none !important;
    color: #444 !important;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.7;
}
#content-container #content .blog-content a {
    color: var(--impri-violet);
}

/* Image à la une d'un article : flottante à droite du texte (30 %), comme le site historique */
.single-post .blog-content .intern-thumbnail {
    float: right;
    width: 30%;
    height: auto !important;
    margin: 0 0 2.5rem 2.5rem;
    border-radius: 8px;
    overflow: hidden;
}
.single-post .blog-content .intern-thumbnail img {
    width: 100%;
    height: auto;
}
.single-post .blog-content::after { content: ""; display: table; clear: both; }
/* Texte de l'article : 16 px / 24 px, #666, gras respecté */
#content-container #content .blog-content p,
#content-container #content .blog-content li {
    font-size: 16px;
    line-height: 24px;
}
#content-container #content .blog-content strong,
#content-container #content .blog-content b { font-weight: 700; color: #353535; }
/* Meta de l'article au-dessus du texte, à gauche */
.single-post .blog-title { flex-direction: column; }
.single-post .post-metadatas { padding-left: 0; }

/* --------------------------------------------------------------------------
   Widgets du tableau de bord
   -------------------------------------------------------------------------- */
#dashboard ul,
#dashboard li,
.widget ul,
.widget li {
    list-style: none;
}
#dashboard div[id^='rpwwt-recent-posts-widget-with-thumbnails-'] > ul {
    padding-left: 0;
}
#dashboard .intern-box.box-title h3,
#dashboard .widget-title {
    color: var(--impri-violet);
}

/* --------------------------------------------------------------------------
   GeoDirectory (cartographie / recherche)
   -------------------------------------------------------------------------- */
/* Champ "Address" (near) apporté par Location Manager 2.3 : non utilisé */
.geodir-search .gd-search-field-near,
.geodir-search .geodir-search-input-wrapper.near,
.geodir-search input[name="snear"] {
    display: none !important;
}
.geodir-search .geodir_submit_search {
    white-space: nowrap;
    min-width: 110px;
    overflow: visible;
}

/* --------------------------------------------------------------------------
   Annuaire des membres (tableau)
   -------------------------------------------------------------------------- */
#members-list .bp-members-table-raison img,
.bp-members-table-raison img {
    max-height: 40px;
    width: auto;
    display: block;
    margin: 0 auto .25rem;
}


/* Mobile (LIVE : barre 100 px, logo 110×32 à gauche après le hamburger, avatar 50 px, loupe et cloche 18 px à droite) */
@media (max-width: 991px) {
    #main-header,
    #main-header nav.navbar { height: 100px !important; min-height: 0; padding: 0 !important; }
    #main-header .navbar-collapse { height: 100px; padding: 0 !important; margin: 0 !important; width: 100%; }
    #main-header #nav-trigger { padding: 0 12px 0 16px; }
    #main-header .impriclub-header-logo {
        position: static;
        transform: none;
        width: 110px;
        height: 32px;
        margin: 0 auto 0 0;
        flex: 0 0 110px;
    }
    #main-header #nav-trigger { order: 0; }
    #main-header .impriclub-header-logo { order: 1; }
    #main-header .navbar-collapse > #main-search { order: 2; }
    #main-header .navbar-collapse > ul.ml-auto,
    #main-header .navbar-collapse > #nav-buttons { order: 3; margin-left: auto !important; }
    #main-header #nav-buttons .sidebar-userinfo { margin-right: 4px; }
    #main-header .sidebar-userinfo #user-thumb,
    #main-header .sidebar-userinfo #user-thumb img { width: 40px; height: 40px; flex-basis: 40px; }
    #main-header #main-search,
    #main-header #main-search .active_search,
    #main-header #main-search .active_search::after { width: 40px; }
    #main-header #main-search .active_search::after,
    #main-header #nav-notification-trigger { font-size: 18px; }
    #main-header #main-search form { right: -40px; width: calc(100vw - 32px); }
}

/* bbPress : la recherche des forums chevauchait le bas du bandeau de titre */
#content-container #bbp-search-form,
#content-container .bbp-search-form {
    position: static;
    margin: 1.25rem auto 1rem;
    max-width: 560px;
}



/* ==========================================================================
   RAIL DE NAVIGATION (menu latéral) — reproduction du site historique
   Valeurs relevées sur le LIVE : rail fixe 100 px, fond #384141, items 100×100,
   icône icomoon 48 px au-dessus d'un libellé 12 px bold capitales, actif = #5B2C82.
   Woffice 5 : #navigation dans .is-left-sidebar (absolute/fixed), menu = ul#main-modern-menu.
   ========================================================================== */
:root {
    --impri-rail-w: 100px;
    --impri-rail-bg: #384141;
}

/* Largeur de la colonne et décalage du contenu quand le menu est ouvert */
body.vertical-modern-menu:not(.navigation-hidden):not(.sidebar-hidden) .is-left-sidebar,
body.vertical-modern-menu.sidebar-hidden .is-left-sidebar,
body.vertical-modern-menu .is-left-sidebar {
    width: var(--impri-rail-w) !important;
    max-width: var(--impri-rail-w) !important;
    box-shadow: 0 1rem 4rem rgba(0, 0, 0, .15);
    overflow: visible;
}
body.vertical-modern-menu:not(.navigation-hidden):not(.sidebar-hidden) .is-center-content,
body.vertical-modern-menu #page-wrapper .is-left-sidebar ~ .is-center-content {
    padding-left: var(--impri-rail-w) !important;
}
body.vertical-modern-menu #page-wrapper .is-left-sidebar.has-navigation-hidden ~ .is-center-content {
    padding-left: 0 !important;
}
body.vertical-modern-menu .has-navigation-hidden {
    left: calc(-1 * var(--impri-rail-w) - 80px);
}

#navigation,
body.vertical-modern-menu .is-left-sidebar {
    background: var(--impri-rail-bg) !important;
    width: var(--impri-rail-w) !important;
    min-height: 100vh;
}
/* Pas de logo ni de bouton de fermeture dans la rail (le logo est dans la barre haute) */
#navigation .stellar-nav-logo,
#navigation .main-modern-menu .click_menutoggle,
#navigation .main-modern-menu .menu-icon,
#navigation .main-modern-menu .woffice-menu-item-icon {
    display: none !important;
}
#navigation .mCSB_container,
#navigation .mCustomScrollBox {
    overflow: visible !important;
}

body.vertical-modern-menu #main-modern-menu,
body.vertical-modern-menu .main-modern-menu {
    padding: 0 0 80px !important;
    margin: 0;
    width: var(--impri-rail-w);
}
body.vertical-modern-menu .main-modern-menu > li.menu-item {
    margin: 0;
    width: var(--impri-rail-w);
    height: 100px;
    line-height: 0;
    position: relative;
}
body.vertical-modern-menu .main-modern-menu > li.menu-item > a {
    display: block;
    position: relative;
    overflow: hidden;
    height: 100px;
    width: var(--impri-rail-w);
    padding: 64px 4px 23px !important;
    border-radius: 0;
    text-align: center;
    font-family: Montserrat, helvetica, arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 700;
    line-height: 12px;
    text-transform: uppercase;
    color: #fff !important;
    background: transparent;
    transition: background .3s;
}
/* Icône icomoon (glyphes définis par classe .icon-* dans style.css) */
body.vertical-modern-menu .main-modern-menu > li.menu-item > a::before {
    font-family: 'icomoon' !important;
    font-weight: 400;
    font-size: 48px;
    line-height: 1;
    position: absolute;
    top: 10px;
    left: 0;
    width: 100%;
    margin: 0;
    color: #efefef !important;
    opacity: .8;
    transition: opacity .3s;
}
body.vertical-modern-menu .main-modern-menu > li.menu-item > a:hover,
body.vertical-modern-menu .main-modern-menu > li.current-menu-item > a,
body.vertical-modern-menu .main-modern-menu > li.current_page_item > a,
body.vertical-modern-menu .main-modern-menu > li.current-menu-ancestor > a,
body.vertical-modern-menu .main-modern-menu > li.current_page_ancestor > a,
body.vertical-modern-menu .main-modern-menu > li.current-menu-parent > a,
body.vertical-modern-menu .main-modern-menu > li.menu-item > a.current-menu-highlight {
    background: var(--impri-violet) !important;
    color: #fff !important;
}
body.vertical-modern-menu .main-modern-menu > li.menu-item > a:hover::before,
body.vertical-modern-menu .main-modern-menu > li.current-menu-item > a::before {
    opacity: 1;
}
/* Glyphes icomoon par entrée (classes CSS des éléments de menu, cf. style.css) */
body.vertical-modern-menu .main-modern-menu > li.icon-dashboard  > a::before { content: '\e90e'; }
body.vertical-modern-menu .main-modern-menu > li.icon-actualites > a::before { content: '\e90d'; }
body.vertical-modern-menu .main-modern-menu > li.icon-forum      > a::before { content: '\e90c'; }
body.vertical-modern-menu .main-modern-menu > li.icon-stats      > a::before { content: '\e90a'; }
body.vertical-modern-menu .main-modern-menu > li.icon-agenda     > a::before { content: '\e908'; }
body.vertical-modern-menu .main-modern-menu > li.icon-reseau     > a::before { content: '\e907'; }
body.vertical-modern-menu .main-modern-menu > li.icon-entreprise > a::before { content: '\e90b'; }
body.vertical-modern-menu .main-modern-menu > li.icon-ressources > a::before { content: url(/wp-content/uploads/2022/03/Ressources-2.svg) !important; }
body.vertical-modern-menu .main-modern-menu > li.icon-thetis     > a::before { content: url(/wp-content/uploads/2023/02/icone-thetis.svg); }
body.vertical-modern-menu .main-modern-menu > li.icon-commandes  > a::before { content: url(/wp-content/uploads/2023/02/cart-resize.png); }

/* Impridata / Commandes / Ressources : icônes image */
body.vertical-modern-menu .main-modern-menu > li.icon-thetis > a::before,
body.vertical-modern-menu .main-modern-menu > li.icon-commandes > a::before,
body.vertical-modern-menu .main-modern-menu > li.icon-ressources > a::before {
    left: 50%;
    width: 48px;
    margin-left: -24px;
    line-height: 0;
}
body.vertical-modern-menu .main-modern-menu > li > a[title='menu-commandes'] {
    background: #8207D4 !important;
}

/* Sous-menus : panneau à droite de la rail, au survol */
body.vertical-modern-menu .main-modern-menu > li.menu-item > ul.sub-menu {
    display: none;
    position: absolute;
    left: var(--impri-rail-w);
    top: 0;
    width: 220px;
    margin: 0;
    padding: 0;
    border-radius: 0;
    background: var(--impri-rail-bg);
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, .25);
    z-index: 30;
}
body.vertical-modern-menu .main-modern-menu > li.menu-item:hover > ul.sub-menu {
    display: block;
}
body.vertical-modern-menu .main-modern-menu ul.sub-menu li.menu-item {
    margin: 0;
    width: 100%;
    line-height: 0;
}
body.vertical-modern-menu .main-modern-menu ul.sub-menu li.menu-item > a {
    display: block;
    width: 100%;
    padding: 18px 16px !important;
    border-radius: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    text-align: left;
    font-family: Montserrat, helvetica, arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 700;
    line-height: 12px;
    text-transform: uppercase;
    color: #fff !important;
    background: transparent;
}
body.vertical-modern-menu .main-modern-menu ul.sub-menu li.menu-item > a::before {
    content: none !important;
}
body.vertical-modern-menu .main-modern-menu ul.sub-menu li.menu-item > a:hover,
body.vertical-modern-menu .main-modern-menu ul.sub-menu li.current-menu-item > a {
    background: var(--impri-violet) !important;
}

/* Mobile (LIVE) : le menu s'ouvre sous la barre haute, pleine largeur, fond #384141,
   un item par ligne (100 px de haut, icône centrée au-dessus du libellé) */
@media (max-width: 991px) {
    body.vertical-modern-menu:not(.navigation-hidden):not(.sidebar-hidden) .is-left-sidebar,
    body.vertical-modern-menu.sidebar-hidden .is-left-sidebar,
    body.vertical-modern-menu .is-left-sidebar,
    body.vertical-modern-menu #navigation,
    body.vertical-modern-menu .main-modern-menu {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0;
    }
    body.vertical-modern-menu .is-left-sidebar {
        top: 100px !important;
        height: calc(100% - 100px) !important;
        overflow-y: auto !important;
        box-shadow: none;
    }
    body.admin-bar.vertical-modern-menu .is-left-sidebar {
        top: 146px !important;
        height: calc(100% - 146px) !important;
    }
    body.vertical-modern-menu .has-navigation-hidden { left: -100% !important; }
    body.vertical-modern-menu .main-modern-menu {
        display: block;
        padding-bottom: 60px;
    }
    body.vertical-modern-menu .main-modern-menu > li.menu-item,
    body.vertical-modern-menu .main-modern-menu > li.menu-item > a {
        width: 100% !important;
    }
    body.vertical-modern-menu .main-modern-menu > li.menu-item { height: auto; }
    body.vertical-modern-menu .main-modern-menu > li.menu-item > a {
        height: 100px;
        padding: 64px 4px 23px !important;
        text-align: center;
        font-size: 12px;
    }
    body.vertical-modern-menu .main-modern-menu > li.menu-item > a::before {
        left: 0;
        right: 0;
        margin: 0 auto;
    }
    /* Sous-menus repliés, dépliés par le caret (JS parent : slideToggle) — comme le LIVE */
    body.vertical-modern-menu .main-modern-menu > li.menu-item > ul.sub-menu {
        position: static !important;
        width: 100% !important;
        display: none;
        box-shadow: none;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        background: #2d3434 !important;
    }
    body.vertical-modern-menu .main-modern-menu > li.menu-item:hover > ul.sub-menu { display: none; }
    body.vertical-modern-menu #navigation .main-modern-menu > li.menu-item.menu-item-has-children > .click_menutoggle {
        display: block !important;
        position: absolute;
        right: 0;
        top: 0;
        width: 60px;
        height: 100px;
        z-index: 2;
        cursor: pointer;
    }
    body.vertical-modern-menu #navigation .main-modern-menu > li.menu-item.menu-item-has-children > .click_menutoggle::after {
        content: "\f0d7";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        color: #fff !important;
        font-size: 18px;
        line-height: 100px;
        display: block;
        text-align: center;
    }
    body.vertical-modern-menu #navigation .main-modern-menu > li.menu-item.menu-item-has-children > .click_menutoggle.caret-up::after { content: "\f0d8"; }
    body.vertical-modern-menu .main-modern-menu > li.menu-item { border-bottom: 1px solid rgba(255, 255, 255, .08); }
    body.vertical-modern-menu .is-left-sidebar { z-index: 1050 !important; }
    body.vertical-modern-menu .main-modern-menu > li.menu-item > ul.sub-menu li a {
        text-align: center;
    }
    body.vertical-modern-menu:not(.navigation-hidden):not(.sidebar-hidden) .is-center-content,
    body.vertical-modern-menu #page-wrapper .is-left-sidebar ~ .is-center-content {
        padding-left: 0 !important;
    }
    body.vertical-modern-menu:not(.navigation-hidden) #main-header { left: 0; width: 100%; }
}

/* ==========================================================================
   BARRE HAUTE — reproduction du LIVE : 100 px, blanc, flèche/hamburger à gauche,
   logo centré, puis "Bonjour, Nom" + avatar, loupe, cloche
   ========================================================================== */
#main-header .navbar-collapse {
    min-height: 100px;
    padding: 0;
}
#main-header #nav-trigger,
#main-header #nav-buttons a,
#main-header #nav-notification-trigger {
    color: #666 !important;
}
#main-header #nav-trigger {
    padding: 0 38px;
    font-size: 25px;
}
#main-header .impriclub-header-logo {
    width: 300px;
    height: 64px;
}
/* Ordre à droite : utilisateur, loupe, cloche (la loupe est déplacée par custom.js) */
#main-header #nav-buttons {
    display: flex;
    align-items: center;
    gap: 0;
}
#main-header #nav-buttons .sidebar-userinfo { order: 1; margin-right: 15px; }
#main-header #nav-buttons #main-search       { order: 2; margin: 0 !important; }
#main-header #nav-buttons #nav-notification-trigger { order: 3; }
#main-header #nav-buttons #woffice-notifications-menu { order: 4; }

/* Loupe : icône seule, le champ s'ouvre au clic (JS Woffice .active_search) */
#main-header #main-search {
    position: relative;
    width: 62px;
    height: 100px;
}
#main-header #main-search .active_search {
    display: block;
    position: static;
    width: 62px;
    height: 100px;
    cursor: pointer;
}
#main-header #main-search .active_search::after {
    content: "\f002";
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900;
    font-size: 25px;
    color: #666;
    position: static;
    width: 62px;
    height: 100px;
    line-height: 100px;
    background: transparent;
    display: block;
    text-align: center;
    border-radius: 0;
}
#main-header #main-search.active_form .active_search.active_search_close::after {
    content: "×";
    font-family: Montserrat, helvetica, arial, sans-serif !important;
    font-size: 30px;
}
#main-header #main-search form {
    display: none;
    position: absolute;
    right: 0;
    top: 100px;
    width: 320px;
    padding: 12px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
    z-index: 40;
}
#main-header #main-search.active_form form {
    display: block;
}
#main-header #main-search input[type="text"] {
    max-width: none;
    width: 100%;
}
#main-header #main-search .wo-search-icon { display: none; }

/* "Bonjour, Cyrille Cojan" + avatar 40 px (comme le LIVE) */
#main-header .sidebar-userinfo .user-name,
#main-header .sidebar-userinfo .user-name::before {
    font-family: Montserrat, helvetica, arial, sans-serif;
    font-size: 16px;
    color: #384141;
}
#main-header .sidebar-userinfo .user-name::before { font-weight: 300; }
#main-header .sidebar-userinfo .user-name { font-weight: 700; }
#main-header .sidebar-userinfo #user-thumb,
#main-header .sidebar-userinfo #user-thumb img { width: 42px; height: 42px; flex-basis: 42px; }
#main-header .sidebar-userinfo .user-profile-trigger { display: none; }
#main-header .sidebar-userinfo #user-thumb { margin-left: 10px; }

/* ==========================================================================
   TABLEAU DE BORD — widgets comme le LIVE
   ========================================================================== */
#dashboard .widget.box {
    background: #fff !important;
    border-radius: 12px !important;
    border-top: 12px solid var(--impri-violet) !important;
    box-shadow: 0 6px 9px 0 rgba(57, 30, 85, .2) !important;
    padding: 15px 16px !important;
}
#dashboard .widget.box .intern-box.box-title {
    padding: 15px 0 22px;
    margin: -15px -16px 20px;
    text-align: center;
    border-bottom: 1px solid #dfdfe7;
}
#page-wrapper #dashboard .widget.box .intern-box.box-title h3,
#page-wrapper #dashboard .widget .box-title h3,
#page-wrapper #dashboard .widget.box h3.widget-title {
    font-family: Montserrat, helvetica, arial, sans-serif !important;
    font-size: 18.72px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    color: var(--impri-violet) !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Widget calendrier : pas de bouton "Créer un événement" dans le tableau de bord (comme le LIVE) */
#dashboard .widget.box .woffice-calendar-main > a.btn,
#dashboard .widget.box .woffice-calendar > a.btn,
#dashboard .widget.box a.btn.btn-primary:has(.fa-calendar) {
    display: none;
}
/* Forums : liste sobre, capitales espacées */
#dashboard .bbp-forums-widget li,
#dashboard .widget_display_forums li {
    background: transparent;
    padding: 6px 0;
    margin: 0;
    box-shadow: none;
    border-radius: 0;
}
#dashboard .bbp-forum-title {
    font-family: Montserrat, helvetica, arial, sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #666;
    line-height: 24px;
}
#dashboard .bbp-forum-title::before {
    content: '\f07b';
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    color: var(--impri-violet);
    margin-right: 10px;
}
/* Boutons "Tous les articles / forums" : contour violet arrondi */
#dashboard .widget.box a.btn,
#dashboard .widget.box .btn-default,
#dashboard .all-posts-dashboard-link-wrapper a {
    display: inline-block;
    border: 2px solid var(--impri-violet);
    border-radius: 20px;
    padding: 6px 16px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: var(--impri-violet);
    background: transparent;
}
/* Polices : Montserrat partout, texte #666 */
body, #page-wrapper, #content-container {
    font-family: Montserrat, helvetica, arial, sans-serif;
    color: #666;
}
#page-wrapper h1, #page-wrapper h2, #page-wrapper h3, #page-wrapper h4, #page-wrapper h5, #page-wrapper h6 {
    font-family: Montserrat, helvetica, arial, sans-serif;
}
/* Bandeau de titre : 290 px, image charte alignée en haut à gauche, titre 60 px */
#featuredbox {
    min-height: 290px;
    background-position: left top !important;
}
#featuredbox .pagetitle h1 {
    font-size: 60px;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
}
#content-container {
    background: #efefef;
}

/* Barre haute : 100 px pile (le parent ajoute 43 px de padding) */
#main-header {
    padding: 0 !important;
}
#main-header .navbar {
    padding: 0 !important;
    min-height: 100px;
    background: #fff;
}
/* Widget actualités : icône commentaire devant le compteur */
#dashboard div[id^='rpwwt-recent-posts-widget-with-thumbnails-'] > ul > li > .rpwwt-post-comments-number::before {
    content: "\f27a" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 400 !important;
}
#dashboard div[id^='rpwwt-recent-posts-widget-with-thumbnails-'] > ul > li > .rpwwt-post-author,
#dashboard div[id^='rpwwt-recent-posts-widget-with-thumbnails-'] > ul > li > .rpwwt-post-date,
#dashboard div[id^='rpwwt-recent-posts-widget-with-thumbnails-'] > ul > li > .rpwwt-post-comments-number {
    line-height: 15px;
}

/* ==========================================================================
   CONTENU — gabarit général du LIVE : #content en 1296 px centré (marges 72 px),
   remonté de 50 px sur le bandeau
   ========================================================================== */
#left-content #content-container #content {
    margin: 0 72px !important;
    padding: 0 0 1px !important;
    position: relative;
    top: -50px;
    width: auto;
    background: transparent;
    /* LIVE : #content transparent partout ; seuls .single-post et .archive.category (style.css) en font
       une carte blanche 48 px à liseré violet. Les autres pages ont une carte article.box.content. */
}
#left-content #content-container {
    padding-bottom: 0;
}
/* Carte de contenu du LIVE : article.box.content blanche, angles 5 px, ombre, intérieur 30/40 px */
#content-container #content > article.box.content,
#content-container #content > article.content.entry-content,
#content-container #content > .box.content,
#content-container #content > .page > .box.content,
#content-container #content > article.page.box.entry-content {
    background: #fff;
    border-radius: 5px;
    box-shadow: 0 6.4px 32px rgba(0, 0, 0, .08);
    padding: 0;
    border-top: 0;
}
#content-container #content > article.box.content > .intern-padding,
#content-container #content > article.content.entry-content > .intern-padding,
#content-container #content > .box.content > .intern-padding,
#content-container #content > article.page.box.entry-content > .intern-padding { padding: 30px 40px !important; }
/* Cartographie (LIVE, style.css) : liseré 1rem violet, angles 1rem */
body.page-template-template-mapsearch #content-container #content > article.content.entry-content,
body.page-template-template-mapsearch #content-container #content > article.box.content { border-top: 1rem solid var(--impri-violet); border-radius: 1rem; overflow: hidden; }
@media (max-width: 991px) {
    #left-content #content-container #content { margin: 0 10px !important; }
    #content-container #content > article.box.content > .intern-padding,
    #content-container #content > article.content.entry-content > .intern-padding,
    #content-container #content > .box.content > .intern-padding { padding: 20px 16px !important; }
}

/* Actualités (liste masonry) : cartes comme le LIVE */
#content-container .masonry-layout .box.blog-item {
    background: #efefef !important;
    border-radius: 5px !important;
    padding: 0 !important;
    box-shadow: none !important;
}
#content-container .masonry-layout .box.blog-item .intern-padding {
    padding: 20px;
}
#content-container .masonry-layout .box .box-title h3 {
    font-weight: 600 !important;
    line-height: 1.2 !important;
}
#content-container .masonry-layout .box.blog-item .intern-padding p,
#content-container .masonry-layout .box.blog-item .masonry_para {
    font-size: 14px !important;
    line-height: 16px !important;
    color: #666 !important;
}
/* Filtre "Archives" : bloc sobre sans carte (comme le LIVE), bouton "Nouvel article" à droite */
#content-container #blog-filter-wrapper .blog_filter_wrapper.widget.box {
    width: 28%;
    float: left;
    margin: 0 2% 2% 2%;
    padding: 0;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
#content-container #blog-filter-wrapper .blog_filter_wrapper > span:first-child {
    display: block;
    line-height: 1;
    color: #353535;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px;
}
#content-container #blog-filter-wrapper select {
    margin-top: .5rem;
    color: #666;
}
.impriclub-new-article-row {
    position: relative;
    height: 0;
    margin: 0 !important;
    padding: 0 !important;
}
.impriclub-new-article-row a#show-blog-create {
    position: absolute;
    top: -6.25rem;
    right: 6%;
}

/* Liste des actualités : méta comme le LIVE (commentaires, vues, date en 16 px gris ; catégorie masquée) */
#content-container .masonry-layout .box.blog-item .directory-category { display: none; }
#content-container .masonry-layout .box.blog-item .directory-comments,
#content-container .masonry-layout .box.blog-item .post-date {
    display: inline-block;
    font-size: 14px;
    color: #666;
    margin: 10px 10px 0 0;
}
#content-container .masonry-layout .box.blog-item .directory-comments i { margin-right: 4px; }
#content-container .masonry-layout .box.blog-item .masonry_para { margin-top: 10px; }

/* Annuaire / BuddyPress : contenu dans la boîte blanche (l'ancienne surcharge members/index.php ajoutait la classe box) */
#main-content #buddypress > .content,
#main-content #buddypress .content[data-template="woffice"] {
    background: #fff;
    border-radius: 12px;
    padding: 24px;
}

/* Annuaire : onglets en cartes centrées (style Woffice 2.x conservé sur le LIVE) */
#main-content #buddypress .dir-navs,
#main-content #buddypress .bp-subnavs {
    margin: 0;
    border: 0;
    text-align: center;
    padding-bottom: 1rem;
}
#main-content #buddypress .dir-navs ul,
#main-content #buddypress .bp-subnavs ul {
    width: 100%;
    margin: 0 !important;
    display: block;
    text-align: center;
}
#main-content #buddypress .dir-navs ul li,
#main-content #buddypress .bp-subnavs ul li {
    float: none;
    display: inline-block;
    width: auto;
    margin: .3rem;
}
#main-content #buddypress .dir-navs ul li a,
#main-content #buddypress .bp-subnavs ul li a {
    display: block;
    width: 160px;
    background: #fff;
    color: #3c3f4d;
    border-radius: .4rem;
    padding: .8rem;
    border: 1px solid #f0f0f6;
    box-shadow: 0 .1rem .05rem rgba(0, 0, 0, .1);
    position: relative;
    font-size: 16px;
    text-align: center;
}
#main-content #buddypress .dir-navs ul li a::before,
#main-content #buddypress .bp-subnavs ul li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1.6rem;
    display: block;
    margin-bottom: .4rem;
    content: "\f0c0";
    color: var(--impri-violet);
}
#main-content #buddypress .dir-navs ul li#members-advanced-search a::before { content: "\f002"; }
#main-content #buddypress .dir-navs ul li a .count,
#main-content #buddypress .bp-subnavs ul li a .count {
    color: #fff;
    background: var(--impri-violet);
    padding: .2rem .6rem;
    border-radius: 1rem;
    position: absolute;
    font-weight: 700;
    top: 1.6rem;
    left: 50%;
    margin-left: 1rem;
    font-size: .6rem;
    border: 3px solid #fff;
}
#main-content #buddypress .dir-navs ul li.no-count a .count { display: none; }
#main-content #buddypress .dir-navs ul li.selected a,
#main-content #buddypress .dir-navs ul li.current a { font-weight: 700; }

/* Tableau des membres : largeur contenue, colonnes auto (le parent impose des min-width) */
#main-content #buddypress #members-list-table,
#main-content #buddypress .members table {
    width: 100% !important;
    table-layout: auto;
}
#main-content #buddypress .members table thead tr th,
#main-content #buddypress .members table tbody tr td {
    min-width: 0 !important;
    padding: 12px 8px !important;
    font-size: 12px;
}
#main-content #buddypress .members table thead tr th {
    color: #353535;
    font-weight: 700;
}
#main-content #buddypress #members-dir-list { overflow-x: auto; }

/* ==========================================================================
   PROFIL BUDDYPRESS — comme le LIVE : carte avatar + navigation verticale à gauche,
   sous-onglets en cartes au-dessus du contenu
   ========================================================================== */
#woffice-bp-sidebar > div,
#woffice-bp-sidebar .users-single-itemnav {
    background: #fff;
    border-radius: 12px;
}
#woffice-bp-sidebar .users-single-social:empty { display: none; }
#woffice-bp-sidebar .users-single-itemnav {
    padding: 0 !important;
    margin-top: -12px;
    border-radius: 0 0 12px 12px;
}
#woffice-bp-sidebar #item-header { border-radius: 12px 12px 0 0; }
#woffice-bp-sidebar #object-nav { overflow: visible; height: auto; }
#woffice-bp-sidebar #object-nav ul {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    height: auto !important;
}
#woffice-bp-sidebar #object-nav ul li {
    display: block;
    width: 100%;
    margin: 0;
    border-top: 1px solid #f0f0f6;
}
#woffice-bp-sidebar #object-nav ul li a {
    display: block;
    width: 100%;
    padding: 12px 20px !important;
    font-size: 14px;
    color: #3c3f4d;
    border-radius: 0;
}
#woffice-bp-sidebar #object-nav ul li.current a,
#woffice-bp-sidebar #object-nav ul li.selected a {
    background: var(--impri-violet);
    color: #fff;
}
#woffice-bp-sidebar #object-nav ul li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 12px;
    content: "\f111";
    font-size: 12px;
}
#woffice-bp-sidebar #object-nav li#xprofile-personal-li a::before      { content: "\f007"; }
#woffice-bp-sidebar #object-nav li#calendar-personal-li a::before      { content: "\f073"; }
#woffice-bp-sidebar #object-nav li#notifications-personal-li a::before { content: "\f0f3"; }
#woffice-bp-sidebar #object-nav li#groups-personal-li a::before        { content: "\f0c0"; }
#woffice-bp-sidebar #object-nav li#forums-personal-li a::before        { content: "\f086"; }
#woffice-bp-sidebar #object-nav li#settings-personal-li a::before      { content: "\f013"; }
#woffice-bp-sidebar #object-nav li#activity-personal-li a::before      { content: "\f1da"; }
#woffice-bp-sidebar #object-nav li#friends-personal-li a::before       { content: "\f500"; }
#woffice-bp-sidebar #object-nav li#messages-personal-li a::before      { content: "\f0e0"; }
#woffice-bp-sidebar #object-nav li a .count { display: none; }

#item-body .users-single-subnav { margin-bottom: 1rem; }
#item-body .users-single-subnav ul.subnav {
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
}
#item-body .users-single-subnav ul.subnav li {
    display: inline-block;
    margin: .3rem;
}
#item-body .users-single-subnav ul.subnav li a {
    display: block;
    width: 160px;
    background: #fff;
    color: #3c3f4d;
    border-radius: .4rem;
    padding: .8rem;
    border: 1px solid #f0f0f6;
    box-shadow: 0 .1rem .05rem rgba(0, 0, 0, .1);
    text-align: center;
    font-size: 14px;
}
#item-body .users-single-subnav ul.subnav li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1.4rem;
    display: block;
    margin-bottom: .4rem;
    content: "\f111";
    color: var(--impri-violet);
}
#item-body .users-single-subnav li#public-personal-li a::before { content: "\f2bd"; }
#item-body .users-single-subnav li#edit-personal-li a::before { content: "\f4ff"; }
#item-body .users-single-subnav li#change-avatar-personal-li a::before { content: "\f030"; }
#item-body .users-single-subnav li#change-cover-image-personal-li a::before { content: "\f07b"; }
#item-body .users-single-subnav ul.subnav li.current a,
#item-body .users-single-subnav ul.subnav li.selected a { font-weight: 700; }
#item-body .screen-heading { text-transform: uppercase; font-size: 22px; font-weight: 700; color: #353535; }
#woffice-bp-sidebar .users-single-social { display: none; }


/* ==========================================================================
   V3 — corrections issues de l'audit de contradiction LIVE/STG (toutes pages)
   ========================================================================== */

/* --- Barre haute : hamburger et flèche de fermeture comme le LIVE (icônes FA pleines, gris #666) --- */
#main-header #nav-trigger i.fa-bars { color: #666 !important; }
#main-header #nav-trigger svg.nav-arrow-left { display: none !important; }
#main-header #nav-trigger i.fa-bars.d-none { display: inline-block !important; }
#main-header #nav-trigger i.fa-bars.d-none::before { content: "\f060"; }
/* Cloche pleine (LIVE : fa-bell) */
#main-header #nav-notification-trigger svg { display: none !important; }
#main-header #nav-notification-trigger::before {
    content: "\f0f3";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
    color: #666;
}

/* --- Rail : entrée FORUMS active sur les pages bbPress, RÉSEAU sur les pages membres, AGENDA sur les événements --- */
body.bbpress.vertical-modern-menu .main-modern-menu > li.icon-forum > a,
body.buddypress.vertical-modern-menu:not(.bbpress) .main-modern-menu > li.icon-reseau > a,
body.single-woffice-event.vertical-modern-menu .main-modern-menu > li.icon-agenda > a,
body.post-type-archive-woffice-event.vertical-modern-menu .main-modern-menu > li.icon-agenda > a {
    background: var(--impri-violet) !important;
}

/* --- Pied de page (LIVE) : flèche "retour en haut" 96 px, puis barre © 70 px #384141, liseré 6 px #8207D4 --- */
#scroll-top-container { clear: both; }
#scroll-top {
    display: block;
    height: 96px;
    line-height: 96px;
    text-align: center;
    font-size: 64px;
    color: rgba(0, 0, 0, .1);
    position: static;
    width: auto;
    background: transparent;
    border: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    border-radius: 0;
    margin: 0;
    padding: 0;
}
#scroll-top:hover { color: rgba(0, 0, 0, .25); }
#scroll-top i { font-size: 64px; line-height: 64px; }
#main-footer {
    background: transparent;
    padding: 0;
    margin: 0;
}
#main-footer #copyright {
    background: #384141;
    border-top: 6px solid #8207D4;
    padding: 0;
    margin: 0;
    text-align: center;
    min-height: 70px;
}
#main-footer #copyright p,
#main-footer #copyright {
    color: #fff;
    font-family: Montserrat, helvetica, arial, sans-serif;
    font-size: 16px;
    line-height: 24px;
    text-transform: uppercase;
}
#main-footer #copyright p { margin: 0; padding: 20px; color: #fff !important; }

/* --- Bandeau de titre : titre en 60/72 centré (LIVE), 30/36 sur mobile ; recherche bbPress / 404 sous le titre --- */
#featuredbox .pagetitle h1,
#featuredbox h1.entry-title {
    font-size: 60px !important;
    line-height: 72px !important;
    margin: 0;
}
#featuredbox.has-search .pagetitle,
#featuredbox .pagetitle {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 0 40px;
}
#featuredbox.has-search form,
#featuredbox #bbp-search-form,
#featuredbox .bbp-search-form {
    position: static !important;
    transform: none !important;
    margin: 12px auto 0;
    width: 100%;
    max-width: 760px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
#featuredbox form input[type="text"],
#featuredbox form input[type="search"] {
    height: 46px;
    max-width: 680px;
    width: 100%;
    border-radius: 3px;
    border: 0;
    padding: 0 16px;
    font-size: 16px;
    background: #fff;
}
#featuredbox form button,
#featuredbox form input[type="submit"] {
    width: auto;
    min-width: 66px;
    height: 51px;
    padding: 0 20px;
    border-radius: 5px;
    background: var(--impri-violet);
    color: #fff;
    border: 0;
    font-size: 18px;
    line-height: 51px;
}
#featuredbox form button i { font-size: 18px; }
#featuredbox form label.screen-reader-text { display: none; }
@media (max-width: 991px) {
    #featuredbox .pagetitle h1,
    #featuredbox h1.entry-title { font-size: 30px !important; line-height: 36px !important; }
    #featuredbox .pagetitle { padding: 0 20px; }
    #featuredbox form { flex-direction: row; }
}

/* --- Typographie : texte gris #666, titres #31348e non gras (LIVE : color_headline, font_headline_bold=nope) --- */
/* Spécificité (1,1,1) : passe devant le CSS dynamique Woffice (#page-wrapper h2 = text-color-dark),
   mais laisse gagner les règles ciblées de style.css (stats, vidéos…) comme sur le LIVE */
#page-wrapper .is-center-content :is(h1, h2, h3, h4, h5, h6):where(:not(#dashboard *, .box-title *, .blog-authorbox *, #item-body *, #featuredbox *)) {
    color: var(--impri-headline);
    font-weight: 500;
}
#page-wrapper #featuredbox h1 { color: #fff; font-weight: 700; }
#page-wrapper #item-body h2.screen-heading,
#page-wrapper #item-body h2 {
    font-size: 32px !important;
    color: #666 !important;
    text-transform: uppercase;
    font-weight: 700 !important;
}
#page-wrapper p, #page-wrapper li, #page-wrapper td, #page-wrapper th,
#page-wrapper dd, #page-wrapper dt, #page-wrapper label, #page-wrapper legend {
    color: #666;
}
#page-wrapper #content a:not(.btn):not(.button) { color: #666; }
#page-wrapper #content a:not(.btn):not(.button):hover { color: var(--impri-violet); }
#page-wrapper #content .blog-content a { color: #353535; font-weight: 700; text-decoration: none; }
#page-wrapper #content .masonry-layout .box-title h3 a { color: #353535; }

/* --- Boutons (LIVE) : capitales 9 px 600, bord 3 px violet, coins 20 px, texte #666 sur blanc --- */
#page-wrapper .btn,
#page-wrapper a.btn,
#page-wrapper .btn-default,
#page-wrapper .button:not(.rtmedia-actions-before-comments *),
#page-wrapper input[type="submit"],
#page-wrapper button[type="submit"],
#page-wrapper .bbp-submit-wrapper button,
#page-wrapper #buddypress input[type="submit"],
#page-wrapper #buddypress button[type="submit"] {
    text-transform: uppercase !important;
    font-family: Montserrat, helvetica, arial, sans-serif;
    font-weight: 600;
    letter-spacing: 0;
}
#page-wrapper .btn.btn-default,
#page-wrapper a.btn.btn-default,
#page-wrapper #content .btn.btn-default {
    font-size: 9px !important;
    padding: 10px 18px !important;
    border-radius: 20px !important;
    border: 3px solid var(--impri-violet) !important;
    color: #666 !important;
    background: #fff !important;
    line-height: 1.4;
    box-shadow: none;
}
#page-wrapper .btn.btn-default:hover,
#page-wrapper #content .btn.btn-default:hover {
    background: var(--impri-violet) !important;
    color: #fff !important;
}
/* Cartes d'actualités (LIVE) : "→ LIRE LA SUITE" en simple lien 12 px à gauche, sans bordure */
#page-wrapper #content .masonry-layout .box.blog-item .btn.btn-default,
#page-wrapper #content .masonry-layout .box.blog-item .btn.btn-default:hover {
    border: 0 !important;
    background: transparent !important;
    color: #666 !important;
    font-size: 12px !important;
    padding: 0 !important;
    float: left;
}
#page-wrapper #content .masonry-layout .box.blog-item .intern-box.text-center { text-align: left; padding: 15px 20px; }
#page-wrapper #content .masonry-layout .box.blog-item .directory-comments i { color: #b9a6cc; }
#page-wrapper #content .masonry-layout .box.blog-item .box-title h3,
#page-wrapper #content .masonry-layout .box.blog-item .box-title h3 a { color: #666 !important; }
#page-wrapper .btn-primary,
#page-wrapper #buddypress input[type="submit"],
#page-wrapper #buddypress button[type="submit"],
#page-wrapper #buddypress .submit input,
#page-wrapper #bbpress-forums .bbp-submit-wrapper button,
#page-wrapper #bbpress-forums #bbp_reply_submit,
#page-wrapper #bbpress-forums #bbp_topic_submit {
    background: var(--impri-violet) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 3px !important;
    font-size: 14px !important;
    padding: 12px 24px !important;
    line-height: 1.2;
}
#page-wrapper #buddypress .submit,
#page-wrapper #buddypress .submit.clearfix,
#page-wrapper #bbpress-forums .bbp-submit-wrapper { text-align: center; float: none; width: 100%; }
#page-wrapper #buddypress .submit input { display: inline-block; float: none; margin: 0 auto; }

/* Pagination (LIVE) : centrée, libellés "Articles précédents / suivants" */
#content-container .blog-next-page,
#content-container .blog-next-page.text-right,
#content-container .bottom_btn_row .pag_col { text-align: center !important; }
#content-container .blog-next-page ul.navigation { display: inline-block; margin: 16px 0 0; padding: 0; }
#content-container .blog-next-page ul.navigation li { display: inline-block; margin: 4px; }
#content-container .blog-next-page ul.navigation li .btn { font-size: 9px !important; padding: 10px 18px !important; border-radius: 20px !important; border: 3px solid var(--impri-violet) !important; color: #666 !important; background: #fff !important; }
#content-container .blog-next-page ul.navigation li.active .btn { background: var(--impri-violet) !important; color: #fff !important; }
#content-container .blog-next-page ul.navigation li.page-nav-left .btn::after { content: " Articles précédents"; }
#content-container .blog-next-page ul.navigation li.page-nav-right .btn::before { content: "Articles suivants "; }

/* --- Libellés : capitales sur les formulaires (LIVE), pas de Title Case ailleurs --- */
#page-wrapper #buddypress .standard-form label,
#page-wrapper #buddypress .standard-form span.label,
#page-wrapper #buddypress .editfield legend,
#page-wrapper #buddypress .editfield label,
#page-wrapper form label,
#page-wrapper #woffice-login label,
#page-wrapper .bbp-form label,
#page-wrapper #bbpress-forums fieldset.bbp-form legend {
    text-transform: uppercase !important;
    font-size: 14px;
    font-weight: 600;
    color: #666;
}
#page-wrapper #buddypress .editfield .field-visibility-settings-header,
#page-wrapper #buddypress .editfield .field-visibility-settings-notoggle,
#page-wrapper .blog-authorbox h3,
#page-wrapper .blog-authorbox-right .blog-like-container .like-text,
#page-wrapper #dashboard .widget .box-title h3,
#page-wrapper #bbpress-forums .bbp-breadcrumb a,
#page-wrapper #bbpress-forums .bbp-breadcrumb span,
#page-wrapper #bbpress-forums .bbp-replies .bbp-reply-header a,
#page-wrapper #bbpress-forums li.bbp-header,
#page-wrapper #bbpress-forums li.bbp-footer,
#page-wrapper #buddypress #item-header-content .user-nicename,
#page-wrapper #members-dir-list .member-name,
#page-wrapper #buddypress .members table .member-uname,
#page-wrapper .wo_common_comment_wrapper .comment-content p,
#page-wrapper #comments-container .comment-content p,
#page-wrapper .event-metas .event-meta,
#page-wrapper #content-container .ssfa-filename {
    text-transform: none !important;
}
#page-wrapper .blog-authorbox-right .blog-like-container .like-text,
#page-wrapper #dashboard .widget .box-title h3 { text-transform: uppercase !important; }

/* --- Liens d'édition (WPBakery / "Modifier") : jamais sur le front --- */
#page-wrapper .vc_inline-link,
#page-wrapper a.post-edit-link,
#page-wrapper .edit-link { display: none !important; }



/* --- Profil BuddyPress : navigation verticale (LIVE : item actif fond violet, icônes FA 19 px, une seule carte) --- */
#woffice-bp-sidebar .users-single-itemnav #object-nav ul li a,
#woffice-bp-sidebar .users-single-itemnav ul#member-primary-nav li a {
    display: block !important;
    width: 100% !important;
    padding: 9.6px 16px !important;
    font-size: 16px !important;
    color: #3c3f4d !important;
    background: transparent !important;
    border-radius: 0 !important;
    text-align: left;
    font-weight: 400;
    text-transform: none !important;
}
#woffice-bp-sidebar .users-single-itemnav #object-nav ul li a::before,
#woffice-bp-sidebar .users-single-itemnav ul#member-primary-nav li a::before {
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    font-size: 19.2px !important;
    color: inherit !important;
    display: inline-block;
    width: 32px;
    margin-right: 0;
    text-align: center;
}
#woffice-bp-sidebar .users-single-itemnav #object-nav ul li.current a,
#woffice-bp-sidebar .users-single-itemnav #object-nav ul li.selected a,
#woffice-bp-sidebar .users-single-itemnav ul#member-primary-nav li.current a,
#woffice-bp-sidebar .users-single-itemnav ul#member-primary-nav li.selected a,
#woffice-bp-sidebar .users-single-itemnav #object-nav ul li a:hover,
/* le parent pose "background: 0 0 !important" avec 4 ids : on surenchérit */
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li.current a,
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li.selected a,
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li a:hover {
    background: var(--impri-violet) !important;
    color: #fff !important;
}
#woffice-bp-sidebar #item-header { padding-bottom: 0; }
#woffice-bp-sidebar .users-single-itemnav { margin-top: 0; }
#woffice-bp-sidebar #item-header-content .profile-email { display: none; }
/* Boutons Afficher / Modifier / Photo / En-tête : 4 boutons bordés sur une ligne (LIVE) */
#item-body .users-single-subnav ul.subnav { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
#item-body .users-single-subnav ul.subnav li { margin: 0; flex: 0 1 auto; }
#item-body .users-single-subnav ul.subnav li a { width: auto; min-width: 150px; }
/* Tableau des champs (LIVE) : libellés gras avec séparateur, lignes alternées */
#item-body table.profile-fields td,
#item-body table.profile-fields th {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #666 !important;
    padding: 16px !important;
    border: 0;
    border-bottom: 1px solid #f0f0f6;
}
#item-body table.profile-fields td.label { border-right: 1px solid #e8f4ff; width: 30%; overflow-wrap: normal; word-break: normal; hyphens: manual; }
#item-body table.profile-fields td.data,
#item-body table.profile-fields td.data p { font-weight: 400 !important; color: #666 !important; }
#item-body table.profile-fields tr.alt { background: #f9f9fc; }
@media (max-width: 991px) {
    #item-body table.profile-fields td.label { width: 40%; min-width: 120px; font-size: 14px !important; }
    #item-body table.profile-fields td { padding: 10px !important; }
}
/* Édition du profil (LIVE) : onglets de groupes en pilules violettes majuscules, champs encadrés */
#page-wrapper #buddypress ul.button-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; padding: 0; }
#page-wrapper #buddypress ul.button-tabs li { margin: 0; }
#page-wrapper #buddypress ul.button-tabs li a {
    display: inline-block;
    background: var(--impri-violet) !important;
    color: #fff !important;
    text-transform: uppercase !important;
    font-size: 14.4px !important;
    font-weight: 700;
    padding: 10px 18px !important;
    border-radius: 3.2px !important;
    opacity: .85;
}
#page-wrapper #buddypress ul.button-tabs li.current a { opacity: 1; box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .5); }
#page-wrapper #buddypress .editfield {
    border: 1px solid #f0f0f6 !important;
    border-radius: 6.4px;
    padding: 16px !important;
    margin: 15px 0 !important;
    background: #fff;
}
#page-wrapper #buddypress .editfield legend,
#page-wrapper #buddypress .editfield label { font-size: 16px; text-transform: uppercase !important; }
#page-wrapper #buddypress .editfield input[type="text"],
#page-wrapper #buddypress .editfield input[type="email"],
#page-wrapper #buddypress .editfield input[type="tel"],
#page-wrapper #buddypress .editfield input[type="url"],
#page-wrapper #buddypress .editfield input[type="number"],
#page-wrapper #buddypress .editfield select,
#page-wrapper #buddypress .editfield textarea,
#page-wrapper #buddypress .standard-form input[type="text"],
#page-wrapper #buddypress .standard-form input[type="password"],
#page-wrapper #buddypress .standard-form input[type="email"] {
    border-radius: 3.2px !important;
    border: 2px solid #e0e0ec !important;
    background: transparent !important;
    height: 52px;
    font-size: 16px !important;
}
#page-wrapper #buddypress .editfield textarea { height: auto; }
#page-wrapper #buddypress .field-visibility-settings-header .visibility-toggle-link,
#page-wrapper #buddypress .field-visibility-settings-header a { color: var(--impri-violet) !important; background: transparent !important; text-decoration: underline; font-size: 14px; padding: 0; }
/* Onglet "delete" non traduit des réglages BP */
#page-wrapper #buddypress li#delete-personal-li a { text-transform: capitalize !important; }
/* "Se connecter en tant que" (User Switching) : bouton violet pleine largeur sous l'avatar (LIVE) */
#woffice-bp-sidebar #item-header .user-switching-switch-to,
#woffice-bp-sidebar #item-header a[href*="user_switching"],
#woffice-bp-sidebar #item-header a[href*="switch_to_user"],
#woffice-bp-sidebar #item-header .generic-button a,
#woffice-bp-sidebar #item-header a.user-switching {
    display: block;
    width: 100%;
    margin-top: 12px;
    padding: 10px 12px;
    background: var(--impri-violet);
    color: #fff !important;
    text-transform: uppercase;
    text-align: center;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
}

/* --- Article : image à la une pleine largeur sur mobile, boutons Modifier/Supprimer centrés (LIVE) --- */
@media (max-width: 991px) {
    .single-post .blog-content .intern-thumbnail { float: none !important; width: 100% !important; margin: 0 0 1.5rem !important; }
}
.single-post .blog-single-col .blog-single-actions,
.single-post .blog-single-col .post-buttons,
.single-post .blog-authorbox + div,
#content-container .blog-post-buttons {
    text-align: center !important;
    background: transparent !important;
    justify-content: center;
}
#content-container #content .blog-authorbox { padding: 15px 20px; min-height: 0; }
#content-container #content .blog-authorbox h3,
#content-container #content .blog-authorbox h3 a { font-size: 13px !important; font-weight: 400 !important; color: #666 !important; text-transform: none !important; }
#content-container #content .blog-authorbox .blog-like-container .like-text { font-size: 9px !important; text-transform: uppercase !important; color: #666; }
#content-container #content .blog-authorbox .blog-like-container i,
#content-container #content .blog-authorbox .blog-like-container svg { font-size: 16px; color: #666; }
#content-container #content .attachments-title,
#content-container #content .blog-attachments h3,
#content-container #content .blog-content h3 { color: var(--impri-headline) !important; font-weight: 300 !important; }

/* --- Annuaire : compteur + pagination en haut (LIVE), tableau contenu dans la carte --- */
#main-content #buddypress .members-dir-search { margin-bottom: 8px; }
#main-content #buddypress #members-dir-list { overflow-x: auto; max-width: 100%; }
#main-content #buddypress .members table { max-width: 100%; }
@media (max-width: 991px) {
    #main-content #buddypress .members-dir-search input[type="search"],
    #main-content #buddypress .dir-search input[type="search"],
    #main-content #buddypress .dir-search form { max-width: 100%; }
}

/* --- bbPress (LIVE) : recherche dans le bandeau sans boîte blanche, fil d'Ariane en bandeau gris,
   titres de forums/sujets en capitales grises 13 px, lignes alternées #f9f9fc --- */
#featuredbox .pagetitle #bbpress-forums,
#featuredbox .pagetitle .bbpress-wrapper {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
    max-width: 760px;
}
#featuredbox .pagetitle #bbp-search-form { padding: 0 !important; margin: 12px auto 0 !important; }
#featuredbox .pagetitle #bbp-search-form > div { display: flex; gap: 8px; width: 100%; justify-content: center; }
#featuredbox .pagetitle #bbp-search-form input[type="text"] { flex: 1 1 auto; }
#content-container #bbpress-forums .bbp-breadcrumb p {
    background: #f9f9fc;
    border: 1px solid #f0f0f6;
    border-radius: 4px;
    padding: 12px 16px;
    margin: 0 0 20px;
    font-size: 14px;
    color: #666;
    text-transform: none !important;
}
#content-container #bbpress-forums .bbp-breadcrumb a { text-transform: uppercase !important; color: #666; }
#content-container #bbpress-forums .bbp-forum-title,
#content-container #bbpress-forums .bbp-topic-title .bbp-topic-permalink,
#content-container #bbpress-forums .bbp-topic-permalink {
    color: #666 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px;
    font-size: 13.2px !important;
    font-weight: 400 !important;
}
#content-container #bbpress-forums li.bbp-body ul.forum:nth-child(odd),
#content-container #bbpress-forums li.bbp-body ul.topic:nth-child(odd) { background: #f9f9fc !important; }
#content-container #bbpress-forums li.bbp-body ul.forum,
#content-container #bbpress-forums li.bbp-body ul.topic { border-bottom: 1px solid #f0f0f6 !important; }
#content-container #bbpress-forums li.bbp-header { background: #f0f0f6 !important; color: #666 !important; text-transform: uppercase !important; font-size: 12px !important; }
#content-container #bbpress-forums li.bbp-header a, #content-container #bbpress-forums li.bbp-header li { color: #666 !important; }
/* Notice bbPress : icône dans son coin, texte lisible */
#content-container div.bbp-template-notice,
#content-container div.bbp-template-notice.info,
#content-container div.indicator-hint {
    padding: 14px 20px 14px 56px !important;
    color: #fff !important;
    background: var(--impri-violet) !important;
    border-radius: 4px;
}
#content-container div.bbp-template-notice p { color: #fff !important; margin: 0; }
#content-container div.bbp-template-notice::before,
#content-container div.bbp-template-notice i {
    position: absolute; left: 18px; top: 50%; transform: translateY(-50%);
    font-size: 20px; line-height: 1; color: #fff;
}
/* Formulaire de réponse : "Répondre à" en titre 20 px, bouton violet centré */
#content-container #bbpress-forums #new-post fieldset.bbp-form legend,
#content-container #bbpress-forums .bbp-reply-form legend,
#content-container #bbpress-forums .bbp-topic-form legend {
    font-size: 20px !important;
    text-transform: uppercase !important;
    color: var(--impri-headline) !important;
    font-weight: 400;
    padding: 0 0 12px;
    width: 100%;
}
#content-container #bbpress-forums .bbp-submit-wrapper button,
#content-container #bbpress-forums #bbp_reply_submit,
#content-container #bbpress-forums #bbp_topic_submit {
    background: var(--impri-violet) !important;
    color: #fff !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    padding: 12px 28px !important;
    border-radius: 3px !important;
    border: 0 !important;
}
/* Sujet : une seule carte (pas de double encadrement) */
#content-container #bbpress-forums div.bbp-reply-content,
#content-container #bbpress-forums div.bbp-topic-content { background: transparent !important; box-shadow: none !important; border: 0 !important; }
#content-container #bbpress-forums ul.bbp-replies,
#content-container #bbpress-forums .bbp-replies > li { background: transparent !important; box-shadow: none !important; }

/* --- Recherche WP (LIVE) : champ sous le titre dans le bandeau ; résultats en liste 1 colonne,
   cartes blanches sur fond gris, image en bandeau, titre 24 px gras, bande de méta grise --- */
#featuredbox .pagetitle form input[type="text"],
#featuredbox .pagetitle form button { position: static !important; transform: none !important; }
#featuredbox .pagetitle .active_search,
#featuredbox .pagetitle .wo-search-icon { display: none !important; }
#featuredbox .pagetitle form { height: auto !important; padding: 0 !important; }
body.search-results #left-content #content-container #content,
body.search-no-results #left-content #content-container #content {
    background: transparent;
    border-top: 0;
    padding: 0 !important;
}
body.search #content .blog-col { flex: 0 0 100%; max-width: 100%; }
body.search #content .blog-card-wrapper .card.blog_card {
    background: #fff;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(45, 51, 66, .06);
    width: 100%;
}
body.search #content .blog_card .blog-thumb img { width: 100%; height: auto; max-height: 420px; object-fit: cover; border-radius: 12px 12px 0 0; }
body.search #content .blog_card .blog-thumb img[src$="blog.png"] { display: none; }
body.search #content .blog_card .blog-title h2,
body.search #content .blog_card .blog-title h2 a {
    text-transform: none !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #353535 !important;
    line-height: 1.3;
}
body.search #content .blog_card .heading-container { padding: 24px 28px 8px; }
body.search #content .blog_card .post-meta .intern-box {
    background: #f9f9fc;
    padding: 12px 28px;
    font-size: 14px;
    color: #666;
}
body.search #content .blog_card .post-meta .intern-box a { color: #666; }
body.search #content .blog_card .blog-content { padding: 20px 28px 0; }
body.search #content .blog_card .blog-content p { color: #666; font-size: 15px; line-height: 1.6; }
body.search #content .blog_card .card-footer { padding: 16px 28px 28px; text-align: center; }
body.search #content .blog_card .card-footer .btn-default {
    display: inline-block;
    text-transform: uppercase !important;
    font-size: 9px !important;
    font-weight: 600;
    padding: 10px 18px !important;
    border-radius: 20px !important;
    border: 3px solid var(--impri-violet) !important;
    color: #666 !important;
    background: #fff !important;
}
body.search #content .blog_card .card-footer .btn-default i { display: none; }
body.search #content .blog_card .card-footer .btn-default::before { content: "\f061 "; font-family: "Font Awesome 5 Free"; font-weight: 900; margin-right: 4px; }

/* --- Événement (LIVE) : onglets Consulter / Modifier / Supprimer en boutons gris 140 px centrés, sans pastille ;
   contenu dans la carte blanche --- */
.single-woffice-event #content-container #event-nav { text-align: center; padding: 20px 0 0; }
.single-woffice-event #content-container div.item-list-tabs-wiki ul { display: inline-block; margin: 0; padding: 0; }
.single-woffice-event #content-container div.item-list-tabs-wiki ul li {
    display: inline-block !important;
    float: none !important;
    width: 140px !important;
    margin: 5px 10px !important;
    padding: 0 !important;
    background: #666 !important;
    border: 1px solid #ececef !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    transform: none !important;
    top: auto !important;
}
.single-woffice-event #content-container div.item-list-tabs-wiki ul li.active { background: var(--impri-violet) !important; }
.single-woffice-event #content-container div.item-list-tabs-wiki ul li .event-tab-icon { display: none !important; }
.single-woffice-event #content-container div.item-list-tabs-wiki ul li a {
    display: block;
    padding: 15px !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    color: #fff !important;
    font-weight: 600;
}
.single-woffice-event #content-container #content > article.content { background: #fff; border-radius: 5px; margin-top: 0; }
.single-woffice-event #content-container #event-content-view .woffice-calendar { background: transparent !important; box-shadow: none !important; border: 0 !important; margin: 0 !important; }
.single-woffice-event #content-container .event-metas .event-meta { text-transform: none !important; color: #666; }

/* --- Page de connexion (LIVE) : logo 160 px centré, libellés gris clair capitales 16 px, champs carrés 52 px,
   bouton violet pleine largeur 3 px d'arrondi, lien "Mot de passe oublié" italique gris à droite --- */
body.page-template-login #woffice-login #login-logo { display: block; text-align: center; }
body.page-template-login #woffice-login #login-logo img { width: 160px; height: auto; margin: 0 auto; }
body.page-template-login #woffice-login #login-text { text-align: center; }
body.page-template-login #woffice-login #login-text span { font-weight: 400; }
body.page-template-login #woffice-login label {
    font-size: 16px !important;
    text-transform: uppercase !important;
    color: #9b9ca3 !important;
    font-weight: 500 !important;
}
body.page-template-login #woffice-login input[type="text"],
body.page-template-login #woffice-login input[type="password"],
body.page-template-login #woffice-login input[type="email"] {
    border-radius: 3.2px !important;
    border: 2px solid #e0e0ec !important;
    height: 52px !important;
    font-size: 16px !important;
    padding: 12px 12px 12px 40px !important;
    background: #fff !important;
}
body.page-template-login #woffice-login input[type="submit"],
body.page-template-login #woffice-login button[type="submit"],
body.page-template-login #woffice-login .button-primary {
    border-radius: 3.2px !important;
    background: var(--impri-violet) !important;
    color: #fff !important;
    text-transform: uppercase !important;
    font-size: 14.4px !important;
    font-weight: 700 !important;
    padding: 10px 18px !important;
    width: 100%;
    border: 0 !important;
    height: auto;
}
body.page-template-login #woffice-login .password-lost,
body.page-template-login #woffice-login a.password-lost {
    display: block;
    text-align: right;
    font-style: italic;
    font-size: 16px;
    color: #b7b9c4 !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin-top: 16px;
}
body.page-template-login #woffice-login .login-remember label { text-transform: none !important; font-size: 14px !important; }
/* Mot de passe perdu : pas d'encart vert, même charte que le formulaire de connexion */
body.page-template-login #woffice-login .lost-password-notice,
body.page-template-login #woffice-login .alert-success,
body.page-template-login #woffice-login .woffice-alert { background: transparent !important; border: 0 !important; color: #666 !important; padding: 0 !important; }
body.page-template-login #woffice-login header { border: 0 !important; padding-bottom: 0; }
body.page-template-login #woffice-login .login-tabs-wrapper { border: 0 !important; }
body.page-template-login #woffice-login a.password-lost { text-decoration: none !important; }

/* --- Widgets du tableau de bord : calendrier (LIVE) --- */
#dashboard .woffice-calendar__nav #month-year-select { display: flex; gap: 8px; align-items: center; }
#dashboard .woffice-calendar__nav #month-year-select .select { flex: 1 1 50%; }
#dashboard .woffice-calendar__nav select.form-control {
    font-size: 13px !important;
    height: 32px !important;
    border: 1px solid #e0e0ec !important;
    border-radius: 3px;
    color: #666;
    text-align: center;
}
#dashboard .woffice-calendar__nav { margin-bottom: 1rem !important; }
#dashboard .woffice-calendar__new { display: none; }

/* --- Cartographie / recherche GD (LIVE) : filtres compacts 11 px --- */
#content-container .geodir-search select.cat_select,
#content-container .geodir-search .gd-search-input-wrapper select,
#content-container .geodir-search input.search_text { font-size: 11px !important; }
#content-container .geodir-search .gd-search-field-near { display: none !important; }

/* --- Téléchargements (WPFD) : liens gris, colonne Titre lisible sur mobile --- */
#content-container .wpfd-content a,
#content-container .wpfd-content .wpfd_downloadlink,
#content-container .wpfd-content .catlink { color: #666 !important; }
#content-container .wpfd-content table td, #content-container .wpfd-content table th { word-break: normal; overflow-wrap: anywhere; }
@media (max-width: 991px) {
    #content-container .wpfd-content table th.file_title,
    #content-container .wpfd-content table td.file_title { min-width: 160px; }
}

/* Bandeau : le parent place .pagetitle à top:50% et le h1 à top:30px → titre trop bas, recherche hors du bandeau */
#featuredbox .pagetitle {
    top: 0 !important;
    height: 100% !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
#featuredbox .pagetitle h1,
#featuredbox h1.entry-title {
    position: static !important;
    top: 0 !important;
    padding: 0 !important;
    height: auto !important;
}

/* Icônes de la navigation de profil (le parent vide le content du ::before avec 4 ids) */
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li a::before { content: "\f111" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#xprofile-personal-li a::before      { content: "\f007" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#calendar-personal-li a::before      { content: "\f073" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#notifications-personal-li a::before { content: "\f0f3" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#groups-personal-li a::before        { content: "\f0c0" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#forums-personal-li a::before        { content: "\f086" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#settings-personal-li a::before      { content: "\f013" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#activity-personal-li a::before      { content: "\f1da" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#friends-personal-li a::before       { content: "\f500" !important; }
#content-container #buddypress .woffice-profile--vertical #woffice-bp-sidebar .users-single-itemnav .main-navs ul li#messages-personal-li a::before      { content: "\f0e0" !important; }
#item-body .users-single-subnav { background: transparent !important; padding: 0 !important; box-shadow: none !important; }
.single-woffice-event #content-container div.item-list-tabs-wiki ul li { height: auto !important; min-height: 0 !important; line-height: normal !important; }
.single-woffice-event #content-container div.item-list-tabs-wiki { margin: 0 !important; padding: 0 !important; }
.single-woffice-event #content-container #event-nav { margin: 0 0 10px !important; }
.single-woffice-event #content-container #event-content-view { margin-top: 0 !important; padding-top: 0 !important; }
.single-woffice-event #content-container #event-content-view .event-metas { padding: 10px 0 0 !important; }

/* --- Barre haute mobile (LIVE : 100 px, logo 110×32 après le hamburger, avatar 40, loupe et cloche 18 px) ---
   Déclaré en fin de fichier avec des sélecteurs forts pour passer devant les règles desktop. */
@media (max-width: 991px) {
    #page-wrapper #main-header,
    #page-wrapper #main-header nav.navbar { height: 100px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; }
    #page-wrapper #main-header nav.navbar .navbar-collapse { height: 100px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; width: 100% !important; align-items: center; }
    #page-wrapper #main-header #nav-trigger { padding: 0 12px 0 16px !important; margin: 0 !important; order: 0; }
    #page-wrapper #main-header .impriclub-header-logo { position: static !important; transform: none !important; width: 110px !important; height: 32px !important; margin: 0 !important; flex: 0 0 110px; order: 1; }
    #page-wrapper #main-header .navbar-collapse > ul.ml-auto { order: 3; margin-left: auto !important; padding: 0 !important; }
    #page-wrapper #main-header #nav-buttons { height: 100px; align-items: center; }
    #page-wrapper #main-header #nav-buttons .sidebar-userinfo { margin: 0 4px 0 0 !important; }
    #page-wrapper #main-header .sidebar-userinfo #user-thumb,
    #page-wrapper #main-header .sidebar-userinfo #user-thumb img { width: 40px !important; height: 40px !important; flex-basis: 40px !important; margin: 0 !important; }
    #page-wrapper #main-header #main-search,
    #page-wrapper #main-header #main-search .active_search,
    #page-wrapper #main-header #main-search .active_search::after { width: 40px !important; }
    #page-wrapper #main-header #main-search .active_search::after { font-size: 18px !important; }
    #page-wrapper #main-header #nav-notification-trigger { height: 100px !important; line-height: 100px !important; padding: 0 12px 0 4px !important; margin: 0 !important; top: 0 !important; display: flex !important; align-items: center; }
    #page-wrapper #main-header #nav-notification-trigger::before { font-size: 18px; line-height: 1; }
    #page-wrapper #main-header #main-search form { right: -52px; width: calc(100vw - 32px); }
}

/* Article : boutons Modifier / Supprimer centrés dans la carte, même bordure violette (LIVE) */
.single-post #content-container #content .frontend-edit-wrapper.box { background: transparent !important; box-shadow: none !important; padding: 0 !important; }
.single-post #content-container #content #blog-bottom { text-align: center !important; padding: 10px 0 0; }
.single-post #content-container #content #blog-bottom .btn {
    font-size: 9px !important;
    padding: 10px 18px !important;
    border-radius: 20px !important;
    border: 3px solid var(--impri-violet) !important;
    color: #666 !important;
    background: #fff !important;
    text-transform: uppercase !important;
    margin: 4px 6px;
}
.single-post #content-container #content .blog-authorbox .blog-like-container { display: flex; align-items: center; gap: 10px; }
.single-post #content-container #content .blog-authorbox .blog-like-container .like-text { margin: 0; white-space: nowrap; }

/* --- Cartographie / iframe (LIVE) : tous les filtres en 11 px, pas de champ Adresse, iframe sans carte violette --- */
.geodir-search select,
.geodir-search .gd-search-input-wrapper select,
.geodir-search input.search_text,
.geodir-search input[type="text"] { font-size: 11px !important; text-transform: uppercase; }
.geodir-search .gd-search-field-near { display: none !important; }
body.iframe-content-body #left-content #content-container #content,
body.iframe-content-body #content {
    border-top: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    top: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
}
body.iframe-content-body #scroll-top-container, body.iframe-content-body #main-footer { display: none !important; }

#item-body .users-single-subnav nav.bp-subnavs, #item-body nav.bp-subnavs { background: transparent !important; }
#item-body table.profile-fields td.data a { color: #666 !important; }
#item-body table.profile-fields tr.alt td { background: #f9f9fc !important; }
#featuredbox .pagetitle form button { display: inline-flex !important; align-items: center; justify-content: center; }
#featuredbox .pagetitle form button i, #featuredbox .pagetitle form button svg { display: inline-block !important; color: #fff; font-size: 18px; }

/* Statistiques : l'index alphabétique se cale sur #content (position relative) pour rester dans le bandeau comme sur le LIVE */
#content-container #content #statistics-page-content.box,
#content-container #content .table_action_output.box { position: static !important; }
/* Bandeau : sur le LIVE le titre est centré ~25 px au-dessus du milieu (le contenu remonte de 50 px sur le bandeau) */
#featuredbox .pagetitle { padding-bottom: 50px !important; }
@media (max-width: 991px) {
    /* le parent pose "#page-wrapper .is-center-content #main-header .navbar { padding: 20px 15px !important }" */
    #page-wrapper .is-center-content #main-header .navbar,
    #page-wrapper .is-center-content #main-header nav.navbar { padding: 0 16px 0 0 !important; height: 100px !important; }
}
/* Bandeau mobile (LIVE) : ~140 px visibles sous la barre haute (la barre fixe du LIVE recouvrait le haut du bandeau) */
@media (max-width: 991px) {
    #featuredbox { height: 190px !important; min-height: 190px !important; }
    #featuredbox .pagetitle { padding-bottom: 80px !important; }
}
/* Filtres avancés GD (Département, Société membre) : 11 px comme la barre principale ; champ "Address" (ASF 2.3) absent du LIVE */
.geodir-search-container .customize_filter_inner select.cat_select,
.geodir-search-container .customize_filter_inner input.cat_input,
.geodir-search-container .geodir-filter-cat select { font-size: 11px !important; text-transform: uppercase; height: auto; }
.geodir-search-container .geodir-filter-cat.gd-field-street { display: none !important; }
#page-wrapper #content #enterprise-alphafilter a.enterprise-alphafilter-link,
#page-wrapper #content #enterprise-alphafilter a.enterprise-alphafilter-link:hover { color: inherit !important; }

/* --- Audit v2 : barre haute desktop (LIVE : logo 260×76, avatar 50, loupe/cloche 62×100 icônes 25.6 px, 92 px de marge droite) --- */
@media (min-width: 992px) {
    #main-header .impriclub-header-logo { width: 260px; height: 76px; }
    #main-header #nav-buttons { padding-right: 92px; }
    #main-header .sidebar-userinfo #user-thumb,
    #main-header .sidebar-userinfo #user-thumb img { width: 50px; height: 50px; flex-basis: 50px; }
    #main-header #nav-buttons .sidebar-userinfo { margin-right: 15px; }
    #main-header #nav-notification-trigger {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 62px;
        height: 100px;
        padding: 0 !important;
        margin: 0 !important;
        top: 0 !important;
    }
    #main-header #nav-notification-trigger::before { font-size: 25.6px; }
    #main-header #main-search .active_search::after { font-size: 25.6px; }
}
@media (max-width: 991px) {
    #page-wrapper #main-header .sidebar-userinfo #user-thumb,
    #page-wrapper #main-header .sidebar-userinfo #user-thumb img { width: 50px !important; height: 50px !important; flex-basis: 50px !important; }
    #page-wrapper #main-header #main-search .active_search::after,
    #page-wrapper #main-header #nav-notification-trigger::before { font-size: 22px !important; }
}
/* Barre copyright : texte centré verticalement */
#main-footer #copyright { display: flex; align-items: center; justify-content: center; min-height: 70px; }
#main-footer #copyright p { padding: 0 20px; }
/* Champs de formulaire (LIVE) : angles 3 px, bord 2 px #e0e0ec, 50 px */
#content-container #content select,
#content-container #content input[type="text"],
#content-container #content input[type="search"],
#content-container #content input[type="email"] {
    border-radius: 3.2px;
    border: 2px solid #e0e0ec;
    height: 50px;
    font-size: 16px;
    background: #fff;
}
#content-container #content .geodir-search select,
#content-container #content .geodir-search input,
#content-container #content .customize_filter_inner select,
#content-container #content .customize_filter_inner input,
#content-container #content .bbp-search-form input { border: 0; border-bottom: 1px solid #ccc; border-radius: 0; height: auto; background: transparent; }
/* 404 : « Rien trouvé » en 22 px sans capitales (LIVE) */
body.error404 #content .heading h2 { text-transform: none; font-size: 22px; }
/* Iframe cartographie : titre 28 px gras #333 (LIVE) */
body.iframe-content-body h2#pageName { font-size: 28px !important; font-weight: 700 !important; color: #333 !important; padding: 0 16px; margin: 20px 0 10px; }
@media (max-width: 991px) { body.iframe-content-body #page-wrapper { padding: 0 15px; } }

/* Article : titre du bandeau en 30/36 (LIVE, style.css .single-post) ; boutons Supprimer : bordure bordeaux du child */
.single-post #featuredbox .pagetitle h1,
.single-post #featuredbox h1.entry-title { font-size: 30px !important; line-height: 36px !important; }
.single-post #content-container #content .frontend-edit-wrapper.box { background: #fff !important; }

/* --- Annuaire des membres (LIVE) : compteur + pagination en haut, bandeau gris de recherche avec bouton violet,
   icônes d'en-tête, lignes alternées --- */
#main-content #buddypress .bp-pagination.top,
#main-content #buddypress .is-table-view .bp-pagination.top { display: flex !important; justify-content: space-between; align-items: center; flex-wrap: wrap; margin: 0 0 12px; }
#main-content #buddypress .bp-pagination .pag-data { margin: 0; font-size: 14px; color: #666; }
#main-content #buddypress .dir-search,
#main-content #buddypress .members-search { background: #f0eef5; padding: 12px; border-radius: 4px; margin-bottom: 12px; }
#main-content #buddypress .dir-search form { display: flex; gap: 8px; align-items: stretch; max-width: 100%; }
#main-content #buddypress .dir-search input[type="search"] { flex: 1 1 auto; border-radius: 3px !important; border: 2px solid #e0e0ec !important; height: 46px; padding-left: 12px; max-width: 100%; box-sizing: border-box; }
#main-content #buddypress .dir-search #dir-members-search-submit,
#main-content #buddypress .dir-search button[type="submit"] { display: inline-flex !important; align-items: center; justify-content: center; width: 56px !important; height: 46px; background: var(--impri-violet) !important; color: #fff !important; border: 0; border-radius: 3px; }
#main-content #buddypress .dir-search #dir-members-search-submit .dashicons { color: #fff; }
#main-content #buddypress .members table thead th i { display: inline-block !important; color: #b9a6cc; margin-right: 4px; }
#main-content #buddypress .members table tbody tr:nth-child(odd) td { background: #f0f0f0; }
#main-content #buddypress .members table thead tr th,
#main-content #buddypress .members table tbody tr td { padding: 10px 6px !important; font-size: 12px; }
#main-content #buddypress .members table thead tr th { white-space: nowrap; }
/* Menu mobile : pas de bouton de fermeture rond du parent (le hamburger/flèche de la barre haute ferme le menu) */
#navigation .mobile-canvas-header, #navigation .close-navmenu, #navigation #mobile-menu-canvas-close { display: none !important; }
/* Vidéos, recherche WPFD, recherche/archive GD (style.css) : carte grise à liseré violet 12 px */
body.page-id-8878 #content-container #content > article.content,
body.page-template-template-videos #content-container #content > article.content,
body.geodir-page-search.search-results #content-container #content > article.content,
body.post-type-archive-gd_place.archive #content-container #content > article.content,
body.page-id-8878 #content-container #content > article.box.content,
body.page-template-template-videos #content-container #content > article.box.content,
body.geodir-page-search.search-results #content-container #content > article.box.content,
body.post-type-archive-gd_place.archive #content-container #content > article.box.content {
    border-top: 12px solid var(--impri-violet);
    border-radius: 12px;
    box-shadow: 0 6px 9px 0 rgba(57, 30, 85, .2);
    background: #efefef !important;
}
/* Cartographie : bloc de filtres gris arrondi (style.css) */
body.page-template-template-mapsearch #content .geodir-search-container { background: #efefef; border-radius: 1rem; padding: .5rem 0 1.5rem; overflow: hidden; }
body.iframe-content-body #content-container #content > article,
body.iframe-content-body #content-container #content > article.content,
body.iframe-content-body #content-container #content > article.box.content { border-top: 0 !important; box-shadow: none !important; background: transparent !important; border-radius: 0 !important; }

/* --- 3e passe : widgets du tableau de bord (LIVE : intérieur 20/20/20/16, listes 16 px) --- */
#dashboard .widget.box > .intern-padding { padding: 20px 20px 20px 16px !important; }
#dashboard .widget li, #dashboard .widget li a { font-size: 16px; }

/* Le bandeau (.pagetitle absolu, z-index 16) interceptait les clics sur le bouton "Nouvel article" qui remonte dessus */
#featuredbox .pagetitle { pointer-events: none; }
#featuredbox .pagetitle a, #featuredbox .pagetitle form, #featuredbox .pagetitle input, #featuredbox .pagetitle button, #featuredbox .pagetitle select { pointer-events: auto; }
/* GeoDirectory 2.3 : bouton "Generate Title Using AI" (fonction IA non utilisée) */
.geodir-add-listing .geodir-ai-generate, .geodir-add-listing [class*="geodir-ai"], .geodir-add-listing .gd-ai-title { display: none !important; }

/* --- Widget « Sondage » du tableau de bord (attps-polls, [attps_polls_current]) ---
   Le sondage hebdomadaire n'a qu'une question, dont le libellé répète le titre daté : on ne la laisse qu'aux lecteurs d'écran.
   Les libellés restent en capitales (règle générale #page-wrapper label) comme avec l'ancien widget WP-Polls. */
#dashboard .atpl .atpl-form__page > .atpl-q:only-child > .atpl-q__legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
#dashboard .atpl .atpl-form__page > .atpl-q:only-child > .atpl-q__options { margin-top: 4px; }
