/* ============================================================
   CARDS — caixas brancas das duas áreas e os KPIs.
   ============================================================ */

/* Card da área do aluno */
.card {
  background: var(--sup);
  border: 1px solid var(--borda);
  border-radius: 8px;
  padding: 24px;
}
.card--compacto {
  padding: 20px;
}
.card--sem-padding {
  padding: 0;
  overflow: hidden;
}

/* Card do painel admin (borda mais clara, raio maior) */
.card-admin {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border-light);
  border-radius: 10px;
  padding: 18px 20px;
}
.card-admin--sem-padding {
  padding: 0;
  overflow: hidden;
}

/* KPI (dashboard/relatórios) */
.kpi {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border-light);
  border-radius: 10px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.kpi__valor {
  font-size: 24px;
  font-weight: 700;
  color: var(--marca-texto);
  margin: 0;
  line-height: 1;
}
.kpi__rotulo {
  font-size: 12px;
  color: var(--color-text-muted);
  font-weight: 500;
}

/* Estado vazio centralizado (listas sem itens; td.vazio vence .tabela td) */
.vazio,
td.vazio {
  text-align: center;
  padding: 48px 20px;
  color: var(--color-text-faint);
  font-size: 14px;
}
