/* =======================================================
   PiloteCSE — menu.css
   VERSION : 1.3.0
   DATE    : 2026-02-04
   OBJET   : Menu “barre bleue full width” + items centrés (stable)
             - Compatible si pcse-navbar est sur :
               A) le bloc Menu (wp-block-navigation)
               B) une Rangée/Groupe qui contient le bloc Menu
             - Hover/focus lisibles + sous-menus propres
   PRÉREQUIS GUTENBERG :
             - Classe "pcse-topbar" sur la rangée logo+titre+recherche (optionnel)
             - Classe "pcse-navbar" sur le bloc Menu (recommandé) OU son conteneur
   ======================================================= */

:root{
  --pcse-menu-text:   #0f2940;
  --pcse-menu-white:  #ffffff;

  --pcse-bluebar:     #0b63a8;   /* barre bleue */
  --pcse-bluebar2:    #094f86;   /* hover/active */

  --pcse-menu-border: #e5e7eb;
  --pcse-menu-shadow: 0 12px 30px rgba(15,41,64,.15);
  --pcse-menu-radius: 12px;

  --pcse-focus:       #ffaf63;  /* accent */
}

/* =======================================================
   1) Reset header (ne casse rien)
   ======================================================= */
header.wp-block-group.alignfull{
  overflow: visible !important;
  position: relative;
  z-index: 50;
}

