/* Aba Usuários — BKon OS (ver js/usuarios.js). Só tokens do portal. */
.us-filtros { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-bottom: 16px; }
.us-abas { display: inline-flex; padding: 3px; gap: 2px; background: var(--bg-subtle); border: 1px solid var(--border); border-radius: var(--radius-md); }
.us-abas button {
  all: unset; box-sizing: border-box; cursor: pointer; padding: 8px 14px; min-height: 36px;
  font-size: 13px; color: var(--text-secondary); border-radius: var(--radius-sm);
}
.us-abas button.is-ativo { background: var(--bg-card); color: var(--text-primary); box-shadow: var(--shadow-card); font-weight: 600; }
.us-abas button:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 1px; }
.us-busca { flex: 1 1 260px; max-width: 420px; }

.us-lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.us-item {
  display: grid; grid-template-columns: 40px minmax(0, 1fr) auto auto; gap: 14px; align-items: center;
  padding: 14px 16px; background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-lg);
}
.us-item.is-desativado { opacity: .65; }
.us-avatar {
  width: 40px; height: 40px; border-radius: var(--radius-full); display: grid; place-items: center;
  background: var(--accent-soft); color: var(--accent-text); font-size: 13px; font-weight: 700;
}
.us-info { min-width: 0; }
.us-nome { margin: 0; font-weight: 600; color: var(--text-primary); display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.us-meta { margin: 2px 0 0; font-size: 12px; color: var(--text-muted); display: flex; flex-wrap: wrap; gap: 4px 14px; }
.us-meta span { overflow-wrap: anywhere; }
.us-tags { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.us-acoes { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.us-perigo { color: var(--danger); }

.us-vazio { padding: 32px 16px; text-align: center; color: var(--text-muted); border: 1px dashed var(--border); border-radius: var(--radius-lg); }
.us-esqueleto { height: 68px; margin-bottom: 8px; border-radius: var(--radius-lg); background: var(--bg-subtle); animation: us-pulsar 1.2s ease-in-out infinite; }
@keyframes us-pulsar { 50% { opacity: .55; } }

.us-modo { border: 0; padding: 0; margin: 0 0 12px; display: flex; flex-direction: column; gap: 8px; }
.us-modo label { display: flex; gap: 8px; align-items: center; font-size: 14px; color: var(--text-primary); min-height: 32px; }
.us-senha { position: relative; }
.us-senha .form-input { padding-right: 46px; }
.us-olho {
  position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px;
  display: grid; place-items: center; border: 0; background: transparent; color: var(--text-muted); cursor: pointer; border-radius: var(--radius-sm);
}
.us-olho[aria-pressed="true"] { color: var(--accent-text); }
.us-erro { color: var(--danger); font-size: 13px; min-height: 18px; margin: 4px 0 0; }
.us-texto { color: var(--text-secondary); font-size: 14px; margin: 0 0 12px; }
.us-link__caixa { display: flex; gap: 8px; }
.us-link__caixa .form-input { flex: 1; font-size: 12px; }

@media (max-width: 860px) {
  .us-item { grid-template-columns: 40px minmax(0, 1fr); }
  .us-tags, .us-acoes { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .us-esqueleto { animation: none; } }
.us-filtros .sr-only, #screen-admin-usuarios .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
