/* Usuários e perfis. */

.usuarios-intro { margin: 0; color: var(--text-2); font-size: 16px; }

.usuarios-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; margin-top: 16px; }

.usuario-card .card-body { display: flex; flex-direction: column; gap: 12px; }
.usuario-card.inativo { opacity: .65; }

.usuario-topo { display: flex; align-items: center; gap: 12px; }

.usuario-avatar {
    width: 48px; height: 48px;
    border-radius: 50%;
    background: var(--ink);
    color: var(--paper);
    font-weight: 800;
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}

.usuario-dados { min-width: 0; }
.usuario-nome { font-weight: 800; font-size: 17px; color: var(--ink); }
.usuario-email { color: var(--muted); font-size: 14.5px; overflow-wrap: anywhere; }

.usuario-voce {
    font-family: var(--font-mono);
    font-size: 11px;
    text-transform: uppercase;
    background: var(--accent-tint);
    color: var(--accent-texto);
    border-radius: var(--r-chip);
    padding: 1px 6px;
    vertical-align: middle;
}

.usuario-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.usuario-perfil { font-weight: 700; font-size: 14px; padding: 4px 10px; border-radius: 999px; background: var(--line-soft); color: var(--ink); }
.usuario-situacao { font-size: 13.5px; padding: 4px 10px; border-radius: 999px; background: var(--danger-tint); color: var(--danger); }
.usuario-situacao.aviso { background: var(--warning-tint); color: var(--warning); }
.usuario-acoes { display: flex; gap: 8px; flex-wrap: wrap; }

/* Senha provisória */
.senha-card p { font-size: 16px; color: var(--text-2); }
.senha-provisoria {
    font-family: var(--font-mono);
    font-size: 34px;
    font-weight: 500;
    letter-spacing: .12em;
    text-align: center;
    padding: 18px;
    margin: 8px 0 12px;
    border: 2px dashed var(--accent-texto);
    border-radius: var(--r-tile);
    background: var(--surface-2);
    color: var(--ink);
    user-select: all;
}
