/**
 * ================================================================
 * FICHIER : menu_plus.css
 * EMPLACEMENT : 2027_B2B/_theme/menu_plus.css
 * SHORT_DESC : Menu déroulant « Plus » du menu du haut : les entrées qui ne tiennent plus y sont rangées, avec leur icône
 * DESCRIPTION : Entre 961 px et les grands écrans, le menu du haut ne doit jamais chevaucher les boutons d'action
 *               (taille du texte, thème, clair / sombre, cadenas, Devis, plein écran). _theme/menu_plus.js mesure la place
 *               réelle et masque les entrées les moins prioritaires (classe nav_plus_cache) ; elles réapparaissent,
 *               avec une icône, dans le panneau du bouton « Plus ». Avant l'exécution du script (ou sans script),
 *               un repli par point de rupture range déjà Agence, Blog et Offres de 961 à 1060 px.
 *               Toutes les icônes d'action restent visibles. Jetons du thème uniquement (tous les thèmes, clair et sombre).
 *               Sous 961 px, le burger et le tiroir mobile existants prennent le relais (theme.css, NAV_PALIERS).
 *
 * SOMMAIRE :
 *   - NAV_PLUS_ENTREES   : Entrées masquées de la barre
 *   - NAV_PLUS_BOUTON    : Bouton « Plus » à l'aspect d'un lien de navigation
 *   - NAV_PLUS_PANNEAU   : Panneau déroulant et liens à icône
 *   - NAV_PLUS_REPLI     : Répartition par point de rupture avant l'exécution du script
 *   - TOP_MENU_LARGEUR_1555 : En-tête pleine largeur, bloc central (navigation + compte) et réglages à droite
 *
 * DÉPENDANCES :
 *   - _includes/menus.php (TOP_MENU_BUILD : .nav_plus, data-nav_plus_cle, data-nav_priorite)
 *   - _theme/menu_plus.js (classes nav_plus_pret, nav_plus_actif, nav_plus_cache, nav_plus_visible, nav_plus_ouvert)
 *   - _theme/theme.css (jetons, paliers .navigation_desktop .nav_lien, animation apparition_palette)
 *
 * MODIFICATIONS :
 *   - 15/10/2026 01:57 : Bouton « Web Express » du top menu, icône éclair alignée sur le libellé (WEBEXPRESS_MENU_1578, Dialogue n° 1578 de JaxX, Claude) — A VALIDER PAR JaxX
 *   - 15/10/2026 01:31 : Menu du haut desktop sur toute la largeur, navigation centrée suivie du compte (photo de profil) et de l'admin, réglages à droite (TOP_MENU_LARGEUR_1555, Dialogue n° 1555 de JaxX, Claude) — A VALIDER PAR JaxX
 *   - 10/10/2026 06:55 : Création : menu « Plus » contre les chevauchements du menu du haut (Dialogue n° 547, Claude) — A VALIDER PAR JaxX
 *
 * ================================================================
 */

/* NAV_PLUS_ENTREES ==================================================== */
.navigation_desktop .nav_lien.nav_plus_cache
{
    display: none;
}
/* NAV_PLUS_ENTREES ==================================================== */

/* NAV_PLUS_BOUTON ===================================================== */
.nav_plus
{
    position: relative;
    display: none;
    align-items: center;
}

.nav_plus.nav_plus_actif
{
    display: inline-flex;
}

/* Même aspect que le bouton « Expertises » : la taille vient des paliers de .navigation_desktop .nav_lien */
.navigation_desktop .nav_plus_bt
{
    font-family: inherit;
    line-height: inherit;
    font-weight: 500;
    color: var(--encre);
    background: none;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    padding: 6px 0;
    gap: 4px;
    align-items: center;
    white-space: nowrap;
    cursor: pointer;
    transition: color var(--duree) var(--easing), border-color var(--duree) var(--easing);
}

.navigation_desktop .nav_plus_bt:hover,
.navigation_desktop .nav_plus_ouvert .nav_plus_bt
{
    color: var(--accent);
}

/* Une entrée rangée dans « Plus » est la page courante : le bouton porte le soulignement actif */
.navigation_desktop .nav_plus_bt.nav_actif,
.navigation_desktop .nav_plus_ouvert .nav_plus_bt
{
    border-bottom-color: var(--accent);
}

.navigation_desktop .nav_plus_bt:focus-visible
{
    outline: 2px solid var(--accent);
    outline-offset: 4px;
}

.nav_plus_bt .nav_mega_chevron svg
{
    transition: transform var(--duree) var(--easing);
}

.nav_plus_ouvert .nav_plus_bt .nav_mega_chevron
{
    color: var(--accent);
}

.nav_plus_ouvert .nav_plus_bt .nav_mega_chevron svg
{
    transform: rotate(180deg);
}
/* NAV_PLUS_BOUTON ===================================================== */

