/* Navegação lateral */
.nav-link {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 0.75rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: rgba(255,255,255,0.75);
  transition: background-color 0.15s, color 0.15s;
  text-decoration: none;
}
.nav-link:hover { background-color: rgba(255,255,255,0.12); color: white; }
.nav-active { background-color: rgba(255,255,255,0.18) !important; color: white !important; }

/* Badges de status */
.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 600;
  border-width: 1px;
  border-style: solid;
}
.badge-success  { background: #dcfce7; color: #166534; border-color: #bbf7d0; }
.badge-danger   { background: #fee2e2; color: #991b1b; border-color: #fecaca; }
.badge-warning  { background: #fef9c3; color: #854d0e; border-color: #fef08a; }
.badge-orange   { background: #ffedd5; color: #9a3412; border-color: #fed7aa; }
.badge-info     { background: #dbeafe; color: #1e40af; border-color: #bfdbfe; }
.badge-purple   { background: #f3e8ff; color: #6b21a8; border-color: #e9d5ff; }
.badge-teal     { background: #ccfbf1; color: #134e4a; border-color: #99f6e4; }
.badge-gray     { background: #f3f4f6; color: #374151; border-color: #e5e7eb; }

/* Utilitários */
.line-clamp-1 { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.line-clamp-2 { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

/* Scrollbar customizada */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #9ca3af; }
