/* card.css */
.card {
  background: var(--surface-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  padding: var(--space-4);
}

.card--shell {
  border-radius: var(--radius-shell);
  box-shadow: var(--shadow-shell);
  position: relative; /* âncora para o elemento decorativo opcional */
  overflow: hidden;
}

.card__title {
  margin: 0 0 var(--space-2);
  font-size: var(--font-size-md);
  font-weight: 700;
  color: var(--text-primary);
}

.card__subtitle {
  margin: 0 0 var(--space-3);
  font-size: var(--font-size-xs);
  color: var(--text-muted);
}

/* entity-header — bloco reutilizável: avatar/iniciais + nome + descrição +
   ação primária. Usado no cabeçalho do perfil selecionado (revisão visual
   2, item 4) e reaproveitável em qualquer página futura com o mesmo padrão
   (ex.: "Detalhe do negócio"). Revisão visual 3: o elemento decorativo saiu
   do card (item 9, ver components/decorative-optics.css) — z-index aqui não
   é mais necessário para isso, mantido só por ser inócuo/defensivo. */
.entity-header {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: var(--space-3);
  position: relative;
}

.entity-header__avatar {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--brand-navy);
  color: var(--text-on-navy);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-md);
  font-weight: 700;
}

.entity-header__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
}

.entity-header__title {
  margin: 0;
  font-size: var(--font-size-lg);
  font-weight: 700;
  color: var(--text-primary);
}

.entity-header__subtitle {
  margin: 0;
  font-size: var(--font-size-sm);
  color: var(--text-secondary);
}

/* ajuste pequeno 4/6 (revisão visual 3, sem rodada de aprovação): no mockup
   o botão de ação fica alinhado à direita do card, na mesma altura do
   avatar/nome — não empilhado abaixo da descrição. Mobile mantém o
   empilhamento atual (Codex aceitou explicitamente essa diferença). */
.entity-header__action {
  margin-top: var(--space-2);
  flex-basis: 100%;
}

@media (min-width: 901px) {
  .entity-header {
    flex-wrap: nowrap;
    align-items: center;
  }
  .entity-header__action {
    flex-basis: auto;
    margin-top: 0;
    margin-left: auto;
    align-self: center;
  }
}