/* NAV_PLUS_PANNEAU ==================================================== */
.nav_plus_panneau
{
    position: absolute;
    top: calc(100% + 14px);
    left: 50%;
    min-width: 220px;
    margin-left: -110px;
    background-color: var(--surface);
    background-image: var(--satin);
    border: 1px solid var(--ligne_forte);
    border-radius: var(--rayon_carte, 2px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    padding: 8px;
    z-index: 1005;
    display: none;
    flex-direction: column;
    gap: 2px;
    animation: apparition_palette 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.nav_plus.nav_plus_ouvert .nav_plus_panneau
{
    display: flex;
}

/* Tailles en px : l'en-tête garde ses tailles d'origine quel que soit le réglage « Aa » (taille_texte.css) */
.nav_plus_lien
{
    display: none;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: var(--rayon, 2px);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
    color: var(--encre);
    text-decoration: none;
    white-space: nowrap;
    transition: background-color var(--duree) var(--easing), color var(--duree) var(--easing);
}

.nav_plus_lien.nav_plus_visible
{
    display: flex;
}

.nav_plus_lien:hover,
.nav_plus_lien:focus-visible
{
    background-color: var(--surface_carte);
    color: var(--accent);
}

.nav_plus_lien:focus-visible
{
    outline: 2px solid var(--accent);
    outline-offset: -2px;
}

.nav_plus_lien.nav_actif
{
    color: var(--accent);
    box-shadow: inset 2px 0 0 var(--accent);
}

.nav_plus_lien.nav_a_venir
{
    color: var(--encre_second);
}

.nav_plus_icone
{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    color: var(--accent);
}

.nav_plus_icone svg
{
    display: block;
    width: 20px;
    height: 20px;
}
/* NAV_PLUS_PANNEAU ==================================================== */

/* NAV_PLUS_REPLI ====================================================== */
/* Avant l'exécution de menu_plus.js (classe nav_plus_pret absente) : répartition mesurée au navigateur
   (la navigation complète demande environ 410 px et chevauchait « Aa » vers 961 à 1000 px) */
@media (min-width: 961px) and (max-width: 1060px)
{
    html:not(.nav_plus_pret) .navigation_desktop .nav_lien[data-nav_priorite="1"],
    html:not(.nav_plus_pret) .navigation_desktop .nav_lien[data-nav_priorite="2"],
    html:not(.nav_plus_pret) .navigation_desktop .nav_lien[data-nav_priorite="3"]
    {
        display: none;
    }

    html:not(.nav_plus_pret) .nav_plus
    {
        display: inline-flex;
    }

    html:not(.nav_plus_pret) .nav_plus_lien[data-nav_priorite="1"],
    html:not(.nav_plus_pret) .nav_plus_lien[data-nav_priorite="2"],
    html:not(.nav_plus_pret) .nav_plus_lien[data-nav_priorite="3"]
    {
        display: flex;
    }

    /* Sans script, le panneau s'ouvre au survol et au focus clavier */
    html:not(.nav_plus_pret) .nav_plus:hover .nav_plus_panneau,
    html:not(.nav_plus_pret) .nav_plus:focus-within .nav_plus_panneau
    {
        display: flex;
    }
}
/* NAV_PLUS_REPLI ====================================================== */

/* TOP_MENU_LARGEUR_1555 =============================================== */
/* 15/10/2026 01:31 (Claude, Dialogue n° 1555 de JaxX : « Le top menu doit prendre toute la largeur disponible de la fenêtre. Le logo doit
   être à gauche, les liens des pages centrés, avec à leur droite l'avatar user […], le bouton admin, les boutons de paramètres
   tout à droite ») : plus de plafond --largeur_page pour l'en-tête ; .header_centre (_includes/menus.php) occupe la place
   entre le logo et les réglages et y centre la navigation suivie du compte, de l'admin, du TEST / LIVE et de « Devis ».
   La navigation reste rétrécissable (min-width: 0) : menu_plus.js continue de ranger dans « Plus » ce qui ne tient pas — A VALIDER PAR JaxX */
.header_principal .header_container
{
    max-width: none;
    gap: 24px;
}

.header_centre
{
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.header_centre .navigation_desktop
{
    flex: 0 1 auto;
    min-width: 0;
}

.header_compte_groupe
{
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
}

/* Photo de profil (n° 1520) dans l'icône du compte : ronde, recadrée, même taille que les autres boutons */
.header_compte.header_compte_photo
{
    padding: 0;
    overflow: hidden;
    border-radius: 50%;
}

.header_compte.header_compte_photo img
{
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    border-radius: 50%;
}

/* Sous 961 px la navigation passe au burger : le compte, l'admin et « Devis » restent collés aux réglages, comme avant */
@media (max-width: 960px)
{
    .header_centre
    {
        justify-content: flex-end;
    }
}
/* TOP_MENU_LARGEUR_1555 =============================================== */

/* REPLI_GROUPE_1570 =================================================== */
/* 15/10/2026 (Claude #1, Dialogue n° 1570 de JaxX) : quand menu_plus.js constate que compte, admin, TEST / LIVE et « Devis » ne tiennent
   plus entre le logo et les réglages, il pose header_groupe_replie : le groupe disparaît de la barre et le burger apparaît (à toute
   largeur) ; le tiroir contient déjà ces liens — A VALIDER PAR JaxX */
.header_container.header_groupe_replie .header_compte_groupe
{
    display: none;
}

.header_container.header_groupe_replie .trigger_burger
{
    display: inline-flex;
}
/* REPLI_GROUPE_1570 =================================================== */

/* WEBEXPRESS_MENU_1578 ================================================ */
/* 15/10/2026 01:57 (Claude, Dialogue n° 1578 de JaxX : « Dans le top menu mettre en avant le site express comme pour le bouton devis ») :
   même style que « Devis » (classes header_bouton_devis, _theme/theme.css) ; seule l'icône éclair est propre au bouton — A VALIDER PAR JaxX */
.header_bouton_webexpress
{
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.header_bouton_webexpress .header_bouton_icone
{
    flex: none;
}
/* WEBEXPRESS_MENU_1578 ================================================ */
