/* NEXUS B15: sidebar único — autosuficiente en FB y MeLi.
   Espeja dashboard/css/style.css con fallbacks (MeLi no define esas vars). */
#sidebar .sidebar-header { padding: 16px 14px 4px; }
#sidebar .sidebar-header h1 { font-size: 1.1rem; margin: 0; color: var(--text-primary, #e4e6f0); }
#sidebar .sidebar-header .subtitle { font-size: 0.72rem; color: var(--text-muted, #9aa0b4); margin-top: 4px; }
#sidebar .sidebar-nav {
  padding: 12px 10px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  overflow-y: auto;
}
#sidebar .nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--text-secondary, #c3c7d4);
  font-size: 0.88rem;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.15s;
}
#sidebar .nav-item:hover { background: var(--bg-hover, #2a2f45); color: var(--text-primary, #e4e6f0); }
#sidebar .nav-item.active { background: var(--accent, #6366f1); color: #fff; }
#sidebar .nav-group { user-select: none; }
#sidebar .nav-group-parent { cursor: pointer; }
#sidebar .nav-group-items { max-height: 0; overflow: hidden; transition: max-height 0.25s ease; }
#sidebar .nav-group.open .nav-group-items { max-height: 60vh; overflow-y: auto; }
#sidebar .nav-sub { padding-left: 34px !important; font-size: 0.84rem !important; }
#sidebar .nav-sub.active {
  color: var(--text-primary, #e4e6f0) !important;
  background: rgba(99, 102, 241, 0.15) !important;
}
#sidebar .nav-group-label {
  display: flex;
  align-items: center;
  padding: 16px 14px 6px;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-muted, #9aa0b4);
}
#sidebar .sidebar-footer {
  padding: 14px 16px;
  border-top: 1px solid var(--border, #2e334a);
  font-size: 0.75rem;
  color: var(--text-muted, #9aa0b4);
}
#sidebar .scope-badge {
  display: inline-block;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 1px 6px;
  border-radius: 999px;
  margin-left: 6px;
  vertical-align: 1px;
  border: 1px solid var(--border, #2e334a);
  background: var(--bg-secondary, #1a1d27);
  color: var(--text-muted, #9aa0b4);
}
#sidebar .scope-multi {
  color: var(--accent, #6366f1);
  border-color: var(--accent, #6366f1);
  background: rgba(99, 102, 241, 0.12);
}
#sidebar .scope-bot {
  color: #a78bfa;
  border-color: #a78bfa;
  background: rgba(167, 139, 250, 0.12);
}
#sidebar .scope-meli {
  color: #f59e0b;
  border-color: #f59e0b;
  background: rgba(245, 158, 11, 0.12);
}
#sidebar .nav-group-parent { cursor: pointer; }
#sidebar .nav-group-parent .arrow {
  margin-left: auto;
  font-size: 0.8rem;
  transition: transform 0.2s;
  color: var(--text-muted, #9aa0b4);
}
#sidebar .nav-group.open .nav-group-parent .arrow { transform: rotate(90deg); }
#sidebar #navFilter {
  width: 100%;
  font-size: 0.8rem;
  padding: 7px 10px;
  border-radius: 8px;
  border: 1px solid var(--border, #2e334a);
  background: var(--bg-secondary, #1a1d27);
  color: var(--text-primary, #e4e6f0);
}