header .wp-block-group,
header .wp-block-group.is-layout-flex,
header .wp-block-row,
header .wp-block-group.is-layout-constrained{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Logo */
.wp-block-site-logo img{
  padding: 0 !important;
  margin: 0 !important;
}

/* =======================================================
   2) Topbar (optionnel)
   ======================================================= */
header .pcse-topbar{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

/* =======================================================
   3) NAVBAR : barre bleue full width (robuste)
   - Cas A : pcse-navbar sur un conteneur (groupe/rangée)
   - Cas B : pcse-navbar directement sur le bloc Menu (.wp-block-navigation)
   ======================================================= */

/* --- Barre bleue (si pcse-navbar sur conteneur) --- */
header .pcse-navbar{
  background: var(--pcse-bluebar) !important;
  border-radius: 0 !important;

  /* full width breakout */
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;

  padding: 0.85rem 0 !important;
  position: relative;
  z-index: 60;
}

/* --- Barre bleue (si pcse-navbar est SUR le bloc Menu) --- */
header .pcse-navbar.wp-block-navigation{
  background: var(--pcse-bluebar) !important;
  border-radius: 0 !important;

  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;

  padding: 0.85rem 0 !important;
  position: relative;
  z-index: 60;
}

/* =======================================================
   4) Container centré à l’intérieur de la barre
   (on centre le contenu sur 1200px)
   ======================================================= */

/* Cas A : pcse-navbar sur conteneur -> on cible le bloc Menu dedans */
header .pcse-navbar .wp-block-navigation{
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  width: 100% !important;
  font-size: 18px !important;
}

/* Cas B : pcse-navbar sur le bloc Menu */
header .pcse-navbar.wp-block-navigation{
  max-width: 1200px !important;          /* oui : le bloc lui-même devient le container */
  margin-left: calc(50% - 50vw) !important; /* conserve le breakout */
  margin-right: calc(50% - 50vw) !important;

  /* mais on recrée un container interne via padding */
  padding-left: 0 !important;
  padding-right: 0 !important;
  font-size: 18px !important;
}

/* Dans le cas B, on doit centrer le contenu via responsive-container-content */
header .pcse-navbar.wp-block-navigation .wp-block-navigation__responsive-container-content{
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  width: 100% !important;
}

/* =======================================================
   5) Centrage réel des items (UL)
   ======================================================= */
header .pcse-navbar .wp-block-navigation__container,
header .pcse-navbar.wp-block-navigation .wp-block-navigation__container{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 auto !important;
  gap: 0.45rem !important;
}

/* =======================================================
   6) Styles des liens (niveau 1) dans la barre bleue
   ======================================================= */
header .pcse-navbar a,
header .pcse-navbar .wp-block-navigation-item__content,
header .pcse-navbar nav.wp-block-navigation span.wp-block-navigation-item__label{
  color: var(--pcse-menu-white) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
  letter-spacing: 0.01em !important;

  padding: 0.60rem 0.90rem !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  white-space: nowrap;
}

/* Hover/focus (lisible) */
header .pcse-navbar a:hover,
header .pcse-navbar .wp-block-navigation-item__content:hover,
header .pcse-navbar a:focus-visible,
header .pcse-navbar .wp-block-navigation-item__content:focus-visible{
  background: rgba(255,255,255,.16) !important;
  box-shadow: 0 0 0 3px rgba(255,175,99,.30);
  outline: none !important;
}

/* Actif */
header .pcse-navbar .current-menu-item > a,
header .pcse-navbar .current-menu-ancestor > a,
header .pcse-navbar .current_page_item > a{
  background: rgba(255,255,255,.20) !important;
}

/* Supprime décorations WP */
.wp-block-navigation-item__content::before,
.wp-block-navigation-item__content::after{
  content: none !important;
  display: none !important;
}

/* =======================================================
   7) Dropdown : flèche + sous-menu premium
   ======================================================= */
@media (min-width: 782px){
  header .pcse-navbar .wp-block-navigation-item.has-child > a .wp-block-navigation-item__label::after,
  header .pcse-navbar .wp-block-navigation-submenu > a .wp-block-navigation-item__label::after{
    content: "▾";
    display: inline-block;
    margin-left: 0.35em;
    font-size: 0.85em;
    opacity: 0.9;
  }

  header .pcse-navbar .wp-block-navigation-submenu__toggle{
    display: none !important;
  }
}

header .pcse-navbar .wp-block-navigation__submenu-container{
  background: #fff !important;
  border: 1px solid var(--pcse-menu-border) !important;
  border-radius: var(--pcse-menu-radius) !important;
  box-shadow: var(--pcse-menu-shadow) !important;

  padding: 0.45rem !important;
  min-width: 270px;
  z-index: 9999 !important;
}

header .pcse-navbar .wp-block-navigation__submenu-container a,
header .pcse-navbar .wp-block-navigation__submenu-container .wp-block-navigation-item__content{
  display: block;
  padding: 0.60rem 0.75rem !important;
  border-radius: 10px !important;

  color: var(--pcse-menu-text) !important;
  background: transparent !important;
  font-weight: 650 !important;
  white-space: nowrap;
}

header .pcse-navbar .wp-block-navigation__submenu-container a:hover,
header .pcse-navbar .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
header .pcse-navbar .wp-block-navigation__submenu-container a:focus-visible,
header .pcse-navbar .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible{
  color: var(--pcse-menu-white) !important;
  background: var(--pcse-bluebar2) !important;
  box-shadow: 0 0 0 3px rgba(255,175,99,.28);
  outline: none !important;
}

/* =======================================================
   8) Mobile : wrap centré propre
   ======================================================= */
@media (max-width: 900px){
  header .pcse-navbar{
    padding: 0.70rem 0 !important;
  }

  header .pcse-navbar .wp-block-navigation__container,
  header .pcse-navbar.wp-block-navigation .wp-block-navigation__container{
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  header .pcse-navbar a,
  header .pcse-navbar .wp-block-navigation-item__content{
    padding: 0.55rem 0.75rem !important;
  }
}
/* =======================================================
   PiloteCSE — menu.css
   PATCH : v1.3.2 (2026-02-04)
   OBJET : Centrage réel quand pcse-navbar est SUR le bloc Menu
           (WP Navigation + items-justified-right)
   ======================================================= */

/* Le bloc Menu full width (tu l’as déjà, on le sécurise) */
header .pcse-navbar.wp-block-navigation{
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* Wrapper WP : on centre */
header .pcse-navbar.wp-block-navigation .wp-block-navigation__responsive-container-content{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;

  width: 100% !important;
  max-width: none !important;      /* important : pas de contrainte qui décale */
  margin: 0 auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Le UL : on le rend "à la taille du contenu", puis on le centre */
header .pcse-navbar.wp-block-navigation .wp-block-navigation__container{
  width: fit-content !important;   /* LA clé du centrage stable */
  margin-left: auto !important;
  margin-right: auto !important;

  justify-content: center !important;
  align-items: center !important;
}

/* Neutralise définitivement l’alignement à droite de WP */
header .pcse-navbar.wp-block-navigation.items-justified-right,
header .pcse-navbar.wp-block-navigation.items-justified-right .wp-block-navigation__responsive-container-content,
header .pcse-navbar.wp-block-navigation.items-justified-right .wp-block-navigation__container{
  justify-content: center !important;
}
