/* ==========================================================================
   Aqua Manager — Navigation accueil / authentification V2.18.4
   Accueil Lab + Connexion + Création de compte + récupération.
   ========================================================================== */

:root{
  --zoa-authnav-a:#07345f;
  --zoa-authnav-b:#0a5579;
  --zoa-authnav-ink:#eefbfc;
  --zoa-authnav-cyan:#63e0d2;
  --zoa-authnav-mint:#54dca9;
  --zoa-authnav-line:rgba(99,224,210,.28);
}

/* --------------------------------------------------------------------------
   Barre principale : pleine largeur dès le départ.
   -------------------------------------------------------------------------- */

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2{
  position:sticky;
  top:0;
  z-index:20000;
  width:100%;
  margin:0;
  padding:0 18px;
  border:0;
  border-bottom:0;
  background:
    radial-gradient(540px 130px at 76% -20%,rgba(84,220,169,.10),transparent 72%),
    linear-gradient(110deg,rgba(5,45,79,.985),rgba(7,74,108,.985));
  box-shadow:
    0 10px 26px rgba(3,29,53,.18),
    inset 0 -1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar{
  position:relative;
  isolation:isolate;
  overflow:visible;
  width:min(1380px,100%);
  min-height:66px;
  margin:0 auto;
  padding:7px 8px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:14px;
}

/* Fond animé : anneaux + halos comme les autres menus V2. */
body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.72;
  background:
    radial-gradient(circle at 86% 44%,
      transparent 0 32px,
      rgba(106,229,224,.16) 33px 34px,
      transparent 35px 54px,
      rgba(106,229,224,.095) 55px 56px,
      transparent 57px 82px,
      rgba(106,229,224,.050) 83px 84px,
      transparent 85px),
    radial-gradient(circle at 68% 118%,
      transparent 0 48px,
      rgba(90,211,216,.095) 49px 50px,
      transparent 51px 76px,
      rgba(90,211,216,.050) 77px 78px,
      transparent 79px),
    radial-gradient(circle at 24% -18%,
      transparent 0 26px,
      rgba(112,236,225,.10) 27px 28px,
      transparent 29px 43px,
      rgba(112,236,225,.045) 44px 45px,
      transparent 46px);
  animation:zoaAuthNavRings 12s ease-in-out infinite alternate;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.70;
  filter:blur(8px);
  background:
    radial-gradient(220px 110px at 88% 36%,
      rgba(77,224,210,.18),
      rgba(77,224,210,.075) 42%,
      transparent 72%),
    radial-gradient(250px 130px at 56% 108%,
      rgba(28,150,198,.15),
      rgba(28,150,198,.055) 46%,
      transparent 74%),
    radial-gradient(180px 90px at 24% 18%,
      rgba(84,220,169,.095),
      transparent 72%);
  animation:zoaAuthNavHalo 9s ease-in-out infinite alternate;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar > *{
  position:relative;
  z-index:1;
}

/* --------------------------------------------------------------------------
   Logo
   -------------------------------------------------------------------------- */

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar__brand{
  grid-column:2;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  text-decoration:none;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-nav-logo{
  content:url("/modules/zoaicp/views/img/zoanthuslab_logo_mini_dark.svg")!important;
  display:block;
  width:auto;
  height:38px;
  max-width:180px;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.14));
}

