/* ===========================
   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 */
.navbar .nav-link { color: #fff !important; }
.navbar .nav-link:hover { color: #ddd !important; }

/* Déconnexion rouge */
.navbar .nav-link.text-danger { color:#dc3545 !important; }
.navbar .nav-link.text-danger:hover { color:#ff6b6b !important; }

/* Caret dropdown */
.navbar .dropdown-toggle::after { border-top-color: currentColor; }

/* Pastilles */
@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;
  }

  .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;
  }
}


/* ===================== MOBILE (<= LG-1) ===================== */
@media (max-width: 991.98px) {

  .navbar {
    position: fixed; top: 0; left: 0; right: 0;
    z-index: 2000;
  }

  body {
    padding-top: 60px;
  }

  .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);
    max-height: calc(100vh - 60px);
    overflow-y: auto;
  }

  .navbar .navbar-collapse .nav-link { color:#fff!important; }
  .navbar .navbar-collapse .nav-link:hover { color:#ccc!important; }
}


/* Déconnexion icône rouge */
.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;
  place-items: center;
  text-align: center;
  padding: .35rem .65rem .25rem !important;
}

.navbar-center .nav-link i {
  margin-bottom: 2px;
  color:#cfd2d6 !important;
}

.navbar-center .nav-link .navbar-badge {
  position: absolute !important;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
}


/* =====================================================================
   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 {
  background:#f8f9fa !important;
}


/* =====================================================================
   ICÔNES GROUPÉES
===================================================================== */

.icon-duo i + i { margin-left: .25rem; }
.dropdown-item .icon-duo { width: 2rem; text-align:center; margin-right:.5rem; }


/* =====================================================================
   SOUS-MENU
===================================================================== */

.dropdown-submenu { position: relative; }

.dropdown-submenu > a.dropdown-toggle::after {
  content:"▶"; float:right; font-size:.6rem; opacity:.6;
}

.dropdown-submenu > .dropdown-menu {
  top:0; left:100%; margin-top:-1px;
  display:none !important;
}

.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;
}

footer .btn:hover {
  background: linear-gradient(135deg, #66a6ff, #89f7fe);
  color:white;
}

footer .btn-warning {
  background: orange !important;
  color: black!important;
  border: none !important;
}

footer .btn-warning:hover {
  background: #e0a800 !important;
  color: white !important;
}
/* =====================================================================
   CORRECTION ANDROID OVERSCROLL
===================================================================== */

html, body { 
  height: 100%;
  margin: 0;
  overscroll-behavior-y: none !important;
  overscroll-behavior: contain !important;

  /* fallback si Android efface brièvement */
  background-color: #66a6ff !important;
}

/* =====================================================================
   🎨 FOND GLOBAL — VERSION CLAIRE
   (LE SEUL ENDROIT QUI ÉTAIT MAUVAIS)
===================================================================== */

body {
  background: linear-gradient(
    135deg,
    #89f7fe 0%,
    #7ecbfe 35%,
    #73b9ff 65%,
    #66a6ff 100%
  ) !important;
  background-attachment: fixed !important;
  display: flex;
  flex-direction: column;
}


/* ============================================================
   🎨 FOND FIXE POUR TOUTES LES PAGES
============================================================ */
.bg-viewport{
    position: fixed;
    inset: 0;
    background: linear-gradient(135deg,
        #89f7fe 0%,
        #7ecbfe 35%,
        #73b9ff 65%,
        #66a6ff 100%
    );
    z-index: -1;
    pointer-events: none;
}
