:root {
  /* Severidade semantica (use sempre estas vars, NUNCA hex hardcoded) */
  --severity-critical: #d62828;   /* atraso, vencido, severo */
  --severity-warning:  #f59e0b;   /* aviso, em risco */
  --severity-info:     #1e6fdb;   /* neutro, info */
  --severity-success:  #1f9d57;   /* feito, ok */

  /* Cores funcionais */
  --funcao-tempo:      #7d57e0;   /* RAT, IA, Mestre */
  --funcao-custo:      #0ea5b7;   /* financeiro */
  --funcao-progresso:  #f59e0b;   /* progresso geral */

  /* Largura padrao de relatorios */
  --report-width:      960px;
  --report-wide:       1180px;
  --report-narrow:     720px;

  /* Espacamentos canonicos */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;

  /* Border-radius padrao */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
}

/* Helpers semanticos pra uso direto em markup */
.help4-pill-critical { background: var(--severity-critical); color: #fff; padding: 2px 8px; border-radius: var(--radius-sm); font-size: .72rem; font-weight: 800; }
.help4-pill-warning  { background: var(--severity-warning);  color: #fff; padding: 2px 8px; border-radius: var(--radius-sm); font-size: .72rem; font-weight: 800; }
.help4-pill-info     { background: var(--severity-info);     color: #fff; padding: 2px 8px; border-radius: var(--radius-sm); font-size: .72rem; font-weight: 800; }
.help4-pill-success  { background: var(--severity-success);  color: #fff; padding: 2px 8px; border-radius: var(--radius-sm); font-size: .72rem; font-weight: 800; }

/* Popup de ESCRITA (atribuicoes, plano de carreira): a caixa e larga porque o conteudo e texto
   em volume, nao formulario. Fica aqui e nao no <style> do popup porque dois componentes usam
   a mesma classe — e o <style> de um so existe no DOM quando aquele popup esta aberto. */
.pa-dlg { max-width: 1340px !important; }
.pa-dlg-body { max-height: calc(100vh - 210px); }
