/* GeoGi sidebar v2 — only navigation presentation; never changes business forms. */
#nav .nav-tree.is-collapsed > .nav-submenu { display:none; }
#nav .nav-tree[hidden], #nav [hidden] { display:none !important; }
#nav .nav-parent { width:100%; }
#nav .nav-parent .nav-caret {
  margin-left:auto;
  color:#94a3b8;
  font-size:14px;
  font-weight:700;
  line-height:1;
  transition:transform .16s ease;
}
#nav .nav-tree.is-collapsed .nav-caret { transform:rotate(-90deg); }
#nav .nav-parent:focus-visible,
#nav .nav-subitem:focus-visible,
#nav > .nav-group > button:focus-visible {
  outline:2px solid #2f6dff;
  outline-offset:2px;
}
#nav button[data-subview].active { font-weight:750; }
#nav .nav-group { min-width:0; }
#nav .nav-tree { min-width:0; }
#nav .nav-submenu { min-width:0; }
#nav .nav-submenu button { width:100%; }
.geogi-knowledge-layout { display:grid; gap:14px; min-width:0; }
.geogi-knowledge-layout .biz-card { min-width:0; }
.geogi-knowledge-layout .biz-card-body { min-width:0; overflow-x:auto; }
@media(min-width:781px) {
  .sidebar > nav { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; }
  #nav .nav-parent { padding-right:12px; }
}
@media(max-width:780px) {
  /* Horizontal navigation remains usable on mobile without growing the page. */
  .sidebar { min-width:0; max-width:100%; }
  .sidebar > nav { min-width:0; max-width:100%; overflow-x:auto; overflow-y:hidden; }
  #nav .nav-group { align-items:center; }
  #nav .nav-tree { align-items:center; }
  #nav .nav-submenu { flex-shrink:0; }
  #nav .nav-submenu button { width:auto; }
  #nav .nav-parent .nav-caret { margin-left:3px; }
}
@media(prefers-reduced-motion:reduce) {
  #nav .nav-caret { transition:none; }
}
