/* ===========================
   NAVBAR COMMUNE — version centrée
   =========================== */

/* Barre de navigation */
.navbar{
  padding-top:.5rem;
  padding-bottom:.5rem;
  position:sticky; top:0; z-index:1050;
  background:rgba(255,255,255,.85);
  -webkit-backdrop-filter:saturate(120%) blur(4px);
  backdrop-filter:saturate(120%) blur(4px);
}

/* Coller aux bords du viewport */
.navbar .container-fluid{ padding-left:0!important; padding-right:0!important; }

/* Logo */
.logo-cis{
  max-height:40px; width:auto; display:block;
  border-radius:5px; box-shadow:0 4px 8px rgba(0,0,0,.2);
}

/* Liens (blanc) + déconnexion rouge */
.navbar .nav-link{ color:#fff!important; }
.navbar .nav-link:hover{ color:#ddd!important; }
.navbar .nav-link.text-danger{ color:#dc3545!important; }
.navbar .nav-link.text-danger:hover{ color:#ff6b6b!important; }

/* Caret dropdown blanc */
.navbar .dropdown-toggle::after{ border-top-color:currentColor; }

/* Pastilles (compteurs) */
@keyframes fadeInOut{ 0%,100%{opacity:1} 50%{opacity:0} }
.navbar-badge{
  position:absolute; top:2px; left:50%; transform:translateX(-50%);
  font-size:11px; padding:1px 5px; line-height:1; border-radius:999px;
  animation:fadeInOut 6s infinite;
}
.navbar-badge.badge-danger{ background:#dc3545; color:#fff; }
.navbar-badge.badge-success{ background:#28a745; color:#fff; }

/* ===================== DESKTOP (>= LG) ===================== */
@media (min-width:992px){

  .navbar .container-fluid{
    display:flex!important;
    align-items:center;
    justify-content:center;
    gap:0;
  }

  .navbar .navbar-collapse,
  .navbar-left,
  .navbar-center,
  .navbar-right{
    display:contents!important;
  }

  .navbar-left .navbar-brand{ padding-left:12px; }
  .navbar-left .navbar-toggler{ display:none!important; }

  .navbar-center .navbar-nav{
    display:flex!important; flex-wrap:nowrap; gap:0; margin:0;
  }
  .navbar-center .navbar-nav .nav-item{ margin:0!important; }
  .navbar-center .navbar-nav .nav-item + .nav-item{ margin-left:0!important; }
}

/* ===================== MOBILE (<= LG-1) ===================== */
@media (max-width:991.98px){

  /* Fixer la navbar en haut sur mobile */
  .navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 2000;
  }

  /* Empêcher le contenu de passer sous la navbar */
  body {
    padding-top: 60px; /* ajuste en fonction de la hauteur réelle de ta navbar */
  }

  .navbar .navbar-collapse,
  .navbar .navbar-collapse.show,
  .navbar .collapsing{
    background-color:#212529!important;
    padding:.75rem 1rem; 
    border-radius:0 0 10px 10px;
    box-shadow:0 8px 16px rgba(0,0,0,.3);

    /* Ajouts pour éviter de devoir scroller toute la page */
    max-height: calc(100vh - 60px); /* 60px = hauteur approx. de la navbar */
    overflow-y: auto;               /* scroll interne du menu */
  }

  .navbar .navbar-collapse .nav-link{ color:#fff!important; }
  .navbar .navbar-collapse .nav-link:hover{ color:#ccc!important; }

  #mainNav .dropdown-menu,
  #mainNav .navbar-nav .show > .dropdown-menu,
  .navbar.navbar-dark #mainNav .dropdown-menu,
  .navbar.navbar-dark #mainNav .navbar-nav .show > .dropdown-menu {
    background:#fff !important;
    color:#212529 !important;
    border:1px solid rgba(0,0,0,.15) !important;
    box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important;
  }

  #mainNav .dropdown-menu .dropdown-item{
    color:#212529 !important;
    font-weight:600;
  }

  #mainNav .dropdown-menu .dropdown-item:hover,
  #mainNav .dropdown-menu .dropdown-item:focus{
    background:#f8f9fa !important;
    color:#111 !important;
  }

  #mainNav .dropdown-menu .dropdown-item.text-danger{
    color:#dc3545 !important;
  }
  #mainNav .dropdown-menu .dropdown-item.text-danger:hover{
    background:#fdeaea !important;
    color:#b0212b !important;
  }
}

/* Icône rouge pour Déconnexion */
.navbar .nav-link.text-danger i {
  color: #dc3545 !important;
}
.navbar .nav-link.text-danger:hover i {
  color: #ff6b6b !important;
}

/* Centre icône + texte */
.navbar-center .nav-link {
  display: grid !important;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  place-items: center;
  text-align: center;
  white-space: nowrap;
  padding: .35rem .65rem .25rem !important;
  line-height: 1.15;
}

.navbar-center .nav-link i {
  grid-row: 1;
  grid-column: 1;
  margin-bottom: 2px;
  color: #cfd2d6 !important;
}

.navbar-center .nav-link .navbar-badge {
  position: absolute !important;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: none;
}


/* =====================================================================
   DROPDOWN STYLE GLOBAL
===================================================================== */

.navbar .dropdown-menu,
.navbar-dark .dropdown-menu,
#mainNav .dropdown-menu,
.navbar .navbar-nav .show > .dropdown-menu {
  background:#fff !important;
  color:#212529 !important;
  border:1px solid rgba(0,0,0,.15) !important;
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
}

.navbar .dropdown-menu .dropdown-item {
  color:#212529 !important;
  font-weight:600;
}

.navbar .dropdown-menu .dropdown-item:hover,
.navbar .dropdown-menu .dropdown-item:focus {
  background:#f8f9fa !important;
  color:#111 !important;
}

/* =====================================================================
   ICÔNES GROUPÉES icon-duo (préservation des doubles icônes)
===================================================================== */

.icon-duo i + i {
  margin-left: .25rem;
}

.dropdown-item .icon-duo {
  display: inline-block;
  width: 2rem;
  text-align: center;
  margin-right: .5rem;
}

/* =====================================================================
   SOUS-MENU dropdown-submenu (OUVERTURE UNIQUEMENT AU CLIC)
===================================================================== */

.dropdown-submenu {
  position: relative;
}

/* petite flèche à droite */
.dropdown-submenu > a.dropdown-toggle::after {
  content: "▶";
  float:right;
  font-size: .6rem;
  margin-top: .35rem;
  opacity: .6;
}

/* sous-menu latéral */
.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
  display:none !important; /* jamais en hover */
}

/* affichage EN MODE CLICK via classe .show */
.dropdown-submenu.show > .dropdown-menu {
  display:block !important;
}

/* =====================================================================
   FOOTER
===================================================================== */

footer.footer {
  margin-top: 80px;
}

footer .btn {
  background: linear-gradient(135deg, #89f7fe, #66a6ff);
  border: none;
  color: black;
  font-weight: bold;
  transition: background .3s ease;
}

footer .btn:hover {
  background: linear-gradient(135deg, #66a6ff, #89f7fe);
  color: white;
}

footer .btn-aide {
  background: #f0ad4e !important;
  color: black !important;
}

footer .btn-aide:hover {
  background: #ec971f !important;
  color: white !important;
}
