/* =================================================
   Customizações que o Tailwind via CDN não dá conta.
   ================================================= */

/* ---------- Pílulas de prioridade ---------- */
.priority-pill { display:inline-block; padding:2px 10px; border-radius:9999px; font-weight:600; font-size:.75rem; }
.priority-Crítica   { background:#fee2e2; color:#7f1d1d; box-shadow: inset 0 0 0 1px #fca5a5; }
.priority-Alta      { background:#ffedd5; color:#7c2d12; box-shadow: inset 0 0 0 1px #fdba74; }
.priority-Média     { background:#fef9c3; color:#713f12; box-shadow: inset 0 0 0 1px #fde047; }
.priority-Informativa { background:#f1f5f9; color:#334155; box-shadow: inset 0 0 0 1px #cbd5e1; }

/* ---------- Borda lateral do card por prioridade ---------- */
.card-priority-Crítica   { border-left: 3px solid #E24B4A; }
.card-priority-Alta      { border-left: 3px solid #EF9F27; }
.card-priority-Média     { border-left: 3px solid #378ADD; }
.card-priority-Informativa { border-left: 1px solid #e2e8f0; }
.card-priority-none      { border-left: 1px solid #e2e8f0; }

/* ---------- Status da norma ---------- */
.status-pill { display:inline-block; padding:2px 10px; border-radius:9999px; font-weight:600; font-size:.7rem; letter-spacing:.02em; }
.status-VIGENTE  { background:#EAF3DE; color:#27500A; }
.status-ALTERADA { background:#FAEEDA; color:#633806; }
.status-REVOGADA { background:#FCEBEB; color:#791F1F; }

/* ---------- Vínculos normativos ---------- */
.vinc-pill { display:inline-block; padding:1px 8px; border-radius:6px; font-weight:600; font-size:.7rem; border:1px solid; }
.vinc-REVOGA        { background:#fef2f2; color:#991b1b; border-color:#fca5a5; }
.vinc-ALTERA_ARTIGO { background:#fffbeb; color:#92400e; border-color:#fcd34d; }
.vinc-ALTERA_ANEXO  { background:#fffbeb; color:#92400e; border-color:#fcd34d; }
.vinc-ACRESCE       { background:#ecfdf5; color:#065f46; border-color:#6ee7b7; }
.vinc-REFERENCIA    { background:#f8fafc; color:#475569; border-color:#cbd5e1; }

/* ---------- Bloco temático: paleta letra → cor ----------
   Inspirada nas cores indicativas de cada eixo da SES/MG. */
.bloco-A { background:#E1F5EE; color:#085041; }
.bloco-B { background:#C8E6C9; color:#1B5E20; }
.bloco-C { background:#DCEDC8; color:#33691E; }
.bloco-D { background:#E1BEE7; color:#4A148C; }
.bloco-E { background:#FFE0B2; color:#E65100; }
.bloco-F { background:#B2EBF2; color:#006064; }
.bloco-G { background:#F0F4C3; color:#827717; }
.bloco-H { background:#CFD8DC; color:#263238; }
.bloco-I { background:#FFCCBC; color:#BF360C; }
.bloco-J { background:#FFF59D; color:#5D4037; }
.bloco-K { background:#ECEFF1; color:#37474F; }
.bloco-L { background:#FFF9C4; color:#F57F17; }
.bloco-M { background:#FFCDD2; color:#7B1F1F; }
.bloco-N { background:#D1C4E9; color:#311B92; }
.bloco-O { background:#B3E5FC; color:#01579B; }
.bloco-P { background:#F8BBD0; color:#880E4F; }
.bloco-Q { background:#C5CAE9; color:#1A237E; }
.bloco-R { background:#FFE082; color:#5D4037; }
.bloco-S { background:#80DEEA; color:#004D40; }
.bloco-T { background:#A5D6A7; color:#1B5E20; }
.bloco-U { background:#CE93D8; color:#4A148C; }
.bloco-V { background:#F48FB1; color:#880E4F; }
.bloco-W { background:#90CAF9; color:#0D47A1; }
.bloco-X { background:#FFAB91; color:#BF360C; }
.bloco-Y { background:#A1887F; color:#3E2723; }
.bloco-default { background:#f1f5f9; color:#475569; }

/* ---------- Tags de cabeçalho (dotação, instrumento, política) ---------- */
.tag-header {
  display:inline-flex; align-items:center; gap:4px;
  padding:3px 10px; border-radius:6px; font-size:.7rem; font-weight:500;
  border:1px solid #e2e8f0; background:#f8fafc; color:#475569;
}
.tag-header.tag-dotacao   { background:#eff6ff; color:#1e40af; border-color:#bfdbfe; }
.tag-header.tag-natureza  { background:#fef3c7; color:#92400e; border-color:#fde68a; }
.tag-header.tag-origem    { background:#f0fdf4; color:#166534; border-color:#bbf7d0; }
.tag-header.tag-instrumento { background:#f5f3ff; color:#5b21b6; border-color:#ddd6fe; }

/* ---------- Stat cards horizontais ---------- */
.stat-card {
  display:flex; flex-direction:column; gap:2px;
  padding:14px 16px; background:white; border:1px solid #e2e8f0; border-radius:8px;
}
.stat-card .stat-label { font-size:.7rem; font-weight:600; color:#64748b; text-transform:uppercase; letter-spacing:.04em; }
.stat-card .stat-value { font-size:1.05rem; font-weight:600; color:#0f172a; line-height:1.3; }
.stat-card .stat-value.danger { color:#A32D2D; }
.stat-card .stat-value.muted  { color:#94a3b8; font-weight:400; }

/* ---------- Metric cards no topo (3 grandes) ---------- */
.metric-card {
  background:white; border:1px solid #e2e8f0; border-radius:10px;
  padding:18px 20px;
  display:flex; flex-direction:column; gap:6px;
}
.metric-card .metric-label { font-size:.72rem; font-weight:600; color:#64748b; text-transform:uppercase; letter-spacing:.04em; }
.metric-card .metric-value { font-size:1.85rem; font-weight:700; color:#0f172a; line-height:1; }
.metric-card .metric-hint  { font-size:.7rem; color:#94a3b8; }
.metric-card.danger .metric-value { color:#A32D2D; }

/* ---------- Linha secundária do card da listagem ---------- */
.card-secondary-line { font-size:.7rem; color:#64748b; line-height:1.5; }
.card-secondary-line strong { color:#475569; }
.card-secondary-line .sep { color:#cbd5e1; margin: 0 6px; }
