/* ============================================================
   Usuarios (vistas/usuarios.js)
   ============================================================ */
.us-barra { display: flex; gap: 0.6rem; flex-wrap: wrap; align-items: center; margin-bottom: 1rem; }
.us-barra input { flex: 2; min-width: 220px; }
.us-barra select { flex: 1; min-width: 150px; }
.us-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 0.7rem; }
.us-tarjeta {
  display: flex; gap: 0.8rem; align-items: flex-start; text-align: left; cursor: pointer; color: var(--text);
  background: var(--bg-card); border: 1px solid var(--border); border-radius: 14px; padding: 0.85rem 0.9rem;
  transition: border-color 0.15s, transform 0.15s;
}
.us-tarjeta:hover { border-color: rgba(139, 92, 246, 0.55); transform: translateY(-1px); }
.us-inactiva { opacity: 0.6; }
.us-avatar {
  flex: none; display: inline-grid; place-items: center; width: 2.3rem; height: 2.3rem; border-radius: 50%;
  background: var(--gradient); color: #fff; font-weight: 700; font-size: 0.8rem;
}
.us-cuerpo { display: flex; flex-direction: column; gap: 0.2rem; min-width: 0; }
.us-nombre { font-weight: 600; font-size: 0.9rem; }
.us-correo { font-size: 0.74rem; color: var(--text-muted); overflow: hidden; text-overflow: ellipsis; }
.us-chips { display: flex; gap: 0.35rem; flex-wrap: wrap; margin-top: 0.2rem; }
.us-alcance { font-size: 0.72rem; padding: 0.1rem 0.5rem; border-radius: 999px; background: rgba(79, 124, 255, 0.12); border: 1px solid rgba(79, 124, 255, 0.35); }
.us-ve { font-size: 0.74rem; color: var(--text-muted); margin-top: 0.15rem; }

/* Ficha de la persona */
.us-seccion { border: 1px solid var(--border); border-radius: 12px; padding: 0.8rem 0.9rem; margin-bottom: 0.8rem; background: var(--bg-card); }
.us-seccion-titulo { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 0.6rem; }
.us-check { display: flex; gap: 0.5rem; align-items: center; font-size: 0.82rem; margin-bottom: 0.6rem; flex-wrap: wrap; }
.us-alcance-grande { font-size: 0.9rem; margin-bottom: 0.5rem; }
.us-paso { font-size: 0.78rem; font-weight: 600; margin: 0.7rem 0 0.35rem; }