/* --------------------------------------------------------------------------
   Zone droite : connexion + langue.
   -------------------------------------------------------------------------- */

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-dd--login{
  grid-column:3;
  justify-self:end;
  position:relative;
  z-index:60;
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-auth-nav-login{
  min-height:42px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid rgba(99,224,210,.62);
  border-radius:12px;
  color:#07345f!important;
  background:
    linear-gradient(135deg,#63e0d2,#54dca9)!important;
  box-shadow:
    0 7px 18px rgba(2,29,55,.18),
    inset 0 1px 0 rgba(255,255,255,.28);
  font-size:12px;
  font-weight:900;
  text-decoration:none!important;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    filter .18s ease;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-auth-nav-login:hover{
  transform:translateY(-1px);
  filter:brightness(1.035);
  box-shadow:
    0 9px 22px rgba(2,29,55,.22),
    inset 0 1px 0 rgba(255,255,255,.34);
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-auth-nav-login .zoa-lottie-ico{
  flex:0 0 auto;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-btn{
  min-width:82px;
  height:42px;
  padding:0 11px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid rgba(99,224,210,.26);
  border-radius:12px;
  color:var(--zoa-authnav-ink);
  background:
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 4px 12px rgba(2,29,55,.10);
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-code{
  color:#fff!important;
  font-size:12px;
  font-weight:900;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-caret{
  width:0;
  height:0;
  margin-left:2px;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-bottom:0;
  border-top:5px solid rgba(238,251,252,.80);
  transition:transform .18s ease;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-dd.is-open .zoa-lang-caret{
  transform:rotate(180deg);
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-menu{
  position:absolute;
  z-index:1000;
  display:none;
  top:calc(100% + 10px);
  right:0;
  left:auto;
  min-width:94px;
  padding:7px;
  border:1px solid rgba(99,224,210,.28);
  border-radius:14px;
  background:
    radial-gradient(220px 80px at 100% 0%,rgba(84,220,169,.10),transparent 70%),
    linear-gradient(145deg,#07345f,#084b73);
  box-shadow:0 18px 44px rgba(4,31,59,.30);
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-dd.is-open .zoa-lang-menu{
  display:block;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-item{
  min-height:38px;
  padding:6px 8px;
  display:flex;
  align-items:center;
  gap:7px;
  border-radius:9px;
  color:var(--zoa-authnav-ink);
  text-decoration:none!important;
}


body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-menu .zoa-lang-code{
  color:#fff!important;
}

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-item:hover{
  background:rgba(99,224,210,.10);
}

/* Supprime la bordure blanche/grise historique du menu login. */
body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2,
body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar{
  border-bottom-color:transparent!important;
}

/* --------------------------------------------------------------------------
   Application mobile : conserver le décalage statusbar existant.
   -------------------------------------------------------------------------- */

body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2[data-is-app="1"]{
  top:var(--zoa-app-top-gap,34px);
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

@media (max-width:767.98px){
  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2{
    padding:0 8px;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar{
    min-height:58px;
    grid-template-columns:auto minmax(8px,1fr) auto;
    gap:8px;
    padding:6px 2px;
  }

  /* Logo clairement aligne a gauche sur mobile. */
  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar__brand{
    grid-column:1;
    justify-self:start;
    justify-content:flex-start;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-nav-logo{
    height:30px!important;
    max-width:126px!important;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-dd--login{
    grid-column:3;
    justify-self:end;
    margin-left:0;
    gap:6px;
  }

  /* Le libelle Connexion reste visible : plus de bouton icone-only. */
  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-auth-nav-login{
    width:auto;
    min-width:0;
    min-height:40px;
    padding:0 11px;
    gap:6px;
    font-size:11px;
    line-height:1;
    white-space:nowrap;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-auth-nav-login .zoa-lottie-ico{
    width:18px!important;
    height:18px!important;
    margin:0!important;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-btn{
    min-width:68px;
    height:40px;
    padding:0 8px;
  }
}

@media (max-width:380px){
  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2{
    padding:0 6px;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar{
    gap:5px;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-nav-logo{
    height:28px!important;
    max-width:112px!important;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-auth-nav-login{
    padding:0 9px;
    gap:5px;
    font-size:10.5px;
  }

  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-lang-btn{
    min-width:64px;
    padding:0 7px;
  }
}

@keyframes zoaAuthNavRings{
  0%{transform:translate3d(0,0,0) scale(1);opacity:.56;}
  40%{transform:translate3d(-18px,5px,0) scale(1.025);opacity:.78;}
  72%{transform:translate3d(14px,-3px,0) scale(.985);opacity:.67;}
  100%{transform:translate3d(-5px,7px,0) scale(1.015);opacity:.73;}
}

@keyframes zoaAuthNavHalo{
  0%{transform:translate3d(-15px,2px,0) scale(.94);opacity:.44;}
  45%{transform:translate3d(34px,7px,0) scale(1.10);opacity:.75;}
  100%{transform:translate3d(46px,3px,0) scale(1.07);opacity:.68;}
}

@media (prefers-reduced-motion:reduce){
  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar::before,
  body#module-zoaicp-lab .zoa-topnav.zoa-topnav--login.zoa-auth-main-nav-v2 .zoa-loginbar::after{
    animation:none!important;
  }
}
