/* R15-SAFE6 LanInno public navigation fixed.
   Header HTML is injected server-side by laninno_public_ui_v2.py.
   No document.body.innerHTML.
*/

:root{
  --li-nav-ink:#0b1020;
  --li-nav-navy:#0b163f;
  --li-nav-muted:#667085;
  --li-nav-soft:#f5f7fb;
  --li-nav-line:#e5e7eb;
}

.li-v2-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid #edf2f7;
  backdrop-filter:blur(14px);
}

.li-v2-header-inner{
  max-width:1480px;
  min-height:96px;
  margin:0 auto;
  padding:0 26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.li-v2-brand{
  display:flex;
  align-items:center;
  gap:16px;
  text-decoration:none;
  flex:0 0 auto;
}

.li-v2-logo-fallback{
  width:70px;
  height:70px;
  border-radius:22px;
  background:linear-gradient(135deg,#17458B 0%,#173F91 42%,#0F7171 100%);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  font-weight:1000;
  letter-spacing:-.07em;
  box-shadow:0 10px 24px rgba(15,23,42,.12);
}

.li-v2-brand-text{
  display:block;
}

.li-v2-brand-text strong{
  display:block;
  color:#0b163f;
  font-size:32px;
  font-weight:1000;
  line-height:1.02;
  letter-spacing:-.055em;
}

.li-v2-brand-text span{
  display:block;
  color:#667085;
  font-size:15px;
  font-weight:900;
  line-height:1.2;
  margin-top:6px;
}

.li-v2-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:nowrap;
}

.li-v2-nav a{
  text-decoration:none;
  color:#344054;
  font-size:18px;
  font-weight:1000;
  padding:12px 14px;
  border-radius:999px;
  white-space:nowrap;
}

.li-v2-nav a:hover{
  background:#f1f5f9;
}

.li-v2-nav a.li-v2-login{
  background:#0b163f;
  color:#fff;
  padding:17px 27px;
  box-shadow:0 12px 26px rgba(11,22,63,.20);
}

body.li-product-page .li-v2-header-inner{
  justify-content:flex-start;
}

body.li-product-page .li-v2-nav{
  display:none;
}

/* Hide old template headers after the canonical v2 header is injected. */
body.li-public-page .site-top,
body.li-public-page .top,
body.li-public-page .li-site-header,
body.li-public-page header:not(.li-v2-header),
body.li-product-page .site-top,
body.li-product-page .top,
body.li-product-page .li-site-header,
body.li-product-page header:not(.li-v2-header){
  display:none!important;
}

/* Personal hero image fallback. */
body.li-public-page .hero-visual.card-visual,
body.li-public-page .personal-hero-visual,
body.li-public-page .personal-hero-figure,
body.li-public-page .personal-hero-art{
  background:#fff url("/static/img/personal/personal_hero_matrix.svg") center/82% no-repeat!important;
}

body.li-public-page .hero-visual.card-visual img,
body.li-public-page .personal-hero-visual img,
body.li-public-page .personal-hero-figure img,
body.li-public-page .personal-hero-art img{
  max-width:100%;
  height:auto;
  display:block;
}

@media(max-width:1180px){
  .li-v2-header-inner{
    min-height:auto;
    padding:18px 22px;
    align-items:flex-start;
    flex-direction:column;
  }

  .li-v2-nav{
    width:100%;
    overflow-x:auto;
    justify-content:flex-start;
    padding-bottom:4px;
  }
}

@media(max-width:680px){
  .li-v2-logo-fallback{
    width:56px;
    height:56px;
    border-radius:18px;
    font-size:22px;
  }

  .li-v2-brand-text strong{
    font-size:24px;
  }

  .li-v2-brand-text span{
    font-size:13px;
  }

  .li-v2-nav a{
    font-size:15px;
    padding:9px 10px;
  }

  .li-v2-nav a.li-v2-login{
    padding:11px 16px;
  }
}
