/* Cores tiradas do logo: vermelho (#d82d3f) e azul-marinho (#03223f), fundo cinza-azulado claro */
:root {
  --fundo: #f4f6f9;
  --cartao: #ffffff;
  --texto: #14202e;
  --suave: #5b6675;
  --borda: #dbe1ea;
  --primaria: #03223f;
  --primaria-hover: #12375c;
  --destaque: #d82d3f;
  --destaque-escuro: #1a3d63;
  --destaque-claro: #e9eef5;
  --destaque-gradiente: linear-gradient(90deg, #03223f, #03223f 55%, #d82d3f 55%);
  --erro: #b42318;
  --ok: #2f6b3a;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, "Segoe UI", Roboto, sans-serif; background: var(--fundo); color: var(--texto); }
[hidden] { display: none !important; }

.faixa-teste { background: var(--destaque-claro); color: var(--destaque-escuro); text-align: center; padding: 6px 12px; font-size: 13px; font-weight: 600; }

/* Página inicial (pública) */
.inicio { max-width: 960px; margin: 0 auto; padding: 32px 16px 48px; }
.hero { text-align: center; padding: 24px 0 32px; }
.logo-hero { width: min(280px, 70vw); height: auto; }
.oab-inicio { display: block; font-size: 13px; color: var(--suave); margin-bottom: 6px; }
.hero h1 { margin: 8px 0 0; font-size: clamp(28px, 5vw, 40px); letter-spacing: .5px; }
.hero .sub { color: var(--destaque-escuro); font-weight: 600; text-transform: uppercase; letter-spacing: 2px; font-size: 13px; margin: 6px 0 18px; }
.hero-texto { max-width: 620px; margin: 0 auto; color: var(--suave); line-height: 1.6; }
.so-leitor { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.hero .logo-hero { margin-bottom: 16px; }
.inicio-grade { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.inicio-grade .cartao { margin: 0; line-height: 1.6; }
.inicio-grade a { color: var(--destaque-escuro); }
.rodape { text-align: center; color: var(--suave); font-size: 13px; padding: 20px 16px 28px; border-top: 1px solid var(--borda); }

/* Painel de ferramentas (depois do login) */
.titulo-painel { font-size: 22px; margin: 6px 0 4px; }
.painel-ferramentas { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; margin-top: 16px; }
.ferramenta { display: flex; flex-direction: column; gap: 6px; text-align: left; background: var(--cartao); border: 1px solid var(--borda);
  border-top: 4px solid var(--destaque); border-radius: 10px; padding: 18px; min-height: 120px; color: var(--texto); }
.ferramenta:hover, .ferramenta:focus-visible { border-color: var(--destaque); box-shadow: 0 4px 14px rgba(3, 34, 63, .1); }
.ferramenta-nome { font-weight: 700; font-size: 16px; }
.ferramenta-desc { color: var(--suave); font-size: 14px; line-height: 1.45; }

/* Login */
.tela-login { min-height: 90vh; display: grid; place-items: center; padding: 16px; }
.login { width: 100%; max-width: 380px; display: flex; flex-direction: column; gap: 12px; border-top: 4px solid var(--destaque); }
.login h1 { margin: 0; font-size: 22px; color: var(--texto); text-align: center; }
.sub { margin: 0 0 8px; color: var(--suave); text-align: center; }
.logo { width: 240px; max-width: 100%; align-self: center; margin: 4px 0 8px; }

/* Topo */
.topo { background: #fff; color: var(--texto); padding: 10px 20px; display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; position: relative; box-shadow: 0 1px 6px rgba(3, 34, 63, .08); }
.topo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--destaque-gradiente); }
.marca { display: flex; align-items: center; gap: 14px; }
.logo-topo { height: 54px; width: auto; display: block; }
.titulo-topo { font-weight: 700; font-size: 16px; padding-left: 14px; border-left: 1px solid var(--borda); color: var(--texto); }
.usuario { font-size: 14px; color: var(--suave); }
@media (max-width: 560px) { .titulo-topo { display: none; } }

.conteudo { max-width: 960px; margin: 0 auto; padding: 22px 16px 60px; }
.cartao { background: var(--cartao); border: 1px solid var(--borda); border-radius: 10px; padding: 20px; margin-bottom: 16px; }
.cartao h2 { margin: 0 0 14px; font-size: 17px; color: var(--texto); padding-left: 10px; border-left: 4px solid var(--destaque); }

.grade { display: grid; grid-template-columns: repeat(12, 1fr); gap: 12px; }
.c1 { grid-column: span 1; } .c2 { grid-column: span 2; } .c3 { grid-column: span 3; } .c4 { grid-column: span 4; }
.c5 { grid-column: span 5; } .c6 { grid-column: span 6; } .c7 { grid-column: span 7; } .c8 { grid-column: span 8; } .c12 { grid-column: span 12; }
@media (max-width: 720px) { .grade > label { grid-column: span 12; } }

label { display: flex; flex-direction: column; gap: 4px; font-size: 13px; font-weight: 600; color: #2a3442; }
input, select, textarea { font: inherit; font-weight: 400; padding: 9px 10px; border: 1px solid var(--borda); border-radius: 6px; background: #fff; color: var(--texto); width: 100%; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--destaque-claro); border-color: var(--destaque); }
input.invalido { border-color: var(--erro); }
/* O que é digitado no formulário sai em maiúscula (o e-mail não) */
#formCliente input:not([type=email]):not([type=date]):not([type=file]), #formCliente textarea { text-transform: uppercase; }
.detectado { font-weight: 400; color: var(--suave); }
.detectado.alerta { color: var(--erro); font-weight: 600; }

label.check { flex-direction: row; align-items: center; gap: 8px; font-weight: 500; }
label.check input { width: auto; accent-color: var(--destaque-escuro); }
.campo-rg { display: flex; flex-direction: column; gap: 4px; }
.hiscon { border: 1px solid var(--borda, #dbe1ea); border-radius: 8px; padding: 12px; margin: 12px 0; background: #fbfcfe; }
.linha-hiscon { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.linha-hiscon input[type=file] { flex: 1; min-width: 200px; }
.bloco-hiscon { margin: 12px 0; }
.bloco-hiscon h3 { font-size: 14px; margin: 0 0 6px; color: var(--destaque-escuro); }
.acao-hiscon { border-left: 3px solid var(--destaque); padding: 4px 0 4px 10px; margin: 6px 0; }
.acao-hiscon .titulo { font-weight: 600; font-size: 13px; }
.acao-hiscon .obs { font-size: 12px; color: var(--suave); }
.acao-hiscon label.check { font-size: 13px; overflow-wrap: anywhere; }
.contratos { display: flex; flex-direction: column; gap: 8px; margin: 12px 0; }
.linha-contrato { display: grid; grid-template-columns: 28px 1fr 1fr auto; gap: 8px; align-items: center; }
.linha-contrato .n { color: var(--suave); text-align: right; }
@media (max-width: 600px) { .linha-contrato { grid-template-columns: 22px 1fr auto; } .linha-contrato .numero { grid-column: 2; } }
label.check.mini { font-size: 13px; font-weight: 400; color: var(--suave); }
.dica { color: var(--suave); font-size: 13px; margin: 6px 0 10px; }

button { font: inherit; cursor: pointer; border-radius: 6px; padding: 10px 18px; border: 1px solid transparent; }
.primario { background: var(--primaria); color: #fff; font-weight: 600; border-bottom: 2px solid var(--destaque); }
.primario:hover { background: var(--primaria-hover); }
.secundario { background: #fff; border-color: var(--borda); color: var(--texto); }
.secundario:hover { border-color: var(--destaque); }
.link { background: none; border: none; padding: 0; color: var(--destaque-escuro); text-decoration: underline; font-size: 14px; }
.acoes { display: flex; justify-content: flex-end; gap: 10px; }
.msg { min-height: 20px; margin: 8px 0 0; font-size: 14px; color: var(--erro); }
.msg.ok { color: var(--ok); }

.lista-vertical { display: flex; flex-direction: column; gap: 10px; }
code { background: var(--destaque-claro); padding: 0 4px; border-radius: 3px; }

.destaque { border-color: var(--destaque); background: #f7f9fc; }
.linha-envio { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.linha-envio input[type=file] { flex: 1 1 260px; background: #fff; }
button:disabled { opacity: .5; cursor: not-allowed; }
input.ia { background: #fff4cc; border-color: var(--destaque); }
.ia.exemplo { background: #fff4cc; padding: 0 4px; border-radius: 3px; }
.avisos { margin: 8px 0 0; padding: 10px 14px 10px 30px; background: #fff7ed; border: 1px solid #f2c48d; border-radius: 6px; font-size: 14px; }
.avisos li { margin: 2px 0; }

#seletorModelo { flex: 1 1 260px; }
.abas { display: flex; gap: 4px; max-width: 980px; margin: 16px auto 0; padding: 0 16px; flex-wrap: wrap; }
.aba { background: transparent; border: 1px solid var(--borda); color: var(--texto, inherit); font-weight: 600; }
.aba.voltar { background: #fff; color: var(--destaque-escuro); border-color: var(--borda); }
.aba.voltar:hover { border-color: var(--destaque); }
.aba.ativa { background: var(--destaque-escuro); border-color: var(--destaque-escuro); color: #fff; }
.acoes.esquerda { justify-content: flex-start; margin: 10px 0; flex-wrap: wrap; }
fieldset.grupo { border: 0; padding: 0; margin: 0; min-width: 0; }
fieldset.grupo legend { font-size: 13px; font-weight: 600; padding: 0; margin-bottom: 6px; }
/* Lista de advogados: todas as OABs; as que vão para os documentos em destaque */
#listaAdvogados label.check { flex-wrap: wrap; row-gap: 2px; }
#listaAdvogados small { flex-basis: calc(100% - 24px); margin-left: 24px; line-height: 1.5; }
.nome-adv { font-weight: 700; color: var(--texto, #14202e); letter-spacing: .2px; }
.oab-usada { color: var(--destaque-escuro); font-weight: 700; }
.oab-outra { color: var(--suave); }
#listaAdvogados .dica.legenda { margin: 4px 0 0; font-size: 12px; }
.primeiro-adv { margin-top: 10px; font-size: 13px; }
.opcoes { display: flex; flex-direction: column; gap: 6px; }
.lista-modelos .botoes { display: flex; gap: 6px; flex-shrink: 0; }
.lista-modelos .info { overflow-wrap: anywhere; }
.lista-modelos .info small { display: block; color: var(--suave); }
#formCliente textarea, .painel-modelos textarea { font: inherit; padding: 8px 10px; border: 1px solid var(--borda); border-radius: 6px; resize: vertical; }
.painel-modelos { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--borda); }
.painel-modelos h3 { font-size: 15px; margin: 16px 0 8px; color: var(--destaque-escuro); }
.painel-modelos h3:first-child { margin-top: 0; }
.lista-modelos { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.lista-modelos li { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 8px 12px; border: 1px solid var(--borda); border-radius: 6px; background: #fff; font-size: 14px; }
.lista-modelos .vazio { color: var(--suave); border-style: dashed; }
.lista-modelos button { padding: 4px 10px; font-size: 13px; }
.ajuda { margin-top: 16px; }
.ajuda summary { cursor: pointer; font-weight: 600; color: var(--destaque-escuro); }
.ajuda-marcadores { margin: 4px 0 8px; padding-left: 20px; font-size: 13px; columns: 2 280px; }
.ajuda-marcadores li { margin: 3px 0; break-inside: avoid; }
.detectado.certo { color: var(--ok); font-weight: 600; }
input.valido { border-color: #7fb08a; }

/* Aba Prazos (DJEN) */
.conteudo.largo { max-width: 1240px; }
.grade-prazos { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.grade-prazos label { display: flex; flex-direction: column; gap: 4px; font-size: 13px; font-weight: 600; }
.grade-prazos select, .grade-prazos input { font: inherit; padding: 8px 10px; border: 1px solid var(--borda); border-radius: 6px; background: #fff; }
.grade-prazos select { min-width: 280px; max-width: 100%; }
.cab-relatorio { display: flex; gap: 16px; align-items: center; background: #fff; border: 1px solid var(--borda); border-radius: 10px; padding: 14px 18px; margin-bottom: 14px; }
.cab-relatorio h2 { margin: 0 0 4px; font-size: 18px; }
.cab-relatorio p { margin: 2px 0; font-size: 13px; color: var(--suave); }
.logo-relatorio { height: 58px; width: auto; }
.secao-prazos { margin-bottom: 18px; }
.secao-prazos h3 { font-size: 15px; margin: 0 0 8px; padding-left: 10px; border-left: 4px solid var(--destaque); }
.tabela-prazos { width: 100%; border-collapse: collapse; background: #fff; font-size: 13px; }
.tabela-prazos th { background: var(--destaque-claro); color: var(--destaque-escuro); text-align: left; padding: 7px 8px; font-weight: 700; border-top: 1px solid var(--destaque); border-bottom: 2px solid var(--destaque); }
.tabela-prazos td { border-bottom: 1px solid var(--borda); padding: 7px 8px; vertical-align: top; overflow-wrap: anywhere; }
.tabela-prazos small { color: var(--suave); }
.col-data { white-space: nowrap; }
.col-trecho { width: 46%; }
.trecho { display: -webkit-box; -webkit-line-clamp: 12; -webkit-box-orient: vertical; overflow: hidden; font-size: 12px; color: #333d4a; }
.tabela-prazos tr:hover .trecho { -webkit-line-clamp: unset; }
/* Situação do prazo (selo pequeno), nas cores da logo; vencido continua em vermelho */
.selo-prazo { display: inline-block; margin-top: 2px; padding: 0 4px; border-radius: 3px; font-size: 9px; font-weight: 700; letter-spacing: .2px; line-height: 1.5; }
.selo-prazo { border: 1px solid currentColor; background: transparent; }
.s-vencido .selo-prazo { color: #b42318; }
.s-breve .selo-prazo { color: #a86a00; }
.s-ok .selo-prazo { color: var(--destaque-escuro); }
.s-passou .selo-prazo { color: #777; }
.obs-prazo { display: block; margin-top: 3px; color: var(--destaque-escuro) !important; }
.rodape-relatorio { font-size: 12px; color: var(--suave); margin-top: 8px; }
@media screen and (max-width: 760px) {
  .tabela-prazos thead { display: none; }
  .tabela-prazos tr { display: block; border-bottom: 2px solid var(--borda); }
  .tabela-prazos td { display: block; border: 0; padding: 4px 8px; }
  .col-trecho { width: auto; }
}
@media print {
  body { background: #fff; }
  .topo, .abas, .faixa-teste, .nao-imprimir, #abaChecklist, #abaFraude { display: none !important; }
  .conteudo, .conteudo.largo { max-width: none; padding: 0; margin: 0; }
  .cab-relatorio { border: 0; border-bottom: 2px solid var(--destaque); border-radius: 0; padding: 0 0 8px; }
  .tabela-prazos { font-size: 10.5px; }
  /* Impressão econômica: sem fundos; só texto e linhas douradas */
  .tabela-prazos th { background: none !important; color: var(--destaque-escuro) !important; border-top: 1px solid var(--destaque); border-bottom: 1.5px solid var(--destaque); }
  .tabela-prazos tr { break-inside: avoid; }
  .selo-prazo { background: none !important; }
  .trecho { -webkit-line-clamp: 5; font-size: 9.5px; }
  .secao-prazos h3 { break-after: avoid; }
  .secao-prazos.sem-marcados { display: none !important; }
  /* Retrato: tabela mais compacta */
  body.folha-retrato .tabela-prazos { font-size: 9.5px; }
  body.folha-retrato .tabela-prazos th, body.folha-retrato .tabela-prazos td { padding: 4px 5px; }
  body.folha-retrato .col-trecho { width: 44%; }
  body.folha-retrato .trecho { -webkit-line-clamp: 10; font-size: 8.5px; }
  body.folha-retrato .logo-relatorio { height: 40px; }
}
.barra-impressao { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 10px 0; }
.barra-impressao label { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; }
.barra-impressao select { font: inherit; padding: 8px 10px; border: 1px solid var(--borda); border-radius: 6px; background: #fff; }
.barra-impressao .dica { margin: 0; }
tr.nao-imprimir td:not(:first-child) { opacity: .45; }
.barra-impressao.direita { justify-content: flex-end; }

/* Gerenciar equipe */
.opcoes-linha { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 4px 0 8px; }
.lista-contas { display: flex; flex-direction: column; gap: 10px; }
.conta { border: 1px solid var(--borda); border-radius: 8px; padding: 12px 14px; background: #fff; }
.conta.desativada { background: #f2f4f7; opacity: .8; }
.conta-topo { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; align-items: baseline; }
.conta-nome { font-weight: 700; overflow-wrap: anywhere; }
.conta-email { color: var(--suave); font-size: 13px; overflow-wrap: anywhere; }
.selo { font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 999px; background: var(--destaque-claro); color: var(--destaque-escuro); }
.selo.off { background: #f3dcdc; color: var(--erro); }
.conta-info { color: var(--suave); font-size: 12px; margin: 4px 0 8px; }
.conta-botoes { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.conta-botoes button { padding: 5px 10px; font-size: 13px; }

/* Cumprimento de sentença */
#abaCumprimento textarea { font: inherit; padding: 8px 10px; border: 1px solid var(--borda); border-radius: 6px; resize: vertical; }
.linha-credito { margin-bottom: 6px; align-items: end; }
.tabela-resumo td.valor { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.tabela-resumo tr.forte td { font-weight: 700; background: #f3f6fa; }
.tabela-resumo tr:last-child td { background: #03223f; color: #ffffff; font-size: 15px; }
#abaCumprimento details { margin-top: 12px; }
#abaCumprimento summary { cursor: pointer; font-weight: 600; }
.tabela-rolagem { max-height: 420px; overflow: auto; margin-top: 8px; }
#cumprimentoParcelas td { font-variant-numeric: tabular-nums; }
.leitura-processo { margin-top: 10px; padding: 14px 16px; background: #f3f6fa; border: 1px solid var(--borda); border-left: 4px solid var(--destaque); border-radius: 8px; }
.leitura-processo h3 { margin: 0 0 6px; font-size: 15px; }
.leitura-processo p { margin: 4px 0; font-size: 14px; }
#processoAvisos .aviso { background: #fff4cc; border: 1px solid #e8cf7a; border-radius: 6px; padding: 6px 10px; margin: 6px 0; font-size: 13px; }
#processoFontes { font-size: 13px; margin: 6px 0 0; padding-left: 18px; }
#abaCumprimento select.ia, #abaCumprimento textarea.ia { background: #fff4cc; border-color: var(--destaque); }

/* Ferramentas Crefisa */
#crefisaComAvisos .aviso, #crefisaSemAvisos .aviso { background: #fff4cc; border: 1px solid #e8cf7a; border-radius: 6px; padding: 6px 10px; margin: 6px 0; font-size: 13px; }
#abaCrefisaCom select.ia, #abaCrefisaSem select.ia, #abaCrefisaCom textarea.ia { background: #fff4cc; border-color: var(--destaque); }
.tabela-crefisa td, .tabela-crefisa th { white-space: nowrap; font-size: 13px; vertical-align: middle; }
.tabela-crefisa input:not([type="checkbox"]), .tabela-crefisa select { width: auto; min-width: 0; padding: 4px 6px; font-size: 13px; }
.tabela-crefisa .dica { font-size: 11px; margin: 0; }
.crefisa-manual { border-top: 1px dashed var(--linha, #dbe1ea); padding-top: 10px; margin-top: 10px; }
#crefisaSemCenarios h3 { margin: 14px 0 6px; font-size: 15px; }

/* Análise de fraude em lote */
.mapa-item { border: 1px solid #dbe1ea; border-radius: 8px; padding: 8px 12px; margin: 8px 0; background: #fff; }
.mapa-item summary { display: flex; align-items: center; gap: 10px; cursor: pointer; flex-wrap: wrap; }
.mapa-item .mapa-titulo { flex: 1 1 260px; font-weight: 600; font-size: 14px; }
.mapa-item.erro { border-color: #e0a0a0; background: #fff6f6; }
.mapa-item .alerta { margin: 6px 0; color: var(--erro); font-weight: 600; }

/* Prazos: separação e filtro por estado */
.filtro-estados { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; margin: 10px 0; padding: 10px 12px; background: #fff; border: 1px solid var(--borda); border-radius: 8px; font-size: 14px; }
.filtro-estados label.check { display: inline-flex; gap: 5px; font-weight: 600; }
.filtro-estados small { color: var(--suave); font-weight: 400; }
.filtro-estados .link { padding: 2px 4px; }
.bloco-estado { margin-bottom: 22px; }
.titulo-estado { font-size: 18px; margin: 20px 0 10px; padding: 4px 0 5px; background: none; color: var(--destaque-escuro); text-align: center; letter-spacing: .5px; border-top: 1.5px solid var(--destaque); border-bottom: 1.5px solid var(--destaque); }
.titulo-estado small { display: block; margin: 1px 0 0 !important; }
.tipo-prazo { display: inline-block; font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .3px; color: var(--destaque-escuro); border-bottom: 1px solid var(--destaque); margin-bottom: 2px; }
.titulo-estado small { color: var(--suave); font-weight: 400; font-size: 13px; margin-left: 6px; }
.linha-estados-impressao:empty { display: none; }
.linha-estados-impressao { font-size: 13px; color: var(--destaque-escuro); font-weight: 600; margin: 0 0 8px; }
@media print {
  .titulo-estado { font-size: 14px; padding: 3px 0; margin: 12px 0 6px; break-after: avoid; }
  .bloco-estado { margin-bottom: 10px; }
}
/* Prazos: mesmas larguras de coluna em todas as tabelas */
.tabela-prazos { table-layout: fixed; }
.tabela-prazos th:nth-child(1) { width: 34px; }
.tabela-prazos th:nth-child(2) { width: 12%; }
.tabela-prazos th:nth-child(3) { width: 21%; }
.tabela-prazos th:nth-child(4) { width: 16%; }
.tabela-prazos th:nth-child(5) { width: 13%; }
.tabela-prazos th:nth-child(6) { width: auto; }
.tabela-prazos td { overflow-wrap: anywhere; overflow: hidden; }
@media print {
  .tabela-prazos th:nth-child(2) { width: 12%; }
  .tabela-prazos th:nth-child(3) { width: 21%; }
  .tabela-prazos th:nth-child(4) { width: 16%; }
  .tabela-prazos th:nth-child(5) { width: 13%; }
}

/* Prazos: duas partes (prazos em aberto, depois informativos) */
.titulo-parte { font-size: 20px; margin: 22px 0 6px; color: var(--texto); padding-left: 10px; border-left: 5px solid var(--destaque); }
.parte-relatorio[data-aba="info"] { margin-top: 30px; }
.bloco-estado.sem-marcados { opacity: .5; }
@media print {
  .titulo-parte { font-size: 16px; margin: 14px 0 4px; break-after: avoid; }
  .parte-relatorio[data-aba="info"] { break-before: page; margin-top: 0; }
  .bloco-estado.sem-marcados { display: none !important; }
}
@media print {
  /* o título do estado não fica sozinho no pé da página */
  .bloco-estado { break-inside: avoid; }
  .tabela-prazos thead { display: table-header-group; }
}

/* Página inicial: Matriz / Filial no quadro de escritórios */
.tipo-unidade { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; color: var(--destaque); }
