/* ============================================================================
   KRYPTA — assinatura de tabela (v6.9)
   ============================================================================
   Extraída do krypta-core.css do kit padronizador. O core NÃO pode ser
   carregado inteiro (repinta select/input:focus globais e quebraria a
   simulação do WhatsApp em /conversas) — este arquivo traz SÓ a assinatura
   de tabela, escopada às tabelas do CRM (.x-table e .table do Bootstrap).

   A assinatura: cabeçalho em JetBrains Mono, MAIÚSCULO, letter-spacing
   largo. É o que faz uma tabela "parecer KRYPTA".

   Cores: usa os tokens legados (--bg-elev, --border, --text-soft...) que a
   camada krypta-brand.css já re-tokeniza com a paleta oficial nos DOIS
   temas — nenhuma cor escrita à mão aqui.
   ============================================================================ */

table.x-table thead th,
.content .table thead th {
  background-color: var(--bg-elev);
  color: var(--text-soft);
  border-bottom: 1px solid var(--border);
  font-weight: 600;
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-family: var(--krypta-font-mono, 'JetBrains Mono', monospace);
  white-space: nowrap;
}

/* ----------------------------------------------------------------------------
   OVERFLOW FIX (14/08, print do Fábio): o white-space:nowrap do thead acima
   é pensado para tabelas de página inteira. Dentro de CONTÊINERES ESTREITOS
   (~300px) — painel lateral do chat (.chat-side), modal de contato
   (.contact-modal), modal de etapa (#stageFormModal) e os cards do retrato
   da cotação — o nowrap empurrava a tabela para fora do card e o conteúdo
   era CORTADO. Decisão: manter o nowrap global (assinatura) e LIBERAR a
   quebra de linha só nesses contextos + na classe utilitária .k-thead-wrap
   (aplicada no wrapper rolável das tabelas de faixas etárias do retrato).
   A assinatura KRYPTA (mono, maiúsculo, letter-spacing) permanece — só o
   white-space muda. Estas regras precisam vir DEPOIS da assinatura: mesma
   especificidade (0,2,2), a ordem decide.
   ---------------------------------------------------------------------------- */
.chat-side .table thead th,
.chat-side table.x-table thead th,
.contact-modal .table thead th,
.contact-modal table.x-table thead th,
#stageFormModal .table thead th,
.k-thead-wrap .table thead th,
.k-thead-wrap table thead th {
  white-space: normal;
  overflow-wrap: anywhere;
}

table.x-table tbody tr:hover td,
.content .table-hover > tbody > tr:hover > * {
  background-color: rgba(0, 209, 255, 0.04);
}

/* Colunas numéricas: alinhamento à direita + mono (padrão do kit) */
table.x-table td.num, table.x-table th.num,
.content .table td.num, .content .table th.num {
  text-align: right;
  font-family: var(--krypta-font-mono, 'JetBrains Mono', monospace);
  font-variant-numeric: tabular-nums;
}

/* Tabela larga rola dentro do próprio container, nunca estoura a página */
.table-responsive { -webkit-overflow-scrolling: touch; }

@media print {
  thead { display: table-header-group; }
  tfoot { display: table-footer-group; }
  tr { page-break-inside: avoid; break-inside: avoid; }
}
