.bottom-nav{
  position:fixed;
  z-index:50;
  left:0;
  right:0;
  bottom:0;
  height:calc(88px + var(--safe-bottom));
  padding:8px 10px calc(10px + var(--safe-bottom));
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:end;
  background:#18151f;
  border-top:1px solid rgba(255,255,255,.035);
  box-shadow:0 -10px 28px rgba(0,0,0,.28);
}
.nav-item{
  position:relative;
  min-width:0;
  min-height:68px;
  display:grid;
  grid-template-rows:42px 18px;
  justify-items:center;
  align-items:end;
  gap:5px;
  color:rgba(255,255,255,.76);
  -webkit-tap-highlight-color:transparent;
}
.nav-item.active{color:#fff;}
.nav-icon{
  width:44px;
  height:42px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color:currentColor;
  transition:background .12s ease,width .12s ease,color .12s ease;
}
.nav-item.active .nav-icon{
  width:74px;
  background:#6a647f;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.nav-svg{
  width:31px;
  height:31px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:3.25;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.16));
}
.nav-svg-feed{width:32px;height:32px;stroke-width:3.1;fill:none;}
.nav-svg-feed circle{fill:currentColor;stroke:none;}
.nav-svg-star{width:33px;height:33px;fill:currentColor;stroke:currentColor;stroke-width:1.6;}
.nav-svg-mail{width:33px;height:33px;stroke-width:3.05;}
.nav-svg-user{width:33px;height:33px;stroke-width:3.2;}
.nav-label{
  display:block;
  font-size:11px;
  line-height:1;
  font-weight:820;
  letter-spacing:-.025em;
  color:rgba(255,255,255,.82);
  text-align:center;
  white-space:nowrap;
}
.nav-item.active .nav-label{
  color:#fff;
  font-weight:900;
}
.nav-badge{
  position:absolute;
  top:4px;
  right:25%;
  min-width:19px;
  height:19px;
  padding:0 5px;
  display:none;
  place-items:center;
  border-radius:999px;
  background:#ff3865;
  color:#fff;
  font-size:11px;
  line-height:1;
  font-weight:950;
  border:2px solid #18151f;
  box-shadow:0 2px 8px rgba(0,0,0,.32);
}

.nav-badge.is-visible{display:grid;}
.nav-badge[hidden],.nav-badge[aria-hidden="true"]{display:none!important;}
.sidebar-nav{display:none;width:230px;min-height:100svh;position:sticky;top:0;padding:28px 16px;flex-direction:column;gap:10px}.brand-mini{margin-bottom:20px}.brand-mini img{display:block;width:auto;height:58px;object-fit:contain}.side-link{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:14px 16px;border-radius:18px;color:rgba(255,255,255,.64);font-weight:800}.side-link.active,.side-link:hover{background:rgba(255,255,255,.09);color:#fff}.side-badge{flex:0 0 auto;min-width:20px;height:20px;padding:0 6px;display:none;place-items:center;border-radius:999px;background:#ff3865;color:#fff;font-size:11px;line-height:1;font-weight:950;border:2px solid #18151f;box-shadow:0 2px 8px rgba(0,0,0,.32)}.side-badge.is-visible{display:grid}.side-badge[hidden],.side-badge[aria-hidden="true"]{display:none!important}
@media (max-width:390px){
  .bottom-nav{height:calc(84px + var(--safe-bottom));padding-left:8px;padding-right:8px;}
  .nav-item{min-height:64px;grid-template-rows:39px 16px;gap:4px;}
  .nav-icon{width:40px;height:39px;}
  .nav-item.active .nav-icon{width:68px;}
  .nav-svg{width:29px;height:29px;}
  .nav-svg-star,.nav-svg-mail,.nav-svg-user{width:30px;height:30px;}
  .nav-label{font-size:10px;}
  .nav-badge{right:22%;top:3px;min-width:18px;height:18px;font-size:10px;}
}
@media (min-width:900px){.bottom-nav{display:none!important}.sidebar-nav{display:flex!important}}


/* Truo logo duplicate fix: desktop sidebar brand = icon + text */
.brand-mini{
  display:inline-flex!important;
  align-items:center;
  gap:10px;
  margin-bottom:22px;
  color:#fff;
  font-size:30px;
  font-weight:950;
  letter-spacing:-.05em;
  line-height:1;
}
.brand-mini img{
  width:46px!important;
  height:46px!important;
  border-radius:14px;
  object-fit:cover;
  flex:0 0 auto;
}
.brand-mini span{
  display:inline-block;
}

/* v2: light theme navigation cleanup
   Scope: only Mod luminos. Keeps black/classic themes unchanged. */
body.theme-light .bottom-nav{
  background:#fff!important;
  border-top:1px solid rgba(17,17,17,.10)!important;
  box-shadow:0 -1px 0 rgba(17,17,17,.04)!important;
}
body.theme-light .nav-item{
  color:rgba(17,17,17,.72)!important;
}
body.theme-light .nav-item.active{
  color:#111!important;
}
body.theme-light .nav-icon{
  color:currentColor!important;
}
body.theme-light .nav-item.active .nav-icon{
  background:rgba(106,100,127,.22)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.70)!important;
}
body.theme-light .nav-svg{
  filter:none!important;
}
body.theme-light .nav-label{
  color:rgba(17,17,17,.78)!important;
}
body.theme-light .nav-item.active .nav-label{
  color:#111!important;
}
body.theme-light .nav-badge{
  border-color:#fff!important;
  box-shadow:0 2px 8px rgba(17,17,17,.16)!important;
}
body.theme-light .brand-mini{
  color:#111!important;
}
body.theme-light .side-link{
  color:rgba(17,17,17,.66)!important;
}
body.theme-light .side-link.active,
body.theme-light .side-link:hover{
  background:#f3f3f5!important;
  color:#111!important;
}
body.theme-light .side-badge{
  border-color:#fff!important;
  box-shadow:0 2px 8px rgba(17,17,17,.16)!important;
}
