/* =========================================================
   PORTAL P1 - 18º BPM V16
========================================================= */

*{box-sizing:border-box;margin:0;padding:0}

:root{
  --primaria:#0b3d91;
  --primaria-2:#174ea6;
  --fundo:#eef3f8;
  --card:#fff;
  --texto:#1f2937;
  --texto-suave:#64748b;
  --borda:#d9e2ec;
  --hover:#f4f7fb;
  --sidebar:rgba(7,42,101,.94);
  --verde:#2e7d32;
  --vermelho:#c62828;
  --amarelo:#f59e0b;
  --sombra:0 8px 28px rgba(15,23,42,.10);
  --raio:16px;
}

body.dark{
  --fundo:#0f172a;
  --card:#1e293b;
  --texto:#f1f5f9;
  --texto-suave:#a7b4c5;
  --borda:#334155;
  --hover:#27364b;
  --sidebar:rgba(2,12,27,.96);
  --sombra:0 10px 30px rgba(0,0,0,.28);
}

html{scroll-behavior:smooth}
body{
  min-height:100vh;
  font-family:Roboto,Arial,sans-serif;
  background:var(--fundo);
  color:var(--texto);
  transition:background .25s,color .25s;
}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit}

.app{min-height:100vh}
.sidebar{
  position:fixed;
  inset:0 auto 0 0;
  width:260px;
  overflow-y:auto;
  background:var(--sidebar);
  color:#fff;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  z-index:1000;
  box-shadow:8px 0 30px rgba(0,0,0,.12);
}
.logo{
  min-height:150px;
  padding:24px 20px;
  display:flex;
  gap:15px;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.15);
}
.logo img{width:70px;max-height:90px;object-fit:contain}
.logo div{display:flex;flex-direction:column}
.logo strong{font-size:34px;line-height:1}
.logo span{font-size:18px;font-weight:500;margin-top:5px}
.logo small{opacity:.78;margin-top:8px}

.menu-principal{padding:14px 10px}
.menu-item{
  width:100%;
  border:0;
  color:#fff;
  background:transparent;
  display:flex;
  align-items:center;
  gap:13px;
  padding:13px 15px;
  margin:3px 0;
  border-radius:10px;
  text-align:left;
  transition:.2s;
}
.menu-item i{width:22px;text-align:center;font-size:17px}
.menu-item:hover,.menu-item.ativo{background:rgba(255,255,255,.13)}
.menu-item.ativo{box-shadow:inset 4px 0 0 #fff}

.acesso-rapido{
  margin:4px 12px 24px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.18);
}
.acesso-rapido-titulo{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 8px 10px;
  text-transform:uppercase;
  letter-spacing:.8px;
  font-size:12px;
  font-weight:700;
  opacity:.9;
}
.acesso-rapido-titulo #contadorFavoritosMenu{
  min-width:22px;height:22px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(255,255,255,.16);
}
.menu-favoritos-lista{display:grid;gap:4px}
.favorito-menu{
  display:flex;
  align-items:center;
  gap:11px;
  width:100%;
  padding:11px 10px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#fff;
  text-align:left;
  text-decoration:none;
  transition:.2s;
}
.favorito-menu:hover{background:rgba(255,255,255,.12);transform:translateX(2px)}
.favorito-menu i{width:20px;text-align:center}
.favorito-menu span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.favoritos-vazio{padding:12px 8px;font-size:13px;line-height:1.5;opacity:.72}

.estrutura{margin-left:260px;min-height:100vh;display:flex;flex-direction:column}
.topo{
  margin:24px 28px 0;
  padding:22px 26px;
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:var(--raio);
  box-shadow:var(--sombra);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.topo-identidade h1{font-size:28px;color:var(--primaria)}
.topo-identidade p{margin-top:6px;color:var(--texto-suave)}
.topo-informacoes{display:flex;align-items:center;gap:18px;text-align:right}
.topo-informacoes div{display:flex;flex-direction:column;gap:3px}
#relogio{font-size:21px;color:var(--primaria)}
#dataAtual{font-size:13px;color:var(--texto-suave)}

.botao-icone{
  width:42px;height:42px;
  display:grid;place-items:center;
  border:1px solid var(--borda);
  border-radius:12px;
  background:var(--card);
  color:var(--texto);
  transition:.2s;
}
.botao-icone:hover{transform:translateY(-2px);border-color:var(--primaria);color:var(--primaria)}
.botao-icone.discreto{border:0;background:transparent}

.conteudo{padding:26px 28px;flex:1}
.painel-pagina{display:none;animation:entrada .25s ease}
.painel-pagina.ativo{display:block}
@keyframes entrada{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

.pesquisa{
  height:54px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 13px 0 18px;
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:14px;
  box-shadow:var(--sombra);
}
.pesquisa>i{color:var(--texto-suave)}
.pesquisa input{flex:1;border:0;outline:0;background:transparent;color:var(--texto);font-size:16px}

.resumo{
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:18px;
  margin:22px 0;
}
.resumo-card{
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:var(--raio);
  box-shadow:var(--sombra);
  padding:20px;
  display:flex;
  align-items:center;
  gap:16px;
}
.resumo-card>i{
  width:50px;height:50px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(11,61,145,.10);
  color:var(--primaria);
  font-size:22px;
}
.resumo-card div{display:flex;flex-direction:column}
.resumo-card span{font-size:13px;color:var(--texto-suave)}
.resumo-card strong{font-size:27px;margin-top:4px}

.categorias-container{display:grid;gap:22px}
.categoria{
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:var(--raio);
  box-shadow:var(--sombra);
  padding:22px;
}
.categoria-cabecalho{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:18px;
}
.categoria-titulo{display:flex;align-items:center;gap:11px}
.categoria-titulo i{color:var(--primaria);font-size:20px}
.categoria-titulo h2{font-size:20px}
.badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:25px;height:25px;
  padding:0 8px;
  border-radius:20px;
  color:#fff;background:var(--primaria);
  font-size:12px;font-weight:700;
}
.grade-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.link-card{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:94px;
  padding:15px;
  background:var(--hover);
  border:1px solid var(--borda);
  border-radius:13px;
  transition:.2s;
}
.link-card:hover{transform:translateY(-3px);border-color:var(--primaria);background:var(--card)}
.link-icone{
  flex:0 0 48px;height:48px;
  border-radius:14px;
  display:grid;place-items:center;
  color:#fff;background:var(--primaria);
  font-size:20px;
}
.link-info{min-width:0;flex:1}
.link-info h3{font-size:15px;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.link-info p{font-size:12px;color:var(--texto-suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.link-acoes{display:flex;flex-direction:column;gap:4px}
.link-acoes button{
  width:34px;height:34px;
  border:0;border-radius:9px;
  background:transparent;color:var(--texto-suave);
}
.link-acoes button:hover{background:var(--card);color:var(--primaria)}
.link-acoes .favoritado{color:var(--amarelo)}

.cabecalho-painel{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  margin-bottom:20px;
}
.cabecalho-painel h2,.separador-secao h2{color:var(--primaria);font-size:24px}
.cabecalho-painel p,.separador-secao p{color:var(--texto-suave);margin-top:6px}

.botao{
  border:0;border-radius:10px;
  padding:11px 16px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-weight:500;transition:.2s;text-decoration:none;
}
.botao:hover{transform:translateY(-2px)}
.botao.primario{background:var(--primaria);color:#fff}
.botao.secundario{background:var(--primaria-2);color:#fff}
.botao.perigo{background:var(--vermelho);color:#fff}
.botao.neutro{background:var(--hover);color:var(--texto);border:1px solid var(--borda)}
.botao.pequeno{padding:8px 10px;font-size:13px}

.anotacoes-card,.backup-card,.sobre-card{
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:var(--raio);
  box-shadow:var(--sombra);
  padding:22px;
}
#anotacoes{
  width:100%;
  min-height:310px;
  resize:vertical;
  border:1px solid var(--borda);
  border-radius:12px;
  outline:none;
  background:#fffde7;
  color:#222;
  padding:17px;
  line-height:1.6;
}
body.dark #anotacoes{background:#2b3038;color:#fff}
.rodape-anotacoes{display:flex;justify-content:space-between;color:var(--texto-suave);font-size:13px;margin-top:9px}
.acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.separador-secao{margin:30px 0 18px}

.calendario{
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:var(--raio);
  box-shadow:var(--sombra);
  overflow:hidden;
}
.calendario-topo{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:18px 20px;border-bottom:1px solid var(--borda);
}
.calendario-topo h3{text-transform:capitalize;font-size:21px;color:var(--primaria)}
.calendario-navegacao{display:flex;gap:8px}
.calendario-semana,.calendario-grade{display:grid;grid-template-columns:repeat(7,1fr)}
.calendario-semana div{
  padding:12px 6px;text-align:center;font-size:12px;font-weight:700;
  color:var(--texto-suave);background:var(--hover);
}
.dia-calendario{
  min-height:112px;
  padding:9px;
  border-top:1px solid var(--borda);
  border-right:1px solid var(--borda);
  background:var(--card);
  cursor:pointer;
  transition:.15s;
  overflow:hidden;
}
.dia-calendario:nth-child(7n){border-right:0}
.dia-calendario:hover{background:var(--hover)}
.dia-calendario.fora-mes{opacity:.38}
.dia-calendario.hoje{box-shadow:inset 0 0 0 2px var(--primaria)}
.numero-dia{
  width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;
  font-size:13px;font-weight:700;
  margin-bottom:5px;
}
.dia-calendario.hoje .numero-dia{background:var(--primaria);color:#fff}
.evento-mini{
  display:block;
  padding:4px 6px;
  margin-top:4px;
  border-radius:6px;
  background:rgba(11,61,145,.12);
  color:var(--texto);
  font-size:10px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.evento-mini.prazo{border-left:3px solid var(--vermelho)}
.evento-mini.reuniao{border-left:3px solid #1976d2}
.evento-mini.operacao{border-left:3px solid var(--verde)}
.evento-mini.curso{border-left:3px solid #7b1fa2}
.evento-mini.ferias{border-left:3px solid #00838f}
.evento-mini.aniversario{border-left:3px solid #e91e63}
.mais-eventos{display:block;margin-top:4px;color:var(--primaria);font-size:10px;font-weight:700}

.painel-filtros{
  display:grid;grid-template-columns:2fr 1fr;gap:12px;
  background:var(--card);padding:16px;border:1px solid var(--borda);border-radius:14px;
  margin-bottom:18px;
}
.painel-filtros input,.painel-filtros select,.formulario input,.formulario select,.formulario textarea{
  width:100%;
  border:1px solid var(--borda);
  border-radius:10px;
  padding:12px;
  background:var(--card);
  color:var(--texto);
  outline:none;
}
.painel-filtros input:focus,.painel-filtros select:focus,.formulario input:focus,.formulario select:focus,.formulario textarea:focus{
  border-color:var(--primaria);
  box-shadow:0 0 0 3px rgba(11,61,145,.12);
}
.lista-admin{display:grid;gap:10px}
.item-admin{
  background:var(--card);border:1px solid var(--borda);border-radius:13px;
  padding:15px;display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.item-admin-info{min-width:0}
.item-admin-info strong{display:block;margin-bottom:5px}
.item-admin-info small{color:var(--texto-suave);word-break:break-all}
.item-admin-acoes{display:flex;gap:7px}
.backup-card{margin-top:24px}
.backup-card h3{color:var(--primaria)}
.backup-card p{color:var(--texto-suave);margin-top:7px}

.sobre-card{max-width:700px;margin:auto;text-align:center;line-height:1.7}
.icone-sobre{font-size:60px;color:var(--primaria);margin-bottom:16px}
.sobre-card h2{color:var(--primaria)}
.sobre-card hr{border:0;border-top:1px solid var(--borda);margin:22px}

.rodape{
  margin:0 28px 25px;
  padding:18px 22px;
  border-radius:14px;
  background:var(--card);
  border:1px solid var(--borda);
  box-shadow:var(--sombra);
  display:flex;justify-content:space-between;align-items:center;gap:20px;
}
.rodape div{display:flex;flex-direction:column;gap:4px}
.rodape span,.rodape small{color:var(--texto-suave)}

.modal{
  position:fixed;inset:0;z-index:3000;
  display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(2,6,23,.62);
}
.modal.oculto{display:none}
.modal-caixa{
  width:min(680px,100%);
  max-height:92vh;overflow:auto;
  background:var(--card);color:var(--texto);
  border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.35);
}
.modal-topo{
  display:flex;align-items:center;justify-content:space-between;gap:15px;
  padding:18px 21px;border-bottom:1px solid var(--borda);
}
.modal-topo h2{color:var(--primaria);font-size:21px}
.formulario{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:21px}
.formulario label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:500}
.formulario .campo-largo{grid-column:1/-1}
.modal-dia-conteudo{padding:20px}
.modal-dia-caixa{width:min(720px,100%)}
.compromisso-item{
  margin-top:12px;padding:14px;border:1px solid var(--borda);border-radius:12px;background:var(--hover);
}
.compromisso-item-topo{display:flex;justify-content:space-between;gap:12px}
.compromisso-item h4{font-size:15px}
.compromisso-item p{font-size:13px;color:var(--texto-suave);margin-top:6px;line-height:1.5}
.compromisso-acoes{display:flex;gap:6px;flex-shrink:0}
.estado-vazio{
  padding:32px;text-align:center;color:var(--texto-suave);
  background:var(--card);border:1px dashed var(--borda);border-radius:14px;
}
.estado-vazio i{font-size:34px;margin-bottom:12px;color:var(--primaria)}

.notificacoes{position:fixed;top:18px;right:18px;z-index:5000;width:min(350px,calc(100vw - 36px))}
.notificacao{
  margin-bottom:10px;padding:13px 15px;border-radius:11px;
  background:var(--card);border-left:5px solid var(--verde);
  box-shadow:var(--sombra);animation:notificacao .25s ease;
}
.notificacao.erro{border-left-color:var(--vermelho)}
.notificacao.aviso{border-left-color:var(--amarelo)}
@keyframes notificacao{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}

.btn-topo{
  position:fixed;right:24px;bottom:24px;z-index:1200;
  width:48px;height:48px;border:0;border-radius:50%;
  background:var(--primaria);color:#fff;box-shadow:var(--sombra);
  display:none;
}
.btn-topo.visivel{display:block}
.overlay-sidebar{display:none}
.mobile-only{display:none}

@media(max-width:1050px){
  .resumo{grid-template-columns:repeat(2,1fr)}
  .grade-links{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
}
@media(max-width:820px){
  .mobile-only{display:grid}
  .sidebar{transform:translateX(-100%);transition:.25s}
  .sidebar.aberta{transform:translateX(0)}
  .overlay-sidebar{
    position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:900;
  }
  .overlay-sidebar.ativo{display:block}
  .estrutura{margin-left:0}
  .topo{margin:14px 14px 0;padding:16px}
  .topo-identidade h1{font-size:20px}
  .topo-informacoes #dataAtual{display:none}
  .conteudo{padding:18px 14px}
  .rodape{margin:0 14px 15px}
}
@media(max-width:620px){
  .resumo{grid-template-columns:1fr 1fr;gap:10px}
  .resumo-card{padding:14px;gap:10px}
  .resumo-card>i{width:40px;height:40px}
  .resumo-card strong{font-size:22px}
  .categoria{padding:15px}
  .categoria-cabecalho,.cabecalho-painel{align-items:flex-start;flex-direction:column}
  .grade-links{grid-template-columns:1fr}
  .calendario-topo{align-items:flex-start;flex-direction:column}
  .dia-calendario{min-height:82px;padding:5px}
  .evento-mini{font-size:0;height:7px;padding:0}
  .mais-eventos{font-size:0;height:6px;background:var(--primaria);border-radius:4px}
  .calendario-semana div{font-size:10px;padding:9px 2px}
  .formulario{grid-template-columns:1fr}
  .formulario .campo-largo{grid-column:auto}
  .painel-filtros{grid-template-columns:1fr}
  .item-admin{align-items:flex-start;flex-direction:column}
  .rodape{align-items:flex-start;flex-direction:column}
  .topo-informacoes{gap:8px}
  #relogio{font-size:17px}
}
@media print{
  .sidebar,.topo,.rodape,.acoes,.btn-topo,.notificacoes{display:none!important}
  .estrutura{margin:0}
  .conteudo{padding:0}
  body{background:#fff;color:#000}
}


/* WIDGETS DA TELA INICIAL */
.widgets-iniciais{
  display:grid;
  grid-template-columns:minmax(330px,1fr) minmax(460px,1.2fr);
  gap:22px;
  margin-bottom:22px;
  align-items:start;
}
.widget-inicial{
  min-width:0;
}
.widget-cabecalho{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:12px;
}
.widget-cabecalho h2{
  display:flex;
  align-items:center;
  gap:9px;
  font-size:20px;
  color:var(--primaria);
}
.widget-cabecalho p{
  margin-top:4px;
  color:var(--texto-suave);
  font-size:13px;
}
.widget-anotacoes .anotacoes-card{margin:0}
.widget-anotacoes textarea{min-height:285px}
.widget-agenda .calendario{margin:0}
.widget-agenda .dia-calendario{min-height:61px;padding:5px}
.widget-agenda .evento-mini{font-size:8px;padding:2px 4px}

@media (max-width:1180px){
  .widgets-iniciais{grid-template-columns:1fr}
  .widget-anotacoes textarea{min-height:220px}
}

@media (max-width:680px){
  .widget-cabecalho{align-items:flex-start;flex-direction:column}
  .widget-cabecalho .botao{width:100%}
}


/* CONSULTA DE POLICIAL MILITAR */
.sidebar-desenvolvedor{
  margin-top:auto;padding:16px 14px;border-top:1px solid rgba(255,255,255,.14);
  display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.72);font-size:11px;line-height:1.4
}
.sidebar-desenvolvedor i{font-size:16px;color:#ffd54f}
.sidebar-desenvolvedor strong{color:#fff;font-size:12px}
.consulta-pm-card{background:var(--card);border:1px solid var(--borda);border-radius:16px;padding:22px;box-shadow:var(--sombra)}
.consulta-pm-form{max-width:760px}
.consulta-pm-form label{display:block;font-weight:700;margin-bottom:8px;color:var(--texto)}
.consulta-pm-form small{display:block;margin-top:8px;color:var(--texto-suave)}
.consulta-pm-linha{display:grid;grid-template-columns:1fr auto;gap:10px}
.consulta-pm-linha input{width:100%;padding:13px 14px;border:1px solid var(--borda);border-radius:10px;background:var(--card);color:var(--texto);font:inherit;outline:none}
.consulta-pm-linha input:focus{border-color:var(--primaria);box-shadow:0 0 0 3px rgba(11,61,145,.12)}
.status-consulta{margin-top:20px;padding:12px 14px;border-radius:10px;background:var(--hover);color:var(--texto-suave);font-size:14px}
.status-consulta.carregando{color:var(--primaria);font-weight:700}
.status-consulta.erro{background:rgba(198,40,40,.1);color:#c62828}
.status-consulta.sucesso{background:rgba(46,125,50,.1);color:#2e7d32}
.resultado-consulta{margin-top:16px}
.ficha-pm{border:1px solid var(--borda);border-radius:14px;overflow:hidden}
.ficha-pm-topo{display:flex;align-items:center;gap:13px;padding:18px;background:var(--hover)}
.ficha-pm-topo i{font-size:30px;color:var(--primaria)}
.ficha-pm-topo h3{color:var(--primaria);margin-bottom:3px}
.ficha-pm-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.campo-ficha{padding:14px 16px;border-top:1px solid var(--borda);border-right:1px solid var(--borda)}
.campo-ficha:nth-child(even){border-right:0}
.campo-ficha span{display:block;color:var(--texto-suave);font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.campo-ficha strong{display:block;word-break:break-word;color:var(--texto)}
@media(max-width:680px){.consulta-pm-linha{grid-template-columns:1fr}.consulta-pm-linha .botao{width:100%}.ficha-pm-grade{grid-template-columns:1fr}.campo-ficha{border-right:0}}


/* Ajustes V7 */
.sidebar-desenvolvedor{display:flex;align-items:flex-start;gap:10px;padding:16px 20px 22px;border-top:1px solid rgba(255,255,255,.15);font-size:12px;line-height:1.55;color:rgba(255,255,255,.86)}
.sidebar-desenvolvedor>i{margin-top:3px}
.whatsapp-desenvolvedor{display:inline-flex;align-items:center;gap:5px;margin-top:4px;color:#8ff0b2;text-decoration:none;font-weight:700}
.whatsapp-desenvolvedor:hover{text-decoration:underline;color:#fff}
.resultado-consulta{display:grid;gap:16px}


/* MEUS PJES */
.oculto{display:none!important}
.pjes-layout{display:grid;grid-template-columns:minmax(420px,1.2fr) minmax(300px,.8fr);gap:20px;margin-bottom:20px}
.pjes-card{background:var(--card);border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra);padding:22px;margin-bottom:20px}
.pjes-card h3{color:var(--primaria);margin-bottom:18px;display:flex;align-items:center;gap:9px}
.form-pjes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.form-pjes label,.filtros-pjes label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;color:var(--texto)}
.form-pjes input,.form-pjes select,.filtros-pjes input,.filtros-pjes select{width:100%;padding:11px 12px;border:1px solid var(--borda);border-radius:10px;background:var(--card);color:var(--texto);outline:none}
.form-pjes input:focus,.form-pjes select:focus,.filtros-pjes input:focus,.filtros-pjes select:focus{border-color:var(--primaria);box-shadow:0 0 0 3px rgba(11,61,145,.12)}
.form-pjes .campo-largo{grid-column:1/-1}
.pjes-resumo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pjes-resumo-grid>div{padding:16px;border-radius:13px;background:var(--hover);border:1px solid var(--borda);display:flex;flex-direction:column;gap:6px}
.pjes-resumo-grid span{font-size:12px;color:var(--texto-suave)}
.pjes-resumo-grid strong{font-size:21px;color:var(--texto)}
.pjes-resumo-grid .destaque{background:rgba(46,125,50,.1);border-color:rgba(46,125,50,.3)}
.pjes-resumo-grid .destaque strong{color:var(--verde)}
.pjes-filtros-topo,.pjes-lista-topo{display:flex;justify-content:space-between;align-items:center;gap:15px}
.filtros-pjes{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px}
.badge-texto{padding:7px 11px;border-radius:999px;background:var(--hover);color:var(--texto-suave);font-size:12px;border:1px solid var(--borda);text-transform:capitalize}
.tabela-responsiva{overflow-x:auto}
.tabela-pjes{width:100%;border-collapse:collapse;min-width:780px}
.tabela-pjes th,.tabela-pjes td{padding:13px 12px;text-align:left;border-bottom:1px solid var(--borda);font-size:13px}
.tabela-pjes th{color:var(--texto-suave);font-size:11px;letter-spacing:.04em}
.tabela-pjes tbody tr:hover{background:var(--hover)}
.valor-pjes{font-weight:700;color:var(--verde)}
.etiqueta-servico{display:inline-block;padding:5px 8px;border-radius:8px;background:rgba(11,61,145,.1);color:var(--primaria);font-weight:700;font-size:11px}
.acoes-tabela{display:flex;gap:6px}.pequeno-icone{width:34px;height:34px}.excluir-pjes:hover{color:var(--vermelho)!important;border-color:var(--vermelho)!important}
.resumo-mensal-pjes{display:grid;gap:10px}
.mes-pjes{display:grid;grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(120px,.7fr));gap:12px;align-items:center;padding:14px;border:1px solid var(--borda);border-radius:12px;background:var(--hover)}
.mes-pjes>div{display:flex;flex-direction:column;gap:4px}.mes-pjes span,.mes-pjes small{color:var(--texto-suave);font-size:11px}.mes-pjes b{font-size:15px}.mes-total b{color:var(--verde)}
@media(max-width:1100px){.pjes-layout{grid-template-columns:1fr}.filtros-pjes{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.form-pjes,.filtros-pjes{grid-template-columns:1fr}.form-pjes .campo-largo{grid-column:auto}.pjes-resumo-grid{grid-template-columns:1fr}.pjes-filtros-topo,.pjes-lista-topo{align-items:flex-start;flex-direction:column}.mes-pjes{grid-template-columns:1fr 1fr}}

/* V9 - seleção de várias datas no mesmo lançamento */
.campo-datas-pjes{display:flex;flex-direction:column;gap:8px}
.campo-datas-pjes>label{font-size:13px;font-weight:600;color:var(--texto)}
.linha-adicionar-data-pjes{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:center}
.datas-selecionadas-pjes{display:flex;flex-wrap:wrap;gap:8px;min-height:38px;padding:9px;border:1px dashed var(--borda);border-radius:10px;background:var(--hover)}
.data-chip-pjes{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-radius:999px;background:var(--card);border:1px solid var(--borda);font-size:12px;font-weight:600;color:var(--texto)}
.data-chip-pjes>i{color:var(--primaria)}
.data-chip-pjes button{border:0;background:transparent;color:var(--texto-suave);cursor:pointer;width:20px;height:20px;border-radius:50%;display:grid;place-items:center}
.data-chip-pjes button:hover{background:rgba(198,40,40,.12);color:var(--vermelho)}
.nenhuma-data-pjes{font-size:12px;color:var(--texto-suave);align-self:center}
.campo-datas-pjes small{font-size:11px;color:var(--texto-suave);font-weight:400}
@media(max-width:620px){.linha-adicionar-data-pjes{grid-template-columns:1fr}.linha-adicionar-data-pjes .botao{width:100%}}



/* V11 - controle de recebimento diretamente nos lançamentos */
.status-pagamento-pjes{border:0;border-radius:999px;padding:6px 9px 6px 7px;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:.2s;min-width:118px}
.status-pagamento-pjes:hover{transform:translateY(-1px);filter:brightness(.98)}
.status-pagamento-pjes .chave-status-pjes{width:34px;height:19px;border-radius:999px;padding:2px;display:inline-flex;align-items:center;background:rgba(255,255,255,.75);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.status-pagamento-pjes .chave-status-pjes span{width:15px;height:15px;border-radius:50%;background:currentColor;transition:transform .2s}
.status-pagamento-pjes.pago{background:rgba(46,125,50,.14);color:var(--verde)}
.status-pagamento-pjes.pago .chave-status-pjes span{transform:translateX(15px)}
.status-pagamento-pjes.a-receber{background:rgba(211,47,47,.12);color:var(--vermelho,#c62828)}
.status-pagamento-pjes.a-receber .chave-status-pjes span{transform:translateX(0)}
.mes-pago b{color:var(--verde)}
.mes-nao-pago b{color:var(--vermelho,#c62828)}


/* V13 - dashboard do efetivo, aparência e período PJES */
.efetivo-dashboard{margin-bottom:22px}.efetivo-dashboard-topo,.detalhes-efetivo-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.efetivo-dashboard-topo h3,.graduacoes-painel h3,.detalhes-efetivo h3{color:var(--primaria);display:flex;align-items:center;gap:9px}.efetivo-dashboard-topo p{color:var(--texto-suave);margin-top:5px;max-width:820px;font-size:13px}.cards-efetivo{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px;margin:16px 0}.card-efetivo{border:1px solid var(--borda);border-radius:14px;background:var(--card);padding:17px;text-align:left;cursor:pointer;box-shadow:var(--sombra);transition:.2s;color:var(--texto)}.card-efetivo:hover{transform:translateY(-2px);border-color:var(--primaria)}.card-efetivo i{font-size:22px;color:var(--primaria);margin-bottom:12px}.card-efetivo span{display:block;color:var(--texto-suave);font-size:12px}.card-efetivo strong{display:block;font-size:26px;margin-top:4px}.card-efetivo.ferias i{color:#ef6c00}.card-efetivo.licenca i{color:#c62828}.card-efetivo.disponivel i{color:#2e7d32}.graduacoes-painel,.detalhes-efetivo{background:var(--card);border:1px solid var(--borda);border-radius:16px;padding:20px;box-shadow:var(--sombra);margin-top:16px}.lista-graduacoes-pm{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.btn-graduacao{border:1px solid var(--borda);background:var(--hover);color:var(--texto);border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:700}.btn-graduacao:hover{border-color:var(--primaria);color:var(--primaria)}.detalhes-efetivo-topo{margin-bottom:14px}.detalhes-efetivo-topo p{color:var(--texto-suave);margin-top:4px}.filtros-detalhes-pm{margin-bottom:12px}.tabela-efetivo{width:100%;border-collapse:collapse;min-width:1050px}.tabela-efetivo th,.tabela-efetivo td{padding:11px 10px;border-bottom:1px solid var(--borda);font-size:12px;text-align:left;vertical-align:top}.tabela-efetivo th{font-size:10px;color:var(--texto-suave);letter-spacing:.04em;white-space:nowrap}.situacao-chip{display:inline-block;padding:5px 8px;border-radius:999px;font-weight:700;font-size:10px;background:var(--hover)}.vigencia-chip{font-size:10px;font-weight:700}.vigencia-chip.vigente{color:#2e7d32}.vigencia-chip.futuro{color:#ef6c00}.vigencia-chip.encerrado{color:#757575}.aparencia-grid{display:grid;grid-template-columns:repeat(2,minmax(300px,1fr));gap:18px}.aparencia-card{background:var(--card);border:1px solid var(--borda);border-radius:16px;padding:22px;box-shadow:var(--sombra)}.aparencia-card h3{color:var(--primaria);margin-bottom:14px}.aparencia-card label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.aparencia-card select{padding:11px;border:1px solid var(--borda);border-radius:10px;background:var(--card);color:var(--texto)}.temas-rapidos{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tema-opcao{padding:13px;border:1px solid var(--borda);border-radius:10px;background:var(--hover);color:var(--texto);cursor:pointer;font-weight:700}.cores-aparencia{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.cores-aparencia input[type=color]{width:100%;height:42px;border:1px solid var(--borda);border-radius:8px;background:var(--card);padding:3px}.texto-suave{color:var(--texto-suave);font-size:13px;margin-bottom:10px}body.sidebar-direita .sidebar{left:auto;right:0}body.sidebar-direita .estrutura{margin-left:0;margin-right:var(--largura-sidebar)}body.escala-compacta{font-size:14px}body.escala-compacta .conteudo{padding:18px}body.escala-ampla{font-size:17px}body.escala-ampla .conteudo{padding:32px}.widgets-iniciais.agenda-primeiro .widget-agenda{order:-1}.campo-filtro-oculto{display:none!important}
@media(max-width:1200px){.cards-efetivo{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.cards-efetivo,.aparencia-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.cards-efetivo,.aparencia-grid{grid-template-columns:1fr}.efetivo-dashboard-topo,.detalhes-efetivo-topo{flex-direction:column}body.sidebar-direita .estrutura{margin-right:0}.cores-aparencia{grid-template-columns:1fr}}


/* V14 */
.pjes-resumo-topo,.pjes-lista-controles{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pjes-resumo-topo select,.pjes-lista-controles select{border:1px solid var(--borda);border-radius:9px;padding:9px 10px;background:var(--card);color:var(--texto)}
.calendario-multiplo-pjes{border:1px solid var(--borda);border-radius:14px;overflow:hidden;background:var(--card)}.multi-cal-topo{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid var(--borda);text-transform:capitalize}.multi-cal-semana,.multi-cal-grade{display:grid;grid-template-columns:repeat(7,1fr)}.multi-cal-semana span{text-align:center;padding:8px;font-size:12px;font-weight:700;color:var(--texto-suave);background:var(--hover)}.multi-dia{min-height:48px;border:0;border-top:1px solid var(--borda);border-right:1px solid var(--borda);background:var(--card);color:var(--texto);font-weight:600}.multi-dia:nth-child(7n){border-right:0}.multi-dia:hover{background:var(--hover)}.multi-dia.fora{opacity:.35}.multi-dia.selecionado{background:var(--primaria);color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}
.temas-rapidos{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.tema-opcao{min-height:44px;border:1px solid var(--borda);border-radius:10px;background:var(--hover);color:var(--texto);font-weight:600}.tema-opcao:hover{border-color:var(--primaria);color:var(--primaria);transform:translateY(-2px)}.aparencia-temas{grid-column:1/-1}
@media(max-width:760px){.pjes-resumo-topo,.pjes-lista-topo{align-items:flex-start}.pjes-lista-controles{width:100%}.pjes-lista-controles select{flex:1;min-width:140px}.multi-dia{min-height:42px}}


/* =========================================================
   PORTAL P1 - 18º BPM V15
========================================================= */
.graficos-efetivo{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px;margin:18px 0}.grafico-card{background:var(--card);border:1px solid var(--borda);border-radius:14px;padding:18px}.grafico-card h3{color:var(--primaria);margin-bottom:14px}
.grafico-barras{display:grid;gap:12px}.barra-dashboard{border:0;background:transparent;color:var(--texto);text-align:left;width:100%;padding:0}.barra-dashboard-cabecalho{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px}.barra-dashboard-cabecalho small{color:var(--texto-suave);font-weight:500}.barra-dashboard-trilho{height:12px;background:var(--hover);border:1px solid var(--borda);border-radius:999px;overflow:hidden;display:block}.barra-dashboard-trilho span{height:100%;display:block;background:var(--primaria);border-radius:999px;min-width:2px}.barra-dashboard.indisponivel .barra-dashboard-trilho span,.barra-dashboard.ferias .barra-dashboard-trilho span{background:var(--amarelo)}.barra-dashboard.licenca .barra-dashboard-trilho span{background:var(--vermelho)}.barra-dashboard.outros .barra-dashboard-trilho span{background:var(--texto-suave)}
.multi-dia{min-height:88px;padding:7px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:5px;overflow:hidden}.multi-numero{font-weight:700}.multi-servicos{display:grid;gap:3px;width:100%}.multi-servicos em{font-style:normal;font-size:9px;line-height:1.2;padding:3px 4px;border-radius:5px;background:rgba(11,61,145,.13);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-servicos small{font-size:9px;color:var(--primaria);font-weight:700}.multi-dia.selecionado .multi-servicos em{background:rgba(255,255,255,.23);color:#fff}.multi-dia.com-servico:not(.selecionado){box-shadow:inset 0 -3px 0 var(--verde)}
.mes-pjes.mes-sem-lancamento{opacity:.66}
@media(max-width:900px){.graficos-efetivo{grid-template-columns:1fr}}


/* =========================================================
   V16.1 - ORGANOGRAMA DO 18º BPM
========================================================= */
.organograma-cabecalho-pagina{align-items:flex-start}
.organograma-scroll{position:relative;overflow:hidden;padding:4px 0 0;min-height:420px}
.organograma-quadro{--escala-organograma:.72;position:absolute;left:50%;top:4px;width:1500px;height:980px;margin:0;background:var(--card);border:2px solid var(--texto);box-shadow:var(--sombra);color:var(--texto);overflow:hidden;transform:translateX(-50%) scale(var(--escala-organograma));transform-origin:top center}
.organograma-titulo-institucional{position:absolute;left:20px;top:20px;width:1460px;height:115px;border:2px solid var(--texto);display:grid;grid-template-columns:90px 1fr 420px;align-items:center;background:var(--card);z-index:3;text-align:center;padding:8px;gap:8px}
.organograma-brasao{font-size:42px;color:var(--primaria)}
.organograma-titulo-institucional div:nth-child(2){display:flex;flex-direction:column;gap:6px;font-size:14px}
.organograma-unidade{height:100%;border-left:2px solid var(--texto);padding-left:8px;display:flex;flex-direction:column;justify-content:center;gap:7px;font-size:13px}
.organograma-linhas{position:absolute;inset:0;width:100%;height:100%;z-index:1;color:var(--texto)}
.organograma-card{position:absolute;z-index:2;background:var(--card);border:2px solid var(--texto);padding:8px 7px 37px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;box-shadow:0 2px 5px rgba(0,0,0,.08)}
.organograma-card>strong{font-size:15px;line-height:1.15}
.organograma-responsaveis{display:flex;flex-direction:column;gap:3px;width:100%;font-size:10px;line-height:1.15}
.organograma-responsaveis span{font-weight:700;text-transform:uppercase}
.organograma-responsaveis em{font-style:normal;color:var(--texto-suave)}
.organograma-card-acoes{position:absolute;bottom:4px;left:4px;right:4px;display:flex;gap:4px;justify-content:center}
.organograma-card-acoes button{border:1px solid var(--borda);background:var(--hover);color:var(--texto);border-radius:6px;min-height:27px;padding:3px 6px;font-size:10px;display:flex;align-items:center;justify-content:center;gap:4px}
.organograma-card-acoes .org-escolher{flex:1}.organograma-card-acoes button:hover{border-color:var(--primaria);color:var(--primaria)}
.organograma-legenda{margin-top:12px;padding:11px 14px;border:1px solid var(--borda);background:var(--card);border-radius:12px;color:var(--texto-suave);font-size:13px}
.modal-organograma-caixa{width:min(560px,calc(100vw - 28px));max-height:82vh}
.modal-organograma-caixa .modal-topo{padding:12px 15px}
.modal-organograma-caixa .modal-topo h2{font-size:18px}
.modal-organograma-caixa .modal-topo p{font-size:11px;margin-top:3px;color:var(--texto-suave)}
.organograma-modal-conteudo{padding:12px}
.organograma-busca{display:flex;align-items:center;gap:8px;border:1px solid var(--borda);border-radius:9px;padding:0 10px;margin-bottom:7px}
.organograma-busca input{width:100%;border:0;outline:0;background:transparent;color:var(--texto);padding:9px 0;font-size:12px}
#statusOficiaisOrganograma{padding:8px 10px;font-size:11px;margin:0}
.lista-oficiais-organograma{display:grid;gap:4px;max-height:300px;overflow:auto;margin-top:7px;padding-right:3px}
.oficial-organograma-item{display:flex;align-items:center;gap:8px;border:1px solid var(--borda);background:var(--hover);border-radius:8px;padding:7px 8px;cursor:pointer;min-height:43px}
.oficial-organograma-item:hover{border-color:var(--primaria)}
.oficial-organograma-item input{width:15px;height:15px;flex:0 0 15px;accent-color:var(--primaria)}
.oficial-organograma-item span{display:flex;flex-direction:column;gap:1px;min-width:0}
.oficial-organograma-item strong{font-size:12px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.oficial-organograma-item small{font-size:9px;line-height:1.15;color:var(--texto-suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.organograma-modal-acoes{justify-content:flex-end;margin-top:9px;gap:6px}
.organograma-modal-acoes .botao{padding:7px 9px;font-size:11px}
@media(max-width:760px){.organograma-card-acoes .org-escolher span{display:none}.organograma-titulo-institucional{position:absolute}.organograma-scroll{min-height:360px}}
@media print{
  body *{visibility:hidden!important}
  #painel-organograma,#painel-organograma *{visibility:visible!important}
  #painel-organograma{position:absolute;left:0;top:0;width:100%;display:block!important}
  .organograma-cabecalho-pagina,.organograma-legenda,.organograma-card-acoes{display:none!important}
  .organograma-scroll{position:static!important;overflow:visible!important;height:auto!important;min-height:0!important}
  .organograma-quadro{position:relative!important;left:0!important;top:0!important;transform:scale(.68)!important;transform-origin:top left!important;box-shadow:none;margin:0!important}
  @page{size:A4 landscape;margin:8mm}
}



/* =========================================================
   V16.2 - CONSULTAR DOCUMENTOS
========================================================= */
.documentos-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.campo-busca-doc{flex:1;min-width:260px;display:flex;align-items:center;gap:10px;background:var(--cor-card,#fff);border:1px solid #d8e0eb;border-radius:10px;padding:0 13px}.campo-busca-doc input{width:100%;border:0;outline:0;background:transparent;padding:12px 0}.documentos-toolbar select{padding:11px;border:1px solid #d8e0eb;border-radius:9px;background:var(--cor-card,#fff)}.documentos-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}.categorias-doc-card,.biblioteca-doc-card{background:var(--cor-card,#fff);border:1px solid #dfe6ef;border-radius:14px;box-shadow:0 5px 18px rgba(15,40,80,.07)}.categorias-doc-card{padding:12px;position:sticky;top:15px}.categorias-doc-titulo,.biblioteca-doc-cabecalho{display:flex;align-items:center;justify-content:space-between;padding:10px}.categorias-doc-titulo span{background:var(--cor-principal,#0b3d91);color:#fff;border-radius:20px;padding:2px 8px;font-size:.78rem}.lista-categorias-doc{display:grid;gap:5px}.categoria-doc-item{width:100%;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;text-align:left;border:0;background:transparent;padding:10px;border-radius:9px;cursor:pointer;color:inherit}.categoria-doc-item:hover{background:#eef4fb}.categoria-doc-item.ativo{background:color-mix(in srgb,var(--cor-principal,#0b3d91) 13%,white);color:var(--cor-principal,#0b3d91);font-weight:700}.categoria-doc-item b{font-size:.76rem;background:#e7edf5;border-radius:12px;padding:2px 7px}.biblioteca-doc-card{padding:12px;min-height:440px}.biblioteca-doc-cabecalho h3{margin:0}.grade-documentos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:11px;padding:10px}.documento-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #dfe6ef;border-radius:12px;padding:11px;background:var(--cor-card,#fff);transition:.18s}.documento-card:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(20,45,80,.1)}.documento-icone{width:42px;height:42px;border-radius:10px;background:#edf3fb;color:var(--cor-principal,#0b3d91);display:grid;place-items:center;font-size:1.3rem}.documento-info{min-width:0;display:flex;flex-direction:column;gap:3px}.documento-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.documento-info small,.documento-info span{color:#64748b;font-size:.75rem}.documento-acoes{display:flex;flex-direction:column;gap:3px}.documento-acoes .botao-icone{width:28px;height:28px;font-size:.72rem}
@media(max-width:850px){.documentos-layout{grid-template-columns:1fr}.categorias-doc-card{position:static}.lista-categorias-doc{grid-template-columns:repeat(2,minmax(0,1fr))}.grade-documentos{grid-template-columns:1fr}}
@media print{@page{size:A4 landscape;margin:6mm}}


/* V16.3 - CONTROLES DE LAYOUT EM CADA TELA */

.cabecalho-home-acoes{display:flex;justify-content:flex-end;margin-bottom:10px}




@media(max-width:700px){.controles-layout-pagina .botao{flex:1}.cabecalho-home-acoes .botao{width:100%}}

.categoria-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:700px){.categoria-acoes{width:100%;justify-content:stretch}.categoria-acoes .botao{flex:1}}

/* ==============================
   ANÁLISE DE ESCALAS - V16.5
   ============================== */
.escalas-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:20px;align-items:start}
.escalas-biblioteca-card,.analise-escala-card{background:var(--card);border:1px solid var(--borda);border-radius:16px;box-shadow:var(--sombra);padding:18px}
.escalas-biblioteca-topo{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.escalas-biblioteca-topo span{min-width:28px;height:28px;border-radius:999px;background:var(--primaria);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}
.lista-escalas-salvas{display:grid;gap:8px}
.escala-salva-item{width:100%;border:1px solid var(--borda);background:transparent;color:var(--texto);border-radius:12px;padding:11px;display:grid;grid-template-columns:34px 1fr 16px;gap:10px;align-items:center;text-align:left;cursor:pointer}
.escala-salva-item:hover,.escala-salva-item.ativo{border-color:var(--primaria);background:color-mix(in srgb,var(--primaria) 10%,transparent)}
.escala-salva-item>i:first-child{font-size:22px;color:#c62828}
.escala-salva-item span{min-width:0;display:grid;gap:3px}
.escala-salva-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.escala-salva-item small{color:var(--texto-suave);font-size:11px}
.estado-vazio.compacto{padding:28px 10px}
.escala-selecionada-topo{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--borda)}
.escala-selecionada-topo small{font-size:11px;color:var(--texto-suave);font-weight:700;letter-spacing:.08em}
.escala-selecionada-topo h3{margin:4px 0 3px}
.escala-selecionada-topo span{color:var(--texto-suave);font-size:13px}
.modo-consulta-escala{display:flex;gap:12px;margin:18px 0}
.opcao-modo{flex:1;cursor:pointer}
.opcao-modo input{position:absolute;opacity:0;pointer-events:none}
.opcao-modo span{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--borda);border-radius:12px;padding:12px;font-weight:700}
.opcao-modo input:checked+span{background:var(--primaria);border-color:var(--primaria);color:#fff}
.consulta-escala-controles{display:flex;gap:12px;align-items:end;padding:14px;background:var(--fundo);border-radius:12px}
.consulta-escala-controles label{flex:1;display:grid;gap:6px;font-size:12px;font-weight:700}
.consulta-escala-controles select,.consulta-escala-controles input{width:100%;padding:10px 12px;border:1px solid var(--borda);border-radius:9px;background:var(--card);color:var(--texto)}
.acoes-relatorio-escala{display:flex;justify-content:flex-end;gap:10px;margin:14px 0}
.relatorio-escala{max-width:640px;margin:0 auto}
.relatorio-escala-titulo{text-align:center;margin:14px 0}
.relatorio-escala-titulo h3{margin:0;font-size:17px}
.relatorio-escala-titulo p{margin:5px 0 0;color:var(--texto-suave)}
.bloco-servico-escala{margin-bottom:12px}
.titulo-servico-escala{border:1px solid var(--borda);border-bottom:0;background:color-mix(in srgb,var(--primaria) 9%,var(--card));text-align:center;font-weight:800;padding:8px;border-radius:8px 8px 0 0}
.bloco-servico-escala table,.tabela-consulta-policial{width:100%;border-collapse:collapse}
.bloco-servico-escala th,.bloco-servico-escala td,.tabela-consulta-policial th,.tabela-consulta-policial td{border:1px solid var(--borda);padding:8px;text-align:center}
.bloco-servico-escala th,.tabela-consulta-policial th{font-size:12px;background:var(--fundo)}
.bloco-servico-escala th:nth-child(1),.bloco-servico-escala td:nth-child(1){width:22%}
.bloco-servico-escala th:nth-child(2),.bloco-servico-escala td:nth-child(2){width:48%}
.bloco-servico-escala th:nth-child(3),.bloco-servico-escala td:nth-child(3){width:30%}
.tabela-consulta-policial td small{display:block;color:var(--texto-suave);font-size:10px;margin-top:2px}
@media(max-width:900px){.escalas-layout{grid-template-columns:1fr}.escala-selecionada-topo{flex-direction:column}.modo-consulta-escala,.consulta-escala-controles{flex-direction:column;align-items:stretch}.relatorio-escala{max-width:100%}}


/* ESCALA DOS OFICIAIS - cadastro por colagem */
.editor-escala-texto{background:var(--card);border:1px solid var(--borda);border-radius:16px;padding:18px;margin-bottom:20px;box-shadow:var(--sombra)}
.editor-escala-cabecalho{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}
.editor-escala-cabecalho h3{margin:0 0 5px;color:var(--primaria)}
.editor-escala-cabecalho p{margin:0;color:var(--texto-suave);font-size:13px}
.editor-escala-texto>label{display:grid;gap:6px;font-weight:700;margin-bottom:12px}
.editor-escala-texto input,.editor-escala-texto textarea{width:100%;border:1px solid var(--borda);border-radius:10px;background:var(--card);color:var(--texto);padding:11px;font:inherit}
.editor-escala-texto textarea{font-family:Consolas,"Courier New",monospace;font-size:12px;line-height:1.45;resize:vertical;white-space:pre;overflow:auto}
.dica-colagem-escala{display:flex;gap:9px;align-items:flex-start;background:color-mix(in srgb,var(--primaria) 8%,transparent);border:1px solid color-mix(in srgb,var(--primaria) 25%,var(--borda));padding:10px 12px;border-radius:10px;color:var(--texto-suave);font-size:12px;margin-bottom:14px}
.dica-colagem-escala i{color:var(--primaria);margin-top:1px}

/* Importação de planilha - Escala dos Oficiais V16.9 */
.importar-planilha-escala{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 12px}.importar-planilha-escala span{font-size:12px;color:var(--texto-suave,#64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:420px}


/* AJUSTES V16.9 - HOME E PASTA DE DOCUMENTOS */
.widgets-coluna-esquerda{display:grid;gap:16px;min-width:0}
.widget-somar-datas{background:var(--card);border:1px solid var(--borda);border-radius:14px;padding:14px 16px;box-shadow:var(--sombra)}
.widget-cabecalho.compacto{margin-bottom:9px}.widget-cabecalho.compacto h2{font-size:16px}.widget-cabecalho.compacto p{font-size:11px}
.somar-datas-card{display:grid;grid-template-columns:minmax(145px,1fr) minmax(120px,.75fr) auto;gap:9px;align-items:end}
.somar-datas-card label{display:grid;gap:5px;font-size:11px;font-weight:700;color:var(--texto-suave)}
.somar-datas-card input{width:100%;padding:8px 9px;border:1px solid var(--borda);border-radius:8px;background:var(--card);color:var(--texto);font:inherit}
.resultado-soma-datas{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:8px;background:var(--fundo);border:1px solid var(--borda)}
.resultado-soma-datas span{font-size:10px;color:var(--texto-suave);text-transform:uppercase;letter-spacing:.05em}.resultado-soma-datas strong{font-size:12px;text-align:right}
.nova-categoria-home-final{display:flex;justify-content:center;padding:20px 0 6px}
@media(max-width:680px){.somar-datas-card{grid-template-columns:1fr 1fr}.somar-datas-card .botao{grid-column:1/-1}.resultado-soma-datas{align-items:flex-start;flex-direction:column}.resultado-soma-datas strong{text-align:left}}


/* V17.1 — organização de links e atualização do efetivo */
.botao-organizar-categoria{
  border:1px solid var(--borda);background:transparent;color:var(--texto-suave);
  border-radius:8px;padding:6px 9px;display:inline-flex;align-items:center;gap:6px;
  font-size:11px;font-weight:600;transition:.2s
}
.botao-organizar-categoria:hover,.botao-organizar-categoria.ativo{
  border-color:var(--primaria);color:var(--primaria);background:var(--hover)
}
.controles-ordem-link{display:flex;flex-direction:column;gap:5px;margin-left:auto}
.btn-mover-link{
  width:34px;height:31px;border:1px solid var(--borda);border-radius:8px;
  background:var(--card);color:var(--primaria);display:grid;place-items:center
}
.btn-mover-link:hover:not(:disabled){background:var(--primaria);color:#fff;border-color:var(--primaria)}
.btn-mover-link:disabled{opacity:.28;cursor:not-allowed}
.atualizacao-efetivo-acoes{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}
.ultima-atualizacao-pm{max-width:230px;text-align:right;color:var(--texto-suave);font-size:11px;line-height:1.35}
@media(max-width:680px){
  .atualizacao-efetivo-acoes{align-items:flex-start;width:100%}
  .ultima-atualizacao-pm{text-align:left;max-width:none}
  .botao-organizar-categoria span{display:none}
}


/* =========================================================
   V18 - INTERFACE PROFISSIONAL E MICROINTERAÇÕES
========================================================= */
.busca-global-wrap{position:relative;flex:1;max-width:520px;margin:0 20px}.busca-global{height:46px;display:flex;align-items:center;gap:11px;padding:0 13px;background:var(--hover);border:1px solid var(--borda);border-radius:14px;transition:.25s}.busca-global:focus-within{background:var(--card);border-color:var(--primaria);box-shadow:0 0 0 4px rgba(11,61,145,.10),var(--sombra)}.busca-global>i{color:var(--primaria)}.busca-global input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--texto)}.busca-global kbd{font-size:11px;padding:3px 7px;border:1px solid var(--borda);border-radius:6px;color:var(--texto-suave);background:var(--card)}.resultados-busca-global{position:absolute;top:54px;left:0;right:0;z-index:2500;background:var(--card);border:1px solid var(--borda);border-radius:15px;box-shadow:0 22px 60px rgba(15,23,42,.22);padding:8px;max-height:480px;overflow:auto}.resultado-global{width:100%;display:grid;grid-template-columns:40px 1fr 18px;align-items:center;gap:10px;border:0;background:transparent;color:var(--texto);padding:10px;border-radius:10px;text-align:left}.resultado-global:hover{background:var(--hover);transform:translateX(2px)}.resultado-global>i:first-child{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,var(--primaria),var(--primaria-2))}.resultado-global span{display:flex;flex-direction:column;gap:3px}.resultado-global small{color:var(--texto-suave);font-size:11px}.resultado-global>i:last-child{color:var(--texto-suave)}.busca-global-vazia{padding:24px;text-align:center;color:var(--texto-suave)}
.acoes-rapidas-home{margin-bottom:22px}.acoes-rapidas-titulo h2{color:var(--primaria);font-size:20px}.acoes-rapidas-titulo p{color:var(--texto-suave);margin-top:4px}.grade-acoes-rapidas{display:grid;grid-template-columns:repeat(6,minmax(125px,1fr));gap:12px;margin-top:14px}.acao-rapida{position:relative;overflow:hidden;min-height:118px;padding:17px 13px;border:1px solid var(--borda);border-radius:16px;background:var(--card);color:var(--texto);display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left;box-shadow:0 5px 18px rgba(15,23,42,.06);transition:.28s}.acao-rapida:before{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-42px;top:-42px;background:linear-gradient(135deg,rgba(11,61,145,.18),transparent);transition:.3s}.acao-rapida:hover{transform:translateY(-5px);border-color:var(--primaria);box-shadow:0 14px 30px rgba(11,61,145,.14)}.acao-rapida:hover:before{transform:scale(1.4)}.acao-rapida i{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,var(--primaria),var(--primaria-2));color:#fff;font-size:18px;box-shadow:0 8px 18px rgba(11,61,145,.23)}.acao-rapida span{font-weight:700}.acao-rapida small{color:var(--texto-suave)}
/* modernização inteligente dos ícones dos links */
.link-card{position:relative;overflow:hidden}.link-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 0,rgba(255,255,255,.15),transparent 38%);opacity:0;transition:.3s}.link-card:hover:before{opacity:1}.link-icone{position:relative;overflow:visible;background:linear-gradient(145deg,var(--primaria),var(--primaria-2));box-shadow:0 10px 22px rgba(11,61,145,.22);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.link-icone:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(11,61,145,.18);border-radius:17px;opacity:0;transform:scale(.8);transition:.3s}.link-card:hover .link-icone{transform:translateY(-3px) rotate(-4deg) scale(1.08);box-shadow:0 15px 26px rgba(11,61,145,.32)}.link-card:hover .link-icone:after{opacity:1;transform:scale(1)}.link-card:hover .link-icone i{animation:iconePulsoV18 .55s ease}@keyframes iconePulsoV18{0%,100%{transform:scale(1)}45%{transform:scale(1.18)}70%{transform:scale(.94)}}.link-cat-pmpe .link-icone{background:linear-gradient(145deg,#0f766e,#14b8a6)}.link-cat-sites-importantes .link-icone{background:linear-gradient(145deg,#7c3aed,#a855f7)}.link-cat-modelos-de-documentos .link-icone{background:linear-gradient(145deg,#b45309,#f59e0b)}.btn-abrir-link{transition:.25s}.link-card:hover .btn-abrir-link{background:var(--primaria);color:#fff;transform:rotate(-8deg)}
.inteligencia-efetivo{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin:18px 0}.insight-efetivo-card{background:var(--card);border:1px solid var(--borda);border-radius:16px;padding:18px;box-shadow:var(--sombra)}.insight-titulo{display:flex;gap:12px;align-items:center;margin-bottom:14px}.insight-titulo>i{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:rgba(11,61,145,.1);color:var(--primaria);font-size:18px}.insight-titulo h3{font-size:16px}.insight-titulo p{font-size:12px;color:var(--texto-suave);margin-top:3px}.lista-insights-pm{display:grid;gap:7px}.insight-linha{display:grid;grid-template-columns:48px 24px 1fr;align-items:center;gap:8px;width:100%;border:0;border-radius:10px;padding:9px;background:var(--hover);color:var(--texto);text-align:left}.insight-linha:hover{transform:translateX(3px);box-shadow:0 5px 14px rgba(15,23,42,.08)}.insight-data{font-weight:700;color:var(--primaria)}.insight-linha span:last-child{display:flex;flex-direction:column;gap:2px}.insight-linha small{color:var(--texto-suave)}.ranking-setores-pm{display:grid;gap:11px}.ranking-setor>div:first-child{display:flex;justify-content:space-between;font-size:13px}.ranking-barra{height:7px;margin-top:5px;border-radius:20px;background:var(--hover);overflow:hidden}.ranking-barra i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primaria),var(--primaria-2))}.insight-vazio{padding:20px;border:1px dashed var(--borda);border-radius:10px;color:var(--texto-suave);text-align:center}
.central-modelos-layout{display:grid;grid-template-columns:235px 1fr;gap:18px}.modelos-categorias,.modelos-conteudo,.ferramenta-card{background:var(--card);border:1px solid var(--borda);border-radius:16px;box-shadow:var(--sombra);padding:18px}.modelos-categorias h3{margin-bottom:12px;color:var(--primaria)}.categoria-modelo{width:100%;display:grid;grid-template-columns:25px 1fr 28px;align-items:center;gap:8px;border:0;border-radius:10px;background:transparent;color:var(--texto);padding:11px;text-align:left}.categoria-modelo:hover,.categoria-modelo.ativo{background:var(--hover);color:var(--primaria)}.categoria-modelo b{font-size:11px;min-width:24px;height:24px;display:grid;place-items:center;border-radius:20px;background:var(--borda)}.modelos-pesquisa{box-shadow:none;margin-bottom:16px}.grade-modelos-p1{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:13px}.modelo-card{border:1px solid var(--borda);border-radius:14px;padding:15px;background:var(--hover);display:grid;grid-template-columns:48px 1fr;gap:12px;transition:.25s}.modelo-card:hover{transform:translateY(-3px);border-color:var(--primaria);background:var(--card)}.modelo-card-icone{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,var(--primaria),var(--primaria-2));color:#fff}.modelo-card-info span{font-size:10px;font-weight:700;color:var(--primaria);letter-spacing:.7px}.modelo-card-info h3{font-size:15px;margin:5px 0}.modelo-card-info p{font-size:12px;line-height:1.45;color:var(--texto-suave)}.modelo-card>.acoes{grid-column:1/-1;margin-top:4px}.modal-modelo-p1{width:min(900px,100%)}.modelo-visualizacao{padding:20px}.modelo-visualizacao textarea{width:100%;min-height:430px;border:1px solid var(--borda);border-radius:12px;padding:17px;background:var(--hover);color:var(--texto);line-height:1.6;resize:vertical;outline:0}
.gerador-tabelas-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px}.ferramenta-card label{display:flex;flex-direction:column;gap:5px}.ferramenta-card label span,.ajuda-gerador,.resultado-gerador-topo p{color:var(--texto-suave);font-size:12px}.ferramenta-card textarea{width:100%;margin-top:12px;border:1px solid var(--borda);border-radius:12px;padding:15px;background:var(--hover);color:var(--texto);line-height:1.7;resize:vertical;outline:0;text-transform:uppercase}.ferramenta-card textarea:focus{border-color:var(--primaria);box-shadow:0 0 0 4px rgba(11,61,145,.1)}.resultado-gerador-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px}.resultado-gerador-topo .acoes{margin-top:0}.tabela-gerada-pm td,.tabela-gerada-pm th{white-space:nowrap}.erros-tabela-pm{margin-top:12px;padding:12px;border-radius:10px;background:rgba(198,40,40,.08);color:var(--vermelho);font-size:12px}.erros-tabela-pm p+ p{margin-top:5px}
@media(max-width:1200px){.grade-acoes-rapidas{grid-template-columns:repeat(3,1fr)}.busca-global-wrap{max-width:360px}.gerador-tabelas-grid,.inteligencia-efetivo{grid-template-columns:1fr}}
@media(max-width:850px){.busca-global-wrap{order:3;max-width:none;width:100%;margin:8px 0 0}.topo{flex-wrap:wrap}.grade-acoes-rapidas{grid-template-columns:repeat(2,1fr)}.central-modelos-layout{grid-template-columns:1fr}.modelos-categorias{display:flex;overflow:auto;gap:6px}.modelos-categorias h3{display:none}.categoria-modelo{min-width:max-content;grid-template-columns:20px auto 25px}.gerador-tabelas-grid{grid-template-columns:1fr}}
@media(max-width:520px){.grade-acoes-rapidas{grid-template-columns:1fr 1fr}.acao-rapida{min-height:106px}.busca-global kbd{display:none}}

/* V18.1 - ajustes finais */
.inteligencia-efetivo{grid-template-columns:1fr}
.ranking-setor-clicavel{width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:7px 4px;border-radius:10px;transition:.2s}
.ranking-setor-clicavel:hover{background:var(--hover);transform:translateX(3px)}
.ranking-setor-clicavel strong{min-width:34px;height:30px;display:grid;place-items:center;border-radius:10px;background:rgba(11,61,145,.12);color:var(--primaria)}
.telefone-whatsapp{display:inline-flex;align-items:center;gap:7px;color:var(--verde);text-decoration:none}
.telefone-whatsapp:hover{text-decoration:underline}
.telefone-whatsapp i{font-size:18px}

/* =========================================================
   V18.3 - AFASTAMENTOS COMPACTOS E INCLUSÃO POR ENTER
========================================================= */
.inteligencia-efetivo{display:block;margin:14px 0}
.inteligencia-efetivo .insight-efetivo-card{max-width:860px;padding:14px 16px;border-radius:14px}
.inteligencia-efetivo .insight-titulo{margin-bottom:10px}
.inteligencia-efetivo .insight-titulo>i{width:38px;height:38px;border-radius:11px}
.ranking-setores-pm{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px}
.setor-afastamento-chip{min-width:0;border:0;border-radius:12px;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#fff;text-align:left;box-shadow:0 5px 13px rgba(15,23,42,.12);transition:transform .18s,box-shadow .18s,filter .18s}
.setor-afastamento-chip:hover{transform:translateY(-2px);box-shadow:0 9px 18px rgba(15,23,42,.18);filter:saturate(1.08)}
.setor-afastamento-chip span{font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.setor-afastamento-chip strong{flex:0 0 29px;height:29px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.22);font-size:14px}
.setor-cor-0{background:linear-gradient(135deg,#0b3d91,#2563eb)}
.setor-cor-1{background:linear-gradient(135deg,#0f766e,#14b8a6)}
.setor-cor-2{background:linear-gradient(135deg,#7c3aed,#a855f7)}
.setor-cor-3{background:linear-gradient(135deg,#b45309,#f59e0b)}
.setor-cor-4{background:linear-gradient(135deg,#be123c,#f43f5e)}
.setor-cor-5{background:linear-gradient(135deg,#0369a1,#0ea5e9)}
.setor-cor-6{background:linear-gradient(135deg,#3f6212,#84cc16)}
.setor-cor-7{background:linear-gradient(135deg,#4338ca,#6366f1)}

.gerador-tabelas-grid{grid-template-columns:1fr 1fr;align-items:stretch}
.gerador-tabelas-grid>.ferramenta-card{height:480px;min-height:480px;overflow:hidden}
.ferramenta-inclusao-pm{display:flex;flex-direction:column;padding:26px}
.entrada-pm-linha{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:20px}
.entrada-pm-linha input{width:100%;min-height:52px;border:1px solid var(--borda);border-radius:12px;padding:0 15px;background:var(--hover);color:var(--texto);font-size:16px;text-transform:uppercase;outline:0}
.entrada-pm-linha input:focus{border-color:var(--primaria);box-shadow:0 0 0 4px rgba(11,61,145,.1)}
.status-inclusao-pm{min-height:42px;margin-top:13px;padding:10px 12px;border-radius:10px;background:var(--hover);color:var(--texto-suave);font-size:12px;display:flex;align-items:center}
.status-inclusao-pm.sucesso{background:rgba(46,125,50,.1);color:var(--verde)}
.status-inclusao-pm.erro{background:rgba(198,40,40,.09);color:var(--vermelho)}
.status-inclusao-pm.aviso{background:rgba(245,158,11,.11);color:#b45309}
.status-inclusao-pm.carregando{color:var(--primaria)}
.ferramenta-inclusao-pm .acoes{margin-top:16px}
.ferramenta-inclusao-pm .ajuda-gerador{margin-top:auto;line-height:1.55}
.resultado-gerador{display:flex;flex-direction:column}
.resultado-gerador #resultadoTabelaPM{flex:1;min-height:0;overflow:auto}
.coluna-excluir-pm{width:46px;text-align:center!important}
.btn-excluir-pm-tabela{width:30px;height:30px;border:0;border-radius:9px;background:rgba(198,40,40,.09);color:var(--vermelho);display:grid;place-items:center;margin:auto;transition:.18s}
.btn-excluir-pm-tabela:hover{background:var(--vermelho);color:#fff;transform:scale(1.06)}
@media(max-width:850px){.gerador-tabelas-grid{grid-template-columns:1fr}.gerador-tabelas-grid>.ferramenta-card{height:440px;min-height:440px}.ranking-setores-pm{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V18.3 — ajustes de espaço e tabela */
.gerador-tabelas-grid{grid-template-columns:minmax(330px,.82fr) minmax(560px,1.18fr);gap:16px}
.ferramenta-inclusao-pm{padding:22px}
.entrada-pm-linha{margin-top:16px}
.resultado-gerador{padding:20px}
.resultado-gerador #resultadoTabelaPM{overflow-y:auto;overflow-x:hidden}
.tabela-gerada-pm{width:100%;table-layout:fixed;font-size:12px}
.tabela-gerada-pm th,.tabela-gerada-pm td{padding:8px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tabela-gerada-pm th:nth-child(1),.tabela-gerada-pm td:nth-child(1){width:38px;text-align:center}
.tabela-gerada-pm th:nth-child(2),.tabela-gerada-pm td:nth-child(2){width:118px}
.tabela-gerada-pm th:nth-child(3),.tabela-gerada-pm td:nth-child(3){width:105px}
.tabela-gerada-pm th:nth-child(5),.tabela-gerada-pm td:nth-child(5){width:40px}
.ranking-setores-pm{grid-template-columns:repeat(6,minmax(82px,1fr));gap:7px}
.setor-afastamento-chip{padding:8px 9px}
.setor-afastamento-chip span{font-size:10.5px}
.setor-afastamento-chip strong{flex-basis:27px;height:27px;font-size:13px}
@media(max-width:1180px){.gerador-tabelas-grid{grid-template-columns:minmax(300px,.78fr) minmax(500px,1.22fr)}.ranking-setores-pm{grid-template-columns:repeat(3,minmax(90px,1fr))}}
@media(max-width:900px){.gerador-tabelas-grid{grid-template-columns:1fr}.ranking-setores-pm{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V18.4 — telefone e exclusão múltipla no Gerador de Tabelas */
.resultado-gerador-topo .acoes{flex-wrap:wrap;justify-content:flex-end}
.tabela-gerada-pm th,.tabela-gerada-pm td{padding:8px 5px}
.tabela-gerada-pm th:nth-child(1),.tabela-gerada-pm td:nth-child(1){width:36px;text-align:center}
.tabela-gerada-pm th:nth-child(2),.tabela-gerada-pm td:nth-child(2){width:104px}
.tabela-gerada-pm th:nth-child(3),.tabela-gerada-pm td:nth-child(3){width:96px}
.tabela-gerada-pm th:nth-child(5),.tabela-gerada-pm td:nth-child(5){width:118px}
.tabela-gerada-pm.modo-exclusao th:nth-child(1),.tabela-gerada-pm.modo-exclusao td:nth-child(1){width:38px;text-align:center}
.tabela-gerada-pm.modo-exclusao th:nth-child(2),.tabela-gerada-pm.modo-exclusao td:nth-child(2){width:34px;text-align:center}
.tabela-gerada-pm.modo-exclusao th:nth-child(3),.tabela-gerada-pm.modo-exclusao td:nth-child(3){width:100px}
.tabela-gerada-pm.modo-exclusao th:nth-child(4),.tabela-gerada-pm.modo-exclusao td:nth-child(4){width:92px}
.tabela-gerada-pm.modo-exclusao th:nth-child(6),.tabela-gerada-pm.modo-exclusao td:nth-child(6){width:112px}
.linha-selecionavel-pm{cursor:pointer;transition:.15s}
.linha-selecionavel-pm:hover{background:rgba(11,61,145,.07)}
.linha-selecionavel-pm.selecionado{background:rgba(198,40,40,.1);box-shadow:inset 4px 0 0 var(--vermelho)}
.coluna-selecao-pm input{width:17px;height:17px;accent-color:var(--vermelho);pointer-events:none}
#btnExcluirTabelaPM.ativo{background:var(--vermelho);color:#fff;border-color:var(--vermelho)}
.telefone-tabela-pm{display:inline-flex;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}


/* V18.5 — telefone visível e seleção sem alterar as colunas */
.tabela-gerada-pm{width:100%;table-layout:fixed}
.tabela-gerada-pm .col-numero{width:46px}
.tabela-gerada-pm .col-graduacao{width:106px}
.tabela-gerada-pm .col-matricula{width:98px}
.tabela-gerada-pm .col-nome{width:auto}
.tabela-gerada-pm .col-telefone{width:120px}
.tabela-gerada-pm th,.tabela-gerada-pm td{padding:8px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tabela-gerada-pm th:first-child,.tabela-gerada-pm td:first-child{text-align:center}
.tabela-gerada-pm.modo-exclusao th:nth-child(n),.tabela-gerada-pm.modo-exclusao td:nth-child(n){width:auto}
.celula-numero-pm{display:flex;align-items:center;justify-content:center;gap:5px}
.seletor-pm-exclusao{width:16px;height:16px;flex:0 0 16px;accent-color:var(--vermelho);pointer-events:none;margin:0}
.telefone-tabela-pm{color:inherit;text-decoration:none}

/* V18.6 — correção definitiva da coluna TELEFONE no Gerador de Tabelas */
.resultado-gerador #resultadoTabelaPM {
  overflow-x: hidden !important;
}
.tabela-gerada-pm {
  display: table !important;
  width: 100% !important;
  table-layout: fixed !important;
}
.tabela-gerada-pm col.col-numero { width: 42px !important; }
.tabela-gerada-pm col.col-graduacao { width: 100px !important; }
.tabela-gerada-pm col.col-matricula { width: 94px !important; }
.tabela-gerada-pm col.col-nome { width: auto !important; }
.tabela-gerada-pm col.col-telefone { width: 122px !important; }
.tabela-gerada-pm th:nth-child(5),
.tabela-gerada-pm td:nth-child(5) {
  display: table-cell !important;
  visibility: visible !important;
  width: 122px !important;
  min-width: 122px !important;
  max-width: 122px !important;
}
.tabela-gerada-pm.modo-exclusao th,
.tabela-gerada-pm.modo-exclusao td {
  display: table-cell !important;
}
.tabela-gerada-pm.modo-exclusao th:nth-child(1),
.tabela-gerada-pm.modo-exclusao td:nth-child(1) { width: 42px !important; }
.tabela-gerada-pm.modo-exclusao th:nth-child(2),
.tabela-gerada-pm.modo-exclusao td:nth-child(2) { width: 100px !important; }
.tabela-gerada-pm.modo-exclusao th:nth-child(3),
.tabela-gerada-pm.modo-exclusao td:nth-child(3) { width: 94px !important; }
.tabela-gerada-pm.modo-exclusao th:nth-child(5),
.tabela-gerada-pm.modo-exclusao td:nth-child(5) { width: 122px !important; }

/* V18.7 — tabela do Gerador: cinco colunas sempre visíveis */
.gerador-tabelas-grid{
  grid-template-columns:minmax(280px, .72fr) minmax(0, 1.28fr) !important;
}
.gerador-tabelas-grid > .ferramenta-card,
.resultado-gerador,
.resultado-gerador #resultadoTabelaPM{
  min-width:0 !important;
}
.resultado-gerador #resultadoTabelaPM{
  width:100% !important;
  overflow-x:visible !important;
  overflow-y:auto !important;
}
.tabela-gerada-pm{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
}
.tabela-gerada-pm col.col-numero{width:6% !important}
.tabela-gerada-pm col.col-graduacao{width:17% !important}
.tabela-gerada-pm col.col-matricula{width:17% !important}
.tabela-gerada-pm col.col-nome{width:35% !important}
.tabela-gerada-pm col.col-telefone{width:25% !important}
.tabela-gerada-pm th,
.tabela-gerada-pm td{
  display:table-cell !important;
  visibility:visible !important;
  box-sizing:border-box !important;
  padding:8px 4px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:11px !important;
}
.tabela-gerada-pm th:nth-child(5),
.tabela-gerada-pm td:nth-child(5){
  display:table-cell !important;
  visibility:visible !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
}
.tabela-gerada-pm.modo-exclusao th:nth-child(n),
.tabela-gerada-pm.modo-exclusao td:nth-child(n){
  display:table-cell !important;
  visibility:visible !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
}
.celula-numero-pm{display:flex !important;align-items:center;justify-content:center;gap:3px;min-width:0}
@media(max-width:1050px){
  .gerador-tabelas-grid{grid-template-columns:1fr !important}
}


/* V18.10 — Meu PJES: calendário preservado; cores somente nos lançamentos */
#calendarioMultiploPjes .multi-servicos em.pjes-servico-ops{background:#dff4e5 !important;color:#1b5e20 !important;}
#calendarioMultiploPjes .multi-servicos em.pjes-servico-ti{background:#e3f2fd !important;color:#0d47a1 !important;}
#calendarioMultiploPjes .multi-servicos em.pjes-servico-reforco-noturno{background:#ede7f6 !important;color:#4a148c !important;}
#calendarioMultiploPjes .multi-servicos em.pjes-servico-patrulha-escolar{background:#fff8e1 !important;color:#7a6500 !important;}
#calendarioMultiploPjes .multi-servicos em.pjes-servico-eventos{background:#fce4ec !important;color:#880e4f !important;}
#calendarioMultiploPjes .multi-servicos em.pjes-servico-hipoteca{background:#fff3e0 !important;color:#e65100 !important;}
#calendarioMultiploPjes .multi-servicos em.pjes-servico-outros{background:#eceff1 !important;color:#263238 !important;}
#calendarioMultiploPjes .multi-servicos em{font-weight:700;}
#calendarioMultiploPjes .multi-dia.selecionado .multi-servicos em{color:inherit;}


/* VERSÃO 02 — ORGANIZAÇÃO DA HOME POR ARRASTAR E ORDEM NUMÉRICA */
.nova-categoria-home-final{gap:10px;flex-wrap:wrap}
.categoria-em-organizacao{outline:2px dashed rgba(11,61,145,.32);outline-offset:3px}
.categoria-em-organizacao .grade-links{min-height:110px}
.numero-ordem-categoria{
  width:44px;height:44px;padding:0;text-align:center;border:2px solid var(--primaria);
  border-radius:9px;background:var(--card);color:var(--primaria);font-weight:800;font-size:17px;
  appearance:textfield;-moz-appearance:textfield
}
.numero-ordem-categoria::-webkit-inner-spin-button,.numero-ordem-categoria::-webkit-outer-spin-button{opacity:1}
.link-card[draggable="true"]{cursor:grab;user-select:none;border-style:dashed}
.link-card[draggable="true"]:active{cursor:grabbing}
.link-card.arrastando{opacity:.38;transform:scale(.97)}
.link-card.alvo-arraste{border:2px solid var(--primaria);box-shadow:0 0 0 4px rgba(11,61,145,.12)}
.alca-arraste-link{
  width:38px;height:48px;margin-left:auto;display:grid;place-items:center;border:1px solid var(--borda);
  border-radius:10px;background:var(--card);color:var(--primaria);font-size:19px;flex:0 0 auto
}
.categoria-em-organizacao .btn-adicionar-categoria,.categoria-em-organizacao .btn-excluir-categoria-home{display:none}
@media(max-width:680px){
  .nova-categoria-home-final .botao{width:100%}
  .numero-ordem-categoria{width:40px;height:40px}
}

/* VERSÃO 2.1 — ORGANIZAÇÃO INDIVIDUAL POR CATEGORIA */
.categoria-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.btn-organizar-categoria,.btn-salvar-ordem-categoria,.btn-cancelar-ordem-categoria{
  padding:7px 10px!important;font-size:12px!important;min-height:34px
}
.categoria-em-organizacao{outline:2px dashed rgba(11,61,145,.32);outline-offset:3px}
.categoria-em-organizacao .btn-adicionar-categoria,.categoria-em-organizacao .btn-excluir-categoria-home{display:none}
.card-selecao-ordem{cursor:pointer!important;user-select:none;position:relative;border-style:dashed}
.card-selecao-ordem:hover{border-color:var(--primaria);box-shadow:0 0 0 4px rgba(11,61,145,.10)}
.card-ordem-selecionado{border:2px solid var(--primaria)!important;background:var(--card)!important}
.numero-ordem-link{
  width:38px;height:38px;margin-left:auto;display:grid;place-items:center;flex:0 0 auto;
  border:2px dashed var(--borda);border-radius:9px;background:var(--card);color:var(--texto-suave);
  font-size:0;font-weight:900
}
.numero-ordem-link::before{content:"✓";font-size:16px;opacity:.35}
.numero-ordem-link.visivel{border-style:solid;border-color:var(--primaria);background:var(--primaria);color:#fff;font-size:17px}
.numero-ordem-link.visivel::before{display:none}
@media(max-width:680px){
  .categoria-acoes{width:100%}
  .categoria-acoes .botao{width:auto!important;flex:1}
}


/* VERSÃO 2.4 — CORREÇÃO DEFINITIVA DO BOTÃO FAVORITOS */
.link-card{position:relative}
.link-acoes{position:relative;z-index:30;pointer-events:auto}
.link-acoes .btn-favoritar,
.link-acoes .btn-abrir-link{
  position:relative;
  z-index:31;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation;
}
.link-acoes .btn-favoritar i,
.link-acoes .btn-abrir-link i{pointer-events:none}
.link-acoes .btn-favoritar:focus-visible{
  outline:3px solid rgba(245,158,11,.45);
  outline-offset:2px;
}

/* =========================================================
   PORTAL P1 - GERENCIADOR V1 | DOCUMENTOS P1
========================================================= */
.documentos-p1-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:20px;align-items:start}
.documentos-p1-navegacao,.documentos-p1-editor{background:var(--card);border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra)}
.documentos-p1-navegacao{padding:16px;position:sticky;top:18px}
.documentos-p1-navegacao-topo,.documentos-p1-editor-topo,.documentos-p1-rodape{display:flex;align-items:center;justify-content:space-between;gap:14px}
.documentos-p1-navegacao-topo{padding-bottom:13px;border-bottom:1px solid var(--borda)}
.arvore-modelos-p1{display:grid;gap:12px;margin-top:14px}
.categoria-modelo-p1{border:1px solid var(--borda);border-radius:12px;overflow:hidden;background:var(--hover)}
.categoria-modelo-p1-cabecalho,.subcategoria-modelo-p1-cabecalho{display:flex;align-items:center;gap:8px;padding:10px}
.categoria-modelo-p1-cabecalho strong,.subcategoria-modelo-p1-cabecalho strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.categoria-modelo-p1-cabecalho i,.subcategoria-modelo-p1-cabecalho i{color:var(--primaria)}
.acoes-arvore-p1{display:flex;gap:3px}
.acoes-arvore-p1 button{width:28px;height:28px;border:0;border-radius:7px;background:transparent;color:var(--texto-suave)}
.acoes-arvore-p1 button:hover{background:var(--card);color:var(--primaria)}
.subcategorias-modelo-p1{display:grid;gap:7px;padding:0 9px 9px}
.subcategoria-modelo-p1{border-top:1px solid var(--borda);padding-top:7px}
.lista-modelos-p1{display:grid;gap:5px;padding:0 5px 4px 27px}
.item-modelo-p1{width:100%;border:0;border-radius:8px;background:transparent;color:var(--texto);padding:9px 10px;display:flex;align-items:center;gap:9px;text-align:left}
.item-modelo-p1:hover,.item-modelo-p1.ativo{background:var(--card);color:var(--primaria)}
.item-modelo-p1 span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.documentos-p1-editor{padding:22px;min-height:520px}
.documentos-p1-editor-topo{padding-bottom:16px;border-bottom:1px solid var(--borda)}
.documentos-p1-editor-topo h3{font-size:22px;color:var(--primaria);margin-top:4px}
.caminho-modelo-p1{font-size:12px;color:var(--texto-suave)}
.campo-texto-modelo-p1{display:flex;flex-direction:column;gap:8px;margin-top:18px;font-weight:700}
#textoModeloP1{width:100%;min-height:350px;resize:vertical;border:1px solid var(--borda);border-radius:12px;padding:16px;background:var(--card);color:var(--texto);line-height:1.6;outline:none}
#textoModeloP1:focus{border-color:var(--primaria);box-shadow:0 0 0 3px rgba(11,61,145,.12)}
.documentos-p1-rodape{margin-top:14px}
.documentos-p1-rodape>span{font-size:12px;color:var(--texto-suave)}
@media(max-width:900px){.documentos-p1-layout{grid-template-columns:1fr}.documentos-p1-navegacao{position:static}.documentos-p1-editor-topo,.documentos-p1-rodape{align-items:flex-start;flex-direction:column}}


/* PORTAL P1 - GERENCIADOR V2 | LINKS DE DOCUMENTOS */
.campos-link-modelo-p1{display:grid;gap:16px;margin-top:18px}
.campos-link-modelo-p1 label{display:flex;flex-direction:column;gap:8px;font-weight:700}
.campos-link-modelo-p1 input{width:100%;border:1px solid var(--borda);border-radius:10px;padding:12px;background:var(--card);color:var(--texto);outline:none}
.campos-link-modelo-p1 input:focus{border-color:var(--primaria);box-shadow:0 0 0 3px rgba(11,61,145,.12)}
.linha-link-modelo-p1{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.visualizacao-link-modelo-p1{margin-top:20px;padding:18px;border:1px dashed var(--borda);border-radius:13px;background:var(--hover);display:flex;align-items:center;justify-content:space-between;gap:16px}
.visualizacao-link-modelo-p1>span{font-size:12px;font-weight:700;color:var(--texto-suave);text-transform:uppercase;letter-spacing:.04em}
.botao-documento-p1{max-width:100%;overflow:hidden}
.botao-documento-p1 span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.botao-documento-p1.desativado{opacity:.48;cursor:not-allowed;filter:grayscale(.4)}
@media(max-width:680px){.linha-link-modelo-p1{grid-template-columns:1fr}.linha-link-modelo-p1 .botao{width:100%}.visualizacao-link-modelo-p1{align-items:flex-start;flex-direction:column}.botao-documento-p1{width:100%}}


/* =========================================================
   PORTAL P1 - GERENCIADOR V2.1 | DOCUMENTOS P1 EM CASCATA
========================================================= */
.documentos-p1-layout-v21{display:grid;grid-template-columns:minmax(270px,330px) minmax(0,1fr);gap:20px;align-items:start}
.cadastro-documento-p1-widget,.biblioteca-documentos-p1-widget{background:var(--card);border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra)}
.cadastro-documento-p1-widget{padding:18px;position:sticky;top:18px}
.cadastro-documento-p1-widget h3,.biblioteca-documentos-p1-widget h3{color:var(--primaria);display:flex;align-items:center;gap:9px}
.cadastro-documento-p1-widget p,.biblioteca-documentos-p1-widget p{color:var(--texto-suave);font-size:12px;margin-top:4px}
.form-documento-p1{display:grid;gap:12px;margin-top:14px}
.form-documento-p1 label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}
.form-documento-p1 input{width:100%;padding:10px 11px;border:1px solid var(--borda);border-radius:9px;background:var(--card);color:var(--texto);outline:none}
.form-documento-p1 input:focus{border-color:var(--primaria);box-shadow:0 0 0 3px rgba(11,61,145,.12)}
.linha-link-cadastro-p1{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:7px}.linha-link-cadastro-p1 .botao{padding:0}
.status-cadastro-documento-p1{padding:9px 10px;border-radius:8px;background:var(--hover);color:var(--texto-suave);font-size:11px}
.acoes-form-documento-p1{display:grid;grid-template-columns:1fr 1fr;gap:8px}.acoes-form-documento-p1 .botao{padding:10px 8px}
.biblioteca-documentos-p1-widget{padding:20px;min-height:560px}
.biblioteca-documentos-p1-topo{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--borda)}
.biblioteca-documentos-p1-topo input{width:min(300px,100%);padding:10px 12px;border:1px solid var(--borda);border-radius:10px;background:var(--card);color:var(--texto)}
.biblioteca-documentos-p1{display:grid;gap:12px;margin-top:16px}
.categoria-cascata-p1{border:1px solid var(--borda);border-radius:13px;overflow:hidden;background:var(--card)}
.categoria-cascata-cabecalho-p1,.subcategoria-cascata-cabecalho-p1{display:flex;align-items:center;gap:8px;background:var(--hover)}
.categoria-cascata-cabecalho-p1{padding:11px 12px}.subcategoria-cascata-cabecalho-p1{padding:9px 11px;border-top:1px solid var(--borda)}
.toggle-cascata-p1{flex:1;display:flex;align-items:center;gap:9px;border:0;background:transparent;color:var(--texto);text-align:left;font-weight:700;min-width:0}
.toggle-cascata-p1 span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toggle-cascata-p1 b{min-width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:var(--card);color:var(--primaria);font-size:11px}
.toggle-cascata-p1 .fa-chevron-right{font-size:11px;transition:.2s}.categoria-cascata-p1.aberta>.categoria-cascata-cabecalho-p1 .fa-chevron-right,.subcategoria-cascata-p1.aberta>.subcategoria-cascata-cabecalho-p1 .fa-chevron-right{transform:rotate(90deg)}
.subcategorias-cascata-p1,.documentos-subcategoria-p1{display:none}.categoria-cascata-p1.aberta>.subcategorias-cascata-p1,.subcategoria-cascata-p1.aberta>.documentos-subcategoria-p1{display:grid}
.subcategoria-cascata-p1{margin:0 10px 10px;border:1px solid var(--borda);border-radius:10px;overflow:hidden}
.acoes-cascata-p1,.acoes-documento-p1{display:flex;gap:4px}.acoes-cascata-p1 button,.acoes-documento-p1 button{width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--texto-suave)}.acoes-cascata-p1 button:hover,.acoes-documento-p1 button:hover{background:var(--card);color:var(--primaria)}
.documentos-subcategoria-p1{gap:8px;padding:10px;min-height:54px}
.cartao-documento-p1{display:grid;grid-template-columns:28px minmax(150px,1fr) 56px minmax(150px,auto) 68px;gap:9px;align-items:center;padding:10px;border:1px solid var(--borda);border-radius:10px;background:var(--card);transition:.18s}
.cartao-documento-p1:hover{border-color:var(--primaria);box-shadow:0 4px 16px rgba(15,23,42,.08)}.cartao-documento-p1.arrastando{opacity:.38}.cartao-documento-p1.alvo-arraste{border:2px solid var(--primaria)}
.alca-documento-p1{cursor:grab;color:var(--texto-suave);text-align:center}.info-documento-p1{min-width:0}.info-documento-p1 span{display:block;color:var(--texto-suave);font-size:10px}.info-documento-p1 h4{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ordem-documento-p1{width:52px;padding:8px 4px;text-align:center;border:1px solid var(--borda);border-radius:8px;background:var(--card);color:var(--texto);font-weight:800}
.cartao-documento-p1 .botao{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cartao-documento-p1 .botao.desativado{opacity:.48;cursor:not-allowed}
.vazio-subcategoria-p1{padding:15px;text-align:center;color:var(--texto-suave);font-size:12px}
@media(max-width:1050px){.documentos-p1-layout-v21{grid-template-columns:1fr}.cadastro-documento-p1-widget{position:static}.biblioteca-documentos-p1-topo{align-items:flex-start;flex-direction:column}.biblioteca-documentos-p1-topo input{width:100%}}
@media(max-width:760px){.cartao-documento-p1{grid-template-columns:24px 1fr 52px}.cartao-documento-p1 .botao{grid-column:2/4;width:100%}.acoes-documento-p1{grid-column:2/4;justify-content:flex-end}.acoes-form-documento-p1{grid-template-columns:1fr}}


/* GERENCIADOR V2.1.1 - BIBLIOTECA ENXUTA E MODO DE EDICAO */
.biblioteca-documentos-p1-controles{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.biblioteca-documentos-p1-controles input{min-width:250px}
#btnModoEdicaoDocumentosP1.ativo{background:var(--primaria);color:#fff;border-color:var(--primaria)}
.controles-edicao-p1{display:none!important}
.biblioteca-documentos-p1.modo-edicao-p1 .controles-edicao-p1{display:flex!important}
.documento-link-p1{min-width:0;flex:1;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--texto);font-weight:700;transition:.2s}
.documento-link-p1 i{color:var(--primaria)}
.documento-link-p1:hover{background:var(--card);color:var(--primaria);transform:translateX(2px)}
.documento-link-p1.desativado{opacity:.55;cursor:not-allowed}
.cartao-documento-p1{grid-template-columns:auto minmax(0,1fr) auto auto!important}
@media(max-width:700px){.biblioteca-documentos-p1-controles{width:100%;justify-content:stretch}.biblioteca-documentos-p1-controles input,.biblioteca-documentos-p1-controles .botao{width:100%;min-width:0}.cartao-documento-p1{grid-template-columns:auto minmax(0,1fr) auto!important}.biblioteca-documentos-p1.modo-edicao-p1 .cartao-documento-p1{grid-template-columns:auto minmax(0,1fr) auto!important}.acoes-documento-p1{grid-column:2/-1;justify-content:flex-end}}

/* GERENCIADOR V2.1.2 - DOCUMENTOS P1 EM WIDGET UNICO */
.documentos-p1-widget-unico{width:100%;min-height:620px}
.area-cadastro-documento-p1{margin-top:18px;padding:18px;border:1px solid var(--borda);border-radius:14px;background:var(--hover);animation:abrirCadastroP1 .22s ease}
.area-cadastro-documento-p1.oculto{display:none!important}
.area-cadastro-documento-p1-topo{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--borda)}
.area-cadastro-documento-p1-topo h3{color:var(--primaria);display:flex;align-items:center;gap:9px}
.area-cadastro-documento-p1-topo p{color:var(--texto-suave);font-size:12px;margin-top:4px}
.form-documento-p1-horizontal{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.form-documento-p1-horizontal label:nth-of-type(3),.form-documento-p1-horizontal label:nth-of-type(4){grid-column:span 2}
.rodape-cadastro-documento-p1{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px}
.rodape-cadastro-documento-p1 .status-cadastro-documento-p1{flex:1}
.rodape-cadastro-documento-p1 .acoes-form-documento-p1{display:flex;grid-template-columns:none}
@keyframes abrirCadastroP1{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* Camadas da cascata com cores visualmente distintas */
.categoria-cascata-p1{border:1px solid rgba(30,64,175,.28);background:var(--card);box-shadow:0 3px 12px rgba(15,23,42,.05)}
.categoria-cascata-cabecalho-p1{padding:13px 14px;background:linear-gradient(135deg,rgba(30,64,175,.18),rgba(37,99,235,.08));border-bottom:1px solid rgba(30,64,175,.18)}
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1{font-size:14px;color:var(--primaria)}
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1>.fa-folder{font-size:17px}
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{background:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1px rgba(30,64,175,.14)}
.subcategorias-cascata-p1{padding:12px;background:rgba(148,163,184,.06);gap:10px}
.subcategoria-cascata-p1{margin:0;border:1px solid rgba(5,150,105,.24);border-left:5px solid rgba(5,150,105,.72);background:var(--card)}
.subcategoria-cascata-cabecalho-p1{padding:10px 12px;border-top:0;background:linear-gradient(135deg,rgba(5,150,105,.15),rgba(16,185,129,.06))}
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1{font-size:13px;color:#047857}
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f07b";font-size:14px}
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{background:rgba(255,255,255,.76);color:#047857;box-shadow:inset 0 0 0 1px rgba(5,150,105,.14)}
.documentos-subcategoria-p1{padding:12px;background:rgba(245,158,11,.055)}
.cartao-documento-p1{border-color:rgba(217,119,6,.22);border-left:4px solid rgba(245,158,11,.68);background:linear-gradient(90deg,rgba(245,158,11,.08),var(--card) 24%)}
.cartao-documento-p1:hover{border-color:rgba(217,119,6,.62);box-shadow:0 5px 16px rgba(146,64,14,.10)}
.documento-link-p1 i{color:#d97706}
.documento-link-p1:hover{color:#b45309;background:rgba(245,158,11,.08)}
body.tema-escuro .categoria-cascata-cabecalho-p1{background:linear-gradient(135deg,rgba(59,130,246,.25),rgba(30,64,175,.12))}
body.tema-escuro .subcategoria-cascata-cabecalho-p1{background:linear-gradient(135deg,rgba(16,185,129,.22),rgba(5,150,105,.10))}
body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1{color:#6ee7b7}
body.tema-escuro .documentos-subcategoria-p1{background:rgba(245,158,11,.06)}
@media(max-width:760px){.form-documento-p1-horizontal{grid-template-columns:1fr}.form-documento-p1-horizontal label:nth-of-type(3),.form-documento-p1-horizontal label:nth-of-type(4){grid-column:auto}.rodape-cadastro-documento-p1{align-items:stretch;flex-direction:column}.rodape-cadastro-documento-p1 .acoes-form-documento-p1{width:100%;display:grid;grid-template-columns:1fr}.area-cadastro-documento-p1-topo{align-items:flex-start;flex-direction:column}.area-cadastro-documento-p1-topo .botao{width:100%}}

/* GERENCIADOR V2.1.3 - ORGANIZACAO POR ARRASTAR */
.area-organizar-documentos-p1{margin-top:16px;padding:14px 16px;border:1px solid rgba(11,61,145,.22);border-radius:12px;background:rgba(11,61,145,.06);display:flex;align-items:end;gap:16px;animation:abrirCadastroP1 .2s ease}
.area-organizar-documentos-p1.oculto{display:none!important}
.area-organizar-documentos-p1-texto{flex:1;display:grid;gap:3px}.area-organizar-documentos-p1-texto strong{color:var(--primaria);display:flex;align-items:center;gap:8px}.area-organizar-documentos-p1-texto span{font-size:12px;color:var(--texto-suave)}
.area-organizar-documentos-p1 label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--texto-suave);min-width:190px}.area-organizar-documentos-p1 select{padding:9px 11px;border:1px solid var(--borda);border-radius:9px;background:var(--card);color:var(--texto)}
#btnOrganizarDocumentosP1.ativo{background:var(--primaria);color:#fff;border-color:var(--primaria)}
.biblioteca-documentos-p1.modo-organizacao-p1{user-select:none}.biblioteca-documentos-p1.modo-organizacao-p1 .item-organizavel-p1{cursor:grab}.biblioteca-documentos-p1.modo-organizacao-p1 .item-organizavel-p1:active{cursor:grabbing}
.alca-organizacao-p1{width:28px;height:28px;display:grid;place-items:center;color:var(--texto-suave);cursor:grab}.icone-documento-p1{width:28px;height:28px;display:grid;place-items:center;color:#d97706}
.categoria-cascata-p1.arrastando,.subcategoria-cascata-p1.arrastando,.cartao-documento-p1.arrastando{opacity:.38}.categoria-cascata-p1.alvo-arraste,.subcategoria-cascata-p1.alvo-arraste,.cartao-documento-p1.alvo-arraste{outline:2px dashed var(--primaria);outline-offset:2px}
.biblioteca-documentos-p1[data-tipo-organizacao="categoria"]>.categoria-cascata-p1>.categoria-cascata-cabecalho-p1,
.biblioteca-documentos-p1[data-tipo-organizacao="subcategoria"] .subcategoria-cascata-cabecalho-p1,
.biblioteca-documentos-p1[data-tipo-organizacao="documento"] .cartao-documento-p1{box-shadow:inset 0 0 0 2px rgba(11,61,145,.12)}
@media(max-width:760px){.area-organizar-documentos-p1{align-items:stretch;flex-direction:column}.area-organizar-documentos-p1 label{min-width:0}.area-organizar-documentos-p1 .botao{width:100%}}

/* PORTAL P1 - GERENCIADOR V2.4 - LAYOUT 70/30 E INDICADORES */
.documentos-p1-painel-v24{display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,2fr);gap:20px;align-items:start}
.documentos-p1-painel-v24 .documentos-p1-widget-unico{min-height:0;padding:18px}
.documentos-p1-painel-v24 .biblioteca-documentos-p1-topo{padding-bottom:13px}
.documentos-p1-painel-v24 .biblioteca-documentos-p1{gap:9px;margin-top:13px}
.documentos-p1-indicadores-v24{position:sticky;top:18px;display:grid;gap:14px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,246,255,.88));border:1px solid rgba(99,102,241,.16);border-radius:20px;padding:17px;box-shadow:0 18px 45px rgba(15,23,42,.10);overflow:hidden}
.documentos-p1-indicadores-v24:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-85px;top:-90px;background:linear-gradient(135deg,rgba(236,72,153,.26),rgba(99,102,241,.20));filter:blur(2px);pointer-events:none}
.indicadores-p1-cabecalho{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px}
.indicadores-p1-cabecalho h3{font-size:18px;color:var(--texto);margin-top:3px}.indicadores-p1-etiqueta{font-size:10px;font-weight:900;letter-spacing:.13em;color:#7c3aed}
.indicadores-p1-cabecalho>i{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#7c3aed,#ec4899);box-shadow:0 9px 20px rgba(124,58,237,.25)}
.cards-indicadores-p1{display:grid;grid-template-columns:1fr 1fr;gap:10px}.card-indicador-p1{min-width:0;display:flex;align-items:center;gap:10px;padding:13px;border-radius:16px;color:#fff;box-shadow:0 10px 22px rgba(15,23,42,.12);transition:transform .2s ease,box-shadow .2s ease}.card-indicador-p1:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,23,42,.17)}
.card-indicador-p1>i{width:35px;height:35px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.20);font-size:16px}.card-indicador-p1 div{display:grid}.card-indicador-p1 strong{font-size:23px;line-height:1}.card-indicador-p1 span{font-size:10px;font-weight:800;opacity:.9;margin-top:4px}
.card-documentos-p1{grid-column:1/-1;background:linear-gradient(135deg,#2563eb,#06b6d4)}.card-categorias-p1{background:linear-gradient(135deg,#8b5cf6,#d946ef)}.card-subcategorias-p1{background:linear-gradient(135deg,#f97316,#facc15)}
.grafico-documentos-p1-card{position:relative;background:rgba(255,255,255,.78);border:1px solid rgba(148,163,184,.20);border-radius:18px;padding:14px;backdrop-filter:blur(8px)}.grafico-documentos-p1-topo h4{font-size:14px;color:var(--texto)}.grafico-documentos-p1-topo p{font-size:11px;color:var(--texto-suave);margin-top:2px}.grafico-documentos-p1{min-height:270px;display:grid;place-items:center;margin-top:8px}.grafico-p1-vazio{color:var(--texto-suave);font-size:12px;text-align:center;padding:35px 10px}
.grafico-p1-conteudo{width:100%;display:grid;gap:12px;place-items:center}.grafico-p1-rosca-wrap{position:relative;width:164px;height:164px}.grafico-p1-rosca{width:100%;height:100%;transform:rotate(-90deg);filter:drop-shadow(0 8px 12px rgba(15,23,42,.10))}.grafico-p1-centro{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}.grafico-p1-centro strong{font-size:27px;color:var(--texto);line-height:1}.grafico-p1-centro span{font-size:9px;font-weight:900;color:var(--texto-suave);letter-spacing:.08em;margin-top:5px}.legenda-grafico-p1{width:100%;display:grid;gap:7px}.legenda-item-p1{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:7px;font-size:10px;color:var(--texto-suave)}.legenda-cor-p1{width:9px;height:9px;border-radius:50%}.legenda-item-p1 span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legenda-item-p1 b{color:var(--texto);font-size:10px}
body.tema-escuro .documentos-p1-indicadores-v24{background:linear-gradient(145deg,rgba(15,23,42,.96),rgba(30,41,59,.92));border-color:rgba(129,140,248,.22)}body.tema-escuro .grafico-documentos-p1-card{background:rgba(15,23,42,.58);border-color:rgba(148,163,184,.15)}
@media(max-width:1150px){.documentos-p1-painel-v24{grid-template-columns:minmax(0,3fr) minmax(280px,2fr)}.biblioteca-documentos-p1-controles input{min-width:190px}}
@media(max-width:920px){.documentos-p1-painel-v24{grid-template-columns:1fr}.documentos-p1-indicadores-v24{position:static}.cards-indicadores-p1{grid-template-columns:repeat(3,1fr)}.card-documentos-p1{grid-column:auto}.grafico-p1-conteudo{grid-template-columns:auto 1fr;align-items:center}.grafico-p1-rosca-wrap{width:150px;height:150px}}
@media(max-width:620px){.cards-indicadores-p1{grid-template-columns:1fr 1fr}.card-documentos-p1{grid-column:1/-1}.grafico-p1-conteudo{grid-template-columns:1fr}.documentos-p1-indicadores-v24{padding:14px}}


/* PORTAL P1 - GERENCIADOR V2.6 - CASCATA FECHADA E COPIA DO NOME */
.copiar-nome-documento-p1{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:72px;height:32px;padding:0 9px;border:1px solid rgba(217,119,6,.25);border-radius:8px;background:rgba(245,158,11,.10);color:#b45309;font-size:11px;font-weight:800;cursor:pointer;transition:.18s}
.copiar-nome-documento-p1:hover{background:rgba(245,158,11,.18);border-color:rgba(217,119,6,.55);transform:translateY(-1px)}
.copiar-nome-documento-p1.copiado{background:rgba(16,185,129,.14);border-color:rgba(5,150,105,.42);color:#047857}
body.tema-escuro .copiar-nome-documento-p1{color:#fbbf24;background:rgba(245,158,11,.12)}
body.tema-escuro .copiar-nome-documento-p1.copiado{color:#6ee7b7;background:rgba(16,185,129,.14)}
@media(max-width:700px){.copiar-nome-documento-p1{min-width:34px;width:34px;padding:0}.copiar-nome-documento-p1 span{display:none}}


/* =========================================================
   PORTAL P1 - GERENCIADOR V2.7 | FAVORITOS DE DOCUMENTOS
========================================================= */
.subcategoria-cascata-p1{
  border-color:color-mix(in srgb,var(--cor-subcategoria) 34%,var(--borda))!important;
  border-left-color:var(--cor-subcategoria)!important;
}
.subcategoria-cascata-cabecalho-p1{
  background:linear-gradient(135deg,color-mix(in srgb,var(--cor-subcategoria) 18%,transparent),color-mix(in srgb,var(--cor-subcategoria) 7%,transparent))!important;
}
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1,
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{color:var(--cor-subcategoria-borda)!important}
.cartao-documento-p1{border-left-color:var(--cor-subcategoria)!important}
.favoritar-documento-p1{
  width:36px;height:36px;border:1px solid var(--borda);border-radius:9px;background:var(--card);color:#94a3b8;display:grid;place-items:center;cursor:pointer;transition:.18s;font-size:16px
}
.favoritar-documento-p1:hover{transform:translateY(-1px);border-color:var(--cor-subcategoria);color:var(--cor-subcategoria)}
.favoritar-documento-p1.ativo{background:color-mix(in srgb,var(--cor-subcategoria) 14%,var(--card));border-color:var(--cor-subcategoria);color:var(--cor-subcategoria)}
.favoritos-documentos-p1-widget{margin-top:20px;width:100%;padding:16px 18px;border:1px solid var(--borda);border-radius:16px;background:var(--card);box-shadow:var(--sombra)}
.favoritos-documentos-p1-topo{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.favoritos-documentos-p1-topo h3{margin:0 0 3px;display:flex;align-items:center;gap:8px;font-size:16px}.favoritos-documentos-p1-topo h3 i{color:#eab308}
.favoritos-documentos-p1-topo p{margin:0;color:var(--texto-suave);font-size:12px}
.contador-favoritos-documentos-p1{font-weight:800;font-size:12px;padding:6px 10px;border-radius:999px;background:var(--hover);border:1px solid var(--borda);white-space:nowrap}
.favoritos-documentos-p1-grade{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:44px;gap:9px;width:100%;overflow:visible}
.botao-favorito-documento-p1{min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;padding:8px 9px;border-radius:10px;background:var(--cor-subcategoria);border:1px solid var(--cor-subcategoria-borda);color:var(--cor-subcategoria-texto);font-size:12px;font-weight:800;text-decoration:none;box-shadow:0 3px 9px color-mix(in srgb,var(--cor-subcategoria) 24%,transparent);transition:.18s}
.botao-favorito-documento-p1:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 5px 13px color-mix(in srgb,var(--cor-subcategoria) 32%,transparent)}
.botao-favorito-documento-p1 span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.botao-favorito-documento-p1 i{font-size:11px;flex:0 0 auto}
.botao-favorito-documento-p1.desativado{opacity:.5;cursor:not-allowed}
.favoritos-documentos-p1-vazio{grid-column:1/-1;min-height:44px;border:1px dashed var(--borda);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--texto-suave);font-size:12px}
body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1,body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{color:color-mix(in srgb,var(--cor-subcategoria) 55%,white)!important}
@media(max-width:1100px){.favoritos-documentos-p1-grade{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.favoritos-documentos-p1-grade{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:42px}.favoritos-documentos-p1-topo{align-items:flex-start}.favoritar-documento-p1{width:34px;height:34px}.cartao-documento-p1{grid-template-columns:auto minmax(0,1fr) auto auto auto!important}}


/* =========================================================
   PORTAL P1 - GERENCIADOR V3.0 | HIERARQUIA CROMÁTICA COMPATÍVEL
========================================================= */
.categoria-cascata-p1{
  border-color:var(--cor-categoria-borda,#1d4ed8)!important;
  box-shadow:0 5px 17px var(--sombra-categoria,rgba(30,58,138,.16))!important;
}
.categoria-cascata-cabecalho-p1{
  background:linear-gradient(135deg,var(--cor-categoria,#1e3a8a),var(--cor-categoria-escura,#172554))!important;
}
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1,
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1 span,
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1 i,
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1 b,
.categoria-cascata-cabecalho-p1 .acoes-cascata-p1 button{color:#fff!important}
.categoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{background:rgba(255,255,255,.18)!important;border-color:rgba(255,255,255,.28)!important}
.categoria-cascata-cabecalho-p1 .acoes-cascata-p1 button:hover{background:rgba(255,255,255,.16)!important}
.subcategoria-cascata-p1{
  border-color:var(--cor-subcategoria-borda,#1d4ed8)!important;
  border-left:5px solid var(--cor-subcategoria,#2563eb)!important;
}
.subcategoria-cascata-cabecalho-p1{
  background:linear-gradient(135deg,var(--cor-subcategoria-clara,#dbeafe),var(--cor-subcategoria-fundo,#eff6ff))!important;
}
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1,
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 span,
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 i,
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{color:var(--cor-subcategoria-titulo,#1e3a8a)!important}
.subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{background:rgba(255,255,255,.72)!important}
.cartao-documento-p1{
  border-color:var(--cor-subcategoria-borda,#2563eb)!important;
  border-left:5px solid var(--cor-subcategoria,#2563eb)!important;
  background:linear-gradient(90deg,var(--cor-subcategoria-fundo,#eff6ff),var(--card) 30%)!important;
}
.cartao-documento-p1:hover{
  border-color:var(--cor-subcategoria,#2563eb)!important;
  box-shadow:0 7px 18px var(--sombra-subcategoria,rgba(37,99,235,.20))!important;
}
.favoritar-documento-p1:hover{border-color:var(--cor-subcategoria,#2563eb)!important;color:var(--cor-subcategoria,#2563eb)!important}
.favoritar-documento-p1.ativo{background:var(--cor-subcategoria-fundo,#eff6ff)!important;border-color:var(--cor-subcategoria,#2563eb)!important;color:var(--cor-subcategoria,#2563eb)!important}
.favoritos-documentos-p1-topo h3{margin-bottom:0!important}
.favoritos-documentos-p1-topo>div>p{display:none!important}
.favoritos-documentos-p1-grade{grid-auto-rows:62px!important}
.botao-favorito-documento-p1{
  position:relative;
  justify-content:flex-start!important;
  gap:8px!important;
  padding:10px 9px 7px 10px!important;
  overflow:visible;
  background:linear-gradient(180deg,var(--cor-categoria,#1e3a8a) 0 6px,var(--cor-subcategoria,#2563eb) 6px 100%)!important;
  border-color:var(--cor-categoria-borda,#1d4ed8)!important;
  color:#fff!important;
  box-shadow:0 4px 11px var(--sombra-categoria,rgba(30,58,138,.16))!important;
}
.botao-favorito-documento-p1:hover{box-shadow:0 6px 15px var(--sombra-subcategoria,rgba(37,99,235,.20))!important}
.botao-favorito-documento-p1>i{color:#facc15!important;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.favorito-textos-p1{min-width:0;display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.08;overflow:hidden}
.favorito-textos-p1 strong,.favorito-textos-p1 small{display:block!important;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff!important}
.favorito-textos-p1 strong{font-size:10px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;opacity:1}
.favorito-textos-p1 small{margin-top:5px;font-size:11px;font-weight:400;opacity:.94}
.botao-favorito-documento-p1::before,
.botao-favorito-documento-p1::after{position:absolute;left:50%;z-index:80;pointer-events:none;opacity:0;visibility:hidden;transition:.18s ease}
.botao-favorito-documento-p1::before{
  content:"Categoria: " attr(data-tooltip-categoria) "\A\A Subcategoria: " attr(data-tooltip-subcategoria) "\A\A Documento: " attr(data-tooltip-documento);
  white-space:pre-wrap;bottom:calc(100% + 12px);transform:translate(-50%,5px);width:max-content;max-width:300px;padding:11px 13px;border-radius:11px;background:#0f172a;color:#fff;font-size:11px;font-weight:600;line-height:1.35;text-align:left;box-shadow:0 12px 30px rgba(15,23,42,.3)
}
.botao-favorito-documento-p1::after{content:"";bottom:calc(100% + 6px);transform:translate(-50%,5px);border:6px solid transparent;border-top-color:#0f172a}
.botao-favorito-documento-p1:hover::before,.botao-favorito-documento-p1:hover::after,.botao-favorito-documento-p1:focus-visible::before,.botao-favorito-documento-p1:focus-visible::after{opacity:1;visibility:visible;transform:translate(-50%,0)}
body.tema-escuro .subcategoria-cascata-cabecalho-p1{filter:brightness(.78)}
body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1,
body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 span,
body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 i,
body.tema-escuro .subcategoria-cascata-cabecalho-p1 .toggle-cascata-p1 b{color:#fff!important}
@media(max-width:700px){.favoritos-documentos-p1-grade{grid-auto-rows:62px!important}.botao-favorito-documento-p1::before{max-width:230px}}

/* V3.5 — ajuste pontual de formatação do Gerador de Tabelas */
.resultado-gerador #resultadoTabelaPM{
  overflow-x:auto !important;
}
.tabela-gerada-pm{
  width:max-content !important;
  min-width:0 !important;
  max-width:none !important;
  table-layout:auto !important;
  border-collapse:collapse !important;
  margin:0 auto !important;
}
.tabela-gerada-pm col{
  width:auto !important;
}
.tabela-gerada-pm th,
.tabela-gerada-pm td,
.tabela-gerada-pm th:nth-child(n),
.tabela-gerada-pm td:nth-child(n){
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  padding:8px 12px !important;
  text-align:center !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
.tabela-gerada-pm .celula-numero-pm{
  justify-content:center !important;
  text-align:center !important;
}

/* V3.6 — ajuste pontual da visualização da tabela no Gerador de Tabelas */
.resultado-gerador #resultadoTabelaPM{
  padding:2px !important;
}
.tabela-gerada-pm{
  border:1px solid #000 !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  width:max-content !important;
  min-width:0 !important;
  table-layout:auto !important;
}
.tabela-gerada-pm th,
.tabela-gerada-pm td,
.tabela-gerada-pm th:nth-child(n),
.tabela-gerada-pm td:nth-child(n){
  border:1px solid #000 !important;
  padding:5px 8px !important;
  line-height:1.2 !important;
  height:auto !important;
  text-align:center !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
}


/* =========================================================
   V3.8 — LOGIN MULTIUSUÁRIO E ORDENAÇÃO MANUAL
========================================================= */
.tela-login-p1{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(3,18,36,.96),rgba(13,47,79,.94));backdrop-filter:blur(8px)}
.tela-login-p1.oculto{display:none!important}.cartao-login-p1{width:min(430px,100%);padding:28px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:var(--cor-card,#fff);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.login-identidade-p1{display:flex;align-items:center;gap:16px;margin-bottom:24px}.login-identidade-p1 img{width:74px;height:74px;object-fit:contain}.login-identidade-p1 strong{display:block;font-size:1.35rem}.login-identidade-p1 span{display:block;margin-top:4px;color:var(--cor-texto-secundario,#64748b)}
.cartao-login-p1 form{display:grid;gap:10px}.cartao-login-p1 label{font-weight:700}.cartao-login-p1 input{width:100%;padding:12px 14px;border:1px solid var(--cor-borda,#cbd5e1);border-radius:10px;font-size:1rem;background:var(--cor-fundo,#fff);color:inherit}.cartao-login-p1 input:focus{outline:2px solid var(--cor-primaria,#2563eb);outline-offset:1px}.cartao-login-p1 small{display:block;margin-top:18px;text-align:center;color:var(--cor-texto-secundario,#64748b)}
.status-login-p1{min-height:42px;margin:5px 0;padding:10px 12px;border-radius:9px;background:rgba(100,116,139,.10);font-size:.9rem}.status-login-p1.erro{color:#b91c1c;background:rgba(239,68,68,.12)}.status-login-p1.sucesso{color:#047857;background:rgba(16,185,129,.12)}.status-login-p1.carregando{color:#1d4ed8;background:rgba(59,130,246,.12)}.login-botao-p1{justify-content:center;width:100%;margin-top:3px}.trocar-usuario{white-space:nowrap;padding:8px 12px}
.acoes-ordem-pm{display:flex!important;justify-content:center;align-items:center;gap:5px}.botao-ordem-pm{display:inline-grid;place-items:center;width:30px;height:28px;border:1px solid var(--cor-borda,#cbd5e1);border-radius:6px;background:var(--cor-card,#fff);color:inherit;cursor:pointer}.botao-ordem-pm:hover:not(:disabled){transform:translateY(-1px);border-color:var(--cor-primaria,#2563eb)}.botao-ordem-pm:disabled{opacity:.3;cursor:not-allowed}.tabela-gerada-pm .col-ordem{width:78px}
@media(max-width:720px){.trocar-usuario{font-size:0;padding:9px}.trocar-usuario i{font-size:1rem}.cartao-login-p1{padding:22px}}

/* V3.8 — reordenação sob demanda no Gerador de Tabelas */
#btnReordenarTabelaPM.ativo{background:var(--primaria);color:#fff;border-color:var(--primaria)}
.tabela-gerada-pm:not(.modo-reordenacao) .col-ordem,.tabela-gerada-pm:not(.modo-reordenacao) .acoes-ordem-pm{display:none}
.tabela-gerada-pm .celula-editavel-pm{cursor:text;outline:none;background:rgba(255,255,255,.035)}
.tabela-gerada-pm .celula-editavel-pm:focus{box-shadow:inset 0 0 0 2px var(--primaria);background:var(--card)}
.tabela-gerada-pm .linha-vazia-pm td{background:rgba(148,163,184,.08)}
.tabela-gerada-pm.modo-reordenacao .col-ordem{width:78px}

/* ===== V3.9 — AJUSTES DE CONTA E RECUPERAÇÃO ===== */
.botao-link-login{border:0;background:transparent;color:var(--cor-primaria,#0b3d91);font-weight:700;cursor:pointer;padding:10px;width:100%;}
.recuperacao-pin-p1{display:grid;gap:8px;margin-top:14px;border-top:1px solid rgba(0,0,0,.12);padding-top:14px}.recuperacao-pin-p1 h3{margin:0 0 4px}.recuperacao-pin-p1 input{width:100%;box-sizing:border-box}.acoes-recuperacao-p1{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.ajustes-resumo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:18px}.ajuste-atalho-card{display:flex;align-items:center;gap:14px;text-align:left;border:1px solid var(--borda,#d8dfeb);background:var(--card,#fff);border-radius:14px;padding:18px;cursor:pointer;color:inherit;box-shadow:0 5px 18px rgba(0,0,0,.05)}.ajuste-atalho-card>i:first-child{font-size:1.5rem}.ajuste-atalho-card span{display:grid;gap:4px;flex:1}.ajuste-atalho-card small{opacity:.72}.ajustes-secao-interna{border:1px solid var(--borda,#d8dfeb);background:var(--card,#fff);border-radius:14px;padding:18px;margin-top:14px}.cabecalho-secao-ajustes{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.cabecalho-secao-ajustes h3,.cabecalho-secao-ajustes p{margin:0 0 4px}.form-pin-ajustes{display:grid;gap:12px;max-width:520px}.form-pin-ajustes label{display:grid;gap:6px}.pesquisa-usuarios-p1{width:100%;max-width:520px;margin-bottom:14px}.lista-usuarios-p1{display:grid;gap:10px}.usuario-admin-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--borda,#d8dfeb);border-radius:12px;padding:14px}.usuario-admin-card>div:first-child{display:grid;gap:4px}.usuario-admin-card span{font-size:.86rem;opacity:.72}@media(max-width:720px){.usuario-admin-card{align-items:flex-start;flex-direction:column}.usuario-admin-card .acoes{width:100%}}


/* ===== V3.9 — AJUSTES MODERNOS E COLORIDOS ===== */
.ajustes-resumo-grid{gap:18px}.ajuste-atalho-card{position:relative;overflow:hidden;min-height:128px;border:0;color:#fff;padding:22px;border-radius:20px;box-shadow:0 14px 34px rgba(15,23,42,.15);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}.ajuste-atalho-card::before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-48px;top:-68px;background:rgba(255,255,255,.16)}.ajuste-atalho-card::after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;right:38px;bottom:-48px;background:rgba(255,255,255,.10)}.ajuste-atalho-card:nth-child(1){background:linear-gradient(135deg,#2563eb,#06b6d4)}.ajuste-atalho-card:nth-child(2){background:linear-gradient(135deg,#7c3aed,#ec4899)}.ajuste-atalho-card:nth-child(3){background:linear-gradient(135deg,#f59e0b,#ef4444)}.ajuste-atalho-card:hover{transform:translateY(-5px) scale(1.015);box-shadow:0 20px 42px rgba(15,23,42,.22);filter:saturate(1.08)}.ajuste-atalho-card>i:first-child{position:relative;z-index:1;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:rgba(255,255,255,.20);font-size:1.65rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}.ajuste-atalho-card span,.ajuste-atalho-card>i:last-child{position:relative;z-index:1}.ajuste-atalho-card strong{font-size:1.08rem}.ajuste-atalho-card small{color:rgba(255,255,255,.88);line-height:1.35}.ajuste-atalho-card>i:last-child{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.16)}
.ajustes-secao-interna{border:0;border-radius:20px;box-shadow:0 14px 38px rgba(15,23,42,.10);animation:abrirAjusteP1 .24s ease both}@keyframes abrirAjusteP1{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
.seguranca-recuperacao-card{margin-top:22px;padding:20px;border-radius:18px;background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(124,58,237,.10));border:1px solid rgba(99,102,241,.20)}.seguranca-recuperacao-cabecalho{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.seguranca-recuperacao-cabecalho>i{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:15px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-size:1.3rem;box-shadow:0 10px 24px rgba(79,70,229,.25)}.seguranca-recuperacao-cabecalho h4{margin:2px 0 4px;font-size:1.05rem}.seguranca-recuperacao-cabecalho p{margin:0;opacity:.75;line-height:1.45}
@media(max-width:720px){.ajuste-atalho-card{min-height:112px;padding:18px}.ajuste-atalho-card>i:first-child{width:48px;height:48px}.seguranca-recuperacao-card{padding:16px}}

/* =========================================================
   V4.2 ESTÁVEL — AVISOS E MISSÕES
   Adicionado sem substituir a lógica dos módulos da V3.9.
========================================================= */
.anotacoes-legado-oculto{display:none!important}
.widget-missoes{min-width:0}
.missoes-topo{align-items:flex-start}
.missoes-barra{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px}
.filtro-missoes-wrap{position:relative}
.menu-filtros-missoes{position:absolute;z-index:1200;top:calc(100% + 8px);left:0;width:min(310px,calc(100vw - 48px));padding:10px;background:var(--card);border:1px solid var(--borda);border-radius:14px;box-shadow:0 18px 45px rgba(15,23,42,.2);display:grid;gap:7px}
.menu-filtros-missoes.oculto{display:none}
.menu-filtros-missoes>button{border:0;background:transparent;color:var(--texto);text-align:left;padding:9px 10px;border-radius:9px;cursor:pointer}
.menu-filtros-missoes>button:hover,.menu-filtros-missoes>button.ativo{background:var(--hover);color:var(--primaria);font-weight:700}
.menu-filtros-missoes label{font-size:12px;font-weight:700;display:grid;gap:5px;padding:5px}
.menu-filtros-missoes input,.menu-filtros-missoes select{width:100%;border:1px solid var(--borda);border-radius:9px;padding:9px;background:var(--card);color:var(--texto)}
.menu-filtros-missoes .limpar-filtros{border-top:1px solid var(--borda);border-radius:0;margin-top:3px;padding-top:12px;color:var(--texto-suave)}
.resumo-missoes{font-size:12px;font-weight:700;color:var(--texto-suave)}
.lista-missoes-home{display:grid;gap:9px;max-height:360px;overflow:auto;padding-right:3px}
.missao-card{border:1px solid var(--borda);border-left:4px solid var(--borda);border-radius:12px;background:var(--card);padding:11px 12px;cursor:pointer;transition:.18s;display:grid;gap:7px}
.missao-card:hover{transform:translateY(-1px);box-shadow:var(--sombra)}
.missao-card.minha-missao{border-left-color:var(--primaria);background:color-mix(in srgb,var(--primaria) 7%,var(--card))}
.missao-card.vencida{border-left-color:#dc2626}.missao-card.proxima{border-left-color:#f59e0b}.missao-card.concluida{opacity:.72;border-left-color:#16a34a}
.missao-card-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.missao-card h3{font-size:14px;line-height:1.3;margin:0}
.missao-card-meta{display:flex;flex-wrap:wrap;gap:7px 12px;font-size:11px;color:var(--texto-suave)}
.missao-badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:var(--hover);padding:4px 8px;font-size:10px;font-weight:800;white-space:nowrap}
.missao-badge.minha{background:var(--primaria);color:white}
.missao-vazio{padding:28px 12px;text-align:center;color:var(--texto-suave);border:1px dashed var(--borda);border-radius:12px}
.modal-missao{background:rgba(2,6,23,.76);backdrop-filter:blur(3px)}
.modal-missao-caixa{width:min(720px,calc(100vw - 28px));max-height:90vh;overflow:auto;background:var(--card);border:1px solid var(--borda)}
.modal-missao .modal-topo{position:sticky;top:0;z-index:2;background:var(--card)}
.modal-missao .modal-topo p{font-size:12px;color:var(--texto-suave);margin-top:4px}
.form-missao{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:15px}
.form-missao label{display:grid;gap:7px;font-size:13px;font-weight:700}
.form-missao .campo-largo{grid-column:1/-1}
.form-missao input,.form-missao select,.form-missao textarea{width:100%;border:1px solid var(--borda);border-radius:10px;padding:11px 12px;background:var(--card);color:var(--texto);outline:0}
.form-missao input:focus,.form-missao select:focus,.form-missao textarea:focus{border-color:var(--primaria);box-shadow:0 0 0 3px color-mix(in srgb,var(--primaria) 15%,transparent)}
.categoria-com-acoes{display:grid;grid-template-columns:1fr 42px;gap:7px}
.responsavel-box{border:1px solid var(--borda);border-radius:12px;padding:13px;margin:0}
.responsavel-box legend{padding:0 6px;font-size:13px;font-weight:800}
.responsavel-opcoes{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:10px}
.responsavel-opcoes label{display:flex;align-items:center;gap:6px;font-weight:600}.responsavel-opcoes input{width:auto}
.acoes-form-missao{display:flex;justify-content:flex-end;gap:9px;padding-top:4px}
.modal-categorias-missao-caixa{width:min(560px,calc(100vw - 28px))}.categorias-missao-conteudo{padding:18px}.nova-categoria-missao{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:14px}.nova-categoria-missao input{border:1px solid var(--borda);border-radius:10px;padding:10px;background:var(--card);color:var(--texto)}
.categoria-missao-item{display:grid;grid-template-columns:1fr auto auto;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid var(--borda)}.categoria-missao-item input{border:1px solid transparent;background:transparent;color:var(--texto);padding:8px;border-radius:8px}.categoria-missao-item input:focus{border-color:var(--primaria);background:var(--hover)}
.modal-detalhes-missao-caixa{width:min(650px,calc(100vw - 28px))}.detalhes-missao{padding:20px;display:grid;gap:13px}.detalhes-missao-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detalhes-missao-bloco{border:1px solid var(--borda);border-radius:11px;padding:12px;background:var(--hover)}.detalhes-missao-bloco small{display:block;color:var(--texto-suave);margin-bottom:5px}.detalhes-missao-acoes{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
@media(max-width:700px){.missoes-topo{display:grid;gap:10px}.form-missao{grid-template-columns:1fr}.form-missao .campo-largo{grid-column:1}.responsavel-opcoes{display:grid}.detalhes-missao-grid{grid-template-columns:1fr}.acoes-form-missao{justify-content:stretch}.acoes-form-missao .botao{flex:1}}


/* V4.3 — CHAT ADITIVO, SEM ALTERAR MÓDULOS EXISTENTES */
.chat-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#dc2626;color:#fff;font-size:.72rem;font-weight:800}.chat-badge.oculto{display:none}
.chat-app{display:grid;grid-template-columns:320px minmax(0,1fr);height:calc(100vh - 210px);min-height:560px;background:var(--cor-card,#fff);border:1px solid var(--cor-borda,#dfe5ec);border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.08)}
.chat-sidebar{border-right:1px solid var(--cor-borda,#dfe5ec);background:rgba(248,250,252,.82);overflow:auto}.chat-search{margin:14px;display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--cor-borda,#dfe5ec);border-radius:12px;background:#fff}.chat-search input{width:100%;border:0;outline:0;background:transparent}.chat-conversa{width:100%;display:flex;align-items:center;gap:11px;padding:12px 14px;border:0;border-bottom:1px solid rgba(148,163,184,.15);background:transparent;text-align:left;cursor:pointer;color:inherit}.chat-conversa:hover,.chat-conversa.ativo{background:rgba(37,99,235,.09)}.chat-conversa span:nth-child(2){min-width:0;display:flex;flex-direction:column}.chat-conversa strong,.chat-conversa small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-conversa small{color:#64748b;margin-top:3px}.chat-avatar{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1d4ed8,#0f766e);color:#fff}.chat-lista-titulo{padding:15px 14px 7px;color:#64748b;font-size:.72rem;font-weight:800;letter-spacing:.08em}
.chat-principal{display:grid;grid-template-rows:auto 1fr auto;min-width:0;background:linear-gradient(rgba(248,250,252,.93),rgba(248,250,252,.93)),radial-gradient(circle at 20px 20px,#cbd5e1 1px,transparent 1px);background-size:auto,24px 24px}.chat-topo{display:flex;align-items:center;gap:11px;padding:11px 16px;border-bottom:1px solid var(--cor-borda,#dfe5ec);background:#fff}.chat-topo>div{display:flex;flex-direction:column;min-width:0}.chat-topo small{color:#64748b}.chat-topo .botao-icone{margin-left:auto}.chat-mensagens{overflow:auto;padding:22px;display:flex;flex-direction:column;gap:10px}.chat-vazio{margin:auto;text-align:center;color:#64748b;background:rgba(255,255,255,.88);padding:20px 26px;border-radius:16px}.chat-msg{max-width:min(72%,680px);padding:10px 12px 7px;border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(15,23,42,.08);align-self:flex-start;word-break:break-word}.chat-msg.propria{align-self:flex-end;background:#dcfce7}.chat-msg-cab{display:flex;gap:12px;justify-content:space-between;font-size:.72rem;margin-bottom:4px}.chat-msg-cab strong{color:#1d4ed8}.chat-msg-hora{color:#64748b;white-space:nowrap}.chat-msg-texto{white-space:pre-wrap;line-height:1.4}.chat-msg-anexo{display:block;margin-top:8px;padding:8px;border-radius:9px;background:rgba(255,255,255,.65);color:#1d4ed8;text-decoration:none}.chat-msg-imagem{display:block;max-width:320px;max-height:260px;border-radius:10px;margin-top:8px}.chat-form{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:9px;padding:12px 14px;background:#fff;border-top:1px solid var(--cor-borda,#dfe5ec)}.chat-form textarea{resize:none;max-height:130px;min-height:42px;padding:11px 13px;border:1px solid var(--cor-borda,#dfe5ec);border-radius:13px;outline:0;font:inherit}.chat-enviar{width:43px;height:43px;border:0;border-radius:50%;background:#166534;color:#fff;cursor:pointer;font-size:1rem}.chat-enviar:hover{filter:brightness(1.1)}
@media(max-width:850px){.chat-app{grid-template-columns:1fr;height:calc(100vh - 155px);min-height:500px}.chat-sidebar{display:none}.chat-msg{max-width:88%}}

#painel-administrador .administrador-conteudo{background:var(--card);border-radius:18px;padding:20px;box-shadow:var(--sombra)}

/* V4.4 — restauração da Auditoria no menu Administrador */
.auditoria-admin-card{margin-top:24px;padding:22px;border:1px solid var(--borda,#d8e0ec);border-radius:16px;background:var(--card,#fff);box-shadow:0 8px 24px rgba(15,23,42,.06)}
.auditoria-admin-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.auditoria-admin-topo h3{margin:0 0 5px}.auditoria-admin-topo p{margin:0;color:var(--texto-suave,#64748b)}
.auditoria-filtros-p1{display:grid;grid-template-columns:minmax(240px,1fr) 220px;gap:12px;margin-bottom:12px}.auditoria-filtros-p1 input,.auditoria-filtros-p1 select{width:100%;padding:11px 12px;border:1px solid var(--borda,#ccd5e2);border-radius:10px;background:var(--card,#fff);color:inherit}
.auditoria-resumo-p1{display:flex;justify-content:space-between;gap:12px;padding:9px 2px;color:var(--texto-suave,#64748b);font-size:.9rem}.lista-auditoria-p1{display:grid;gap:10px;max-height:520px;overflow:auto;padding-right:3px}
.auditoria-item-p1{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px;border:1px solid var(--borda,#e1e7ef);border-radius:12px;background:rgba(148,163,184,.06)}.auditoria-item-icone-p1{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(11,61,145,.12);color:var(--principal,#0b3d91)}.auditoria-item-p1 strong{display:block;margin-bottom:3px}.auditoria-item-p1 p{margin:0;color:var(--texto-suave,#64748b);overflow-wrap:anywhere}.auditoria-item-p1 small{display:block;margin-top:5px;color:var(--texto-suave,#64748b)}.auditoria-data-p1{text-align:right;white-space:nowrap;color:var(--texto-suave,#64748b);font-size:.82rem}
@media(max-width:760px){.auditoria-admin-topo{flex-direction:column}.auditoria-filtros-p1{grid-template-columns:1fr}.auditoria-item-p1{grid-template-columns:40px 1fr}.auditoria-data-p1{grid-column:2;text-align:left}.auditoria-resumo-p1{flex-direction:column}}

/* V4.5 - Login: opção Salvar senha */
.lembrar-senha-p1{display:flex!important;align-items:center;gap:8px;margin:10px 0 2px;font-size:.9rem;cursor:pointer}.lembrar-senha-p1 input{width:16px;height:16px;margin:0}.lembrar-senha-p1 span{font-weight:500}

/* V5.0 — MULTIUSUÁRIO / AJUSTES SOLICITADOS */
.seletor-responsaveis-missao{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-top:10px;max-height:190px;overflow:auto;padding:10px;border:1px solid var(--borda);border-radius:10px;background:var(--hover)}
.seletor-responsaveis-missao label{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;padding:8px;border-radius:8px;background:var(--card);font-size:12px;cursor:pointer}.seletor-responsaveis-missao input{width:auto!important}
.missao-card.minha-missao{border:2px solid #2563eb!important;box-shadow:0 0 0 3px rgba(37,99,235,.12),var(--sombra)!important;position:relative}.missao-card.minha-missao:before{content:'MINHA MISSÃO';position:absolute;top:-10px;right:14px;background:#2563eb;color:white;padding:3px 8px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.04em}
.organograma-zoom-bar{display:flex;align-items:center;gap:7px;margin-left:auto}.organograma-zoom-bar button{width:34px;height:34px;border:1px solid var(--borda);border-radius:8px;background:var(--card);cursor:pointer}.organograma-ultima-alteracao{font-size:11px;color:var(--texto-suave);margin-top:6px}
.ajustes-resumo-grid .ajuste-atalho-card{min-height:64px!important;padding:10px 12px!important}.ajustes-resumo-grid .ajuste-atalho-card>i:first-child{font-size:17px!important}.ajustes-resumo-grid .ajuste-atalho-card small{font-size:10px!important}
#painel-pjes .pjes-cadastro-card,#painel-pjes .novo-lancamento-pjes{padding:14px!important}.pjes-cadastro-card{max-width:760px}.pjes-resumo-card,.pjes-cadastro-card{border-radius:16px!important;box-shadow:0 8px 24px rgba(15,23,42,.07)!important}
.portal-toast-chat{position:fixed;right:22px;bottom:22px;z-index:999999;max-width:340px;padding:12px 14px;border-radius:12px;background:#0f172a;color:#fff;box-shadow:0 14px 35px #0004;animation:toastIn .2s ease}.portal-toast-chat strong{display:block;margin-bottom:3px}.portal-toast-chat small{opacity:.8}@keyframes toastIn{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.chat-badge:not(.oculto){display:inline-flex!important;min-width:19px;height:19px;padding:0 5px;border-radius:999px;align-items:center;justify-content:center;background:#ef4444;color:#fff;font-size:10px;font-weight:900;margin-left:auto}
.sobre-card{max-width:820px!important;padding:34px!important}.sobre-card h2{margin-top:14px}.sobre-card p{line-height:1.65}

/* ===== Portal P1 V4.7 — ajustes visuais ===== */
.lista-responsaveis-portal{max-height:240px;overflow:auto;border:1px solid var(--borda,#d8dee9);border-radius:12px;padding:8px;background:var(--card,#fff);display:grid;gap:6px}
.responsavel-usuario-opcao{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;cursor:pointer}
.responsavel-usuario-opcao:hover{background:rgba(37,99,235,.07)}
.responsavel-usuario-opcao span{display:flex;flex-direction:column}.responsavel-usuario-opcao small{opacity:.65}
.missao-badge.todos{background:#e0f2fe;color:#075985}.missao-badge.responsavel{background:#ede9fe;color:#5b21b6}.missao-badge.sem-responsavel{background:#f1f5f9;color:#475569}
.missao-card.minha-missao{box-shadow:0 0 0 2px rgba(37,99,235,.25),0 12px 28px rgba(37,99,235,.12)}
.admin-resumo-online{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.admin-resumo-online article{padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;display:flex;gap:10px;align-items:center}.admin-resumo-online article:first-child i{color:#16a34a}
#painel-pjes .pjes-layout,#painel-pjes .pjes-grid{gap:14px}#painel-pjes .card,#painel-pjes article{border-radius:16px}#painel-pjes h3{letter-spacing:-.01em}
#painel-pjes .pjes-novo,#painel-pjes [class*="novo-lancamento"]{padding:14px!important}
.chat-msg{max-width:78%;padding:9px 12px;border-radius:12px;margin:7px 0;background:#fff;border:1px solid #e5e7eb}.chat-msg.minha{margin-left:auto;background:#e8f5e9}.chat-msg p{margin:4px 0}.chat-msg small{opacity:.6;font-size:.72rem}
@media(max-width:800px){.admin-resumo-online{grid-template-columns:1fr}.chat-msg{max-width:90%}}

/* ===== V5.0 MULTIUSUÁRIO ===== */
.portal-toast-chat{position:fixed;right:22px;bottom:22px;z-index:99999;min-width:260px;max-width:360px;padding:13px 16px;border-radius:14px;background:#102a43;color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.28);display:flex;flex-direction:column;gap:4px;animation:portalToastIn .22s ease}.portal-toast-chat small{opacity:.85}.chat-mini-badge{margin-left:auto;background:#16a34a;color:#fff;border-radius:999px;padding:2px 7px;font-size:.72rem}.usuario-admin-acoes{display:flex;gap:6px;flex-wrap:wrap}.usuario-admin-info{display:flex;flex-direction:column;gap:4px}.usuario-admin-info span{font-size:.8rem;opacity:.72}@keyframes portalToastIn{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}

/* V5.2 — BLOQUEIO DE SEGURANÇA: conteúdo invisível até autenticação válida */
.app-bloqueado-p1{display:none!important}
body.portal-autenticado-p1 .app-bloqueado-p1{display:flex!important}
body:not(.portal-autenticado-p1){overflow:hidden}


/* V5.3.4 — Chat moderno */
.chat-v534{height:calc(100vh - 185px);min-height:590px;border-radius:20px;border:1px solid #d9e2ef;background:#fff;box-shadow:0 16px 42px rgba(15,23,42,.10);overflow:hidden}
.chat-v534 .chat-sidebar{background:#fff;border-right:1px solid #e6ebf2;display:flex;flex-direction:column;overflow:auto}
.chat-sidebar-topo{display:flex;align-items:center;justify-content:space-between;padding:18px 16px 8px}.chat-sidebar-topo strong{font-size:1.05rem}.chat-sidebar-topo span{font-size:.74rem;color:#64748b}
.chat-v534 .chat-search{margin:10px 14px 8px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:14px;padding:11px 13px}
.chat-v534 .chat-lista-titulo{padding:13px 16px 6px;font-size:.68rem;color:#94a3b8;letter-spacing:.11em}
.chat-v534 .chat-conversa{margin:2px 8px;width:calc(100% - 16px);border:0;border-radius:13px;padding:10px;transition:.16s ease}
.chat-v534 .chat-conversa:hover{background:#f1f5f9}.chat-v534 .chat-conversa.ativo{background:#eaf2ff;box-shadow:inset 3px 0 #1555b6}
.chat-conversa-info{flex:1;min-width:0}.chat-conversa-info strong{font-size:.86rem;color:#172033}.chat-conversa-info small{font-size:.72rem}
.chat-online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;margin-right:4px}
.chat-v534 .chat-avatar{width:44px;height:44px;flex-basis:44px;background:linear-gradient(135deg,#0d47a1,#1976d2);overflow:hidden}.chat-v534 .chat-avatar.grupo{background:linear-gradient(135deg,#5b21b6,#7c3aed)}.chat-avatar img{width:100%;height:100%;object-fit:cover}
.chat-v534 .chat-principal{min-height:0;background:#eef3f8;grid-template-rows:auto minmax(0,1fr) auto auto}
.chat-v534 .chat-topo{height:68px;padding:10px 18px;background:#fff;border-bottom:1px solid #e8edf4;box-shadow:0 2px 12px rgba(15,23,42,.03);z-index:2}
.chat-topo-identidade strong{font-size:.95rem;color:#172033}.chat-topo-identidade small{font-size:.74rem}.chat-excluir{margin-left:auto!important;color:#94a3b8}.chat-excluir:not(:disabled):hover{color:#dc2626;background:#fee2e2}
.chat-v534 .chat-mensagens{padding:22px 26px;gap:8px;background:radial-gradient(circle at 1px 1px,rgba(148,163,184,.20) 1px,transparent 0);background-size:22px 22px;min-height:0}
.chat-vazio{display:flex;flex-direction:column;align-items:center;gap:8px}.chat-vazio>i{font-size:2rem;color:#94a3b8}.chat-vazio strong{color:#334155}.chat-vazio span{font-size:.82rem}
.chat-v534 .chat-msg{position:relative;max-width:min(72%,650px);padding:9px 11px 6px;border-radius:12px 12px 12px 3px;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.12);align-self:flex-start}
.chat-v534 .chat-msg.minha{align-self:flex-end;background:#d9fdd3;border-radius:12px 12px 3px 12px}.chat-msg-remetente{font-size:.68rem;font-weight:800;color:#2563eb;margin-bottom:3px}.chat-msg.minha .chat-msg-remetente{color:#166534}
.chat-msg-texto{font-size:.9rem;line-height:1.4;color:#172033;white-space:pre-wrap;overflow-wrap:anywhere}.chat-msg-hora{text-align:right;font-size:.64rem;color:#64748b;margin-top:4px}.chat-msg-hora i{color:#2563eb;margin-left:3px}
.chat-msg-imagem,.chat-msg-video{display:block;max-width:min(360px,100%);max-height:320px;border-radius:9px;margin-top:5px}.chat-msg-audio{display:block;width:min(340px,100%);margin:6px 0 2px}
.chat-msg-arquivo{display:flex;align-items:center;gap:10px;margin-top:6px;padding:10px;background:rgba(255,255,255,.58);border:1px solid rgba(148,163,184,.25);border-radius:10px;text-decoration:none;color:#1e293b}.chat-msg-arquivo>i{font-size:1.35rem;color:#2563eb}.chat-msg-arquivo span{display:flex;flex-direction:column;min-width:0}.chat-msg-arquivo strong{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-msg-arquivo small{color:#64748b}
.chat-anexo-preview{display:flex;align-items:center;gap:10px;padding:9px 16px;background:#fff;border-top:1px solid #e8edf4}.chat-anexo-preview>i{width:36px;height:36px;border-radius:10px;background:#eaf2ff;color:#1555b6;display:grid;place-items:center}.chat-anexo-preview>span{display:flex;flex-direction:column;min-width:0;flex:1}.chat-anexo-preview strong{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-anexo-preview small{font-size:.7rem;color:#64748b}.chat-anexo-preview button{border:0;background:transparent;color:#64748b;cursor:pointer;font-size:1rem}
.chat-v534 .chat-form{grid-template-columns:42px minmax(0,1fr) 42px 46px;padding:10px 14px 13px;background:#fff;border-top:1px solid #e8edf4;align-items:end;position:relative;z-index:3}
.chat-v534 .chat-form textarea{display:block!important;visibility:visible!important;opacity:1!important;width:100%;min-height:42px;max-height:130px;border:1px solid #dfe6ef;border-radius:20px;background:#f8fafc;padding:10px 14px;line-height:20px;resize:none;overflow-y:auto}
.chat-acao,.chat-enviar{width:42px;height:42px;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer}.chat-acao{background:#f1f5f9;color:#475569}.chat-acao:hover{background:#e2e8f0}.chat-enviar{width:46px;height:46px;background:#1555b6;color:#fff}.chat-enviar:disabled{opacity:.5}.chat-mic.gravando{background:#fee2e2;color:#dc2626;animation:pulsoChat 1s infinite}
@keyframes pulsoChat{50%{transform:scale(1.08);box-shadow:0 0 0 6px rgba(220,38,38,.12)}}
.chat-mini-badge{margin-left:auto;min-width:20px;height:20px;border-radius:999px;background:#16a34a;color:#fff;display:grid;place-items:center;font-size:.67rem;padding:0 6px}
.chat-sem-resultados{padding:10px 16px}
.perfil-foto-card{display:flex;align-items:center;gap:22px;padding:20px;border:1px solid var(--borda,#dfe5ec);border-radius:16px;background:var(--card,#fff)}
.perfil-foto-preview{width:96px;height:96px;flex:0 0 96px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#0d47a1,#1976d2);color:#fff;font-size:2rem;box-shadow:0 8px 22px rgba(13,71,161,.2)}.perfil-foto-preview img{width:100%;height:100%;object-fit:cover}.perfil-foto-acoes{display:flex;flex-direction:column;gap:6px}.perfil-foto-acoes small{color:#64748b}.perfil-foto-acoes .acoes{margin-top:8px}
@media(max-width:850px){.chat-v534{grid-template-columns:280px minmax(0,1fr);height:calc(100vh - 160px)}.chat-v534 .chat-sidebar{display:flex}.chat-v534 .chat-msg{max-width:86%}}
@media(max-width:650px){.chat-v534{grid-template-columns:1fr}.chat-v534 .chat-sidebar{max-height:250px;border-right:0;border-bottom:1px solid #e5e7eb}.chat-v534 .chat-principal{min-height:430px}.perfil-foto-card{align-items:flex-start;flex-direction:column}}

/* V5.3.6 */
.agenda-tipo-linha{display:grid;grid-template-columns:1fr 42px;gap:8px;align-items:center}
.admin-central-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:4px 0 18px}
.admin-central-card{border:0;border-radius:18px;padding:18px;text-align:left;color:#fff;display:flex;gap:14px;align-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.12);transition:.18s}
.admin-central-card:hover{transform:translateY(-2px)}.admin-central-card>i{font-size:1.55rem;width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.18);display:grid;place-items:center}
.admin-central-card span{display:flex;flex-direction:column;gap:3px}.admin-central-card small{font-size:.7rem;opacity:.88}
.admin-central-card.azul{background:linear-gradient(135deg,#0b4cb5,#2563eb)}.admin-central-card.verde{background:linear-gradient(135deg,#047857,#10b981)}.admin-central-card.laranja{background:linear-gradient(135deg,#c2410c,#f97316)}.admin-central-card.roxo{background:linear-gradient(135deg,#6d28d9,#8b5cf6)}.admin-central-card.vermelho{background:linear-gradient(135deg,#b91c1c,#ef4444)}.admin-central-card.ciano{background:linear-gradient(135deg,#0e7490,#06b6d4)}.admin-central-card.grafite{background:linear-gradient(135deg,#334155,#64748b)}
.admin-painel-dinamico{background:var(--card,#fff);border:1px solid var(--borda,#e2e8f0);border-radius:18px;padding:18px;margin-bottom:16px}.admin-monitor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.admin-monitor-grid>.admin-resumo-online{grid-column:1/-1}.admin-monitor-grid>article{border:1px solid #e2e8f0;border-radius:15px;padding:16px;display:flex;flex-direction:column;gap:5px}.admin-chat-card{display:flex;align-items:center;gap:18px}.admin-chat-card>div{flex:1}
#painel-meus-pjes .pjes-card{background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #dbeafe;box-shadow:0 8px 22px rgba(37,99,235,.08)}#painel-meus-pjes .pjes-card:first-child{border-top:4px solid #22c55e}#painel-meus-pjes .pjes-resumo-card{border-top:4px solid #8b5cf6}#painel-meus-pjes .form-pjes{gap:8px}#painel-meus-pjes .calendario-multiplo-pjes{max-height:230px;overflow:auto}#painel-meus-pjes .pjes-resumo-grid{gap:8px}#painel-meus-pjes .pjes-resumo-grid>div{padding:10px;border-radius:12px;background:#f8fafc}#painel-meus-pjes .pjes-resumo-grid>div:nth-child(2){background:#dcfce7}#painel-meus-pjes .pjes-resumo-grid>div:nth-child(3){background:#dbeafe}#painel-meus-pjes .pjes-resumo-grid>.destaque{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff}
.pjes-observacao-linha{display:grid;grid-template-columns:1fr 42px;gap:8px}.pjes-emoji-painel{display:flex;gap:5px;flex-wrap:wrap;padding:8px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-top:6px}.pjes-emoji-painel button{border:0;background:#f8fafc;border-radius:8px;font-size:1.2rem;padding:5px;cursor:pointer}
.organograma-scroll{display:flex;justify-content:center;overflow:auto;scroll-behavior:smooth}.organograma-quadro{flex:0 0 auto}
.chat-emoji-painel{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;max-height:230px;overflow:auto;padding:10px 14px;background:#fff;border-top:1px solid #e2e8f0}.chat-emoji-painel button{border:0;background:transparent;border-radius:7px;padding:5px;font-size:1.25rem;cursor:pointer}.chat-v534 .chat-form{grid-template-columns:42px 42px minmax(0,1fr) 42px 46px}.chat-msg[data-message-id]{cursor:context-menu}
.perfil-corte-controles{min-width:260px;display:grid;gap:8px}.perfil-corte-controles label{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:8px;font-size:.75rem}.perfil-foto-preview img{transform-origin:center;transition:transform .1s}


/* =========================================================
   PORTAL P1 V5.3.7 — estabilidade, admin, chat, organograma e PJES
========================================================= */
/* Administrador: nada fica solto fora dos cards */
.admin-fonte-oculta{display:none!important}
.admin-painel-dinamico{margin-top:16px;padding:18px;border:1px solid var(--borda);border-radius:18px;background:var(--card);box-shadow:var(--sombra)}
.admin-central-card.azul-claro{background:linear-gradient(135deg,#0ea5e9,#38bdf8);color:#fff}
.admin-infra-grid,.admin-monitor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.admin-infra-grid article,.admin-monitor-grid article{padding:16px;border:1px solid var(--borda);border-radius:14px;background:var(--hover);display:grid;gap:7px}
.admin-infra-grid i,.admin-monitor-grid i{font-size:22px;color:var(--primaria)}
.admin-infra-grid span,.admin-monitor-grid span{font-size:12px;color:var(--texto-suave);overflow-wrap:anywhere}

/* Aparência sempre legível */
#btnAbrirAparencia{background:linear-gradient(135deg,#7c3aed,#a855f7)!important;color:#fff!important;border-color:transparent!important}
#btnAbrirAparencia strong,#btnAbrirAparencia small,#btnAbrirAparencia i{color:#fff!important}

/* Organograma: zoom mantém o centro do quadro */
.organograma-scroll{overflow:auto!important;scroll-behavior:smooth!important}
.organograma-quadro{transform:translateX(-50%) scale(var(--escala-organograma,.72))!important;transform-origin:top center!important}

/* Meu PJES: calendário inteiro, mais leve e elegante */
#painel-meus-pjes .calendario-multiplo-pjes{max-height:none!important;overflow:visible!important;border-radius:18px!important;border:1px solid #c7d2fe!important;box-shadow:0 8px 20px rgba(79,70,229,.08)!important}
#painel-meus-pjes .multi-cal-topo{background:linear-gradient(135deg,#eef2ff,#f5f3ff)!important;padding:10px 12px!important}
#painel-meus-pjes .multi-cal-semana span{background:#f8fafc!important;padding:6px!important;font-size:11px!important}
#painel-meus-pjes .multi-dia{min-height:40px!important;transition:.15s!important}
#painel-meus-pjes .multi-dia:hover{background:#eef2ff!important;transform:translateY(-1px)}
#painel-meus-pjes .multi-dia.selecionado{background:linear-gradient(135deg,#2563eb,#4f46e5)!important}
#painel-meus-pjes .pjes-resumo-grid>.destaque{background:#ede9fe!important;border-color:#c4b5fd!important;color:#4c1d95!important}
#painel-meus-pjes .pjes-resumo-grid>.destaque span{color:#6d28d9!important}
#painel-meus-pjes .pjes-resumo-grid>.destaque strong{color:#4c1d95!important}

/* Chat: status semelhante a mensageiros modernos */
.chat-status{display:inline-flex;align-items:center;margin-left:5px;font-size:11px;vertical-align:middle}
.chat-status.pendente{color:#94a3b8}.chat-status.enviada{color:#94a3b8}.chat-status.entregue{color:#64748b}.chat-status.lida{color:#0ea5e9}
.chat-msg-pendente{opacity:.78}.chat-msg-pendente.falhou{outline:1px solid #ef4444}.chat-msg-pendente.falhou .chat-status{color:#ef4444}
.chat-emoji-painel button{font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif!important;color:initial!important;font-size:22px!important}
.chat-anexo-preview{position:relative;z-index:2}

@media(max-width:760px){.admin-infra-grid,.admin-monitor-grid{grid-template-columns:1fr}.organograma-quadro{transform:translateX(-50%) scale(var(--escala-organograma,.62))!important}}


/* ===== Portal P1 V5.3.8 ===== */
.primeiro-acesso-senha-p1{position:fixed!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;background:rgba(5,30,57,.72)!important;z-index:100000!important}
.primeiro-acesso-senha-p1.oculto{display:none!important}
.primeiro-acesso-caixa{width:min(420px,calc(100vw - 32px))!important;max-height:calc(100vh - 40px);overflow:auto;margin:0!important;border-radius:18px!important;padding:26px!important;box-shadow:0 28px 70px rgba(0,0,0,.28)!important}
.primeiro-acesso-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}.primeiro-acesso-brand strong{display:block;color:#0b3d91;font-size:1.05rem}.primeiro-acesso-brand small{color:#65758b}.primeiro-acesso-icone{width:46px;height:46px;border-radius:14px;background:#e9f1ff;color:#0b4eaa;display:grid;place-items:center;font-size:1.25rem}.primeiro-acesso-caixa h2{margin:0 0 7px}.primeiro-acesso-caixa .formulario{margin-top:18px}.primeiro-acesso-caixa input[type=password]{width:100%;font:inherit;letter-spacing:.08em}
body.primeiro-acesso-aberto{overflow:hidden!important}
img.emoji{height:1.18em;width:1.18em;margin:0 .06em;vertical-align:-.18em;display:inline-block}
.chat-emoji-painel img.emoji{height:1.45em;width:1.45em;margin:0}.chat-msg-texto img.emoji{height:1.25em;width:1.25em}.chat-self-label{display:inline-flex;align-items:center;margin-left:5px;padding:1px 6px;border-radius:999px;background:#e8f2ff;color:#0b4eaa;font-size:.62rem;vertical-align:middle}

/* =========================================================
   PORTAL P1 V5.3.9 — CHAT AZUL, inspirado em mensageiros modernos
   ========================================================= */
#painel-chat{--chat-blue:#0b57b7;--chat-blue-2:#1976d2;--chat-blue-soft:#e8f2ff;--chat-bg:#eaf1f8;--chat-ink:#14213d;--chat-muted:#6b7b91}
#painel-chat .chat-v534{border-radius:22px;border:1px solid #cfdbea;box-shadow:0 20px 55px rgba(15,51,92,.14);background:#fff}
#painel-chat .chat-sidebar{background:linear-gradient(180deg,#fbfdff 0%,#f4f8fd 100%);border-right:1px solid #dce6f2}
#painel-chat .chat-sidebar-topo{padding:17px 16px 11px;background:linear-gradient(135deg,#073b82,#0b57b7 55%,#1976d2);color:#fff;min-height:66px}
#painel-chat .chat-sidebar-topo strong{font-size:1.08rem;color:#fff;letter-spacing:.01em}
#painel-chat .chat-sidebar-topo span{color:rgba(255,255,255,.78)}
#painel-chat .chat-search{margin:12px;border:0;background:#edf3f9;box-shadow:inset 0 0 0 1px #dce6f1;border-radius:999px;padding:10px 14px}
#painel-chat .chat-search:focus-within{background:#fff;box-shadow:0 0 0 3px rgba(25,118,210,.13),inset 0 0 0 1px #5b9ee5}
#painel-chat .chat-search i{color:#6f8198}
#painel-chat .chat-lista-titulo{padding:14px 17px 7px;color:#59708b;font-size:.68rem;font-weight:900;letter-spacing:.12em}
#painel-chat .chat-conversa{margin:3px 8px;width:calc(100% - 16px);padding:11px 10px;border-radius:15px;border:0;position:relative;transition:background .16s ease,transform .16s ease,box-shadow .16s ease}
#painel-chat .chat-conversa:hover{background:#eaf3ff;transform:translateX(1px)}
#painel-chat .chat-conversa.ativo{background:linear-gradient(90deg,#dcecff,#eef6ff);box-shadow:inset 4px 0 #0b57b7,0 4px 12px rgba(11,87,183,.07)}
#painel-chat .chat-conversa.ativo strong{color:#073b82}
#painel-chat .chat-avatar{width:47px;height:47px;flex-basis:47px;border:2px solid #fff;background:linear-gradient(145deg,#0b57b7,#44a0ff);box-shadow:0 4px 12px rgba(11,87,183,.22);font-size:1.05rem}
#painel-chat .chat-avatar.grupo{background:linear-gradient(145deg,#1558aa,#5ba6f5)}
#painel-chat .chat-conversa-info strong{font-size:.88rem;color:#17243a;font-weight:800}
#painel-chat .chat-conversa-info small{color:#74859b;font-size:.72rem;line-height:1.25}
#painel-chat .chat-self-label{background:#0b57b7;color:#fff;font-weight:900;padding:2px 7px}
#painel-chat .chat-mini-badge{background:#0b57b7;box-shadow:0 2px 8px rgba(11,87,183,.25);font-weight:900}

#painel-chat .chat-principal{background-color:var(--chat-bg);background-image:radial-gradient(circle at 16px 16px,rgba(43,105,171,.08) 1.2px,transparent 1.3px),radial-gradient(circle at 5px 7px,rgba(43,105,171,.045) 1px,transparent 1.1px);background-size:32px 32px,21px 21px}
#painel-chat .chat-topo{height:70px;padding:10px 17px;background:linear-gradient(90deg,#fff 0%,#f6faff 100%);border-bottom:1px solid #dce6f2;box-shadow:0 2px 10px rgba(15,51,92,.05)}
#painel-chat .chat-topo-identidade strong{font-size:.98rem;color:#10233e;font-weight:850}
#painel-chat .chat-topo-identidade small{color:#698097}
#painel-chat .chat-excluir{border-radius:50%;color:#7890a9}.chat-excluir:not(:disabled):hover{background:#ffebee!important;color:#d32f2f!important}
#painel-chat .chat-mensagens{padding:23px 28px 18px;gap:6px;background:transparent;scrollbar-width:thin;scrollbar-color:#a9bed5 transparent}
#painel-chat .chat-msg{border:0!important;max-width:min(74%,690px);padding:9px 12px 6px;border-radius:6px 16px 16px 16px;background:#fff;box-shadow:0 2px 5px rgba(26,57,93,.12);position:relative;margin:3px 0}
#painel-chat .chat-msg::before{content:"";position:absolute;left:-6px;top:0;border-top:8px solid #fff;border-left:7px solid transparent}
#painel-chat .chat-msg.minha{background:linear-gradient(145deg,#dcecff,#cfe5ff);border-radius:16px 6px 16px 16px;box-shadow:0 2px 6px rgba(11,87,183,.16)}
#painel-chat .chat-msg.minha::before{left:auto;right:-6px;border-left:0;border-right:7px solid transparent;border-top-color:#d5e9ff}
#painel-chat .chat-msg-remetente{color:#0b57b7;font-size:.69rem;font-weight:900;margin-bottom:3px}
#painel-chat .chat-msg.minha .chat-msg-remetente{color:#174f93}
#painel-chat .chat-msg-texto{font-size:.91rem;color:#12213a;line-height:1.46}
#painel-chat .chat-msg-hora{display:flex;justify-content:flex-end;align-items:center;gap:2px;color:#667c93;font-size:.62rem;margin-top:3px;min-height:13px}
#painel-chat .chat-status.lida{color:#0b76da}.chat-status.entregue{color:#61778d}.chat-status.enviada{color:#6f8194}.chat-status.pendente{color:#8393a5}
#painel-chat .chat-msg-imagem,#painel-chat .chat-msg-video{border-radius:12px;box-shadow:0 2px 8px rgba(15,51,92,.12)}
#painel-chat .chat-msg-audio{height:42px;accent-color:#0b57b7}
#painel-chat .chat-msg-arquivo{background:rgba(255,255,255,.68);border:1px solid rgba(73,126,184,.22);border-radius:12px}
#painel-chat .chat-msg-arquivo>i{color:#0b57b7}
#painel-chat .chat-vazio{background:rgba(255,255,255,.82);backdrop-filter:blur(5px);border:1px solid rgba(188,208,230,.65);box-shadow:0 12px 28px rgba(20,54,91,.08)}
#painel-chat .chat-vazio>i{color:#0b57b7;background:#e8f2ff;width:54px;height:54px;display:grid;place-items:center;border-radius:50%}

#painel-chat .chat-anexo-preview{padding:9px 15px;background:#f7faff;border-top:1px solid #dce6f2}
#painel-chat .chat-anexo-preview>i{background:#dfeeff;color:#0b57b7;border-radius:12px}
#painel-chat .chat-form{grid-template-columns:42px 42px minmax(0,1fr) 42px 47px;padding:10px 14px 13px;background:#f8fbff;border-top:1px solid #dce6f2;box-shadow:0 -5px 18px rgba(15,51,92,.04)}
#painel-chat .chat-form textarea{min-height:44px;border:1px solid #d5e2ef!important;background:#fff!important;border-radius:22px!important;padding:11px 16px!important;box-shadow:0 2px 7px rgba(22,65,111,.04);color:#14213d}
#painel-chat .chat-form textarea:focus{border-color:#64a5e8!important;box-shadow:0 0 0 3px rgba(25,118,210,.11)}
#painel-chat .chat-acao{background:#e7f0fb;color:#316caa;transition:.15s}.chat-acao:hover{background:#d5e8fc!important;color:#0b57b7!important;transform:translateY(-1px)}
#painel-chat .chat-enviar{background:linear-gradient(145deg,#0b57b7,#1976d2);box-shadow:0 6px 14px rgba(11,87,183,.28);transition:.16s}.chat-enviar:hover{filter:none!important;transform:translateY(-1px);box-shadow:0 8px 18px rgba(11,87,183,.34)}
#painel-chat .chat-mic.gravando{background:#ffe7ec;color:#d92848;box-shadow:0 0 0 4px rgba(217,40,72,.10)}
#painel-chat .chat-emoji-painel{grid-template-columns:repeat(9,minmax(34px,1fr));gap:5px;max-height:255px;padding:12px 14px;background:#f8fbff;border-top:1px solid #dce6f2;box-shadow:0 -8px 20px rgba(15,51,92,.05)}
#painel-chat .chat-emoji-painel button{height:38px;border-radius:10px;background:#fff;box-shadow:0 1px 4px rgba(20,57,96,.06);transition:.12s}.chat-emoji-painel button:hover{background:#e8f2ff!important;transform:scale(1.08)}
#painel-chat .chat-emoji-painel img.emoji{height:1.55em;width:1.55em}
#painel-chat .portal-toast-chat{background:linear-gradient(135deg,#073b82,#0b57b7);border:1px solid rgba(255,255,255,.15)}
@media(max-width:850px){#painel-chat .chat-v534{grid-template-columns:285px minmax(0,1fr)}#painel-chat .chat-mensagens{padding:17px}#painel-chat .chat-msg{max-width:88%}}

/* =========================================================
   V5.4.0 — CHAT AZUL / REFINAMENTO VISUAL
========================================================= */
#painel-chat .chat-v534{
  background:linear-gradient(135deg,#eaf3ff 0%,#f7fbff 45%,#edf6ff 100%);
  border:1px solid #cfe3ff;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(15,76,150,.12);
}
#painel-chat .chat-sidebar{
  background:linear-gradient(180deg,#0759b8 0%,#0b72d9 55%,#0a63c5 100%)!important;
  color:#fff;
}
#painel-chat .chat-sidebar input{
  background:rgba(255,255,255,.96)!important;
  border:0!important;
  border-radius:14px!important;
}
#painel-chat .chat-contato{
  border-radius:14px!important;
  margin:4px 8px!important;
  color:#f8fbff!important;
  transition:.18s ease;
}
#painel-chat .chat-contato:hover{background:rgba(255,255,255,.13)!important}
#painel-chat .chat-contato.ativo{
  background:#fff!important;
  color:#0b4fa3!important;
  box-shadow:0 7px 18px rgba(0,0,0,.12);
}
#painel-chat .chat-main{background:#eef6ff!important}
#painel-chat .chat-topo{
  background:linear-gradient(90deg,#fff,#f4f9ff)!important;
  border-bottom:1px solid #d8e8fb!important;
}
#painel-chat .chat-mensagens{
  background:
    radial-gradient(circle at 15% 20%,rgba(59,130,246,.055) 0 2px,transparent 2.5px),
    radial-gradient(circle at 80% 60%,rgba(37,99,235,.04) 0 2px,transparent 2.5px),
    #eef6ff!important;
  background-size:28px 28px,34px 34px!important;
}
#painel-chat .chat-msg.minha{
  background:linear-gradient(135deg,#d9ecff,#c9e4ff)!important;
  border:1px solid #b9d9fb!important;
  color:#12385f!important;
  border-radius:18px 18px 5px 18px!important;
}
#painel-chat .chat-msg.outra{
  background:#fff!important;
  border:1px solid #dce9f7!important;
  color:#17324d!important;
  border-radius:18px 18px 18px 5px!important;
}
#painel-chat .chat-form{
  background:#fff!important;
  border-top:1px solid #d9e7f5!important;
  padding:12px!important;
}
#painel-chat #chatTexto{
  background:#f3f8fe!important;
  border:1px solid #d5e5f6!important;
  border-radius:22px!important;
  padding:12px 16px!important;
}
#painel-chat .chat-acao,#painel-chat #btnEnviarChat{
  border-radius:50%!important;
  transition:.18s ease;
}
#painel-chat #btnEnviarChat{
  background:linear-gradient(135deg,#0b67cf,#1685ed)!important;
  color:#fff!important;
  box-shadow:0 7px 18px rgba(11,103,207,.28);
}
#painel-chat .chat-emoji-painel{
  background:#fff!important;
  border:1px solid #d7e7f8!important;
  border-radius:16px!important;
  box-shadow:0 14px 34px rgba(15,76,150,.15);
}

/* V5.4.1 — Chat azul claro */
#painel-chat .chat-sidebar{
  background:linear-gradient(180deg,#4f9fe8 0%,#67b2ef 52%,#7ac0f2 100%)!important;
  color:#083a68!important;
}
#painel-chat .chat-sidebar h3,
#painel-chat .chat-sidebar .chat-sidebar-topo,
#painel-chat .chat-sidebar .chat-sidebar-topo *{color:#073b6b!important}
#painel-chat .chat-contato{color:#073b6b!important}
#painel-chat .chat-contato:hover{background:rgba(255,255,255,.34)!important}
#painel-chat .chat-contato.ativo{
  background:rgba(255,255,255,.94)!important;
  color:#07529b!important;
}

/* =========================================================
   V5.4.4 — CHAT AZUL CLARO + PJES PASTEL + TWEMOJI
========================================================= */
img.emoji{height:1.18em;width:1.18em;margin:0 .04em;vertical-align:-.18em}
#painel-chat .chat-sidebar{
  background:linear-gradient(180deg,#dceeff 0%,#cde7ff 48%,#e7f3ff 100%)!important;
  color:#174d7a!important;border-right:1px solid #bdd9f2!important;
}
#painel-chat .chat-sidebar-topo,#painel-chat .chat-sidebar-topo *,
#painel-chat .chat-lista-titulo{color:#225b89!important}
#painel-chat .chat-search{background:rgba(255,255,255,.86)!important;border:1px solid #bcd9f2!important}
#painel-chat .chat-conversa{color:#214e72!important;background:transparent!important}
#painel-chat .chat-conversa:hover{background:rgba(255,255,255,.62)!important}
#painel-chat .chat-conversa.ativo{
  background:#fff!important;color:#0a5aa6!important;
  box-shadow:0 7px 18px rgba(39,105,167,.13)!important;
}
#painel-chat .chat-principal{background:#eef7ff!important}
#painel-chat .chat-topo{background:rgba(255,255,255,.96)!important}
#painel-chat .chat-msg.minha{
  background:linear-gradient(135deg,#d9efff,#cbe7ff)!important;
  border-color:#b3d7f5!important;
}
#painel-chat .chat-msg.outra{background:#fff!important}
#painel-chat .chat-emoji-painel button img.emoji,
#painel-chat .chat-msg img.emoji{height:1.35em;width:1.35em}

/* PJES — calendário leve e discreto */
#painel-meus-pjes .calendario-multiplo-pjes{
  background:linear-gradient(180deg,#fbfdff,#f4f9ff)!important;
  border:1px solid #d9e9f7!important;border-radius:16px!important;
  padding:10px!important;box-shadow:0 5px 16px rgba(66,133,180,.07)!important;
  max-height:none!important;overflow:visible!important;
}
#painel-meus-pjes .multi-cal-topo{
  background:#eaf5ff!important;border-radius:12px!important;
  padding:8px 10px!important;color:#275d87!important;
}
#painel-meus-pjes .multi-cal-dia{
  border-radius:10px!important;border:1px solid transparent!important;
  transition:.15s ease;background:#fff!important;
}
#painel-meus-pjes .multi-cal-dia:hover{
  background:#eaf6ff!important;border-color:#c6e1f6!important;
}
#painel-meus-pjes .multi-cal-dia.selecionado,
#painel-meus-pjes .multi-cal-dia.ativo{
  background:#d9f0ff!important;color:#145a8d!important;
  border-color:#9fd2f2!important;box-shadow:inset 0 0 0 1px #b9dcf4!important;
}
#painel-meus-pjes .pjes-emoji-painel button img.emoji{height:1.35em;width:1.35em}
#painel-meus-pjes .pjes-resumo-grid>.destaque{
  background:linear-gradient(135deg,#dcd7ff,#cfc8ff)!important;
  color:#453b7a!important;border:1px solid #bbb2ef!important;
}

/* =========================================================
   V5.4.5 — MISSÕES + CHAT BLUE MESSENGER + PJES PASTEL
========================================================= */
.missao-resp-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;background:#f3f8fe;border:1px solid #d8e8f6;border-radius:12px 12px 0 0}
.missao-resp-toolbar>div:first-child{display:flex;flex-direction:column;gap:2px}.missao-resp-toolbar small{color:#64748b;font-size:.72rem}
.missao-resp-lista{max-height:230px;overflow:auto;border:1px solid #d8e8f6;border-top:0;border-radius:0 0 12px 12px;background:#fff;padding:6px}
.missao-resp-item{display:grid;grid-template-columns:22px 38px 1fr;align-items:center;gap:8px;padding:8px;border-radius:10px;cursor:pointer}
.missao-resp-item:hover{background:#eef6ff}.missao-resp-item input{accent-color:#1677d2}
.missao-resp-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d9ecff;color:#0b5da8;font-weight:800}
.missao-resp-item>span:last-child{display:flex;flex-direction:column}.missao-resp-item strong{font-size:.79rem;color:#263b50}.missao-resp-item small{font-size:.68rem;color:#718096}
.missao-resp-carregando{padding:14px;text-align:center;color:#56718b}

/* Chat inspirado em mensageiro moderno, com identidade azul clara */
#painel-chat .chat-v534{border-radius:24px!important;border:1px solid #cfe2f5!important;box-shadow:0 20px 55px rgba(33,91,145,.13)!important}
#painel-chat .chat-sidebar{background:linear-gradient(180deg,#e6f3ff 0%,#d9edff 52%,#eef8ff 100%)!important}
#painel-chat .chat-sidebar-topo{padding:18px 16px 10px!important}
#painel-chat .chat-sidebar-topo strong{font-size:1.05rem!important;color:#164e7d!important}
#painel-chat .chat-search{background:#fff!important;border:1px solid #c9def1!important;box-shadow:0 4px 12px rgba(47,105,158,.06)}
#painel-chat .chat-conversa{margin:3px 8px!important;padding:10px!important;border-radius:15px!important}
#painel-chat .chat-conversa.ativo{background:#fff!important;box-shadow:0 7px 18px rgba(42,104,160,.13)!important}
#painel-chat .chat-avatar{box-shadow:0 3px 9px rgba(19,90,153,.17)}
#painel-chat .chat-topo{min-height:70px!important;background:linear-gradient(90deg,#ffffff,#f5faff)!important}
#painel-chat .chat-mensagens{padding:24px 28px!important}
#painel-chat .chat-msg{box-shadow:0 2px 5px rgba(42,77,110,.10)!important}
#painel-chat .chat-msg.minha{background:linear-gradient(145deg,#dcefff,#cce7ff)!important;border:1px solid #b9d9f5!important}
#painel-chat .chat-msg.outra{background:#fff!important;border:1px solid #dce9f5!important}
#painel-chat .chat-form{padding:11px 14px!important;background:#fff!important}
#painel-chat #chatTexto{background:#f4f9fe!important;border:1px solid #d5e5f3!important}
#painel-chat .chat-acao{background:#eaf4fd!important;color:#276491!important}
#painel-chat .chat-acao:hover{background:#dceeff!important}
#painel-chat .chat-enviar{background:linear-gradient(135deg,#1582dc,#0d66bd)!important;box-shadow:0 6px 16px rgba(13,102,189,.25)!important}
#painel-chat .chat-emoji-painel{grid-template-columns:repeat(9,1fr)!important;background:#fff!important}
#painel-chat .chat-emoji-painel button{background:#f8fbfe!important;border-radius:10px!important}
#painel-chat .chat-emoji-painel button:hover{background:#e8f4ff!important}
img.emoji{display:inline-block!important;height:1.2em!important;width:1.2em!important;vertical-align:-.18em!important}
.chat-emoji-painel img.emoji,.pjes-emoji-painel img.emoji{height:1.55em!important;width:1.55em!important}

/* PJES leve, colorido e elegante */
#painel-meus-pjes .calendario-multiplo-pjes{
  background:linear-gradient(180deg,#fff,#f6fbff)!important;
  border:1px solid #d5e9f7!important;
  border-radius:18px!important;
  padding:12px!important;
  max-height:none!important;
  overflow:visible!important;
}
#painel-meus-pjes .multi-cal-topo{background:linear-gradient(90deg,#e7f5ff,#eef9ff)!important;color:#316889!important;border-radius:13px!important}
#painel-meus-pjes .multi-cal-semana{color:#62809a!important}
#painel-meus-pjes .multi-cal-dia{background:#fff!important;border:1px solid #edf3f8!important;border-radius:11px!important;color:#3b5265!important}
#painel-meus-pjes .multi-cal-dia:nth-child(7n+1){background:#fff6f6!important}
#painel-meus-pjes .multi-cal-dia:nth-child(7n){background:#f3f8ff!important}
#painel-meus-pjes .multi-cal-dia:hover{background:#e5f4ff!important;border-color:#bcdcf2!important}
#painel-meus-pjes .multi-cal-dia.selecionado,#painel-meus-pjes .multi-cal-dia.ativo{background:#d8f0ff!important;color:#0e5c90!important;border-color:#9dceec!important}
#painel-meus-pjes .pjes-card:first-child{background:linear-gradient(145deg,#ffffff,#f5fff9)!important}
#painel-meus-pjes .pjes-resumo-card{background:linear-gradient(145deg,#ffffff,#faf8ff)!important}
#painel-meus-pjes .pjes-resumo-grid>.destaque{background:linear-gradient(135deg,#eeeaff,#e1ddff)!important;color:#4f477a!important;border:1px solid #d1c9f4!important}

/* =========================================================
   PORTAL P1 V5.5.0
========================================================= */
/* Missões */
.missao-card.minha-missao .missao-badge.minha{display:none!important}
.missao-card-meta{flex-wrap:wrap}
.missao-card-meta span{white-space:normal}

/* Consultar PM — copiar informação */
.campo-ficha-valor{display:flex;align-items:center;gap:7px;min-width:0}
.campo-ficha-valor strong{min-width:0;word-break:break-word}
.btn-copiar-campo-pm{width:27px;height:27px;min-width:27px;border:1px solid #dce5ee;background:#f8fafc;color:#64748b;border-radius:7px;display:inline-grid;place-items:center;cursor:pointer;font-size:.72rem}
.btn-copiar-campo-pm:hover{background:#eaf3fb;color:#1f5f91}

/* PJES — calendário pastel, sem emojis */
#btnEmojiPjes,#painelEmojiPjes{display:none!important}
#painel-meus-pjes .pjes-observacao-linha{display:block!important}
#painel-meus-pjes .calendario-multiplo-pjes{background:linear-gradient(180deg,#ffffff,#f7fbff)!important;border:1px solid #dceaf5!important;border-radius:18px!important;padding:12px!important;max-height:none!important;overflow:visible!important}
#painel-meus-pjes .multi-cal-topo{background:#edf7ff!important;color:#315f82!important;border-radius:12px!important;padding:9px!important}
#painel-meus-pjes .multi-cal-semana{color:#6b8498!important}
#painel-meus-pjes .multi-dia{background:#fff!important;border:1px solid #edf2f7!important;color:#42566a!important;border-radius:10px!important}
#painel-meus-pjes .multi-dia:nth-child(7n+1){background:#fff5f5!important}
#painel-meus-pjes .multi-dia:nth-child(7n){background:#f2f7ff!important}
#painel-meus-pjes .multi-dia.fora{opacity:.38!important;background:#fafafa!important}
#painel-meus-pjes .multi-dia:hover{background:#e8f5ff!important;border-color:#c4deef!important}
#painel-meus-pjes .multi-dia.selecionado{background:#d9efff!important;color:#0d5d91!important;border-color:#9ecdeb!important;box-shadow:inset 0 0 0 1px #b5d9ef!important}

/* Administrador V5.5 */
.admin-central-card.v550{min-height:104px}
.admin-central-card.v550.c0{background:linear-gradient(135deg,#2563eb,#60a5fa)}
.admin-central-card.v550.c1{background:linear-gradient(135deg,#0f766e,#2dd4bf)}
.admin-central-card.v550.c2{background:linear-gradient(135deg,#7c3aed,#a78bfa)}
.admin-central-card.v550.c3{background:linear-gradient(135deg,#0369a1,#38bdf8)}
.admin-central-card.v550.c4{background:linear-gradient(135deg,#b45309,#fbbf24)}
.admin-central-card.v550.c5{background:linear-gradient(135deg,#475569,#94a3b8)}
.admin-modulo-topo{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.admin-modulo-topo h3{margin:0 0 4px}.admin-modulo-topo p{margin:0;color:#64748b}
.admin-duas-colunas{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.admin-lista-modulo{display:flex;flex-direction:column;gap:8px;max-height:560px;overflow:auto}.admin-lista-modulo h4{display:flex;justify-content:space-between;margin:0 0 5px}.admin-lista-modulo h4 span{background:#eaf3ff;color:#175f9c;border-radius:999px;padding:2px 8px}
.admin-lista-modulo article{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e2e8f0;border-radius:13px;padding:11px;background:#fff}.admin-lista-modulo article>div{display:flex;flex-direction:column;gap:3px}.admin-lista-modulo article small{color:#64748b}
.admin-lista-modulo article p{margin:4px 0 0;color:#64748b;font-size:.78rem}
.admin-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-kpis article{padding:15px;border:1px solid #dfe8f1;border-radius:15px;background:#f9fcff;display:flex;flex-direction:column;gap:3px}.admin-kpis strong{font-size:1.15rem;color:#174f7b}.admin-kpis span{font-size:.75rem;color:#64748b}.admin-kpis.infra{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-info-global{display:flex;gap:13px;align-items:flex-start;padding:16px;border-radius:15px;background:#f1f7fc;border:1px solid #dce9f4}.admin-info-global>i{font-size:1.3rem;color:#2678b8}.admin-info-global p{margin:5px 0 0;color:#64748b}
.admin-loading,.admin-erro{padding:28px;text-align:center;color:#64748b}

/* Chat — azul claro, moderno e mobile */
#painel-chat .chat-v534{background:#f3f9ff!important;border:1px solid #cfe2f3!important;border-radius:24px!important;box-shadow:0 18px 50px rgba(39,95,145,.12)!important}
#painel-chat .chat-sidebar{background:linear-gradient(180deg,#eaf5ff 0%,#dcefff 52%,#eff8ff 100%)!important;color:#1b527d!important;border-right:1px solid #c9deef!important}
#painel-chat .chat-sidebar-topo strong,#painel-chat .chat-lista-titulo{color:#205b87!important}
#painel-chat .chat-conversa{color:#254f70!important;border-radius:15px!important;margin:3px 8px!important}
#painel-chat .chat-conversa:hover{background:rgba(255,255,255,.70)!important}
#painel-chat .chat-conversa.ativo{background:#fff!important;color:#0a5ca4!important;box-shadow:0 6px 17px rgba(38,101,155,.13)!important}
#painel-chat .chat-principal{background:#edf7ff!important}
#painel-chat .chat-topo{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #d6e7f5!important}
#painel-chat .chat-mensagens{background:linear-gradient(180deg,#eef7ff,#f7fbff)!important}
#painel-chat .chat-msg.minha{background:#d8edff!important;border-color:#b9d9f3!important;border-radius:18px 18px 5px 18px!important}
#painel-chat .chat-msg.outra{background:#fff!important;border-color:#dce8f2!important;border-radius:18px 18px 18px 5px!important}
#painel-chat .chat-form{background:#fff!important;border-top:1px solid #d6e5f1!important}
#painel-chat #chatTexto{background:#f3f8fd!important;border:1px solid #d3e3f0!important;border-radius:22px!important}
.chat-voltar-mobile{display:none;border:0;background:#e8f3fc;color:#175d91;border-radius:50%;width:38px;height:38px;place-items:center;cursor:pointer}
@media(max-width:720px){
 #painel-chat .cabecalho-painel{padding-bottom:8px}
 #painel-chat .chat-v534{height:calc(100dvh - 155px)!important;min-height:520px!important;display:block!important;border-radius:16px!important}
 #painel-chat .chat-sidebar{width:100%!important;height:100%!important;display:block!important;overflow:auto!important;border-right:0!important}
 #painel-chat .chat-principal{width:100%!important;height:100%!important;display:none!important;flex-direction:column!important}
 #painel-chat .chat-mobile-conversa-aberta .chat-sidebar{display:none!important}
 #painel-chat .chat-mobile-conversa-aberta .chat-principal{display:flex!important}
 #painel-chat .chat-mobile-conversa-aberta .chat-voltar-mobile{display:grid!important}
 #painel-chat .chat-mensagens{flex:1!important;min-height:0!important;padding:14px!important}
 #painel-chat .chat-form{grid-template-columns:40px 40px minmax(0,1fr) 40px 44px!important;padding:9px!important}
 #painel-chat .chat-msg{max-width:88%!important}
 #painel-chat .chat-topo{min-height:62px!important;padding:8px 10px!important}
 #painel-chat .chat-cabecalho-pagina p{display:none}
 #painel-chat #btnNovaConversaChat{padding:8px 10px;font-size:.78rem}
}

/* =========================================================
   V5.5.1 — HOME + ADMINISTRADOR
========================================================= */
.widget-missoes{display:flex!important;flex-direction:column!important}
.widget-missoes .lista-missoes-home{flex:1!important;max-height:none!important;min-height:360px!important}
.missoes-acoes-rapidas{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.filtro-fixo-missao.ativo{background:var(--primaria)!important;border-color:var(--primaria)!important;color:#fff!important}
@media(max-width:680px){.missoes-acoes-rapidas{width:100%}.missoes-acoes-rapidas .botao{flex:1 1 auto;width:auto!important}}

.admin-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.admin-editor-grid label{display:grid;gap:6px;font-size:.78rem;font-weight:700;color:#536b7d}
.admin-editor-grid input,.admin-editor-grid textarea{width:100%;border:1px solid #d9e5ef;border-radius:10px;padding:10px 11px;background:#fff;color:#26394a;font:inherit}
.admin-editor-grid textarea{min-height:82px;resize:vertical}.admin-editor-grid .campo-largo{grid-column:1/-1}
.admin-editor-acoes{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}
.admin-pjes-config{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;margin-top:18px}
.admin-pjes-config section{border:1px solid #dfe9f2;border-radius:15px;padding:14px;background:#fbfdff}
.admin-subtitulo{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.admin-subtitulo h4{margin:0}
.admin-edit-row{display:grid;grid-template-columns:1fr auto;gap:7px;margin-bottom:7px}
.admin-edit-row.diaria{grid-template-columns:.65fr 1fr .55fr auto}
.admin-edit-row input{border:1px solid #d9e5ef;border-radius:9px;padding:8px;background:#fff}
.admin-audit-filtros{display:grid;grid-template-columns:1fr minmax(180px,.35fr);gap:10px;margin-bottom:14px;padding:12px;border:1px solid #dce8f2;border-radius:13px;background:#f8fbfe}
.admin-audit-filtros input,.admin-audit-filtros select{border:1px solid #d5e3ee;border-radius:9px;padding:9px;background:#fff}
.admin-audit-filtros.oculto{display:none!important}
#adminCentralCards .admin-central-card.v551{min-height:100px}
@media(max-width:800px){.admin-editor-grid,.admin-pjes-config{grid-template-columns:1fr}.admin-editor-grid .campo-largo{grid-column:auto}.admin-edit-row.diaria{grid-template-columns:1fr 1fr}.admin-edit-row.diaria .botao{grid-column:2}.admin-audit-filtros{grid-template-columns:1fr}}

/* =========================================================
   V5.5.2 — MISSÕES / AGENDA / ADMIN
========================================================= */

/* Botões rápidos de Missões: estado ligado evidente */
.filtro-fixo-missao{
  position:relative;
  border:1px solid #cbd9e7!important;
  background:#f7fbff!important;
  color:#456178!important;
  box-shadow:none!important;
  transition:.18s ease!important;
}
.filtro-fixo-missao:hover{
  background:#eaf4fd!important;
  border-color:#9fc7e7!important;
  color:#175f99!important;
}
.filtro-fixo-missao.ativo{
  background:linear-gradient(135deg,#126fc4,#2f8ddd)!important;
  border-color:#126fc4!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(18,111,196,.25)!important;
  transform:translateY(-1px);
}
.filtro-fixo-missao.ativo::after{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 2px rgba(255,255,255,.25);
  margin-left:6px;
}

/* Agenda da P1 em tons claros, com fins de semana e feriados */
.widget-agenda .calendario{
  background:linear-gradient(180deg,#ffffff,#f8fbfe)!important;
  border:1px solid #d8e8f4!important;
  border-radius:18px!important;
  box-shadow:0 8px 24px rgba(42,95,140,.07)!important;
}
.widget-agenda .calendario-topo{
  background:linear-gradient(90deg,#edf7ff,#f5fbff)!important;
  border-bottom:1px solid #d9e9f5!important;
}
.widget-agenda .calendario-topo h3{color:#2d638c!important}
.widget-agenda .calendario-semana div{
  background:#f0f7fc!important;
  color:#668197!important;
}
.widget-agenda .calendario-semana div:first-child{
  background:#fff0f0!important;color:#a65353!important;
}
.widget-agenda .calendario-semana div:last-child{
  background:#eef5ff!important;color:#496b94!important;
}
.widget-agenda .dia-calendario{
  background:#fff!important;
  border-color:#e7eef4!important;
}
.widget-agenda .dia-calendario.domingo{
  background:#fff6f6!important;
}
.widget-agenda .dia-calendario.sabado{
  background:#f4f8ff!important;
}
.widget-agenda .dia-calendario.feriado-nacional{
  background:#fff9e8!important;
  box-shadow:inset 0 0 0 1px #f1dd9b!important;
}
.widget-agenda .dia-calendario.feriado-nacional .numero-dia{
  color:#9b6511!important;
}
.widget-agenda .dia-calendario.hoje{
  box-shadow:inset 0 0 0 2px #2d82c7!important;
}
.widget-agenda .dia-calendario:hover{
  background:#eaf6ff!important;
}
.widget-agenda .linha-dia-agenda{
  display:flex;align-items:center;justify-content:space-between;gap:5px;
  margin-bottom:4px;
}
.widget-agenda .linha-dia-agenda .numero-dia{margin-bottom:0!important}
.widget-agenda .feriado-agenda{
  display:inline-flex;align-items:center;
  padding:2px 5px;border-radius:999px;
  background:#fff0bd;color:#8a5a0a;
  border:1px solid #edd48a;
  font-size:7px;font-weight:900;letter-spacing:.03em;
}
@media(max-width:620px){
  .widget-agenda .feriado-agenda{font-size:0;padding:0;width:6px;height:6px;border-radius:50%;background:#e0a82d;border:0}
}

/* Restaura cores dos botões da Central do Administrador */
#adminCentralCards .admin-central-card.v551{
  color:#fff!important;
  border:0!important;
  box-shadow:0 8px 20px rgba(15,50,90,.14)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
#adminCentralCards .admin-central-card.v551:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(15,50,90,.22)!important;
}
#adminCentralCards .admin-central-card.v551.c0{background:linear-gradient(135deg,#2563eb,#60a5fa)!important}
#adminCentralCards .admin-central-card.v551.c1{background:linear-gradient(135deg,#0f766e,#2dd4bf)!important}
#adminCentralCards .admin-central-card.v551.c2{background:linear-gradient(135deg,#7c3aed,#a78bfa)!important}
#adminCentralCards .admin-central-card.v551.c3{background:linear-gradient(135deg,#0369a1,#38bdf8)!important}
#adminCentralCards .admin-central-card.v551.c4{background:linear-gradient(135deg,#b45309,#fbbf24)!important}
#adminCentralCards .admin-central-card.v551.c5{background:linear-gradient(135deg,#475569,#94a3b8)!important}
#adminCentralCards .admin-central-card.v551 strong,
#adminCentralCards .admin-central-card.v551 small,
#adminCentralCards .admin-central-card.v551 i{color:#fff!important}
#adminCentralCards .admin-central-card.v551 small{opacity:.88!important}

/* =========================================================
   V5.6.0 — TEMPO REAL / MISSÕES / ADMIN / CHAT
========================================================= */
body.portal-atualizando::after{content:"Atualizando";position:fixed;right:16px;bottom:16px;z-index:99999;background:#0b67b7;color:#fff;border-radius:999px;padding:6px 11px;font-size:10px;font-weight:800;box-shadow:0 7px 18px rgba(0,0,0,.18)}
.missao-card{position:relative}
.missao-card.urgencia-vermelha{border-left:6px solid #dc2626!important;background:linear-gradient(90deg,rgba(220,38,38,.06),var(--card) 22%)!important}
.missao-card.urgencia-amarela{border-left:6px solid #eab308!important;background:linear-gradient(90deg,rgba(234,179,8,.07),var(--card) 22%)!important}
.missao-card.urgencia-verde{border-left:6px solid #22a65a!important;background:linear-gradient(90deg,rgba(34,166,90,.06),var(--card) 22%)!important}
.missao-card.sem-prazo{border-left:6px solid #94a3b8!important}
.btn-toggle-status-missao{border:0;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;cursor:pointer;margin-left:5px}
.btn-toggle-status-missao.concluir{background:#dcfce7;color:#166534}
.btn-toggle-status-missao.reabrir{background:#e0ecff;color:#1e4f8f}
.tooltip-missao-portal{position:fixed;z-index:999999;display:none;white-space:pre-line;width:min(310px,calc(100vw - 24px));padding:11px 13px;border-radius:12px;background:#102a43;color:#fff;font-size:11px;line-height:1.5;box-shadow:0 14px 34px rgba(0,0,0,.28);pointer-events:none}.tooltip-missao-portal.visivel{display:block}
.admin-fechado{padding:32px;display:flex;flex-direction:column;align-items:center;gap:7px;color:#64748b;border:1px dashed #cbd5e1;border-radius:16px}.admin-fechado i{font-size:28px;color:#2879b8}
.vercomo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.vercomo-user{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;border:1px solid #dbe7f1;border-radius:14px;background:#fff;color:#24465f;cursor:pointer}.vercomo-user:hover,.vercomo-user.todos{background:#eaf5ff;border-color:#acd2ef}.vercomo-user i{font-size:20px;color:#2679b9}.vercomo-user small{color:#71869a}
.vercomo-editor{margin-top:18px;padding:16px;border:1px solid #dce8f2;border-radius:16px;background:#fbfdff}.view-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:8px;margin:9px 0 15px}.view-checks label{display:flex;gap:7px;align-items:center;padding:9px;border:1px solid #e1e9f0;border-radius:10px;background:#fff;cursor:grab}.view-checks small{margin-left:auto;color:#94a3b8;font-size:9px}
.chat-anexo-preview{display:flex!important;flex-wrap:wrap;gap:7px}.chat-anexo-preview.oculto{display:none!important}.chat-preview-item{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid #d8e6f2;border-radius:10px;background:#fff}.chat-preview-item span{display:flex;flex-direction:column}.chat-preview-item button{border:0;background:transparent;color:#b91c1c;cursor:pointer}
#btnCameraChat{display:none}@media(max-width:720px){#btnCameraChat{display:grid}.chat-form{grid-template-columns:40px 40px 40px minmax(0,1fr) 40px 44px!important}}
.grafico-clicavel-pm{cursor:pointer!important;transition:.16s}.grafico-clicavel-pm:hover{transform:translateY(-1px);filter:brightness(.98)}
#painel-ajustes .ajuste-cor-alternativa{background:linear-gradient(135deg,#0f766e,#2dd4bf)!important;color:#fff!important}
#painel-ajustes .ajuste-cor-alternativa *{color:#fff!important}

/* PORTAL P1 V6.0 BETA 1 */
.ia-toolbar{display:flex;gap:12px;margin:0 0 18px}.ia-toolbar input{flex:1}.ia-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.ia-prompt-card{background:var(--card,#fff);border:1px solid rgba(15,23,42,.12);border-radius:16px;padding:12px;display:flex;align-items:center;gap:8px;box-shadow:0 5px 18px rgba(15,23,42,.06)}.ia-prompt-abrir{border:0;background:transparent;display:flex;align-items:center;gap:12px;text-align:left;flex:1;cursor:pointer;min-width:0}.ia-prompt-abrir strong,.ia-prompt-abrir small{display:block}.ia-prompt-abrir strong{font-size:15px}.ia-prompt-abrir small{color:#64748b;margin-top:4px}.ia-prompt-icone{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;display:grid;place-items:center;flex:none}.ia-prompt-acoes{display:flex;gap:5px}.ia-modal-caixa{max-width:850px}.ia-form{display:grid;gap:14px}.ia-form label,.ia-usar-grid label{display:grid;gap:6px;font-weight:700}.ia-form textarea,.ia-usar-grid textarea{resize:vertical;line-height:1.5}.ia-usar-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ia-acoes-copia{justify-content:flex-end;margin-top:16px}
.missao-card{position:relative;padding-right:145px}.btn-toggle-status-missao{position:absolute!important;right:14px!important;top:50%!important;transform:translateY(-50%);min-width:112px;border:0;border-radius:10px;padding:10px 12px;font-weight:800;cursor:pointer;box-shadow:0 3px 10px rgba(15,23,42,.14)}.btn-toggle-status-missao.concluir{background:#166534;color:#fff}.btn-toggle-status-missao.reabrir{background:#475569;color:#fff}.missao-info-olho{border:0;background:transparent;padding:0 2px;cursor:help;font-size:16px;line-height:1}.missao-prazo-com-info{display:inline-flex!important;align-items:center;gap:5px}
.barra-acesso-remoto{position:fixed;z-index:100000;left:0;right:0;top:0;background:#7c2d12;color:#fff;display:flex;align-items:center;justify-content:center;gap:24px;padding:9px 15px;box-shadow:0 3px 12px rgba(0,0,0,.25)}.barra-acesso-remoto button{border:1px solid rgba(255,255,255,.5);background:#fff;color:#7c2d12;border-radius:8px;padding:7px 12px;font-weight:800;cursor:pointer}.barra-acesso-remoto~.app,.barra-acesso-remoto~#appPortalP1{margin-top:44px}
@media(max-width:760px){.ia-usar-grid{grid-template-columns:1fr}.ia-toolbar{flex-direction:column}.missao-card{padding-right:12px;padding-bottom:62px}.btn-toggle-status-missao{right:12px!important;top:auto!important;bottom:12px!important;transform:none}.barra-acesso-remoto{justify-content:space-between;font-size:12px;gap:8px}.barra-acesso-remoto button{font-size:11px}}
.vercomo-user-card{display:flex;flex-direction:column;gap:8px}.vercomo-user-card>.vercomo-user{width:100%}.vercomo-user-card>.botao{justify-content:center}

/* V6.0.1 — disponibilidade individual de menus e widgets */
.ui-indisponivel{display:none!important}
.admin-visibilidade-bloco{margin:16px 0;padding:16px;border:1px solid var(--borda,#d9e1ec);border-radius:14px;background:rgba(255,255,255,.62)}
.admin-visibilidade-titulo{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.admin-visibilidade-titulo h4{margin:0}
.admin-visibilidade-titulo>div{display:flex;gap:8px;flex-wrap:wrap}
.view-checks [data-order-menu].arrastando{opacity:.45;outline:2px dashed #0b3d91}
.view-checks label{cursor:pointer}
.view-checks label[draggable="true"]{cursor:grab}
.view-checks label[draggable="true"]:active{cursor:grabbing}
@media(max-width:720px){.admin-visibilidade-titulo{align-items:flex-start;flex-direction:column}}


/* V6.0.2 Beta 3 — Editor do Portal */
.ui-indisponivel{display:none!important}
.menu-item{border-left:3px solid transparent}.menu-item[style*="--menu-item-color"]{border-left-color:var(--menu-item-color)}
.widget-inicial[style*="--widget-accent"]{border-top:4px solid var(--widget-accent)}
.cms-escopo{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 18px}.cms-escopo label{min-width:280px;flex:1}.cms-escopo select{width:100%}
.cms-editor{display:grid;gap:18px}.cms-editor-aviso{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--fundo-suave,#f4f7fb);border:1px solid var(--borda,#dbe3ef)}
.cms-secao{border:1px solid var(--borda,#dbe3ef);border-radius:16px;padding:16px;background:var(--cartao,#fff)}.cms-secao-topo{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.cms-secao-topo h4{margin:0 0 4px}.cms-secao-topo p{margin:0;color:var(--texto-suave,#64748b)}
.cms-lista{display:grid;gap:10px}.cms-item{display:grid;grid-template-columns:28px 86px minmax(180px,1.4fr) minmax(150px,1fr) 90px;gap:10px;align-items:end;padding:12px;border:1px solid var(--borda,#dbe3ef);border-radius:12px;background:var(--fundo,#fff)}.cms-item-widget{grid-template-columns:86px minmax(180px,1.4fr) minmax(150px,1fr) 90px}.cms-item.arrastando{opacity:.45}.cms-arrastar{align-self:center;cursor:grab;color:#64748b}.cms-visivel{align-self:center;display:flex!important;align-items:center;gap:7px}.cms-visivel input{width:auto!important}.cms-item label,.cms-botoes-grid label{font-size:.78rem;font-weight:700;color:var(--texto-suave,#64748b)}.cms-item input,.cms-botoes-grid input{width:100%;margin-top:5px}
.cms-botoes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.cms-tema{max-width:320px}.cms-tema input{display:block;width:100%;height:42px;margin-top:7px}.admin-central-card[data-adm="editor"]{background:linear-gradient(135deg,#0b3d91,#2563eb)!important;color:#fff}.admin-central-card[data-adm="editor"] small{color:rgba(255,255,255,.8)}
@media(max-width:900px){.cms-item,.cms-item-widget{grid-template-columns:1fr 1fr}.cms-arrastar{display:none}.cms-visivel{grid-column:1/-1}}
@media(max-width:560px){.cms-item,.cms-item-widget{grid-template-columns:1fr}.cms-visivel{grid-column:auto}}


/* V6.0.3 BETA 4 — correções do widget Missões e proteção do Administrador */
@media (min-width: 761px){
  .widget-missoes,.widget-agenda{height:650px;min-height:650px;max-height:650px}
  .widget-missoes .lista-missoes-home{min-height:0!important;overflow-y:auto!important;overflow-x:hidden}
}
.missoes-acoes-rapidas{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:nowrap!important;white-space:nowrap;overflow-x:auto;padding-bottom:2px}
.missoes-acoes-rapidas .botao{flex:0 0 auto!important;width:auto!important}
.missao-card{position:relative!important;padding-right:92px!important}
.btn-toggle-status-missao{position:absolute!important;right:10px!important;top:10px!important;transform:none!important;min-width:0!important;border:1px solid rgba(15,23,42,.10)!important;border-radius:999px!important;padding:3px 7px!important;font-size:8px!important;line-height:1.2!important;font-weight:800!important;box-shadow:none!important;opacity:.82}
.btn-toggle-status-missao:hover{opacity:1}
.btn-toggle-status-missao.concluir{background:#edf8f0!important;color:#28633a!important}
.btn-toggle-status-missao.reabrir{background:#eef4fb!important;color:#315b80!important}
.missao-card-topo{padding-right:2px}
.missao-info-olho{display:inline-grid!important;place-items:center;color:#3978a8!important;border:0!important;background:transparent!important;padding:1px 3px!important;cursor:help!important;font-size:13px!important;line-height:1!important;opacity:.82}
.missao-info-olho:hover{opacity:1;transform:scale(1.08)}
.tooltip-missao-portal{z-index:2147483647!important}
.cms-item [data-cms-menu-visible]:disabled,.view-checks [data-menu-ui="administrador"]:disabled{cursor:not-allowed;accent-color:#64748b}
@media(max-width:760px){
  .widget-missoes,.widget-agenda{height:auto;max-height:none}
  .widget-missoes .lista-missoes-home{max-height:430px!important;overflow-y:auto!important}
  .missoes-acoes-rapidas{overflow-x:auto}
  .missao-card{padding-right:82px!important;padding-bottom:11px!important}
  .btn-toggle-status-missao{right:9px!important;top:9px!important;bottom:auto!important}
}

/* V6.0.4 Beta 5 — missões compactas, calendário noturno e CMS por telas */
.widget-missoes .lista-missoes-home{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:stretch!important;
  align-content:flex-start!important;
  gap:9px!important;
}
.widget-missoes .missao-card{flex:0 0 auto!important;min-height:0!important;height:auto!important;align-self:stretch!important}

/* Agenda da P1: contraste equivalente ao calendário do Meus PJES no modo escuro */
body.tema-escuro .widget-agenda .calendario,
body.dark-mode .widget-agenda .calendario,
[data-theme="dark"] .widget-agenda .calendario{
  background:#111827!important;border-color:#334155!important;color:#f8fafc!important
}
body.tema-escuro .widget-agenda .calendario-topo,
body.dark-mode .widget-agenda .calendario-topo,
[data-theme="dark"] .widget-agenda .calendario-topo{background:#172033!important;border-color:#334155!important}
body.tema-escuro .widget-agenda .calendario-topo h3,
body.dark-mode .widget-agenda .calendario-topo h3,
[data-theme="dark"] .widget-agenda .calendario-topo h3{color:#f8fafc!important}
body.tema-escuro .widget-agenda .calendario-semana div,
body.dark-mode .widget-agenda .calendario-semana div,
[data-theme="dark"] .widget-agenda .calendario-semana div{color:#cbd5e1!important;background:#172033!important}
body.tema-escuro .widget-agenda .dia-calendario,
body.dark-mode .widget-agenda .dia-calendario,
[data-theme="dark"] .widget-agenda .dia-calendario{background:#0f172a!important;border-color:#334155!important;color:#f8fafc!important}
body.tema-escuro .widget-agenda .dia-calendario .numero-dia,
body.dark-mode .widget-agenda .dia-calendario .numero-dia,
[data-theme="dark"] .widget-agenda .dia-calendario .numero-dia{color:#f8fafc!important;opacity:1!important}
body.tema-escuro .widget-agenda .dia-calendario.fora-mes .numero-dia,
body.dark-mode .widget-agenda .dia-calendario.fora-mes .numero-dia,
[data-theme="dark"] .widget-agenda .dia-calendario.fora-mes .numero-dia{color:#64748b!important}
body.tema-escuro .widget-agenda .dia-calendario.hoje,
body.dark-mode .widget-agenda .dia-calendario.hoje,
[data-theme="dark"] .widget-agenda .dia-calendario.hoje{background:#1e3a5f!important;box-shadow:inset 0 0 0 2px #60a5fa!important}

.cms-menu-botoes{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}
.cms-menu-botao{border:0;border-radius:12px;padding:12px 16px;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 5px 14px rgba(15,23,42,.15);display:flex;align-items:center;gap:8px}
.cms-menu-botao:nth-child(6n+1){background:#2563eb}.cms-menu-botao:nth-child(6n+2){background:#7c3aed}.cms-menu-botao:nth-child(6n+3){background:#059669}.cms-menu-botao:nth-child(6n+4){background:#d97706}.cms-menu-botao:nth-child(6n+5){background:#dc2626}.cms-menu-botao:nth-child(6n){background:#0891b2}
.cms-menu-botao.ativo{outline:3px solid color-mix(in srgb,var(--primaria) 35%,transparent);transform:translateY(-2px)}
.cms-subeditor{border:1px solid var(--borda);border-radius:16px;background:var(--card);padding:18px;margin-top:10px}
.cms-subeditor.oculto{display:none}
.cms-widget-lista{display:grid;gap:12px}
.cms-widget-item{display:grid;grid-template-columns:34px minmax(120px,1.4fr) minmax(115px,1fr) 92px 110px 110px;gap:10px;align-items:end;border:1px solid var(--borda);border-radius:13px;padding:12px;background:var(--hover)}
.cms-widget-item .cms-grip{cursor:grab;align-self:center;text-align:center;color:var(--texto-suave)}
.cms-widget-item label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:var(--texto-suave)}
.cms-widget-item input,.cms-widget-item select{min-width:0;padding:9px;border:1px solid var(--borda);border-radius:9px;background:var(--card);color:var(--texto)}
.cms-widget-item.arrastando{opacity:.5}
.cms-admin-protegido{font-size:11px;color:#b45309;font-weight:800;margin-top:4px}
@media(max-width:1000px){.cms-widget-item{grid-template-columns:30px 1fr 1fr}.cms-widget-item>*{min-width:0}}
body.dark .widget-agenda .calendario{background:#111827!important;border-color:#334155!important;color:#f8fafc!important}
body.dark .widget-agenda .calendario-topo{background:#172033!important;border-color:#334155!important}
body.dark .widget-agenda .calendario-topo h3{color:#f8fafc!important}
body.dark .widget-agenda .calendario-semana div{color:#cbd5e1!important;background:#172033!important}
body.dark .widget-agenda .dia-calendario{background:#0f172a!important;border-color:#334155!important;color:#f8fafc!important}
body.dark .widget-agenda .dia-calendario .numero-dia{color:#f8fafc!important;opacity:1!important}
body.dark .widget-agenda .dia-calendario.fora-mes .numero-dia{color:#64748b!important}
body.dark .widget-agenda .dia-calendario.hoje{background:#1e3a5f!important;box-shadow:inset 0 0 0 2px #60a5fa!important}


/* V6.0.5 - I.A horizontal e Administrador organizado */
.ia-usar-caixa{max-width:980px;width:min(96vw,980px)}
.ia-usar-grid{display:flex!important;flex-direction:column!important;gap:14px!important}
.ia-usar-grid label{width:100%}
.ia-usar-grid textarea{width:100%;min-height:180px}
#promptPadraoVisualIA{min-height:200px}
#textoAplicavelIA{min-height:240px}
#adminCentralCards{align-items:stretch}
#adminCentralCards .admin-central-card{min-height:96px}
.cms-menu-botoes{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.cms-menu-botao{min-height:82px;border-radius:16px;transition:transform .18s ease,box-shadow .18s ease}
.cms-menu-botao:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.14)}

/* V6.0.6 — Chat interno avançado */
#painel-chat .chat-topo{gap:10px}.chat-pesquisa-mensagens{margin-left:auto;width:min(260px,28vw);height:38px;border:1px solid #d8e2ef;border-radius:999px;padding:0 14px;background:#f8fafc;color:#172033;outline:0}.chat-msg-menu{position:absolute;right:7px;top:6px;width:27px;height:27px;border:0;border-radius:50%;background:rgba(255,255,255,.72);color:#64748b;opacity:0;cursor:pointer;transition:.15s}.chat-msg:hover .chat-msg-menu{opacity:1}.chat-msg.fixada{outline:2px solid rgba(245,158,11,.45)}.chat-msg.favorita{box-shadow:0 0 0 2px rgba(250,204,21,.28),0 2px 6px rgba(11,87,183,.16)!important}.chat-pin{position:absolute;left:-9px;top:-9px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#f59e0b;color:#fff;font-size:.65rem}.chat-resposta-citada{display:flex;flex-direction:column;border-left:4px solid #0b57b7;background:rgba(255,255,255,.54);padding:6px 9px;margin:2px 20px 7px 0;border-radius:7px;font-size:.78rem}.chat-resposta-citada strong{color:#0b57b7}.chat-resposta-citada span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:350px}.chat-mensagem-apagada{font-style:italic;color:#718096;padding:7px 2px}.chat-reacoes{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.chat-reacoes button{border:1px solid #cbd8e7;background:#fff;border-radius:999px;padding:2px 7px;cursor:pointer;font-size:.76rem}.chat-reacoes button:hover{background:#eaf2ff}.chat-contexto-envio{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#f4f8fd;border-top:1px solid #dbe5f0;color:#173b68}.chat-contexto-envio>span{display:flex;flex-direction:column;min-width:0;flex:1}.chat-contexto-envio small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-contexto-envio>button{border:0;background:transparent;font-size:1rem;cursor:pointer}.chat-menu-flutuante{position:fixed;z-index:99999;display:flex;flex-direction:column;width:215px;padding:7px;background:#fff;border:1px solid #dbe4ef;border-radius:13px;box-shadow:0 18px 45px rgba(15,23,42,.22)}.chat-menu-flutuante button{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:9px 10px;border-radius:8px;text-align:left;cursor:pointer;color:#1e293b}.chat-menu-flutuante button:hover{background:#eef5ff}.chat-menu-flutuante button.perigo{color:#b91c1c}.chat-principal.chat-arrastando{outline:4px dashed #0b57b7;outline-offset:-10px}.chat-principal.chat-arrastando::after{content:'Solte os arquivos para enviar';position:absolute;inset:80px 24px 90px;z-index:20;display:grid;place-items:center;background:rgba(231,242,255,.92);border-radius:18px;color:#0b57b7;font-size:1.25rem;font-weight:800;pointer-events:none}.chat-principal{position:relative}.chat-anexo-preview{display:flex;gap:8px;overflow-x:auto;padding:8px 14px;background:#f8fafc}.chat-preview-item{display:flex;align-items:center;gap:8px;min-width:220px;max-width:320px;padding:8px 10px;background:#fff;border:1px solid #dbe4ef;border-radius:11px}.chat-preview-item span{display:flex;flex-direction:column;min-width:0;flex:1}.chat-preview-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-preview-item button{border:0;background:transparent;cursor:pointer}.chat-acao.gravando{background:#fee2e2!important;color:#dc2626!important;animation:chatPulse 1s infinite}@keyframes chatPulse{50%{transform:scale(1.1)}}
[data-tema="escuro"] .chat-pesquisa-mensagens,[data-theme="dark"] .chat-pesquisa-mensagens{background:#182337;border-color:#314158;color:#e5edf8}[data-tema="escuro"] .chat-contexto-envio,[data-theme="dark"] .chat-contexto-envio{background:#172235;color:#e5edf8}[data-tema="escuro"] .chat-menu-flutuante,[data-theme="dark"] .chat-menu-flutuante{background:#172235;border-color:#34445c}[data-tema="escuro"] .chat-menu-flutuante button,[data-theme="dark"] .chat-menu-flutuante button{color:#e5edf8}
@media(max-width:760px){.chat-pesquisa-mensagens{display:none}.chat-msg-menu{opacity:1}.chat-menu-flutuante{width:200px}.chat-resposta-citada span{max-width:220px}}


/* V6.1.0 - Site e Infraestrutura / FileZilla */
.infra-filezilla-card,.infra-publicacao-card{margin-top:16px;padding:18px;border:1px solid var(--borda);border-radius:18px;background:var(--card);box-shadow:0 10px 28px rgba(15,42,65,.06)}
.infra-filezilla-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.infra-filezilla-topo h4,.infra-publicacao-card h4{margin:0 0 5px;font-size:1.02rem}.infra-filezilla-topo p{margin:0;color:var(--texto-suave);font-size:.85rem}
.infra-dados-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.infra-dados-grid article{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 10px;padding:14px;border-radius:14px;background:var(--hover);border:1px solid var(--borda)}.infra-dados-grid article>span{grid-column:1/-1;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--texto-suave);font-weight:700}.infra-dados-grid strong{overflow-wrap:anywhere;font-size:.94rem}.infra-copy-btn{border:1px solid var(--borda);background:var(--card);color:var(--primaria);border-radius:9px;padding:7px 9px;font-size:.75rem;font-weight:700;cursor:pointer;white-space:nowrap}.infra-copy-btn:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(15,42,65,.1)}.infra-copy-btn.copiado{color:#16794a;border-color:#77c9a3;background:#effcf5}
.infra-aviso-senha{display:flex;align-items:center;gap:9px;margin-top:14px;padding:11px 13px;border-radius:12px;background:#fff8e8;border:1px solid #f0d899;color:#735514;font-size:.83rem}.infra-publicacao-card ol{margin:10px 0 0;padding-left:22px;display:grid;gap:8px;color:var(--texto-suave)}.infra-publicacao-card code{padding:2px 5px;border-radius:5px;background:var(--hover);color:var(--texto)}
body.modo-noturno .infra-aviso-senha{background:#392f17;border-color:#6b5725;color:#f6df9d}
@media(max-width:700px){.infra-filezilla-topo{flex-direction:column}.infra-filezilla-topo .botao{width:100%}.infra-dados-grid{grid-template-columns:1fr}}

/* =========================================================
   V6.1.2 — HOME PADRONIZADA + ANOTAÇÕES PESSOAIS
   Referência: dimensões do widget Agenda da P1
========================================================= */
.widgets-iniciais.widgets-home-padronizados{
  --altura-widget-home: 560px;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.widgets-home-padronizados>.widget-inicial{
  height:var(--altura-widget-home)!important;
  min-height:var(--altura-widget-home)!important;
  max-height:var(--altura-widget-home)!important;
  box-sizing:border-box;
  overflow:hidden;
  display:flex!important;
  flex-direction:column!important;
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:14px;
  padding:18px;
  box-shadow:var(--sombra);
}
.widgets-home-padronizados .widget-cabecalho{flex:0 0 auto}
.widgets-home-padronizados .widget-agenda #calendarioDashboard,
.widgets-home-padronizados .widget-missoes .lista-missoes-home{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
}
.widgets-home-padronizados .widget-somar-datas .somar-datas-card{
  flex:1;
  align-content:start;
  grid-template-columns:1fr 1fr;
  padding:18px;
  border:1px solid var(--borda);
  border-radius:13px;
  background:var(--hover);
}
.widgets-home-padronizados .widget-somar-datas .somar-datas-card>.botao{grid-column:1/-1}
.widgets-home-padronizados .widget-somar-datas .resultado-soma-datas{
  grid-column:1/-1;
  min-height:150px;
  align-content:center;
  justify-content:center;
  text-align:center;
}
.toolbar-anotacoes{
  display:flex;flex-wrap:wrap;gap:6px;padding:8px;
  border:1px solid var(--borda);border-radius:10px 10px 0 0;
  background:var(--hover);flex:0 0 auto
}
.toolbar-anotacoes button,.cor-anotacoes{
  width:34px;height:32px;border:1px solid var(--borda);border-radius:7px;
  display:grid;place-items:center;background:var(--card);color:var(--texto);
  cursor:pointer;position:relative
}
.toolbar-anotacoes button:hover,.cor-anotacoes:hover{border-color:var(--primaria);color:var(--primaria)}
.cor-anotacoes input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.editor-anotacoes{
  flex:1 1 auto;min-height:0;overflow:auto;padding:14px;
  border:1px solid var(--borda);border-top:0;background:var(--card);
  color:var(--texto);line-height:1.55;outline:0
}
.editor-anotacoes:focus{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primaria) 18%,transparent)}
.editor-anotacoes:empty:before{content:attr(data-placeholder);color:var(--texto-suave);pointer-events:none}
.editor-anotacoes ul,.editor-anotacoes ol{padding-left:24px}
.rodape-anotacoes-rich{display:flex;justify-content:space-between;gap:12px;padding-top:8px;color:var(--texto-suave);font-size:11px;flex:0 0 auto}
.status-anotacoes-rich{font-size:11px;color:var(--texto-suave);white-space:nowrap}
.anotacoes-legado-oculto{display:none!important}
@media(max-width:1180px){
  .widgets-iniciais.widgets-home-padronizados{grid-template-columns:1fr!important}
}
@media(max-width:680px){
  .widgets-iniciais.widgets-home-padronizados{--altura-widget-home:520px}
  .widgets-home-padronizados>.widget-inicial{padding:14px}
  .widgets-home-padronizados .widget-somar-datas .somar-datas-card{grid-template-columns:1fr}
  .widgets-home-padronizados .widget-somar-datas .somar-datas-card>*{grid-column:1!important}
}

/* =========================================================
   V6.1.3 — SOMAR DATAS DUPLO + ANOTAÇÕES ARQUIVÁVEIS
========================================================= */
.widgets-home-padronizados .widget-somar-datas .somar-datas-duplo{
  flex:1 1 auto;min-height:0;display:grid;grid-template-rows:1fr 1fr;gap:10px;overflow:auto
}
.widgets-home-padronizados .widget-somar-datas .calculadora-data-bloco{
  min-height:0;padding:10px;border:1px solid var(--borda);border-radius:12px;background:var(--hover);display:flex;flex-direction:column;gap:7px
}
.widgets-home-padronizados .widget-somar-datas .calculadora-data-bloco h3{margin:0;font-size:12px;display:flex;align-items:center;gap:7px;color:var(--texto)}
.widgets-home-padronizados .widget-somar-datas .somar-datas-card{
  flex:1 1 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:7px;align-items:end;padding:0;border:0;border-radius:0;background:transparent;align-content:start
}
.widgets-home-padronizados .widget-somar-datas .somar-datas-card>.botao{grid-column:auto;white-space:nowrap}
.widgets-home-padronizados .widget-somar-datas .resultado-soma-datas{
  grid-column:1/-1;min-height:42px;padding:7px 9px;align-content:initial;justify-content:space-between;text-align:left
}
.resultado-com-copia{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}
.resultado-com-copia strong{min-width:0;overflow-wrap:anywhere}
.botao-copiar-resultado{width:28px;height:28px;flex:0 0 28px;border:1px solid var(--borda);border-radius:7px;background:var(--card);color:var(--texto-suave);cursor:pointer}
.botao-copiar-resultado:hover{color:var(--primaria);border-color:var(--primaria)}

.widget-anotacoes .abas-anotacoes{display:flex;gap:6px;overflow-x:auto;padding:0 0 7px;flex:0 0 auto;scrollbar-width:thin}
.aba-anotacao{border:1px solid var(--borda);border-radius:999px;background:var(--hover);color:var(--texto);padding:5px 10px;font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer}
.aba-anotacao.ativa{background:var(--primaria);border-color:var(--primaria);color:#fff}
.toolbar-anotacoes{position:relative;overflow:visible}
.toolbar-anotacoes button#btnArquivarAnotacoes{width:auto;padding:0 9px;display:flex;gap:6px}
.seletor-tamanho-anotacoes{height:32px;border:1px solid var(--borda);border-radius:7px;background:var(--card);display:flex;align-items:center;gap:4px;padding:0 5px;color:var(--texto);font-size:11px}
.seletor-tamanho-anotacoes select{max-width:72px;border:0;background:transparent;color:inherit;font:inherit;outline:0}
.menu-cor-anotacoes{position:relative}
.menu-cor-anotacoes>button{width:34px;height:32px;border:1px solid var(--borda);border-radius:7px;background:var(--card);color:var(--texto);cursor:pointer}
.paleta-anotacoes{position:absolute;z-index:50;top:38px;left:0;display:grid;grid-template-columns:repeat(3,28px);gap:6px;padding:8px;border:1px solid var(--borda);border-radius:10px;background:var(--card);box-shadow:var(--sombra)}
.paleta-anotacoes.oculto{display:none!important}
.paleta-anotacoes button{width:28px;height:28px;border-radius:7px;border:1px solid rgba(0,0,0,.14);cursor:pointer}
.editor-anotacoes{transition:background-color .15s ease;color:#1f2937}

@media(max-width:680px){
  .widgets-home-padronizados .widget-somar-datas .somar-datas-card{grid-template-columns:1fr 1fr}
  .widgets-home-padronizados .widget-somar-datas .somar-datas-card>.botao{grid-column:1/-1}
  .toolbar-anotacoes button#btnArquivarAnotacoes span{display:none}
}


/* Portal P1 Versão 1.0.2 — histórico de versões */
.admin-central-card.dourado{background:linear-gradient(135deg,#a16207,#d97706);color:#fff}
.modal-versoes{z-index:14000}
.versoes-caixa{width:min(1080px,94vw);max-height:90vh;display:flex;flex-direction:column}
.versoes-acoes{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}
.versao-atual-badge{margin-left:auto;padding:8px 12px;border-radius:999px;background:var(--cor-fundo-secundario,#eef2ff);font-weight:700}
.lista-versoes-portal{overflow:auto;display:grid;gap:10px;padding:2px 2px 14px}
.versao-item{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(210px,1.5fr) minmax(210px,1fr);gap:14px;align-items:center;padding:14px;border:1px solid var(--cor-borda,#dbe2ea);border-radius:14px;background:var(--cor-card,#fff)}
.versao-item.atual{box-shadow:inset 4px 0 0 #16a34a}
.versao-identidade strong{display:block;font-size:1.02rem}.versao-identidade small,.versao-detalhes small{display:block;color:var(--cor-texto-suave,#64748b);margin-top:4px}
.versao-descricao{margin:0;white-space:pre-wrap}.versao-acoes-item{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.versao-protegida{color:#b45309;font-weight:700}
@media(max-width:780px){.versao-item{grid-template-columns:1fr}.versao-acoes-item{justify-content:flex-start}.versao-atual-badge{margin-left:0}}

/* Versões — semáforo de estabilidade */
.versao-item{position:relative;display:grid;grid-template-columns:minmax(130px,.75fr) 108px minmax(240px,2fr) auto;gap:16px;align-items:center}
.versao-semaforo-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px}
.versao-semaforo{width:38px;height:82px;padding:7px 8px;border:0;border-radius:13px;background:#202733;box-shadow:0 3px 10px rgba(0,0,0,.22);display:flex;flex-direction:column;justify-content:space-between;align-items:center;cursor:pointer}
.versao-semaforo:hover{transform:translateY(-1px)}
.versao-semaforo .luz{width:17px;height:17px;border-radius:50%;opacity:.18;box-shadow:inset 0 1px 3px rgba(0,0,0,.45)}
.versao-semaforo .verde{background:#21c56e}.versao-semaforo .amarela{background:#f6c445}.versao-semaforo .vermelha{background:#ef4d5a}
.versao-semaforo .luz.acesa{opacity:1;box-shadow:0 0 9px currentColor,inset 0 1px 2px rgba(255,255,255,.55)}
.versao-status-label{font-size:10px;font-weight:800;text-align:center;white-space:nowrap}
.status-green{color:#138a4c}.status-yellow{color:#9b6a00}.status-red{color:#c22835}
.versao-status-menu{position:absolute;z-index:40;top:88px;left:50%;transform:translateX(-50%);width:190px;padding:7px;background:#fff;border:1px solid #dbe2ea;border-radius:10px;box-shadow:0 12px 30px rgba(15,23,42,.18)}
.versao-status-menu button{width:100%;display:flex;align-items:center;gap:8px;padding:9px;border:0;border-radius:7px;background:transparent;text-align:left;font-size:11px;font-weight:800;cursor:pointer}
.versao-status-menu button:hover{background:#f1f5f9}
.status-bola{width:13px;height:13px;border-radius:50%;flex:none}.status-bola.green{background:#21c56e}.status-bola.yellow{background:#f6c445}.status-bola.red{background:#ef4d5a}
.versao-status-explicacao{display:block;margin-top:5px;font-style:italic}
.status-card-green{border-left:4px solid #21c56e}.status-card-yellow{border-left:4px solid #f6c445}.status-card-red{border-left:4px solid #ef4d5a;background:rgba(239,77,90,.035)}
.botao[disabled]{opacity:.55;cursor:not-allowed;filter:grayscale(.25)}
@media(max-width:850px){.versao-item{grid-template-columns:1fr 90px}.versao-detalhes,.versao-acoes-item{grid-column:1/-1}.versao-acoes-item{display:flex;flex-wrap:wrap}}

/* Versão 2.1.1 — verificador de integridade */
.integridade-portal{margin:12px 0;padding:14px;border:1px solid var(--borda,#d9e1ec);border-radius:12px;background:var(--card,#fff)}
.integridade-cabecalho{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.integridade-cabecalho.ok strong{color:#087f5b}.integridade-cabecalho.erro strong{color:#b42318}
.integridade-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:12px}
.integridade-grade>div{padding:9px;border-radius:9px;background:rgba(100,116,139,.08);display:flex;flex-direction:column;gap:3px}
.integridade-grade span{font-size:.75rem;opacity:.75}.integridade-arquivos{list-style:none;padding:0;margin:0;display:grid;gap:5px}
.integridade-arquivos li{font-size:.84rem}.integridade-arquivos li.ok{color:#087f5b}.integridade-arquivos li.erro{color:#b42318}

/* Versão 2.1.2 — Modo de Recuperação */
.modal-recuperacao-conteudo{max-width:920px}
.recuperacao-alerta{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.35);margin-bottom:14px}
.recuperacao-alerta i{color:#d97706;margin-top:2px}
.recuperacao-cabecalho{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:12px;margin-bottom:12px}
.recuperacao-cabecalho.ok{background:rgba(16,185,129,.10);color:#087f5b}.recuperacao-cabecalho.erro{background:rgba(239,68,68,.10);color:#b42318}
.recuperacao-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.recuperacao-item{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:12px;background:rgba(100,116,139,.07);border:1px solid rgba(100,116,139,.16)}
.recuperacao-item.ok>i{color:#087f5b}.recuperacao-item.erro>i{color:#b42318}
.recuperacao-item div{display:flex;flex-direction:column;gap:3px}.recuperacao-item small{opacity:.75;line-height:1.35}
.recuperacao-subtitulo{margin:18px 0 10px;font-size:1rem}


/* =========================================================
   PORTAL P1 2.2.0 — CHAT VISUAL INSPIRADO NO WHATSAPP
   ========================================================= */
#painel-chat{
  --wa-green:#00a884;
  --wa-green-dark:#008069;
  --wa-green-soft:#d9fdd3;
  --wa-panel:#f0f2f5;
  --wa-border:#e9edef;
  --wa-text:#111b21;
  --wa-muted:#667781;
  --wa-chat-bg:#efeae2;
}
#painel-chat .chat-app{
  height:calc(100vh - 190px);
  min-height:590px;
  grid-template-columns:360px minmax(0,1fr);
  border:0;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 35px rgba(11,20,26,.14);
  background:#fff;
}
#painel-chat .chat-sidebar{
  background:#fff!important;
  border-right:1px solid var(--wa-border)!important;
}
#painel-chat .chat-sidebar-topo{
  min-height:64px!important;
  padding:12px 16px!important;
  background:var(--wa-panel)!important;
  color:var(--wa-text)!important;
}
#painel-chat .chat-sidebar-topo strong{
  color:var(--wa-text)!important;
  font-size:1.08rem!important;
}
#painel-chat .chat-sidebar-topo span{color:var(--wa-muted)!important}
#painel-chat .chat-search{
  margin:8px 12px!important;
  padding:8px 12px!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--wa-panel)!important;
}
#painel-chat .chat-search i{color:var(--wa-muted)}
#painel-chat .chat-search input{color:var(--wa-text)}
#painel-chat .chat-lista-titulo{
  padding:11px 16px 6px!important;
  color:var(--wa-green-dark)!important;
  font-size:.7rem!important;
}
#painel-chat .chat-conversa{
  margin:0!important;
  width:100%!important;
  min-height:70px;
  padding:10px 14px!important;
  border-radius:0!important;
  border-bottom:1px solid rgba(233,237,239,.85)!important;
  background:#fff!important;
  transform:none!important;
}
#painel-chat .chat-conversa:hover{background:#f5f6f6!important}
#painel-chat .chat-conversa.ativo{
  background:#f0f2f5!important;
  box-shadow:inset 4px 0 var(--wa-green)!important;
}
#painel-chat .chat-avatar{
  width:48px;
  height:48px;
  flex-basis:48px;
  background:linear-gradient(145deg,#cfd8dc,#90a4ae)!important;
}
#painel-chat .chat-conversa-info strong{
  color:var(--wa-text)!important;
  font-size:.92rem!important;
  font-weight:700!important;
}
#painel-chat .chat-conversa-info small{
  color:var(--wa-muted)!important;
  font-size:.76rem!important;
}
#painel-chat .chat-online-dot,
#painel-chat .chat-status-online b{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#25d366;
  box-shadow:0 0 0 3px rgba(37,211,102,.13);
  margin-right:4px;
}
#painel-chat .chat-principal{
  background-color:var(--wa-chat-bg)!important;
  background-image:
    linear-gradient(rgba(239,234,226,.92),rgba(239,234,226,.92)),
    radial-gradient(circle at 18px 18px,rgba(17,27,33,.045) 1px,transparent 1.2px)!important;
  background-size:auto,32px 32px!important;
}
#painel-chat .chat-topo{
  min-height:64px!important;
  height:64px!important;
  padding:8px 14px!important;
  background:var(--wa-panel)!important;
  border-bottom:1px solid var(--wa-border)!important;
  box-shadow:none!important;
}
#painel-chat .chat-topo-identidade strong{
  color:var(--wa-text)!important;
  font-size:.97rem!important;
}
#painel-chat .chat-topo-identidade small{
  color:var(--wa-muted)!important;
  font-size:.72rem!important;
}
#painel-chat .chat-pesquisa-mensagens{
  background:#fff!important;
  border:1px solid transparent!important;
  color:var(--wa-text)!important;
}
#painel-chat .chat-mensagens{
  padding:18px 6.5%!important;
  gap:3px!important;
}
#painel-chat .chat-msg{
  max-width:min(72%,680px)!important;
  margin:2px 0!important;
  padding:7px 9px 5px!important;
  border:0!important;
  border-radius:7px 7px 7px 0!important;
  background:#fff!important;
  color:var(--wa-text)!important;
  box-shadow:0 1px 1px rgba(11,20,26,.13)!important;
}
#painel-chat .chat-msg::before{display:none!important}
#painel-chat .chat-msg.minha{
  background:var(--wa-green-soft)!important;
  border:0!important;
  border-radius:7px 7px 0 7px!important;
  box-shadow:0 1px 1px rgba(11,20,26,.13)!important;
}
#painel-chat .chat-msg-remetente{
  color:var(--wa-green-dark)!important;
  font-size:.69rem!important;
}
#painel-chat .chat-msg-texto{
  color:var(--wa-text)!important;
  font-size:.91rem!important;
  line-height:1.42!important;
  padding-right:4px;
}
#painel-chat .chat-msg-hora{
  color:var(--wa-muted)!important;
  font-size:.62rem!important;
}
#painel-chat .chat-status.lida{color:#53bdeb!important}
#painel-chat .chat-status.entregue,
#painel-chat .chat-status.enviada{color:var(--wa-muted)!important}
#painel-chat .chat-msg-menu{
  color:var(--wa-muted)!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.92))!important;
}
#painel-chat .chat-msg-imagem,
#painel-chat .chat-msg-video{
  border-radius:7px!important;
  box-shadow:none!important;
}
#painel-chat .chat-msg-arquivo{
  border:0!important;
  background:rgba(255,255,255,.5)!important;
}
#painel-chat .chat-msg-arquivo>i{color:var(--wa-green-dark)!important}
#painel-chat .chat-contexto-envio,
#painel-chat .chat-anexo-preview{
  background:#f0f2f5!important;
  border-color:var(--wa-border)!important;
}
#painel-chat .chat-form{
  grid-template-columns:42px 42px minmax(0,1fr) 42px 47px!important;
  padding:9px 12px!important;
  background:var(--wa-panel)!important;
  border-top:1px solid var(--wa-border)!important;
  box-shadow:none!important;
}
#painel-chat .chat-form textarea{
  min-height:42px!important;
  border:0!important;
  border-radius:9px!important;
  padding:10px 13px!important;
  background:#fff!important;
  color:var(--wa-text)!important;
  box-shadow:none!important;
}
#painel-chat .chat-form textarea:focus{
  border:0!important;
  box-shadow:none!important;
}
#painel-chat .chat-acao{
  width:40px;
  height:40px;
  color:#54656f!important;
  background:transparent!important;
}
#painel-chat .chat-acao:hover{background:rgba(84,101,111,.09)!important}
#painel-chat .chat-enviar{
  background:var(--wa-green)!important;
  width:42px!important;
  height:42px!important;
}
#painel-chat .chat-emoji-painel{
  background:#fff!important;
  border-color:var(--wa-border)!important;
}
#painel-chat .chat-emoji-painel button:hover{background:#f0f2f5!important}
#painel-chat .chat-vazio{
  color:var(--wa-muted)!important;
  background:rgba(255,255,255,.82)!important;
}
#painel-chat .chat-mobile-voltar{
  display:none;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#54656f;
  cursor:pointer;
}
#painel-chat .chat-mobile-voltar:hover{background:rgba(84,101,111,.1)}
#painel-chat .chat-mini-badge{
  background:#25d366!important;
  color:#fff!important;
}

@media(max-width:850px){
  #painel-chat .chat-app{
    height:calc(100vh - 140px)!important;
    min-height:520px!important;
    grid-template-columns:1fr!important;
    border-radius:0!important;
  }
  #painel-chat .chat-sidebar{
    display:block!important;
    width:100%!important;
    height:100%!important;
  }
  #painel-chat .chat-principal{
    display:none!important;
    width:100%!important;
    height:100%!important;
  }
  #painel-chat .chat-mobile-conversa-aberta .chat-sidebar{display:none!important}
  #painel-chat .chat-mobile-conversa-aberta .chat-principal{display:grid!important}
  #painel-chat .chat-mobile-voltar{display:grid;place-items:center}
  #painel-chat .chat-mensagens{padding:14px 12px!important}
  #painel-chat .chat-msg{max-width:88%!important}
  #painel-chat .chat-pesquisa-mensagens{display:none!important}
}

/* Versão 2.2.1 — campo opcional de nome completo no Gerador de Tabelas */
#painel-gerador-tabelas .campo-nome-completo-tabela-pm{
  display:flex;
  flex-direction:column;
  gap:3px;
  margin-top:12px;
}
#painel-gerador-tabelas .campo-nome-completo-tabela-pm span{
  color:var(--texto-suave,#64748b);
  font-size:.78rem;
  font-weight:400;
}
#painel-gerador-tabelas .entrada-nome-completo-pm{
  margin-top:6px;
}
#painel-gerador-tabelas .coluna-nome-completo-pm{
  text-align:left;
  white-space:normal;
  min-width:280px;
}
#painel-gerador-tabelas .coluna-nome-completo-pm strong{
  font-weight:800;
}


/* =========================================================
   PORTAL P1 2.2.2 — CHAT EDITÁVEL E GRUPOS
   ========================================================= */
#painel-chat .chat-topo{gap:8px}
#painel-chat .chat-configurar{color:#54656f}
.chat-modal-grupo{max-width:760px}
.chat-modal-aparencia{max-width:680px}
.chat-campo-config{display:flex;flex-direction:column;gap:6px}
.chat-campo-config>span{font-size:.82rem;font-weight:800;color:var(--texto-principal,#1f2937)}
.chat-campo-config input,.chat-campo-config select{
  width:100%;min-height:42px;border:1px solid var(--borda,#d7dee8);border-radius:10px;padding:9px 11px;background:var(--cartao,#fff);color:var(--texto-principal,#1f2937)
}
.chat-config-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.chat-participantes-cabecalho{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:16px 0 8px}
.chat-participantes-cabecalho small{color:var(--texto-suave,#64748b)}
.chat-lista-participantes{max-height:360px;overflow:auto;border:1px solid var(--borda,#d7dee8);border-radius:12px;background:var(--cartao,#fff)}
.chat-participante-item{display:grid;grid-template-columns:24px 42px minmax(0,1fr);gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid rgba(148,163,184,.18);cursor:pointer}
.chat-participante-item:last-child{border-bottom:0}
.chat-participante-item:hover{background:rgba(59,130,246,.06)}
.chat-participante-item.criador{background:rgba(16,185,129,.07)}
.chat-participante-item .chat-avatar{width:38px!important;height:38px!important;flex-basis:38px!important}
.chat-participante-item>span:last-child{display:flex;flex-direction:column;gap:2px}
.chat-participante-item small{color:var(--texto-suave,#64748b)}
.chat-acoes-grupo{align-items:center}
.espacador-flex{flex:1}
.botao.perigo{background:#b42318;color:#fff;border-color:#b42318}

/* Temas editáveis do Chat */
#painel-chat[data-chat-accent="blue"]{--wa-green:#2563eb;--wa-green-dark:#1d4ed8;--wa-green-soft:#dbeafe}
#painel-chat[data-chat-accent="green"]{--wa-green:#00a884;--wa-green-dark:#008069;--wa-green-soft:#d9fdd3}
#painel-chat[data-chat-accent="teal"]{--wa-green:#0f766e;--wa-green-dark:#115e59;--wa-green-soft:#ccfbf1}
#painel-chat[data-chat-accent="purple"]{--wa-green:#7c3aed;--wa-green-dark:#6d28d9;--wa-green-soft:#ede9fe}
#painel-chat[data-chat-wallpaper="plain"] .chat-principal{background:#eef1f5!important;background-image:none!important}
#painel-chat[data-chat-wallpaper="dots"] .chat-principal{
  background-color:#e8edf3!important;
  background-image:radial-gradient(circle at 4px 4px,rgba(15,23,42,.08) 1.2px,transparent 1.4px)!important;
  background-size:22px 22px!important
}
#painel-chat[data-chat-wallpaper="dark"] .chat-principal{background:#111b21!important;background-image:none!important}
#painel-chat[data-chat-wallpaper="dark"] .chat-msg:not(.minha){background:#202c33!important;color:#e9edef!important}
#painel-chat[data-chat-wallpaper="dark"] .chat-msg:not(.minha) .chat-msg-texto{color:#e9edef!important}
#painel-chat[data-chat-density="compact"] .chat-conversa{min-height:58px;padding:6px 12px!important}
#painel-chat[data-chat-density="compact"] .chat-msg{padding:5px 8px 4px!important;margin:1px 0!important}
#painel-chat[data-chat-font="small"] .chat-msg-texto{font-size:.82rem!important}
#painel-chat[data-chat-font="normal"] .chat-msg-texto{font-size:.91rem!important}
#painel-chat[data-chat-font="large"] .chat-msg-texto{font-size:1.03rem!important}

@media(max-width:700px){
  .chat-config-grade{grid-template-columns:1fr}
  .chat-acoes-grupo{flex-wrap:wrap}
  .chat-acoes-grupo .espacador-flex{display:none}
}


/* =========================================================
   PORTAL P1 2.2.3 — CORREÇÃO DOS MODAIS DO CHAT
   ========================================================= */
#modalGerenciarGrupoChat,
#modalAparenciaChat{
  position:fixed!important;
  inset:0!important;
  z-index:10050!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  background:rgba(2,6,23,.68)!important;
}
#modalGerenciarGrupoChat.oculto,
#modalAparenciaChat.oculto{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#modalGerenciarGrupoChat:not(.oculto),
#modalAparenciaChat:not(.oculto){
  display:flex!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
#modalGerenciarGrupoChat .modal-caixa,
#modalAparenciaChat .modal-caixa{
  position:relative!important;
  width:min(760px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
  margin:0!important;
  background:var(--card,#fff)!important;
  border-radius:16px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.35)!important;
}
body.chat-modal-aberto{
  overflow:hidden!important;
}


/* =========================================================
   PORTAL P1 2.2.4 — CHAT E VERSÕES
   ========================================================= */

/* Chat: botão explícito de gestão do grupo */
#painel-chat .chat-botao-grupo{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(100,116,139,.22);
  border-radius:10px;
  background:#fff;
  color:#334155;
  font-weight:750;
  cursor:pointer;
  white-space:nowrap;
}
#painel-chat .chat-botao-grupo:hover{
  background:#f8fafc;
  border-color:var(--wa-green);
  color:var(--wa-green-dark);
}
#painel-chat .chat-botao-grupo.oculto{display:none!important}

/* Chat: zona de perigo visível e inequívoca */
.chat-zona-perigo{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:18px;
  padding:14px;
  border:1px solid rgba(220,38,38,.25);
  border-radius:13px;
  background:rgba(254,226,226,.55);
}
.chat-zona-perigo.oculto{display:none!important}
.chat-zona-perigo>div{display:flex;flex-direction:column;gap:4px}
.chat-zona-perigo strong{color:#991b1b}
.chat-zona-perigo small{color:#7f1d1d}

/* Chat: cartões e conversas mais modernos */
#painel-chat .chat-app{
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 18px 50px rgba(15,23,42,.14);
}
#painel-chat .chat-sidebar-topo{
  backdrop-filter:blur(12px);
}
#painel-chat .chat-conversa{
  transition:background .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
#painel-chat .chat-conversa:hover{
  transform:translateX(2px)!important;
}
#painel-chat .chat-topo{
  backdrop-filter:blur(14px);
}
#painel-chat .chat-msg{
  transition:transform .14s ease,box-shadow .14s ease;
}
#painel-chat .chat-msg:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(15,23,42,.12)!important;
}

/* Versões: semáforo horizontal moderno */
.versao-status-horizontal{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  padding:5px;
  border:1px solid rgba(148,163,184,.25);
  border-radius:14px;
  background:rgba(148,163,184,.08);
  min-width:330px;
}
.versao-status-opcao{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:7px 10px;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:#64748b;
  font-weight:800;
  font-size:.75rem;
  cursor:pointer;
  transition:all .18s ease;
}
.versao-status-opcao:hover{background:#fff;color:#334155}
.versao-status-luz{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#cbd5e1;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.7);
}
.versao-status-opcao.green .versao-status-luz{background:#22c55e}
.versao-status-opcao.yellow .versao-status-luz{background:#f59e0b}
.versao-status-opcao.red .versao-status-luz{background:#ef4444}
.versao-status-opcao.ativa{
  background:#fff;
  color:#0f172a;
  border-color:rgba(148,163,184,.22);
  box-shadow:0 4px 12px rgba(15,23,42,.10);
}
.versao-status-opcao.green.ativa{color:#087f5b}
.versao-status-opcao.yellow.ativa{color:#a16207}
.versao-status-opcao.red.ativa{color:#b42318}
.versao-status-opcao.ativa .versao-status-luz{
  transform:scale(1.12);
  box-shadow:0 0 0 4px rgba(148,163,184,.13),0 0 12px currentColor;
}

/* Versões: anotações */
.versao-anotacoes{
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:12px;
  background:rgba(248,250,252,.78);
}
.versao-anotacoes label{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:7px;
  color:#334155;
  font-size:.82rem;
  font-weight:850;
}
.versao-anotacoes textarea{
  width:100%;
  min-height:82px;
  resize:vertical;
  padding:10px 11px;
  border:1px solid #d8e0ea;
  border-radius:9px;
  background:#fff;
  color:#0f172a;
  font:inherit;
  line-height:1.45;
}
.versao-anotacoes textarea:focus{
  outline:0;
  border-color:#3b82f6;
  box-shadow:0 0 0 3px rgba(59,130,246,.12);
}
.versao-anotacoes-rodape{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-top:8px;
}
.versao-anotacoes-rodape small{color:#64748b}

@media(max-width:850px){
  #painel-chat .chat-botao-grupo span{display:none}
  #painel-chat .chat-botao-grupo{width:38px;padding:0;justify-content:center}
  .chat-zona-perigo{align-items:stretch;flex-direction:column}
  .versao-status-horizontal{min-width:0;width:100%}
  .versao-status-opcao span:last-child{font-size:.68rem}
  .versao-anotacoes-rodape{align-items:stretch;flex-direction:column}
}


/* PORTAL P1 2.2.5 — Chat e versões */
.chat-zona-perigo{
  display:grid!important;
  grid-template-columns:minmax(180px,1fr) minmax(180px,260px) auto;
  align-items:end!important;
}
.chat-confirmacao-senha{display:flex;flex-direction:column;gap:5px}
.chat-confirmacao-senha label{color:#7f1d1d;font-size:.76rem;font-weight:800}
.chat-confirmacao-senha input{
  width:100%;min-height:39px;padding:8px 10px;border:1px solid rgba(220,38,38,.3);
  border-radius:9px;background:#fff;color:#111827;font:inherit
}
.chat-confirmacao-senha input:focus{
  outline:0;border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.12)
}

/* Cards menores */
.versao-item{
  grid-template-columns:minmax(120px,170px) auto minmax(220px,1fr) auto!important;
  gap:10px!important;padding:10px 12px!important;min-height:0!important;align-items:start!important
}
.versao-identidade{gap:2px!important}
.versao-identidade strong{font-size:.92rem!important}
.versao-identidade small{font-size:.68rem!important}
.versao-detalhes{gap:3px!important}
.versao-descricao{
  margin:0!important;font-size:.78rem!important;line-height:1.3!important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
.versao-status-explicacao{display:none!important}
.versao-acoes-item{gap:5px!important;align-self:center!important}
.versao-acoes-item .botao{min-height:32px!important;padding:5px 8px!important;font-size:.72rem!important}

/* Semáforo pequeno e horizontal */
.versao-status-mini{
  display:flex;align-items:center;gap:4px;padding:3px 5px;border:1px solid rgba(148,163,184,.22);
  border-radius:999px;background:rgba(148,163,184,.08);width:max-content;max-width:100%
}
.versao-status-dot{
  display:grid;place-items:center;width:23px;height:23px;padding:0;border:1px solid transparent;
  border-radius:50%;background:transparent;cursor:pointer
}
.versao-status-dot span{width:10px;height:10px;border-radius:50%;background:#cbd5e1;transition:.15s}
.versao-status-dot.green span{background:#22c55e}
.versao-status-dot.yellow span{background:#f59e0b}
.versao-status-dot.red span{background:#ef4444}
.versao-status-dot:hover{background:#fff}
.versao-status-dot.ativa{
  background:#fff;border-color:rgba(100,116,139,.2);box-shadow:0 2px 7px rgba(15,23,42,.12)
}
.versao-status-dot.ativa span{transform:scale(1.12);box-shadow:0 0 0 3px rgba(148,163,184,.14)}

/* Anotações recolhíveis */
.versao-anotacoes-compacta{margin-top:5px;border-top:1px dashed rgba(148,163,184,.3);padding-top:5px}
.versao-anotacoes-compacta summary{
  display:flex;align-items:center;gap:6px;width:max-content;color:#475569;font-size:.73rem;
  font-weight:800;cursor:pointer;list-style:none
}
.versao-anotacoes-compacta summary::-webkit-details-marker{display:none}
.versao-tem-anotacao{color:#2563eb;font-size:1rem;line-height:.5}
.versao-anotacoes-conteudo{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end;margin-top:7px}
.versao-anotacoes-conteudo textarea{
  width:100%;min-height:54px;max-height:130px;resize:vertical;padding:7px 8px;
  border:1px solid #d8e0ea;border-radius:8px;background:#fff;color:#0f172a;font:inherit;font-size:.76rem
}

@media(max-width:950px){
  .versao-item{grid-template-columns:minmax(110px,150px) auto minmax(180px,1fr)!important}
  .versao-acoes-item{grid-column:1/-1;justify-content:flex-end}
}
@media(max-width:700px){
  .chat-zona-perigo{grid-template-columns:1fr!important;align-items:stretch!important}
  .versao-item{grid-template-columns:1fr auto!important}
  .versao-detalhes{grid-column:1/-1}
  .versao-acoes-item{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}
  .versao-anotacoes-conteudo{grid-template-columns:1fr}
}

/* Versão 2.2.6 — aplicação efetiva das permissões visuais */
.ui-indisponivel,
[hidden].ui-indisponivel,
[data-ui-disponivel="0"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Versão 2.2.7 — ocultação definitiva por permissão */
.ui-indisponivel,
[data-ui-disponivel="0"],
[aria-hidden="true"].ui-indisponivel{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

/* Portal P1 2.2.8 — Chat moderno */
#painel-chat .chat-msg.minha{
  align-self:flex-end!important;
  background:#d9fdd3!important;
  border-radius:16px 16px 4px 16px!important;
  border:1px solid rgba(0,128,105,.12)!important;
}
#painel-chat .chat-msg.outra{
  align-self:flex-start!important;
  background:#ffffff!important;
  border-radius:16px 16px 16px 4px!important;
  border:1px solid rgba(100,116,139,.16)!important;
}
#painel-chat .chat-msg.minha .chat-msg-remetente{display:none!important}
#painel-chat .chat-msg-menu{opacity:.65!important}
#painel-chat .chat-msg:hover .chat-msg-menu{opacity:1!important}
.chat-grupo-perfil{display:grid;grid-template-columns:76px 1fr;gap:14px;align-items:center;margin-bottom:14px}
.chat-grupo-foto-preview{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#e2e8f0;color:#64748b;overflow:hidden;font-size:1.6rem}
.chat-grupo-foto-preview img,.chat-avatar.grupo img{width:100%;height:100%;object-fit:cover}
.chat-grupo-perfil>div:last-child{display:flex;flex-direction:column;gap:5px}
.chat-grupo-perfil input[type=file]{font-size:.78rem}
.twemoji{width:1.25em;height:1.25em;vertical-align:-.22em}
@media(max-width:720px){
  #painel-chat .chat-app{height:calc(100dvh - 118px)!important;min-height:0!important}
  #painel-chat .chat-principal{grid-template-rows:64px minmax(0,1fr) auto auto auto!important}
  #painel-chat .chat-form{
    display:grid!important;
    grid-template-columns:38px 38px minmax(0,1fr) 38px 42px!important;
    gap:4px!important;
    align-items:end!important;
    padding:7px 8px max(7px,env(safe-area-inset-bottom))!important;
  }
  #painel-chat .chat-form textarea{
    width:100%!important;min-width:0!important;max-height:96px!important;
    writing-mode:horizontal-tb!important;white-space:pre-wrap!important;
  }
  #painel-chat .chat-acao,#painel-chat .chat-enviar{width:38px!important;height:38px!important}
  #painel-chat .chat-mensagens{padding:12px 8px!important}
  #painel-chat .chat-msg{max-width:90%!important}
}


/* =========================================================
   PORTAL P1 2.2.9 — VERSÕES, DOCUMENTOS P1 E I.A
   ========================================================= */

/* Lista de versões */
.lista-versoes-portal{
  display:grid!important;
  gap:10px!important;
  overflow-x:hidden!important;
}
.versao-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "topo acoes"
    "corpo corpo"!important;
  gap:9px 12px!important;
  width:100%!important;
  min-width:0!important;
  padding:12px!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.versao-item.atual{
  border:2px solid #2563eb!important;
  background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(255,255,255,.96))!important;
  box-shadow:0 7px 22px rgba(37,99,235,.15)!important;
}
.versao-topo-card{
  grid-area:topo;
  min-width:0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.versao-corpo-card{grid-area:corpo;min-width:0}
.versao-acoes-item{grid-area:acoes;display:flex!important;gap:5px!important;align-items:flex-start!important}
.versao-titulo-linha{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.versao-em-uso{
  display:inline-flex;align-items:center;gap:5px;
  padding:3px 8px;border-radius:999px;
  background:#2563eb;color:#fff;font-size:.64rem;font-weight:900;letter-spacing:.04em
}

/* Interruptor de status intuitivo */
.versao-status-switch{
  display:flex!important;
  gap:3px!important;
  align-items:center!important;
  padding:3px!important;
  border:1px solid rgba(100,116,139,.22)!important;
  border-radius:999px!important;
  background:#edf1f5!important;
  flex:none!important;
}
.versao-switch-opcao{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:30px!important;
  padding:4px 8px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#64748b!important;
  font-size:.67rem!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:.16s ease!important;
}
.versao-switch-luz{
  width:9px;height:9px;border-radius:50%;background:#cbd5e1;flex:none
}
.versao-switch-opcao.green .versao-switch-luz{background:#22c55e}
.versao-switch-opcao.yellow .versao-switch-luz{background:#f59e0b}
.versao-switch-opcao.red .versao-switch-luz{background:#ef4444}
.versao-switch-opcao.ativa{
  background:#fff!important;
  color:#0f172a!important;
  border-color:rgba(100,116,139,.18)!important;
  box-shadow:0 2px 7px rgba(15,23,42,.12)!important;
}
.versao-switch-opcao.green.ativa{color:#087f5b!important}
.versao-switch-opcao.yellow.ativa{color:#a16207!important}
.versao-switch-opcao.red.ativa{color:#b42318!important}
.versao-switch-opcao.ativa .versao-switch-luz{
  transform:scale(1.18);box-shadow:0 0 0 3px rgba(148,163,184,.15)
}

/* Anotações sempre dentro do card */
.versao-anotacoes-interna{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin-top:9px!important;
  padding:10px!important;
  border:1px solid rgba(148,163,184,.24)!important;
  border-radius:10px!important;
  background:rgba(248,250,252,.86)!important;
  overflow:hidden!important;
}
.versao-anotacoes-interna label{
  display:flex;align-items:center;gap:6px;
  margin-bottom:6px;color:#334155;font-size:.76rem;font-weight:850
}
.versao-anotacoes-interna textarea{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:64px!important;
  box-sizing:border-box!important;
  resize:vertical!important;
  padding:8px!important;
  border:1px solid #d8e0ea!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#0f172a!important;
  font:inherit!important;
  font-size:.77rem!important;
}
.versao-anotacoes-acoes{
  display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:7px
}
.versao-anotacoes-acoes small{color:#64748b;font-size:.68rem}

/* Modal de cadastro de prompt com margens seguras */
#modalPromptIA{
  padding:20px!important;
  box-sizing:border-box!important;
}
#modalPromptIA .ia-modal-caixa{
  width:min(850px,calc(100vw - 40px))!important;
  max-width:850px!important;
  margin:auto!important;
  padding:22px!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
}
#modalPromptIA .ia-form{
  width:100%!important;
  min-width:0!important;
  padding:0 4px!important;
  box-sizing:border-box!important;
}
#modalPromptIA .ia-form label,
#modalPromptIA .ia-form input,
#modalPromptIA .ia-form textarea{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:760px){
  .versao-item{
    grid-template-columns:1fr!important;
    grid-template-areas:"topo" "corpo" "acoes"!important;
  }
  .versao-topo-card{flex-direction:column!important}
  .versao-status-switch{width:100%!important;justify-content:space-between!important}
  .versao-switch-opcao{flex:1!important;justify-content:center!important}
  .versao-acoes-item{flex-wrap:wrap!important}
  .versao-anotacoes-acoes{align-items:stretch;flex-direction:column}
  #modalPromptIA{padding:10px!important}
  #modalPromptIA .ia-modal-caixa{
    width:calc(100vw - 20px)!important;
    padding:16px!important;
  }
}


/* Portal P1 2.3.0 — ajustes pontuais */
.versao-anotacoes-bloco{
  display:block!important;width:100%!important;max-width:100%!important;
  margin-top:9px!important;box-sizing:border-box!important
}
.versao-botao-anotacoes{
  display:flex!important;align-items:center!important;gap:7px!important;
  width:max-content!important;min-height:32px!important;padding:5px 10px!important;
  border:1px solid rgba(100,116,139,.25)!important;border-radius:9px!important;
  background:#fff!important;color:#334155!important;font-size:.74rem!important;
  font-weight:850!important;cursor:pointer!important
}
.versao-botao-anotacoes:hover{border-color:#2563eb!important;color:#1d4ed8!important;background:#eff6ff!important}
.versao-anotacao-indicador{width:7px!important;height:7px!important;border-radius:50%!important;background:#2563eb!important}
.versao-anotacoes-seta{transition:transform .16s ease!important}
.versao-botao-anotacoes[aria-expanded="true"] .versao-anotacoes-seta{transform:rotate(180deg)!important}
.versao-anotacoes-interna{
  display:block!important;position:static!important;float:none!important;clear:both!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:7px 0 0!important;box-sizing:border-box!important
}
.versao-anotacoes-interna.oculto{display:none!important}
.versao-anotacoes-interna textarea{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}

/* Cadastro de prompt com margens internas */
#modalPromptIA{
  display:flex;align-items:center;justify-content:center;
  padding:24px!important;box-sizing:border-box!important;overflow:auto!important
}
#modalPromptIA.oculto{display:none!important}
#modalPromptIA > .ia-modal-caixa{
  width:min(820px,calc(100vw - 48px))!important;max-width:820px!important;
  max-height:calc(100vh - 48px)!important;margin:auto!important;
  padding:24px 28px!important;box-sizing:border-box!important;
  overflow-x:hidden!important;overflow-y:auto!important
}
#modalPromptIA .modal-topo{
  width:100%!important;min-width:0!important;box-sizing:border-box!important;
  padding:0!important;margin:0 0 16px!important
}
#modalPromptIA .ia-form{
  display:flex!important;flex-direction:column!important;gap:14px!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;padding:0 6px!important;box-sizing:border-box!important
}
#modalPromptIA .ia-form label{
  display:flex!important;flex-direction:column!important;gap:6px!important;
  width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important
}
#modalPromptIA .ia-form input,#modalPromptIA .ia-form textarea{
  display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  box-sizing:border-box!important;margin:0!important
}
#modalPromptIA .ia-form .acoes{
  display:flex!important;justify-content:flex-end!important;gap:9px!important;
  flex-wrap:wrap!important;width:100%!important;box-sizing:border-box!important
}
@media(max-width:600px){
  #modalPromptIA{padding:10px!important}
  #modalPromptIA > .ia-modal-caixa{
    width:calc(100vw - 20px)!important;max-height:calc(100vh - 20px)!important;
    padding:18px 14px!important
  }
  #modalPromptIA .ia-form{padding:0 4px!important}
}


/* Portal P1 2.3.1 — correções pontuais */

/* Botão Anotações sempre visível na barra de ações */
.versao-anotacoes-acao{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  gap:6px!important;
  white-space:nowrap!important;
}
.versao-anotacoes-bloco{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.versao-anotacoes-interna{
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.versao-anotacoes-interna.oculto{display:none!important}

/* Prompt já cadastrado: margens esquerda e direita */
#modalUsarPromptIA{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px!important;
  box-sizing:border-box!important;
  overflow:auto!important;
}
#modalUsarPromptIA.oculto{
  display:none!important;
}
#modalUsarPromptIA > .ia-modal-caixa,
#modalUsarPromptIA > .ia-usar-caixa{
  width:min(940px,calc(100vw - 48px))!important;
  max-width:940px!important;
  max-height:calc(100vh - 48px)!important;
  margin:auto!important;
  padding:24px 28px!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
#modalUsarPromptIA .modal-topo{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0 0 16px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
#modalUsarPromptIA .ia-usar-grid{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0 6px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
#modalUsarPromptIA .ia-usar-grid label{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
#modalUsarPromptIA input,
#modalUsarPromptIA textarea{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  box-sizing:border-box!important;
}
#modalUsarPromptIA .acoes{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  padding:0 6px!important;
  margin-top:14px!important;
}

@media(max-width:600px){
  #modalUsarPromptIA{padding:10px!important}
  #modalUsarPromptIA > .ia-modal-caixa,
  #modalUsarPromptIA > .ia-usar-caixa{
    width:calc(100vw - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    padding:18px 14px!important;
  }
  #modalUsarPromptIA .ia-usar-grid,
  #modalUsarPromptIA .acoes{
    padding-left:4px!important;
    padding-right:4px!important;
  }
}


/* =========================================================
   HOMOLOGAÇÃO 2.3.2 — ajustes solicitados
   ========================================================= */

/* Resumo semanal após login */
.resumo-semanal-login-caixa{
  width:min(900px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
  padding:22px!important;
}
.resumo-semanal-login-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:14px;
}
.resumo-semanal-coluna{
  min-width:0;
  padding:14px;
  border:1px solid var(--borda,#dbe3ef);
  border-radius:14px;
  background:var(--card,#fff);
}
.resumo-semanal-coluna h3{margin:0 0 10px;display:flex;align-items:center;gap:7px}
.resumo-semanal-item{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:9px 0;
  border-bottom:1px solid rgba(148,163,184,.18);
}
.resumo-semanal-item:last-child{border-bottom:0}
.resumo-semanal-item span,.resumo-semanal-vazio{font-size:.78rem;color:var(--texto-suave,#64748b)}
.resumo-semanal-acoes{justify-content:flex-end;margin-top:14px}

/* Anotações: X apenas nos blocos arquivados */
.abas-anotacoes{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.aba-anotacao-arquivada{
  display:inline-flex;
  align-items:center;
  gap:2px;
  padding:2px;
  border-radius:9px;
  background:rgba(148,163,184,.08);
}
.aba-anotacao-arquivada .aba-anotacao{border-radius:7px!important}
.aba-anotacao-excluir{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#94a3b8;
  cursor:pointer;
}
.aba-anotacao-excluir:hover{background:#fee2e2;color:#b91c1c}

/* Administrador > Versões: layout estável e sem estouro */
#listaVersoesPortal,.lista-versoes-portal{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
#listaVersoesPortal .versao-item,.lista-versoes-portal .versao-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:12px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
#listaVersoesPortal .versao-topo-card{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-width:0!important;
  flex-wrap:wrap!important;
}
#listaVersoesPortal .versao-corpo-card,
#listaVersoesPortal .versao-anotacoes-bloco,
#listaVersoesPortal .versao-anotacoes-interna{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
#listaVersoesPortal textarea{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
#listaVersoesPortal .versao-acoes-item{
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
}
#listaVersoesPortal .versao-status-switch{
  max-width:100%!important;
  flex-wrap:nowrap!important;
}

/* Chat moderno + campo de digitação visível */
#painel-chat .chat-app{
  border:1px solid rgba(148,163,184,.22)!important;
  border-radius:16px!important;
  overflow:hidden!important;
  box-shadow:0 16px 42px rgba(15,23,42,.13)!important;
}
#painel-chat .chat-sidebar{background:#fff!important}
#painel-chat .chat-conversa{
  border-radius:0!important;
  transition:background .15s ease,transform .15s ease!important;
}
#painel-chat .chat-conversa:hover{background:#f6f8fa!important;transform:translateX(2px)!important}
#painel-chat .chat-conversa.ativo{background:#eaf2ff!important;box-shadow:inset 4px 0 #2563eb!important}
#painel-chat .chat-principal{background:#eef2f6!important}
#painel-chat .chat-msg.minha{
  background:#dbeafe!important;
  border-radius:16px 16px 4px 16px!important;
  border:1px solid rgba(37,99,235,.14)!important;
}
#painel-chat .chat-msg.outra{
  background:#fff!important;
  border-radius:16px 16px 16px 4px!important;
  border:1px solid rgba(100,116,139,.16)!important;
}
#painel-chat .chat-form{
  background:#f8fafc!important;
  border-top:1px solid #dbe3ed!important;
  padding:10px 12px!important;
}
#painel-chat #chatTexto{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:10px 13px!important;
  border:1px solid #cbd5e1!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#0f172a!important;
  opacity:1!important;
  box-shadow:0 1px 2px rgba(15,23,42,.05)!important;
  caret-color:#2563eb!important;
}
#painel-chat #chatTexto::placeholder{color:#7b8794!important;opacity:1!important}
#painel-chat #chatTexto:focus{
  outline:0!important;
  border-color:#2563eb!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.12)!important;
}
.chat-erro-carregamento{
  margin:10px;
  padding:14px;
  border:1px solid #fecaca;
  border-radius:12px;
  background:#fff7f7;
  color:#7f1d1d;
  display:flex;
  flex-direction:column;
  gap:5px;
}
.chat-erro-carregamento button{
  width:max-content;
  margin-top:5px;
  border:0;
  border-radius:8px;
  padding:7px 10px;
  background:#2563eb;
  color:#fff;
  cursor:pointer;
}

@media(max-width:760px){
  .resumo-semanal-login-grid{grid-template-columns:1fr}
  #painel-chat .chat-app{
    height:calc(100dvh - 120px)!important;
    min-height:0!important;
    border-radius:0!important;
  }
  #painel-chat .chat-form{
    display:grid!important;
    grid-template-columns:36px 36px minmax(0,1fr) 36px 42px!important;
    gap:4px!important;
    align-items:end!important;
    padding:7px 8px max(7px,env(safe-area-inset-bottom))!important;
  }
  #painel-chat #chatTexto{
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    white-space:pre-wrap!important;
    overflow-wrap:anywhere!important;
    max-height:100px!important;
  }
}


/* Portal P1 2.3.3 — ajustes pontuais */
.resumo-atrasada{color:#b91c1c;font-weight:900}

/* Chat: campo de texto utilizável em desktop e celular */
#painel-chat .chat-form{
  display:grid!important;
  grid-template-columns:40px 40px minmax(220px,1fr) 40px 44px!important;
  align-items:end!important;
  gap:6px!important;
}
#painel-chat #chatTexto{
  display:block!important;
  width:100%!important;
  min-width:220px!important;
  min-height:44px!important;
  height:44px;
  max-height:130px!important;
  padding:10px 12px!important;
  box-sizing:border-box!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
  resize:none!important;
}
#modalCriarGrupoChat{
  position:fixed!important;
  inset:0!important;
  z-index:11000!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  background:rgba(2,6,23,.66)!important;
}
#modalCriarGrupoChat.oculto{display:none!important}
#modalCriarGrupoChat:not(.oculto){display:flex!important}
#modalCriarGrupoChat .modal-caixa{
  width:min(720px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
  margin:auto!important;
}
@media(max-width:720px){
  #painel-chat .chat-form{
    grid-template-columns:34px 34px minmax(0,1fr) 34px 40px!important;
    gap:3px!important;
    padding:7px!important;
  }
  #painel-chat #chatTexto{
    min-width:0!important;
    width:100%!important;
    min-height:42px!important;
    height:42px;
    max-height:100px!important;
    padding:9px 10px!important;
  }
}

/* Gerador de Tabelas */
.entrada-titulo-tabela-pm{margin-bottom:12px}
.titulo-tabela-pm th{
  text-align:center!important;
  font-weight:900!important;
  font-size:1rem!important;
  padding:10px 8px!important;
  background:#f3f4f6!important;
  color:#111827!important;
}


/* =========================================================
   PORTAL P1 2.3.4 — Chat mensageiro + permissões + título rico
   ========================================================= */

/* Chat com aparência de mensageiro */
#painel-chat .chat-app{
  height:calc(100vh - 180px)!important;
  min-height:610px!important;
  grid-template-columns:350px minmax(0,1fr)!important;
  background:#fff!important;
  border:1px solid #dfe5ec!important;
  border-radius:18px!important;
  box-shadow:0 18px 55px rgba(15,23,42,.15)!important;
}
#painel-chat .chat-sidebar{
  background:#fff!important;
  border-right:1px solid #e5eaf0!important;
}
#painel-chat .chat-sidebar-topo{
  min-height:66px!important;
  background:#f7f9fb!important;
  color:#17212b!important;
  padding:14px 16px!important;
}
#painel-chat .chat-search{
  margin:10px 12px!important;
  background:#f0f3f6!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
}
#painel-chat .chat-lista-titulo{
  padding:9px 15px 6px!important;
  color:#708090!important;
  font-size:.68rem!important;
  letter-spacing:.06em!important;
}
#painel-chat .chat-conversa{
  min-height:66px!important;
  padding:9px 13px!important;
  border-bottom:1px solid #f0f2f5!important;
  background:#fff!important;
}
#painel-chat .chat-conversa:hover{background:#f6f8fa!important}
#painel-chat .chat-conversa.ativo{
  background:#eaf3ff!important;
  box-shadow:inset 4px 0 #2787e6!important;
}
#painel-chat .chat-avatar{
  width:46px!important;height:46px!important;flex-basis:46px!important;
}
#painel-chat .chat-topo{
  height:66px!important;min-height:66px!important;
  background:#f7f9fb!important;border-bottom:1px solid #e1e7ee!important;
}
#painel-chat .chat-principal{
  background:#eef3f7!important;
}
#painel-chat .chat-mensagens{
  padding:20px 6%!important;
}
#painel-chat .chat-msg{
  max-width:min(74%,720px)!important;
  padding:8px 10px 6px!important;
  box-shadow:0 1px 2px rgba(15,23,42,.10)!important;
}
#painel-chat .chat-msg.minha{
  background:#d9ecff!important;
  border-radius:16px 16px 5px 16px!important;
  border:1px solid #c5def7!important;
}
#painel-chat .chat-msg.outra{
  background:#fff!important;
  border-radius:16px 16px 16px 5px!important;
  border:1px solid #e1e7ed!important;
}
#painel-chat .chat-form{
  display:grid!important;
  grid-template-columns:40px 40px 40px minmax(320px,1fr) 40px 46px!important;
  gap:5px!important;
  align-items:end!important;
  padding:10px 12px!important;
  background:#f7f9fb!important;
  border-top:1px solid #dfe5ec!important;
}
#painel-chat #chatTexto{
  display:block!important;
  width:100%!important;
  min-width:320px!important;
  min-height:50px!important;
  height:50px!important;
  max-height:150px!important;
  padding:13px 15px!important;
  border:1px solid #cfd8e3!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#17212b!important;
  font-size:.94rem!important;
  line-height:1.4!important;
  opacity:1!important;
  box-sizing:border-box!important;
  writing-mode:horizontal-tb!important;
}
#painel-chat #chatTexto:focus{
  border-color:#2787e6!important;
  box-shadow:0 0 0 3px rgba(39,135,230,.12)!important;
}
#painel-chat .chat-acao,
#painel-chat .chat-enviar{
  width:40px!important;height:40px!important;
  align-self:center!important;
}
#painel-chat .chat-enviar{
  width:44px!important;height:44px!important;
  background:#2787e6!important;
}
#painel-chat .chat-emoji-btn{
  font-size:1.25rem!important;
}
#painel-chat .chat-emoji-painel{
  position:absolute!important;
  left:12px!important;
  bottom:74px!important;
  width:300px!important;
  display:grid!important;
  grid-template-columns:repeat(8,1fr)!important;
  gap:4px!important;
  padding:10px!important;
  z-index:30!important;
}
#painel-chat .chat-emoji-painel.oculto{display:none!important}
#painel-chat .chat-emoji-painel button{
  border:0!important;background:transparent!important;
  font-size:1.25rem!important;padding:5px!important;cursor:pointer!important;
}
#painel-chat .chat-principal{position:relative!important}

@media(max-width:850px){
  #painel-chat .chat-app{
    height:calc(100dvh - 115px)!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
    border-radius:0!important;
  }
  #painel-chat .chat-form{
    grid-template-columns:34px 34px 34px minmax(0,1fr) 34px 40px!important;
    gap:2px!important;
    padding:7px!important;
  }
  #painel-chat #chatTexto{
    min-width:0!important;
    width:100%!important;
    min-height:46px!important;
    height:46px!important;
    padding:11px 10px!important;
    font-size:16px!important;
  }
  #painel-chat .chat-acao{width:34px!important;height:38px!important}
  #painel-chat .chat-enviar{width:40px!important;height:40px!important}
  #painel-chat .chat-msg{max-width:90%!important}
}

/* Editor rico do Título da Tabela */
.editor-titulo-tabela-pm{
  width:100%;
  margin:6px 0 14px;
  border:1px solid #cfd8e3;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.toolbar-titulo-tabela-pm{
  display:flex;
  align-items:center;
  gap:3px;
  padding:6px 7px;
  border-bottom:1px solid #e2e8f0;
  background:#f7f9fb;
  flex-wrap:wrap;
}
.toolbar-titulo-tabela-pm button{
  display:grid;
  place-items:center;
  width:32px;
  height:30px;
  border:1px solid transparent;
  border-radius:7px;
  background:transparent;
  color:#334155;
  cursor:pointer;
}
.toolbar-titulo-tabela-pm button:hover{
  background:#e8eef6;
  border-color:#d1d9e4;
}
.toolbar-separador-pm{
  width:1px;height:22px;background:#d6dee8;margin:0 3px;
}
.titulo-tabela-editor{
  width:100%;
  min-height:86px;
  max-height:190px;
  overflow:auto;
  padding:12px 14px;
  outline:none;
  box-sizing:border-box;
  line-height:1.4;
  white-space:pre-wrap;
}
.titulo-tabela-editor:empty::before{
  content:attr(data-placeholder);
  color:#94a3b8;
  pointer-events:none;
}
.titulo-tabela-editor:focus{
  box-shadow:inset 0 0 0 2px rgba(37,99,235,.14);
}
.titulo-tabela-conteudo{
  white-space:normal;
  line-height:1.35;
}


/* =========================================================
   PORTAL P1 2.3.5 — correção definitiva Chat + Título Tabela
   ========================================================= */

/* Chat: aparência de aplicativo mensageiro */
#painel-chat .chat-app{
  display:grid!important;
  grid-template-columns:360px minmax(0,1fr)!important;
  height:calc(100vh - 165px)!important;
  min-height:640px!important;
  max-height:none!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#fff!important;
}
#painel-chat .chat-sidebar{
  min-width:0!important;
  overflow-y:auto!important;
  background:#fff!important;
  border-right:1px solid #dfe5ec!important;
}
#painel-chat .chat-principal{
  min-width:0!important;
  display:grid!important;
  grid-template-rows:66px minmax(0,1fr) auto auto auto!important;
  background:#eef3f7!important;
}
#painel-chat .chat-mensagens{
  min-height:0!important;
  overflow-y:auto!important;
  padding:22px 5%!important;
}

/* Caixa de digitação: grande e claramente visível */
#painel-chat .chat-form{
  display:grid!important;
  grid-template-columns:42px 42px 42px minmax(380px,1fr) 42px 48px!important;
  align-items:center!important;
  gap:6px!important;
  min-height:74px!important;
  padding:10px 12px!important;
  background:#f7f9fb!important;
  border-top:1px solid #d8e0e8!important;
}
#painel-chat #chatTexto{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  min-width:380px!important;
  min-height:54px!important;
  height:54px!important;
  max-height:160px!important;
  padding:14px 16px!important;
  border:1px solid #bdc9d6!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#17212b!important;
  font-size:15px!important;
  line-height:1.45!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
  box-sizing:border-box!important;
  resize:none!important;
}
#painel-chat #chatTexto::placeholder{
  color:#7b8794!important;
  opacity:1!important;
}
#painel-chat #chatTexto:focus{
  outline:none!important;
  border-color:#2787e6!important;
  box-shadow:0 0 0 3px rgba(39,135,230,.13)!important;
}
#painel-chat .chat-enviar{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  border-radius:50%!important;
  background:#2787e6!important;
  color:#fff!important;
  cursor:pointer!important;
  opacity:1!important;
}

/* Criar Grupo: modal sempre funcional e acima da interface */
#modalCriarGrupoChat{
  position:fixed!important;
  inset:0!important;
  z-index:20000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  background:rgba(15,23,42,.64)!important;
}
#modalCriarGrupoChat.oculto{
  display:none!important;
}
#modalCriarGrupoChat .modal-caixa{
  width:min(760px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(15,23,42,.30)!important;
}

/* Título da tabela: força a área a ficar visível e aumenta a altura do card */
#painel-gerador-tabelas .ferramenta-inclusao-pm{
  height:auto!important;
  min-height:620px!important;
  max-height:none!important;
  overflow:visible!important;
}
#painel-gerador-tabelas .editor-titulo-tabela-pm{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  margin:8px 0 18px!important;
  border:1px solid #c9d4df!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-sizing:border-box!important;
  flex:none!important;
}
#painel-gerador-tabelas .toolbar-titulo-tabela-pm{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  gap:4px!important;
  min-height:44px!important;
  padding:6px 8px!important;
  background:#f5f7fa!important;
  border-bottom:1px solid #dfe5ec!important;
  flex-wrap:wrap!important;
}
#painel-gerador-tabelas .titulo-tabela-editor{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  min-width:0!important;
  min-height:120px!important;
  height:auto!important;
  max-height:240px!important;
  overflow:auto!important;
  padding:14px 16px!important;
  background:#fff!important;
  color:#111827!important;
  line-height:1.5!important;
  font-size:15px!important;
  white-space:pre-wrap!important;
  box-sizing:border-box!important;
  outline:none!important;
  flex:none!important;
}
#painel-gerador-tabelas .titulo-tabela-editor:empty::before{
  content:attr(data-placeholder)!important;
  color:#94a3b8!important;
}
#painel-gerador-tabelas .titulo-tabela-editor:focus{
  box-shadow:inset 0 0 0 2px rgba(37,99,235,.16)!important;
}

@media(max-width:900px){
  #painel-chat .chat-app{
    height:calc(100dvh - 115px)!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
    border-radius:0!important;
  }
  #painel-chat .chat-form{
    grid-template-columns:34px 34px 34px minmax(0,1fr) 34px 42px!important;
    min-height:64px!important;
    gap:2px!important;
    padding:7px!important;
  }
  #painel-chat #chatTexto{
    min-width:0!important;
    width:100%!important;
    min-height:48px!important;
    height:48px!important;
    max-height:120px!important;
    padding:12px 10px!important;
    font-size:16px!important;
  }
  #painel-chat .chat-enviar{
    width:42px!important;
    height:42px!important;
  }
  #painel-gerador-tabelas .ferramenta-inclusao-pm{
    min-height:700px!important;
  }
}


/* =========================================================
   PORTAL P1 2.3.6 — ajustes pontuais solicitados
   ========================================================= */

/* Chat: cada controle ocupa uma coluna fixa; microfone não sobrepõe o texto */
#painel-chat .chat-form{
  grid-template-columns:40px 40px 40px minmax(320px,1fr) 40px 48px!important;
}
#painel-chat #btnEmojiChat{grid-column:1!important;grid-row:1!important}
#painel-chat #btnAnexoChat{grid-column:2!important;grid-row:1!important}
#painel-chat #btnCameraChat{grid-column:3!important;grid-row:1!important}
#painel-chat #chatTexto{grid-column:4!important;grid-row:1!important}
#painel-chat #btnAudioChat{grid-column:5!important;grid-row:1!important}
#painel-chat #btnEnviarChat{grid-column:6!important;grid-row:1!important}
#painel-chat #btnAudioChat{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
  justify-self:center!important;
  align-self:center!important;
}
#painel-chat #chatTexto{
  width:100%!important;
  min-width:0!important;
}
@media(max-width:900px){
  #painel-chat .chat-form{
    grid-template-columns:34px 34px 34px minmax(0,1fr) 34px 42px!important;
  }
}


/* Título da tabela: replicar formatação do editor na tabela */
#resultadoTabelaPM .titulo-tabela-pm th{
  padding:12px 10px!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  vertical-align:middle!important;
}
#resultadoTabelaPM .titulo-tabela-conteudo{
  display:block!important;
  width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.45!important;
}
#resultadoTabelaPM .titulo-tabela-conteudo div,
#resultadoTabelaPM .titulo-tabela-conteudo p{
  display:block!important;
  width:100%!important;
  min-height:1.2em!important;
  margin:0!important;
  white-space:normal!important;
}
#resultadoTabelaPM .titulo-tabela-conteudo b,
#resultadoTabelaPM .titulo-tabela-conteudo strong{font-weight:800!important}
#resultadoTabelaPM .titulo-tabela-conteudo i,
#resultadoTabelaPM .titulo-tabela-conteudo em{font-style:italic!important}
#resultadoTabelaPM .titulo-tabela-conteudo u{text-decoration:underline!important}

/* Mais cores de marca-texto */
.titulo-cores-marca{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:3px 5px!important;
  border:1px solid #dbe2ea!important;
  border-radius:8px!important;
  background:#fff!important;
}
.toolbar-titulo-tabela-pm .titulo-cor-marca{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  padding:0!important;
  border:1px solid rgba(15,23,42,.18)!important;
  border-radius:50%!important;
}
.titulo-cor-marca.amarelo{background:#fff59d!important}
.titulo-cor-marca.verde{background:#b9f6ca!important}
.titulo-cor-marca.azul{background:#bbdefb!important}
.titulo-cor-marca.rosa{background:#f8bbd0!important}
.titulo-cor-marca.laranja{background:#ffe0b2!important}
.titulo-cor-marca.lilas{background:#e1bee7!important}
.toolbar-titulo-tabela-pm .titulo-cor-marca:hover{
  transform:scale(1.12)!important;
  box-shadow:0 0 0 2px rgba(37,99,235,.14)!important;
}


/* I.A — cards coloridos sem ocultar informações */
#painel-ia .ia-grid{gap:16px!important}
#painel-ia .ia-prompt-card{
  min-height:82px!important;
  padding:12px!important;
  border-radius:16px!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:0 7px 20px rgba(15,23,42,.08)!important;
  overflow:visible!important;
  transition:transform .16s ease,box-shadow .16s ease!important;
}
#painel-ia .ia-prompt-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 11px 28px rgba(15,23,42,.12)!important;
}
#painel-ia .ia-prompt-abrir{min-width:0!important;overflow:visible!important}
#painel-ia .ia-prompt-textos{display:block!important;min-width:0!important;flex:1!important}
#painel-ia .ia-prompt-textos strong{
  display:block!important;
  color:#152033!important;
  font-size:.95rem!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:break-word!important;
}
#painel-ia .ia-prompt-textos small{
  display:block!important;
  margin-top:5px!important;
  color:#526176!important;
  white-space:normal!important;
  overflow:visible!important;
}
#painel-ia .ia-prompt-acoes{flex:none!important;align-items:center!important}

#painel-ia .ia-card-azul{background:linear-gradient(135deg,#eef6ff,#fff)!important;border-left:5px solid #2563eb!important}
#painel-ia .ia-card-verde{background:linear-gradient(135deg,#eefbf3,#fff)!important;border-left:5px solid #16a34a!important}
#painel-ia .ia-card-laranja{background:linear-gradient(135deg,#fff6e8,#fff)!important;border-left:5px solid #ea7a13!important}
#painel-ia .ia-card-roxo{background:linear-gradient(135deg,#f5efff,#fff)!important;border-left:5px solid #7c3aed!important}
#painel-ia .ia-card-turquesa{background:linear-gradient(135deg,#eafbf9,#fff)!important;border-left:5px solid #0f9f92!important}
#painel-ia .ia-card-rosa{background:linear-gradient(135deg,#fff0f5,#fff)!important;border-left:5px solid #db2777!important}

#painel-ia .ia-card-azul .ia-prompt-icone{background:linear-gradient(135deg,#1d4ed8,#60a5fa)!important}
#painel-ia .ia-card-verde .ia-prompt-icone{background:linear-gradient(135deg,#15803d,#4ade80)!important}
#painel-ia .ia-card-laranja .ia-prompt-icone{background:linear-gradient(135deg,#c2410c,#fb923c)!important}
#painel-ia .ia-card-roxo .ia-prompt-icone{background:linear-gradient(135deg,#6d28d9,#a78bfa)!important}
#painel-ia .ia-card-turquesa .ia-prompt-icone{background:linear-gradient(135deg,#0f766e,#2dd4bf)!important}
#painel-ia .ia-card-rosa .ia-prompt-icone{background:linear-gradient(135deg,#be185d,#f472b6)!important}

/* V2.3.7 — foto no cabeçalho da conversa */
#painel-chat .chat-avatar-topo{
  overflow:hidden!important;
  flex:none!important;
}
#painel-chat .chat-avatar-topo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:50%!important;
}

/* V2.3.7 — paletas recolhíveis do Título da Tabela */
.titulo-paleta-wrap{position:relative!important;display:inline-flex!important}
.toolbar-titulo-tabela-pm .titulo-paleta-toggle{
  display:grid!important;
  place-items:center!important;
  width:32px!important;height:30px!important;
}
.titulo-paleta-popup{
  position:absolute!important;
  top:36px!important;
  left:0!important;
  z-index:30!important;
  display:grid!important;
  grid-template-columns:repeat(3,24px)!important;
  gap:5px!important;
  padding:7px!important;
  border:1px solid #d5dee8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(15,23,42,.16)!important;
}
.titulo-paleta-popup.oculto{display:none!important}
.toolbar-titulo-tabela-pm .titulo-cor-marca,
.toolbar-titulo-tabela-pm .titulo-cor-texto{
  width:22px!important;height:22px!important;min-width:22px!important;
  padding:0!important;border:1px solid rgba(15,23,42,.2)!important;border-radius:50%!important
}
.titulo-cor-texto.preto{background:#111827!important}
.titulo-cor-texto.azul{background:#1d4ed8!important}
.titulo-cor-texto.verde{background:#15803d!important}
.titulo-cor-texto.vermelho{background:#b91c1c!important}
.titulo-cor-texto.roxo{background:#7e22ce!important}
.titulo-cor-texto.laranja{background:#c2410c!important}

/* V2.3.7 — conclusão individual em missões com múltiplos responsáveis */
.missao-responsavel-click{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  font:inherit!important;
  line-height:inherit!important;
  cursor:pointer!important;
}
.missao-responsavel-click.feito{
  padding:1px 4px!important;
  border-radius:5px!important;
  background:rgba(34,197,94,.14)!important;
  color:#15803d!important;
  font-weight:800!important;
}
.missao-responsavel-click.feito i{
  color:#16a34a!important;
  font-size:.9em!important;
}


/* =========================================================
   PORTAL P1 2.4.0 — MÓDULO OPERAÇÕES
   ========================================================= */
.operacoes-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:640px}
.operacoes-sidebar,.operacoes-conteudo{border:1px solid var(--borda);border-radius:16px;background:var(--card);overflow:hidden}
.operacoes-sidebar{display:flex;flex-direction:column}
.operacoes-filtros{padding:12px;border-bottom:1px solid var(--borda);display:grid;gap:8px;background:color-mix(in srgb,var(--hover) 55%,var(--card))}
.operacoes-busca{display:flex;align-items:center;gap:8px;border:1px solid var(--borda);border-radius:10px;background:var(--card);padding:0 10px}
.operacoes-busca input{width:100%;border:0;outline:0;background:transparent;color:var(--texto);padding:9px 0}
.operacoes-filtros select{width:100%;border:1px solid var(--borda);border-radius:10px;padding:9px;background:var(--card);color:var(--texto)}
.operacoes-lista{padding:8px;overflow:auto;max-height:690px}
.operacao-item{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:0;border-radius:12px;padding:10px;background:transparent;color:var(--texto);cursor:pointer}
.operacao-item:hover{background:var(--hover)}
.operacao-item.ativo{background:color-mix(in srgb,var(--primaria) 12%,var(--card));box-shadow:inset 4px 0 var(--primaria)}
.operacao-item-icone{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#e9f3ff;color:#1d64a8;flex:none}
.operacao-item-textos{display:flex;flex-direction:column;min-width:0}
.operacao-item-textos strong{font-size:13px;white-space:normal}
.operacao-item-textos small{font-size:10px;color:var(--texto-suave);margin-top:3px}
.operacoes-conteudo{padding:16px;overflow:auto}
.operacoes-vazio{min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--texto-suave)}
.operacoes-vazio i{font-size:42px;color:#8aa9c4;margin-bottom:10px}
.operacao-detalhe-topo{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid var(--borda);padding-bottom:13px}
.operacao-titulo-linha{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.operacao-titulo-linha h3{margin:0;font-size:22px}
#operacaoAnoAtual{border-radius:999px;background:#e9f3ff;color:#1e5f97;padding:4px 9px;font-size:11px;font-weight:900}
#operacaoDescricaoAtual{margin:5px 0 0;color:var(--texto-suave);font-size:12px}
.operacao-resumo{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:8px;margin:13px 0}
.operacao-resumo article{border:1px solid var(--borda);border-radius:12px;padding:10px;display:flex;align-items:center;gap:9px;background:var(--card)}
.operacao-resumo article>i{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--hover);color:var(--primaria)}
.operacao-resumo span{display:block;color:var(--texto-suave);font-size:9px}.operacao-resumo strong{font-size:18px}
.operacao-dia{margin-top:14px}.operacao-dia-titulo{display:flex;justify-content:space-between;align-items:center;padding:7px 2px;font-weight:900;color:var(--texto)}
.operacao-dia-titulo small{color:var(--texto-suave);font-weight:600}
.operacao-dia-eventos{display:grid;gap:8px}
.operacao-evento-card{border:1px solid var(--borda);border-radius:13px;padding:11px;background:var(--card)}
.operacao-evento-topo{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.operacao-evento-topo h4{margin:0;font-size:14px}.operacao-evento-topo p{margin:4px 0 0;color:var(--texto-suave);font-size:10px}
.operacao-evento-status{border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;white-space:nowrap}
.operacao-evento-status.pendente{background:#fff3d6;color:#9a5a00}.operacao-evento-status.completo{background:#dcfce7;color:#166534}
.operacao-evento-metricas{display:flex;gap:14px;flex-wrap:wrap;margin:9px 0;color:var(--texto-suave);font-size:10px}.operacao-evento-metricas strong{color:var(--texto)}
.operacao-evento-acoes{display:flex;gap:6px;justify-content:flex-end}
.operacoes-eventos-vazio{padding:45px;text-align:center;color:var(--texto-suave);border:1px dashed var(--borda);border-radius:13px;margin-top:14px}
.operacoes-modal{position:fixed;inset:0;z-index:30000;display:flex;align-items:center;justify-content:center;background:rgba(2,6,23,.68);padding:18px}
.operacoes-modal-caixa{width:min(820px,calc(100vw - 30px));max-height:92vh;overflow:auto}
.operacoes-form{padding:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .span-2{grid-column:1/-1}
.operacoes-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:var(--texto)}
.operacoes-form input,.operacoes-form textarea,.operacoes-form select{width:100%;border:1px solid var(--borda);border-radius:9px;padding:9px;background:var(--card);color:var(--texto);box-sizing:border-box}
.operacoes-form-rodape{display:flex;justify-content:space-between;gap:10px;margin-top:16px;border-top:1px solid var(--borda);padding-top:12px}
.operacoes-modal-evento{width:min(1100px,calc(100vw - 24px))}
.evento-gestao{padding:14px}.evento-infos{display:flex;gap:14px;flex-wrap:wrap;padding:10px;border-radius:10px;background:var(--hover);font-size:11px}
.evento-escalar-box{margin:12px 0;border:1px solid var(--borda);border-radius:12px;padding:11px}
.evento-escalar-campos{display:grid;grid-template-columns:minmax(260px,1fr) 130px 130px auto;gap:8px;align-items:end}
.evento-escalar-campos label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:800}
.evento-escalar-campos input{border:1px solid var(--borda);border-radius:9px;padding:9px;background:var(--card);color:var(--texto)}
.evento-busca-resultados{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:5px;margin-top:8px;max-height:250px;overflow:auto}
.evento-busca-resultados>button{display:flex;flex-direction:column;text-align:left;border:1px solid var(--borda);border-radius:9px;background:var(--card);color:var(--texto);padding:8px;cursor:pointer}
.evento-busca-resultados>button:hover{border-color:var(--primaria);background:var(--hover)}.evento-busca-resultados small{color:var(--texto-suave)}
.disponiveis-titulo{grid-column:1/-1;display:flex;flex-direction:column;padding:7px;color:var(--texto)}
.evento-filtro-acoes{margin-top:8px}.evento-escala-tabela table{width:100%;border-collapse:collapse}.evento-escala-tabela th,.evento-escala-tabela td{border:1px solid var(--borda);padding:7px;font-size:10px}
.horario-escalado{display:flex;align-items:center;gap:4px}.horario-escalado input{width:82px;border:1px solid var(--borda);border-radius:6px;padding:5px;background:var(--card);color:var(--texto)}
.operacoes-modal-relatorio{width:min(1100px,calc(100vw - 24px))}
.relatorio-operacao{padding:14px}.relatorio-totais{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.relatorio-totais article{padding:12px;border:1px solid var(--borda);border-radius:11px;background:var(--hover)}
.relatorio-totais span{display:block;font-size:9px;color:var(--texto-suave)}.relatorio-totais strong{font-size:21px}
.relatorio-grids{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}.relatorio-bloco{border:1px solid var(--borda);border-radius:11px;padding:10px}
.relatorio-bloco h4{margin:0 0 8px}.relatorio-bloco table{width:100%;border-collapse:collapse}.relatorio-bloco th,.relatorio-bloco td{border:1px solid var(--borda);padding:6px;font-size:10px;text-align:left}
.relatorio-completo{margin-top:10px}.relatorio-acoes{padding:0 14px 14px;justify-content:flex-end}
@media(max-width:1050px){.operacao-resumo{grid-template-columns:repeat(3,1fr)}.evento-escalar-campos{grid-template-columns:1fr 110px 110px}.evento-escalar-campos .botao{grid-column:1/-1}}
@media(max-width:760px){
  .operacoes-layout{grid-template-columns:1fr}.operacoes-sidebar{max-height:320px}.operacao-resumo{grid-template-columns:repeat(2,1fr)}
  .operacao-detalhe-topo,.operacao-evento-topo{flex-direction:column}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}
  .evento-escalar-campos{grid-template-columns:1fr 1fr}.evento-escalar-campos label:first-child{grid-column:1/-1}.evento-escalar-campos .botao{grid-column:1/-1}
  .relatorio-totais,.relatorio-grids{grid-template-columns:1fr 1fr}
}
@media print{
  body *{visibility:hidden!important}.operacoes-modal-relatorio,.operacoes-modal-relatorio *{visibility:visible!important}
  .operacoes-modal-relatorio{position:absolute!important;inset:0!important;background:#fff!important;padding:0!important}
  .operacoes-modal-relatorio .modal-topo button,.relatorio-acoes{display:none!important}.operacoes-modal-relatorio .modal-caixa{max-height:none!important;overflow:visible!important;box-shadow:none!important}
}


/* =========================================================
   PORTAL P1 2.4.1 — aprimoramentos do módulo Operações
   ========================================================= */

/* Cards das Operações */
.operacao-item.operacao-cor-1{background:linear-gradient(135deg,#eef6ff,#fff)!important;border-left:4px solid #2563eb!important}
.operacao-item.operacao-cor-2{background:linear-gradient(135deg,#eefbf3,#fff)!important;border-left:4px solid #16a34a!important}
.operacao-item.operacao-cor-3{background:linear-gradient(135deg,#fff6e8,#fff)!important;border-left:4px solid #ea7a13!important}
.operacao-item.operacao-cor-4{background:linear-gradient(135deg,#f5efff,#fff)!important;border-left:4px solid #7c3aed!important}
.operacao-item.operacao-cor-5{background:linear-gradient(135deg,#eafbf9,#fff)!important;border-left:4px solid #0f9f92!important}
.operacao-item.operacao-cor-6{background:linear-gradient(135deg,#fff0f5,#fff)!important;border-left:4px solid #db2777!important}
.operacao-item.ativo{box-shadow:inset 0 0 0 2px rgba(37,99,235,.28)!important}

/* Eventos alternados em duas cores claras */
.operacao-evento-card.evento-cor-a{background:#f7fbff!important;border-color:#d8e8f5!important}
.operacao-evento-card.evento-cor-b{background:#fbf8ff!important;border-color:#e5dcf5!important}
.operacao-evento-card .evento-efetivo-faltando{color:#b91c1c!important;font-weight:800!important}
.operacao-evento-card .evento-efetivo-faltando strong{color:#b91c1c!important}

/* Cadastro de várias datas */
.evento-datas-editor{display:flex;gap:7px;align-items:center}
.evento-datas-editor input{flex:1}
.evento-datas-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.evento-data-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#e8f2ff;color:#1e5f97;padding:5px 9px;font-size:10px;font-weight:800}
.evento-data-chip button{border:0;background:transparent;color:inherit;cursor:pointer;padding:0}

/* Campo para vários PMs */
.evento-escalar-campos textarea{
  width:100%;
  min-height:58px;
  resize:vertical;
  border:1px solid var(--borda);
  border-radius:9px;
  padding:9px;
  background:var(--card);
  color:var(--texto);
  box-sizing:border-box;
}

/* Tabela do evento */
.tabela-operacao-evento{width:100%;border-collapse:collapse}
.tabela-operacao-evento .tabela-evento-titulo th{
  text-align:center!important;
  white-space:normal!important;
  font-weight:900!important;
  font-size:12px!important;
  padding:11px 9px!important;
  background:#eef3f8!important;
}
.tabela-operacao-evento th,.tabela-operacao-evento td{border:1px solid var(--borda);padding:7px;font-size:10px;vertical-align:middle}
.tabela-operacao-evento .nome-pm-evento{font-weight:800;margin-bottom:5px}
.tabela-operacao-evento .horario-escalado{justify-content:flex-start}
.tabela-operacao-evento .horario-escalado input{width:78px}

/* Filtros */
.operacoes-filtros{grid-template-columns:1fr!important}


/* =========================================================
   PORTAL P1 2.4.2 — Operações: exportação, duplicação e escala
   ========================================================= */

/* Cards de operações realmente coloridos */
.operacao-item-wrap{
  position:relative;
  display:flex;
  align-items:stretch;
  border:1px solid rgba(15,23,42,.12);
  border-radius:13px;
  margin-bottom:7px;
  overflow:hidden;
  box-shadow:0 4px 11px rgba(15,23,42,.08);
}
.operacao-item-wrap.operacao-cor-1{background:#dbeafe!important;border-color:#93c5fd!important}
.operacao-item-wrap.operacao-cor-2{background:#dcfce7!important;border-color:#86efac!important}
.operacao-item-wrap.operacao-cor-3{background:#ffedd5!important;border-color:#fdba74!important}
.operacao-item-wrap.operacao-cor-4{background:#ede9fe!important;border-color:#c4b5fd!important}
.operacao-item-wrap.operacao-cor-5{background:#ccfbf1!important;border-color:#5eead4!important}
.operacao-item-wrap.operacao-cor-6{background:#fce7f3!important;border-color:#f9a8d4!important}
.operacao-item-wrap.ativo{box-shadow:inset 4px 0 #1d4ed8,0 5px 13px rgba(15,23,42,.12)!important}
.operacao-item-main{display:flex;align-items:center;gap:10px;flex:1;min-width:0;border:0;background:transparent;color:#172033;text-align:left;padding:10px;cursor:pointer}
.operacao-item-acoes{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:5px}
.operacao-item-acoes button{width:27px;height:27px;border:0;border-radius:7px;background:rgba(255,255,255,.65);color:#334155;cursor:pointer}
.operacao-item-acoes button:hover{background:#fff;color:#1d4ed8}

/* Status de quantidade escalada */
.evento-quantidade-escalada.faltando,.evento-quantidade-escalada.faltando strong{color:#b91c1c!important}
.evento-quantidade-escalada.completo,.evento-quantidade-escalada.completo strong{color:#15803d!important}
.evento-quantidade-escalada.excedente,.evento-quantidade-escalada.excedente strong{color:#1d4ed8!important}
.evento-quantidade-escalada{font-weight:800!important}

/* Duplicação */
.check-operacao{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important}
.check-operacao input{width:auto!important}

/* Toolbar da tabela de evento */
.evento-tabela-toolbar{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap;margin:8px 0}
.tabela-operacao-evento .linha-pm-operacao{position:relative}
.acoes-pm-operacao{float:right;display:inline-flex;gap:3px;margin-left:6px;opacity:.32;transition:.15s}
.linha-pm-operacao:hover .acoes-pm-operacao{opacity:1}
.acoes-pm-operacao button{border:0;background:transparent;color:#64748b;cursor:pointer;padding:2px 4px}
.acoes-pm-operacao button:hover{color:#1d4ed8}
.acoes-pm-operacao button[data-remover-esc]:hover{color:#b91c1c}

/* Relatório PMs */
.relatorio-pms{margin-top:10px}
.relatorio-busca-pm{max-width:520px;margin-bottom:9px}
.relatorio-lista-pms{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:7px;max-height:260px;overflow:auto}
.relatorio-lista-pms article{border:1px solid var(--borda);border-radius:10px;padding:9px;background:var(--card);display:flex;flex-direction:column;gap:3px}
.relatorio-lista-pms article strong{font-size:11px}.relatorio-lista-pms article span,.relatorio-lista-pms article small{font-size:9px;color:var(--texto-suave)}

/* Gerador de Tabelas: botão único de alternância */
.alternar-nome-tabela-pm{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:8px 0 10px}
.alternar-nome-tabela-pm span{font-size:10px;font-weight:800;color:var(--texto-suave)}


/* =========================================================
   PORTAL P1 2.4.3 — Operações aprimoradas
   ========================================================= */

/* Filtros da operação aberta */
.operacao-filtros-eventos{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(140px,1fr))!important;
  gap:8px!important;
  padding:10px!important;
  margin:10px 0 4px!important;
  border:1px solid var(--borda)!important;
  border-radius:12px!important;
  background:var(--hover)!important;
}
.operacao-filtros-eventos label{display:flex!important;flex-direction:column!important;gap:4px!important;font-size:9px!important;font-weight:800!important;color:var(--texto-suave)!important}
.operacao-filtros-eventos select,.operacao-filtros-eventos input{width:100%!important;box-sizing:border-box!important;border:1px solid var(--borda)!important;border-radius:8px!important;padding:7px!important;background:var(--card)!important;color:var(--texto)!important}

/* Cards das operações: cores vivas */
.operacao-item-wrap.operacao-cor-1{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:#1d4ed8!important}
.operacao-item-wrap.operacao-cor-2{background:linear-gradient(135deg,#16a34a,#15803d)!important;border-color:#15803d!important}
.operacao-item-wrap.operacao-cor-3{background:linear-gradient(135deg,#ea580c,#c2410c)!important;border-color:#c2410c!important}
.operacao-item-wrap.operacao-cor-4{background:linear-gradient(135deg,#7c3aed,#6d28d9)!important;border-color:#6d28d9!important}
.operacao-item-wrap.operacao-cor-5{background:linear-gradient(135deg,#0f9f92,#0f766e)!important;border-color:#0f766e!important}
.operacao-item-wrap.operacao-cor-6{background:linear-gradient(135deg,#db2777,#be185d)!important;border-color:#be185d!important}
.operacao-item-wrap .operacao-item-main,.operacao-item-wrap .operacao-item-textos strong,.operacao-item-wrap .operacao-item-textos small{color:#fff!important}
.operacao-item-wrap .operacao-item-icone{background:rgba(255,255,255,.22)!important;color:#fff!important}
.operacao-item-wrap .operacao-item-acoes button{background:rgba(255,255,255,.18)!important;color:#fff!important}
.operacao-item-wrap .operacao-item-acoes button:hover{background:#fff!important;color:#1e293b!important}
.operacao-item-wrap.ativo{box-shadow:inset 5px 0 rgba(255,255,255,.9),0 7px 17px rgba(15,23,42,.22)!important}

/* Eventos derivados da cor da operação */
.operacao-evento-card.evento-opcor-1.evento-var-a{background:#eaf2ff!important;border-color:#9ec2ff!important}
.operacao-evento-card.evento-opcor-1.evento-var-b{background:#dce9ff!important;border-color:#82adf8!important}
.operacao-evento-card.evento-opcor-2.evento-var-a{background:#ecfaef!important;border-color:#9ed6ab!important}
.operacao-evento-card.evento-opcor-2.evento-var-b{background:#ddf5e3!important;border-color:#80c990!important}
.operacao-evento-card.evento-opcor-3.evento-var-a{background:#fff2e9!important;border-color:#f4b58c!important}
.operacao-evento-card.evento-opcor-3.evento-var-b{background:#ffe7d6!important;border-color:#ef9b67!important}
.operacao-evento-card.evento-opcor-4.evento-var-a{background:#f3edff!important;border-color:#c9b5ed!important}
.operacao-evento-card.evento-opcor-4.evento-var-b{background:#e9ddfb!important;border-color:#b49ade!important}
.operacao-evento-card.evento-opcor-5.evento-var-a{background:#e8faf7!important;border-color:#9edbd3!important}
.operacao-evento-card.evento-opcor-5.evento-var-b{background:#d9f4ef!important;border-color:#82cec3!important}
.operacao-evento-card.evento-opcor-6.evento-var-a{background:#fff0f6!important;border-color:#efacc8!important}
.operacao-evento-card.evento-opcor-6.evento-var-b{background:#fce1ed!important;border-color:#e88eb5!important}

/* Tooltip de PMs escalados */
.evento-quantidade-escalada{position:relative!important;cursor:help!important}
.evento-pms-tooltip{
  display:none!important;
  position:absolute!important;
  left:0!important;
  top:calc(100% + 7px)!important;
  z-index:100!important;
  width:min(440px,70vw)!important;
  padding:9px 11px!important;
  border-radius:10px!important;
  background:#172033!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1.45!important;
  font-weight:600!important;
  box-shadow:0 12px 28px rgba(15,23,42,.28)!important;
  white-space:normal!important;
}
.evento-quantidade-escalada:hover .evento-pms-tooltip,.evento-quantidade-escalada:focus .evento-pms-tooltip{display:block!important}

/* Relatório ranking e filtros */
.ranking-servicos-operacao{margin-top:10px!important}
.ranking-servicos-lista{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;gap:7px!important}
.ranking-servicos-lista article{display:flex!important;align-items:center!important;gap:8px!important;border:1px solid var(--borda)!important;border-radius:10px!important;padding:8px!important;background:var(--card)!important}
.ranking-pos{width:28px!important;height:28px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#e8f2ff!important;color:#1d4ed8!important;font-weight:900!important;font-size:10px!important}
.ranking-servicos-lista article div{display:flex!important;flex-direction:column!important;flex:1!important;min-width:0!important}
.ranking-servicos-lista article strong{font-size:10px!important}.ranking-servicos-lista article small{font-size:8px!important;color:var(--texto-suave)!important}.ranking-servicos-lista article b{font-size:11px!important;color:#1d4ed8!important}
.relatorio-filtros-colunas{display:grid!important;grid-template-columns:repeat(4,minmax(120px,1fr))!important;gap:6px!important;margin-bottom:8px!important}
.relatorio-filtros-colunas input{width:100%!important;box-sizing:border-box!important;border:1px solid var(--borda)!important;border-radius:7px!important;padding:6px!important;background:var(--card)!important;color:var(--texto)!important;font-size:9px!important}

/* Gerador de Tabelas: controles compactos lado a lado */
.alternar-nome-tabela-pm .compacto{min-height:28px!important;padding:4px 8px!important;font-size:10px!important}
.alternar-nome-tabela-pm{gap:6px!important}

@media(max-width:850px){
  .operacao-filtros-eventos{grid-template-columns:1fr 1fr!important}
  .relatorio-filtros-colunas{grid-template-columns:1fr 1fr!important}
}


/* Portal P1 2.4.4 — Gerador de Tabelas */
.alternar-nome-tabela-pm{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:nowrap!important;
}
.alternar-nome-tabela-pm .compacto{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}


/* =========================================================
   PORTAL P1 2.4.4 — ajustes solicitados no módulo Operações
   ========================================================= */

/* Operações: mesma família = mesma cor, porém em tons claros */
.operacao-item-wrap.operacao-cor-1{background:linear-gradient(135deg,#dbeafe,#bfdbfe)!important;border-color:#60a5fa!important}
.operacao-item-wrap.operacao-cor-2{background:linear-gradient(135deg,#dcfce7,#bbf7d0)!important;border-color:#4ade80!important}
.operacao-item-wrap.operacao-cor-3{background:linear-gradient(135deg,#ffedd5,#fed7aa)!important;border-color:#fb923c!important}
.operacao-item-wrap.operacao-cor-4{background:linear-gradient(135deg,#ede9fe,#ddd6fe)!important;border-color:#a78bfa!important}
.operacao-item-wrap.operacao-cor-5{background:linear-gradient(135deg,#ccfbf1,#99f6e4)!important;border-color:#2dd4bf!important}
.operacao-item-wrap.operacao-cor-6{background:linear-gradient(135deg,#fce7f3,#fbcfe8)!important;border-color:#f472b6!important}
.operacao-item-wrap .operacao-item-main,
.operacao-item-wrap .operacao-item-textos strong{color:#172033!important}
.operacao-item-wrap .operacao-item-textos small{color:#475569!important}
.operacao-item-wrap .operacao-item-icone{background:rgba(255,255,255,.62)!important;color:#334155!important}
.operacao-item-wrap .operacao-item-acoes button{background:rgba(255,255,255,.7)!important;color:#334155!important}

/* Eventos: duas tonalidades bem separadas, derivadas da operação */
.operacao-evento-card.evento-opcor-1.evento-var-a{background:#eff6ff!important;border-color:#93c5fd!important}
.operacao-evento-card.evento-opcor-1.evento-var-b{background:#bfdbfe!important;border-color:#3b82f6!important}
.operacao-evento-card.evento-opcor-2.evento-var-a{background:#f0fdf4!important;border-color:#86efac!important}
.operacao-evento-card.evento-opcor-2.evento-var-b{background:#bbf7d0!important;border-color:#22c55e!important}
.operacao-evento-card.evento-opcor-3.evento-var-a{background:#fff7ed!important;border-color:#fdba74!important}
.operacao-evento-card.evento-opcor-3.evento-var-b{background:#fed7aa!important;border-color:#f97316!important}
.operacao-evento-card.evento-opcor-4.evento-var-a{background:#f5f3ff!important;border-color:#c4b5fd!important}
.operacao-evento-card.evento-opcor-4.evento-var-b{background:#ddd6fe!important;border-color:#8b5cf6!important}
.operacao-evento-card.evento-opcor-5.evento-var-a{background:#f0fdfa!important;border-color:#5eead4!important}
.operacao-evento-card.evento-opcor-5.evento-var-b{background:#99f6e4!important;border-color:#14b8a6!important}
.operacao-evento-card.evento-opcor-6.evento-var-a{background:#fdf2f8!important;border-color:#f9a8d4!important}
.operacao-evento-card.evento-opcor-6.evento-var-b{background:#fbcfe8!important;border-color:#ec4899!important}

/* Tooltip vertical, um PM por linha */
.evento-pms-tooltip{
  display:none!important;
  flex-direction:column!important;
  gap:4px!important;
}
.evento-quantidade-escalada:hover .evento-pms-tooltip,
.evento-quantidade-escalada:focus .evento-pms-tooltip{display:flex!important}
.evento-pms-tooltip span{
  display:block!important;
  width:100%!important;
  padding:2px 0!important;
  border-bottom:1px solid rgba(255,255,255,.16)!important;
}
.evento-pms-tooltip span:last-child{border-bottom:0!important}

/* Relatório do evento */
.relatorio-evento-dados{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:7px!important;
  margin-bottom:10px!important;
}
.relatorio-evento-dados article{
  border:1px solid var(--borda)!important;
  border-radius:9px!important;
  padding:8px!important;
  background:var(--card)!important;
}
.relatorio-evento-dados span{display:block!important;font-size:8px!important;color:var(--texto-suave)!important}
.relatorio-evento-dados strong{font-size:10px!important}
.relatorio-disponivel{color:#15803d!important;font-weight:900!important}
.relatorio-indisponivel{color:#b91c1c!important;font-weight:900!important}

/* Relatório completo por PM */
.relatorio-filtros-pm{
  grid-template-columns:repeat(4,minmax(120px,1fr))!important;
}


/* =========================================================
   PORTAL P1 2.4.5 — Local, filtros hierárquicos, escala e auditoria
   ========================================================= */

/* Filtros hierárquicos */
.operacao-filtros-eventos{
  grid-template-columns:repeat(4,minmax(135px,1fr))!important;
}
@media(max-width:1100px){
  .operacao-filtros-eventos{grid-template-columns:repeat(3,minmax(130px,1fr))!important}
}
@media(max-width:720px){
  .operacao-filtros-eventos{grid-template-columns:1fr 1fr!important}
}

/* Escala começa recolhida */
.evento-escalar-abertura{
  display:flex;
  justify-content:flex-start;
  margin:12px 0 8px;
}
.evento-filtros-pm{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin-bottom:9px;
}
.evento-filtros-pm .ativo{
  background:#dbeafe!important;
  border-color:#60a5fa!important;
  color:#1d4ed8!important;
}
.evento-filtros-pm select{
  min-width:170px;
  border:1px solid var(--borda);
  border-radius:8px;
  padding:6px 8px;
  background:var(--card);
  color:var(--texto);
}

/* Cards dos PMs */
.evento-busca-resultados .evento-pm-card{
  position:relative;
  overflow:visible!important;
}
.pm-servicos-operacao{
  display:inline-flex;
  position:relative;
  align-items:center;
  gap:3px;
  margin-top:5px;
  width:max-content;
  padding:3px 6px;
  border-radius:999px;
  background:#eef2ff;
  color:#4338ca;
  font-size:9px;
  font-weight:800;
}
.pm-servicos-operacao b{font-size:11px}
.pm-servicos-tooltip{
  display:none;
  position:absolute;
  left:0;
  top:calc(100% + 6px);
  z-index:200;
  width:min(410px,75vw);
  padding:8px 10px;
  border-radius:9px;
  background:#172033;
  color:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.28);
}
.pm-servicos-tooltip span{
  display:block;
  padding:3px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
  white-space:normal;
}
.pm-servicos-tooltip span:last-child{border-bottom:0}
.pm-servicos-operacao:hover .pm-servicos-tooltip{display:block}

/* Auditoria */
.auditoria-operacao{padding:14px}
.auditoria-lista{display:grid;gap:8px}
.auditoria-lista article{
  border:1px solid #fecaca;
  border-left:5px solid #dc2626;
  border-radius:11px;
  padding:10px;
  background:#fff7f7;
}
.auditoria-lista article>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.auditoria-lista article strong{font-size:11px}
.auditoria-lista article small{font-size:9px;color:#64748b}
.auditoria-lista article p{margin:5px 0;font-size:9px;color:#475569}
.auditoria-lista article span{display:block;color:#991b1b;font-size:10px;font-weight:700}
.auditoria-ok{
  min-height:250px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#166534;
}
.auditoria-ok i{font-size:42px;margin-bottom:8px}

/* Data e local nos cards */
.operacao-evento-topo p{
  line-height:1.5!important;
}

.campo-local-hipoteca{display:flex;gap:7px;align-items:center}
.campo-local-hipoteca input{flex:1}
#btnHipotecaEvento.ativo{background:#fde68a!important;border-color:#f59e0b!important;color:#92400e!important;font-weight:900!important}
.evento-hipoteca-tag{display:inline-flex!important;align-items:center!important;gap:3px!important;padding:2px 6px!important;border-radius:999px!important;background:#fef3c7!important;color:#92400e!important;font-size:8px!important;font-weight:900!important}
.evento-pm-card small b{color:var(--texto)!important}


/* =========================================================
   PORTAL P1 2.4.7 — Escala persistente + relatório filtrável
   ========================================================= */

/* Painel Escalar PM permanece aberto após inclusão */
.evento-escalar-box:not(.oculto){display:block!important}

/* Filtro de serviços */
#filtroServicosPMEvento{min-width:150px}

/* Cards PM — informações do Pecúlio limpas */
.evento-pm-card small{display:block!important;line-height:1.35!important}

/* Relatório completo — filtros de múltipla seleção */
.relatorio-multifiltro{
  position:relative;
  border:1px solid var(--borda);
  border-radius:8px;
  background:var(--card);
  min-width:0;
}
.relatorio-multifiltro summary{
  list-style:none;
  cursor:pointer;
  padding:7px 9px;
  font-size:9px;
  font-weight:800;
  color:var(--texto);
  display:flex;
  justify-content:space-between;
  gap:6px;
}
.relatorio-multifiltro summary::-webkit-details-marker{display:none}
.relatorio-multifiltro summary span{font-weight:600;color:var(--texto-suave)}
.relatorio-multifiltro-menu{
  position:absolute;
  left:0;
  top:calc(100% + 4px);
  z-index:120;
  min-width:210px;
  max-width:320px;
  max-height:260px;
  overflow:auto;
  padding:7px;
  background:var(--card);
  border:1px solid var(--borda);
  border-radius:9px;
  box-shadow:0 12px 28px rgba(15,23,42,.18);
}
.relatorio-multifiltro-menu label{
  display:flex;
  align-items:flex-start;
  gap:6px;
  padding:5px 4px;
  font-size:9px;
  cursor:pointer;
}
.relatorio-multifiltro-menu input{margin-top:1px}

/* Linhas alternadas */
#tabelaRelatorioCompleto tbody tr:nth-child(odd){background:#fff!important}
#tabelaRelatorioCompleto tbody tr:nth-child(even){background:#f3f4f6!important}
#tabelaRelatorioCompleto tbody tr:hover{background:#e8f2ff!important}

/* Cabeçalhos ordenáveis */
#tabelaRelatorioCompleto thead th{padding:0!important}
#tabelaRelatorioCompleto thead th button{
  width:100%;
  height:100%;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-weight:900;
  padding:7px 6px;
  cursor:pointer;
  text-align:left;
  white-space:nowrap;
}
#tabelaRelatorioCompleto thead th button:hover{background:rgba(37,99,235,.08)}

/* Resumo Por Dia comporta texto de locais */
.relatorio-grids .relatorio-bloco table td{vertical-align:top}


/* =========================================================
   PORTAL P1 2.4.8 — Operações avançadas
   ========================================================= */

/* Contadores / percentual */
.pct-vermelho{color:#b91c1c!important}.pct-laranja{color:#ea580c!important}.pct-amarelo{color:#ca8a04!important}.pct-verde{color:#15803d!important}.pct-azul{color:#1d4ed8!important}

/* Ordem de filtros */
.filtro-ordem-eventos{display:flex;flex-direction:column;gap:4px;font-size:9px;font-weight:800;color:var(--texto-suave)}
.filtro-ordem-botoes{display:flex;gap:4px;flex-wrap:wrap}
.filtro-ordem-botoes button.ativo{background:#dbeafe!important;border-color:#60a5fa!important;color:#1d4ed8!important}
.filtro-ordem-botoes button[data-ordem]:not([data-ordem=""])::before{content:attr(data-ordem) "º ";font-weight:900}

/* Horários no cadastro */
.horarios-evento-editor{border:1px solid var(--borda);border-radius:11px;padding:10px;background:var(--hover)}
.horarios-evento-topo{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.horario-evento-linha{display:grid;grid-template-columns:80px 1fr 1fr 1fr 34px;gap:7px;align-items:end;padding:8px 0;border-top:1px solid var(--borda)}
.horario-evento-linha:first-child{border-top:0}.horario-num{font-size:10px;font-weight:900;color:var(--primaria);padding-bottom:9px}
.horario-evento-linha label{font-size:9px}

/* Cards */
.evento-card-info{font-size:11px!important}
.evento-horarios-card{display:grid;gap:5px;margin:8px 0}
.evento-horario-resumo{border:1px solid rgba(15,23,42,.10);border-radius:8px;padding:6px 8px;background:rgba(255,255,255,.55)}
.evento-horario-resumo strong{display:block;font-size:10px}.evento-horario-resumo span{font-size:9px;color:#475569}
.mini-progresso{height:4px;background:rgba(100,116,139,.18);border-radius:999px;overflow:hidden;margin-top:5px}.mini-progresso i{display:block;height:100%;background:#22c55e;border-radius:999px}
.texto-vermelho{color:#b91c1c!important}.texto-verde{color:#15803d!important}.texto-azul{color:#1d4ed8!important}
.evento-progresso-geral{display:flex;align-items:center;gap:7px;margin:7px 0}.evento-progresso-geral>div{flex:1;height:5px;background:rgba(100,116,139,.18);border-radius:999px;overflow:hidden}.evento-progresso-geral>div i{display:block;height:100%;background:#3b82f6;border-radius:999px}.evento-progresso-geral>span{font-size:9px;font-weight:900}

/* Escala por horários */
.evento-horarios-selecao{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.evento-horario-alvo{display:flex;flex-direction:column;justify-content:center;min-width:160px}.evento-horario-alvo span{font-size:8px;color:var(--texto-suave)}.evento-horario-alvo strong{font-size:11px}
.escala-horario-grupo{margin-top:12px}.escala-horario-grupo h4{font-size:11px;margin:0 0 6px;color:var(--texto)}

/* Auditoria clicável */
.auditoria-item-clicavel{cursor:pointer!important}.auditoria-item-clicavel:hover{box-shadow:0 0 0 2px rgba(220,38,38,.12)!important;transform:translateY(-1px)}

/* Relatórios e gráficos */
.relatorio-grids-tabelas{grid-template-columns:1fr!important}
.mini-grafico-barras{display:grid;gap:4px;margin-top:8px;max-width:560px}
.mini-barra{display:grid;grid-template-columns:120px minmax(120px,1fr) 36px;gap:6px;align-items:center;font-size:8px}
.mini-barra>div{height:10px;background:#eef2f7;border-radius:999px;overflow:hidden}.mini-barra i{display:block;height:100%;border-radius:999px}
.grafico-cor-1{background:#3b82f6}.grafico-cor-2{background:#22c55e}.grafico-cor-3{background:#f97316}.grafico-cor-4{background:#8b5cf6}.grafico-cor-5{background:#14b8a6}.grafico-cor-6{background:#ec4899}
.selecao-relatorios{display:grid;grid-template-columns:1fr 1fr;gap:8px}.selecao-relatorios label{display:flex!important;flex-direction:row!important;gap:8px!important;align-items:center!important;padding:8px;border:1px solid var(--borda);border-radius:8px}.selecao-relatorios input{width:auto!important}
.relatorio-multifiltro-menu label{display:grid!important;grid-template-columns:18px 1fr!important;align-items:center!important;gap:7px!important;padding:6px!important}.relatorio-multifiltro-menu input{width:15px!important;height:15px!important;margin:0!important}.relatorio-multifiltro-menu span{line-height:1.2!important}
.nao-imprimir{display:none!important}

@media(max-width:800px){
  .horario-evento-linha{grid-template-columns:1fr 1fr}.horario-num{grid-column:1/-1}.selecao-relatorios{grid-template-columns:1fr}
}


/* =========================================================
   PORTAL P1 2.4.9 — Operações
   ========================================================= */

/* Progresso compacto nos cards: uma barra por horário */
.evento-horario-resumo{max-width:420px!important}
.evento-horario-resumo .mini-progresso{
  width:180px!important;
  max-width:55%!important;
  height:5px!important;
  margin-top:5px!important;
}
.evento-progresso-geral{display:none!important}

/* Limpar filtros */
.filtro-limpar-operacao{display:flex;align-items:flex-end;justify-content:flex-start}
#btnLimparFiltrosOperacao{white-space:nowrap}

/* Contadores clicáveis */
.contador-operacao-clicavel{cursor:pointer!important;transition:.15s}
.contador-operacao-clicavel:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.12)!important}
.contador-pms-detalhe{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:7px}
.contador-pms-detalhe article{border:1px solid var(--borda);border-radius:9px;padding:8px;background:var(--card);display:flex;flex-direction:column;gap:3px}
.contador-pms-detalhe strong{font-size:10px}.contador-pms-detalhe span,.contador-pms-detalhe small{font-size:9px;color:var(--texto-suave);line-height:1.5}
.contador-conclusao{text-align:center;padding:10px}.contador-conclusao strong{font-size:28px}

/* Filtros PM */
#filtroEscalaPMEvento{min-width:190px}

/* Relatório: ações no topo */
.relatorio-acoes-topo{
  position:sticky;
  top:0;
  z-index:15;
  padding:8px 14px!important;
  margin:0!important;
  background:var(--card);
  border-bottom:1px solid var(--borda);
  justify-content:flex-end;
}

/* Quatro tabelas em duas colunas; completo em largura total */
.relatorio-grids-tabelas{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:start!important;
}
.relatorio-grids-tabelas .relatorio-bloco{min-width:0!important;width:100%!important;overflow:hidden}
.relatorio-grids-tabelas .tabela-responsiva{width:100%!important;overflow:auto}
.relatorio-grids-tabelas table{width:100%!important;table-layout:auto!important}
.relatorio-grids-tabelas th,.relatorio-grids-tabelas td{white-space:normal!important;word-break:normal!important}
.relatorio-completo{width:100%!important}
.mini-grafico-barras{width:100%!important;max-width:none!important}
.mini-barra{grid-template-columns:minmax(90px,30%) minmax(100px,1fr) 34px!important}

/* Colunas mais proporcionais */
[data-rel-secao="dia"] table th:first-child,[data-rel-secao="dia"] table td:first-child{width:90px}
[data-rel-secao="evento"] table th:first-child,[data-rel-secao="evento"] table td:first-child{width:32%}
[data-rel-secao="horario"] table th:first-child,[data-rel-secao="horario"] table td:first-child{width:55%}
[data-rel-secao="graduacao"] table th:first-child,[data-rel-secao="graduacao"] table td:first-child{width:40%}
#tabelaRelatorioCompleto{table-layout:auto!important;width:100%!important}
#tabelaRelatorioCompleto th:nth-child(1){width:12%}
#tabelaRelatorioCompleto th:nth-child(2){width:12%}
#tabelaRelatorioCompleto th:nth-child(3){width:22%}
#tabelaRelatorioCompleto th:nth-child(4){width:9%}
#tabelaRelatorioCompleto th:nth-child(5){width:15%}
#tabelaRelatorioCompleto th:nth-child(6){width:18%}
#tabelaRelatorioCompleto th:nth-child(7){width:12%}

@media(max-width:900px){
  .relatorio-grids-tabelas{grid-template-columns:1fr!important}
}
@media print{
  .relatorio-grids-tabelas{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7mm!important}
  .relatorio-grids-tabelas .relatorio-bloco{break-inside:avoid!important}
  .relatorio-grids-tabelas table,#tabelaRelatorioCompleto{font-size:8px!important;width:100%!important}
  .relatorio-acoes-topo{display:none!important}
}

/* Portal P1 2.5.0 */
.mini-progresso,.evento-progresso-geral{display:none!important}
.operacao-filtros-eventos{grid-template-columns:repeat(4,minmax(155px,1fr))!important;gap:10px!important;align-items:end!important}
.operacao-filtros-eventos label,.filtro-ordem-eventos{font-size:10px!important}
.operacao-filtros-eventos select,.operacao-filtros-eventos input{font-size:11px!important;min-height:34px!important}
.filtro-ordem-botoes button{font-size:10px!important;padding:6px 10px!important}
.relatorio-grids-tabelas{grid-template-columns:1fr!important;gap:12px!important}
.relatorio-grids-tabelas .relatorio-bloco{width:100%!important}
.relatorio-grids-tabelas table{width:auto!important;min-width:70%!important;max-width:100%!important;table-layout:auto!important}
.relatorio-grids-tabelas th,.relatorio-grids-tabelas td{width:auto!important;white-space:nowrap!important;padding:7px 9px!important}
.relatorio-grafico-secao.oculto{display:none!important}.relatorio-grafico-secao{margin-top:8px!important}.relatorio-grafico-secao .mini-grafico-barras{width:100%!important;max-width:none!important}
.relatorio-card-clicavel{cursor:pointer}.relatorio-card-clicavel:hover{box-shadow:0 3px 12px rgba(15,23,42,.10)}
.evento-completo-badge{display:inline-flex!important;padding:3px 8px!important;border-radius:999px!important;background:#dcfce7!important;color:#15803d!important;font-size:10px!important;font-weight:900!important;vertical-align:middle!important}
.operacao-evento-status{font-size:10px!important;font-weight:900!important;padding:5px 9px!important}.operacao-evento-status.completo{background:#dcfce7!important;color:#166534!important;border:1px solid #86efac!important}
.cadeado-fechado{background:#fee2e2!important;color:#991b1b!important;border-color:#fca5a5!important}.bloqueado-operacao{opacity:.45!important;cursor:not-allowed!important}.operacao-bloqueada-aviso{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:8px;font-size:10px;font-weight:800}
.contador-filtros-colunas{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;margin-bottom:9px}.contador-filtros-colunas input{min-width:0;border:1px solid var(--borda);border-radius:7px;padding:6px;font-size:9px;background:var(--card);color:var(--texto)}
@media(max-width:950px){.operacao-filtros-eventos{grid-template-columns:repeat(2,minmax(145px,1fr))!important}}
@media print{.relatorio-grids-tabelas{grid-template-columns:1fr!important}.relatorio-grids-tabelas table{width:100%!important;min-width:0!important}.relatorio-grafico-secao{display:none!important}}


/* =========================================================
   PORTAL P1 2.5.1 — ajustes Operações
   ========================================================= */

/* Cadeado dentro do card da operação */
.operacao-item-acoes .cadeado-card-operacao.aberto{
  background:#dcfce7!important;
  color:#15803d!important;
  border:1px solid #86efac!important;
}
.operacao-item-acoes .cadeado-card-operacao.fechado{
  background:#fee2e2!important;
  color:#b91c1c!important;
  border:1px solid #fca5a5!important;
}
.operacao-item-acoes .cadeado-card-operacao{font-size:12px!important}

/* Todos os botões do topo da Operação em uma linha */
.operacao-detalhe-topo>.acoes{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:5px!important;
  overflow-x:auto!important;
  padding-bottom:2px!important;
}
.operacao-detalhe-topo>.acoes .botao{white-space:nowrap!important;flex:0 0 auto!important}

/* Dados do card sem caixa branca duplicada */
.evento-horarios-card-limpo{display:grid!important;gap:4px!important;margin:7px 0!important}
.evento-horario-resumo-limpo{
  background:transparent!important;
  border:0!important;
  padding:2px 0!important;
  box-shadow:none!important;
}
.evento-horario-texto{
  display:block!important;
  font-size:10px!important;
  line-height:1.45!important;
  color:#334155!important;
}

/* Tabelas organizadas e centralizadas na cópia/tela */
.tabela-relatorio-organizada{
  width:100%!important;
  table-layout:auto!important;
  border-collapse:collapse!important;
}
.tabela-relatorio-organizada th,.tabela-relatorio-organizada td{
  text-align:center!important;
  vertical-align:middle!important;
  padding:6px 7px!important;
  white-space:normal!important;
}

/* Filtros em padrão azul */
.relatorio-multifiltro.filtro-azul{
  border:1px solid #2563eb!important;
  background:#eff6ff!important;
}
.relatorio-multifiltro.filtro-azul>summary{
  color:#1d4ed8!important;
  background:#dbeafe!important;
  border-radius:7px!important;
}
.relatorio-multifiltro.filtro-azul>summary span{color:#1e40af!important}
.contador-filtros-botoes{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;
  gap:7px!important;
  align-items:start!important;
}
.busca-pm-contador{
  border:1px solid #2563eb!important;
  background:#fff!important;
  color:#172033!important;
  border-radius:8px!important;
  padding:8px 9px!important;
}

/* Destaque do status do card */
.operacao-evento-status.completo{
  font-size:10px!important;
  font-weight:900!important;
}
.operacao-evento-status.pendente{
  font-size:10px!important;
  font-weight:900!important;
}

@media(max-width:900px){
  .operacao-detalhe-topo>.acoes{flex-wrap:wrap!important}
}


/* Portal P1 2.5.2 — ajustes Operações */
.busca-pm-azul{
  border:1px solid #2563eb!important;
  background:#eff6ff!important;
  color:#172033!important;
  border-radius:8px!important;
  padding:8px 9px!important;
}
.busca-pm-azul::placeholder{color:#1e40af!important;opacity:.8!important}

.evento-horario-texto{
  font-size:11px!important;
  line-height:1.6!important;
  word-spacing:1px!important;
}
.evento-lancado-hover{
  position:relative!important;
  display:inline-block!important;
  cursor:help!important;
}
.evento-lancado-hover .evento-pms-tooltip{
  display:none!important;
  flex-direction:column!important;
  gap:3px!important;
  min-width:220px!important;
  max-width:360px!important;
}
.evento-lancado-hover:hover .evento-pms-tooltip,
.evento-lancado-hover:focus-within .evento-pms-tooltip{
  display:flex!important;
}
.evento-lancado-hover .evento-pms-tooltip span{
  display:block!important;
  width:100%!important;
  padding:2px 0!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.evento-lancado-hover .evento-pms-tooltip span:last-child{border-bottom:0!important}


/* =========================================================
   PORTAL P1 2.5.4 — seleção múltipla e edição em lote
   ========================================================= */

.operacao-evento-card{position:relative!important}
.evento-seletor-card{
  position:absolute!important;
  top:8px!important;
  right:8px!important;
  z-index:7!important;
  width:28px!important;
  height:28px!important;
  border-radius:8px!important;
  border:1px solid rgba(37,99,235,.25)!important;
  background:rgba(255,255,255,.88)!important;
  color:#64748b!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
}
.evento-seletor-card.ativo{
  background:#2563eb!important;
  color:#fff!important;
  border-color:#2563eb!important;
}
.operacao-evento-card.selecionado{
  outline:3px solid rgba(37,99,235,.35)!important;
  box-shadow:0 0 0 1px #2563eb inset,0 8px 20px rgba(37,99,235,.12)!important;
}

.eventos-selecao-toolbar{
  position:sticky!important;
  top:4px!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:8px 0!important;
  padding:9px 11px!important;
  border:1px solid #93c5fd!important;
  border-radius:11px!important;
  background:#eff6ff!important;
  box-shadow:0 5px 15px rgba(37,99,235,.10)!important;
}
.eventos-selecao-toolbar.oculto{display:none!important}
.eventos-selecao-toolbar strong{font-size:10px!important;color:#1d4ed8!important}

.edicao-lote-aviso{
  margin:0 0 10px!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  background:#eff6ff!important;
  color:#1e40af!important;
  font-size:9px!important;
}
.campo-lote>span,.lote-horario-bloco>span{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:6px!important;
  font-weight:800!important;
}
.campo-lote>span input,.lote-horario-bloco>span input{
  width:15px!important;
  height:15px!important;
  margin:0!important;
}
.campo-lote input:disabled,.campo-lote select:disabled,.campo-lote textarea:disabled,
.lote-horario-campos input:disabled{
  opacity:.55!important;
  cursor:not-allowed!important;
}
.lote-horario-bloco{
  border:1px solid var(--borda)!important;
  border-radius:10px!important;
  padding:9px!important;
  background:var(--hover)!important;
}
.lote-horario-campos{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:7px!important;
  margin-top:7px!important;
}
@media(max-width:700px){
  .eventos-selecao-toolbar{align-items:flex-start!important;flex-direction:column!important}
  .lote-horario-campos{grid-template-columns:1fr!important}
}


/* Portal P1 2.5.5 — seleção de eventos acionada pelo filtro */
#btnSelecionarEventos.ativo{
  background:#2563eb!important;
  border-color:#2563eb!important;
  color:#fff!important;
}
.filtro-limpar-operacao{
  display:flex!important;
  align-items:flex-end!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.evento-seletor-card{
  top:7px!important;
  right:7px!important;
}


/* =========================================================
   PORTAL P1 2.5.6 — padronização, seleção e Administração
   ========================================================= */

.filtro-ordem-recolhido{
  border:1px solid var(--borda)!important;
  border-radius:9px!important;
  background:var(--card)!important;
  padding:0!important;
}
.filtro-ordem-recolhido>summary{
  cursor:pointer!important;
  list-style:none!important;
  padding:8px 9px!important;
  font-size:10px!important;
  font-weight:800!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:7px!important;
}
.filtro-ordem-recolhido>summary::-webkit-details-marker{display:none}
.filtro-ordem-recolhido .filtro-ordem-botoes{padding:0 8px 8px!important}
.filtro-limpar-operacao{display:flex!important;gap:6px!important;align-items:flex-end!important;flex-wrap:nowrap!important}
#btnSelecionarEventos,#btnLimparFiltrosOperacao{white-space:nowrap!important}

/* Cards das Operações: nome e ano na mesma linha */
.operacao-item-textos strong{font-size:13px!important;line-height:1.25!important}

/* Edição múltipla simplificada */
.edicao-lote-grid label{font-size:10px!important}
.edicao-lote-grid input,.edicao-lote-grid select,.edicao-lote-grid textarea{width:100%!important}
.edicao-lote-aviso{font-size:10px!important}

/* Histórico de Missões Concluídas */
.missoes-concluidas-caixa{width:min(1100px,96vw)!important;max-height:90vh!important;overflow:auto!important}
.missoes-concluidas-filtros{display:grid!important;grid-template-columns:repeat(4,minmax(140px,1fr))!important;gap:8px!important;margin:10px 0 12px!important}
.missoes-concluidas-filtros label{display:flex!important;flex-direction:column!important;gap:4px!important;font-size:10px!important;font-weight:800!important}
.missoes-concluidas-filtros input,.missoes-concluidas-filtros select{width:100%!important;border:1px solid var(--borda)!important;border-radius:8px!important;padding:8px!important;background:var(--card)!important;color:var(--texto)!important}
.missoes-concluidas-filtros .mc-check{flex-direction:row!important;align-items:center!important;align-self:end!important;padding:8px!important}
.missoes-concluidas-filtros .mc-check input{width:auto!important}
.missoes-concluidas-lista{display:grid!important;gap:8px!important}
.missao-concluida-historico{border:1px solid var(--borda)!important;border-left:4px solid #16a34a!important;border-radius:10px!important;padding:10px!important;background:var(--card)!important;cursor:pointer!important}
.missao-concluida-historico strong{font-size:11px!important}.missao-concluida-historico p{font-size:10px!important;margin:5px 0!important}
.mc-meta{display:flex!important;gap:8px!important;flex-wrap:wrap!important;color:var(--texto-suave)!important;font-size:9px!important}

/* Admin Operações */
.admin-operacoes-permissoes{display:grid!important;gap:8px!important}
.admin-operacoes-permissoes article{display:grid!important;grid-template-columns:minmax(180px,1fr) 190px auto!important;gap:9px!important;align-items:center!important;border:1px solid var(--borda)!important;border-radius:10px!important;padding:9px!important;background:var(--card)!important}
.admin-operacoes-permissoes article>div{display:flex!important;flex-direction:column!important}
.admin-operacoes-permissoes small{color:var(--texto-suave)!important}
.admin-operacoes-permissoes select{border:1px solid var(--borda)!important;border-radius:8px!important;padding:8px!important;background:var(--card)!important;color:var(--texto)!important}

@media(max-width:850px){
  .missoes-concluidas-filtros{grid-template-columns:1fr 1fr!important}
  .admin-operacoes-permissoes article{grid-template-columns:1fr!important}
  .filtro-limpar-operacao{flex-wrap:wrap!important}
}


/* =========================================================
   PORTAL P1 2.5.7
   ========================================================= */
.selecao-eventos-resumo{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important}
.selecionar-todos-eventos{display:flex!important;align-items:center!important;gap:6px!important;font-size:9px!important;font-weight:800!important;color:#1d4ed8!important}
.selecionar-todos-eventos input{width:16px!important;height:16px!important;margin:0!important}

/* Missões concluídas — margem e visual moderno */
.missoes-concluidas-caixa{padding-left:18px!important;padding-right:18px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 92%,#dbeafe),color-mix(in srgb,var(--card) 92%,#fce7f3))!important}
.missoes-concluidas-caixa .modal-topo{margin-left:2px!important;margin-right:2px!important}
.missoes-periodo-card{margin:10px 0!important;padding:10px!important;border:1px solid #93c5fd!important;border-radius:14px!important;background:linear-gradient(135deg,#eff6ff,#f5f3ff)!important;box-shadow:0 6px 18px rgba(37,99,235,.08)!important}
.missoes-periodo-tabs{display:flex!important;gap:7px!important;margin-bottom:9px!important}
.missoes-periodo-tabs button{border:1px solid #bfdbfe!important;background:#fff!important;color:#1d4ed8!important;border-radius:999px!important;padding:7px 12px!important;font-size:9px!important;font-weight:900!important;cursor:pointer!important}
.missoes-periodo-tabs button.ativo{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;box-shadow:0 4px 12px rgba(37,99,235,.18)!important}
.missoes-periodo-campos label{display:flex!important;flex-direction:column!important;gap:4px!important;font-size:10px!important;font-weight:800!important;color:#334155!important}
#mcWrapIntervalo{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
#mcWrapIntervalo.oculto,#mcWrapMes.oculto{display:none!important}
.missoes-concluidas-filtros{padding:10px!important;border-radius:14px!important;background:color-mix(in srgb,var(--card) 88%,#dcfce7)!important;border:1px solid color-mix(in srgb,#22c55e 35%,var(--borda))!important}
.missao-concluida-historico{margin-left:2px!important;margin-right:2px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 92%,#dcfce7),color-mix(in srgb,var(--card) 96%,#dbeafe))!important;box-shadow:0 5px 15px rgba(15,23,42,.06)!important}

/* Acesso somente consulta — evita qualquer aparência de edição */
#painel-operacoes .botao[hidden]{display:none!important}

@media(max-width:700px){
  .missoes-concluidas-caixa{padding-left:12px!important;padding-right:12px!important}
  #mcWrapIntervalo{grid-template-columns:1fr!important}
}


/* =========================================================
   PORTAL P1 2.5.8 — Home / Missões Concluídas
   ========================================================= */
#modalMissoesConcluidas .missoes-concluidas-caixa{
  background:#ffffff!important;
  color:#172033!important;
}
#modalMissoesConcluidas .missoes-concluidas-caixa .modal-topo,
#modalMissoesConcluidas .missoes-concluidas-caixa .missoes-concluidas-filtros,
#modalMissoesConcluidas .missoes-concluidas-caixa .missoes-concluidas-lista{
  color:#172033!important;
}
#modalMissoesConcluidas .missao-concluida-historico{
  background:#ffffff!important;
  color:#172033!important;
}
#modalMissoesConcluidas .missao-concluida-historico strong,
#modalMissoesConcluidas .missao-concluida-historico p{
  color:#172033!important;
}
#modalMissoesConcluidas .mc-meta{color:#64748b!important}
#modalMissoesConcluidas input,
#modalMissoesConcluidas select{
  background:#ffffff!important;
  color:#172033!important;
}

/* Operações — botões de filtro compactos para permanecerem dentro do widget */
#painel-operacoes .filtro-limpar-operacao{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:4px!important;
  align-items:flex-end!important;
}
#painel-operacoes #btnLimparFiltrosOperacao,
#painel-operacoes #btnSelecionarEventos{
  padding:5px 7px!important;
  min-height:29px!important;
  font-size:8px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  border-radius:7px!important;
}
#painel-operacoes #btnLimparFiltrosOperacao i,
#painel-operacoes #btnSelecionarEventos i{font-size:9px!important}


/* =========================================================
   PORTAL P1 2.5.8 — Meus PJES
   ========================================================= */
#painel-meus-pjes .pjes-lancamentos-card{display:none!important}
#painel-meus-pjes .pjes-filtros-topo{align-items:center!important}
#painel-meus-pjes .pjes-filtros-acoes{display:flex!important;gap:6px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
#painel-meus-pjes .pjes-filtros-acoes .botao{white-space:nowrap!important}

#painel-meus-pjes .pjes-totais-mes-topo{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:12px!important
}
#painel-meus-pjes .pjes-totais-mes-topo h3{margin:0!important}
#painel-meus-pjes .pjes-totais-mes-topo .acoes{display:flex!important;align-items:center!important;gap:7px!important}
#painel-meus-pjes .pjes-totais-mes-topo label{display:flex!important;align-items:center!important;gap:5px!important;font-size:10px!important;font-weight:800!important}
#painel-meus-pjes .pjes-totais-mes-topo select{border:1px solid var(--borda)!important;border-radius:8px!important;padding:6px 8px!important;background:var(--card)!important;color:var(--texto)!important}

#painel-meus-pjes .resumo-mensal-pjes{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
#painel-meus-pjes .mes-pjes-card{
  border:1px solid #dbeafe!important;
  border-radius:14px!important;
  padding:12px!important;
  background:linear-gradient(145deg,#ffffff,#f8fbff)!important;
  box-shadow:0 7px 18px rgba(37,99,235,.07)!important;
  cursor:pointer!important;
  transition:.15s!important;
  min-width:0!important;
}
#painel-meus-pjes .mes-pjes-card:hover{transform:translateY(-2px)!important;box-shadow:0 10px 24px rgba(37,99,235,.12)!important;border-color:#93c5fd!important}
#painel-meus-pjes .mes-pjes-card.mes-sem-lancamento{opacity:.64!important}
#painel-meus-pjes .mes-pjes-cabecalho{display:flex!important;justify-content:space-between!important;gap:8px!important;align-items:flex-start!important;margin-bottom:9px!important}
#painel-meus-pjes .mes-pjes-cabecalho>div{display:flex!important;flex-direction:column!important;gap:2px!important}
#painel-meus-pjes .mes-pjes-cabecalho strong{font-size:12px!important;color:#1e3a8a!important}
#painel-meus-pjes .mes-pjes-cabecalho span{font-size:8.5px!important;color:#64748b!important}
#painel-meus-pjes .mes-pjes-tipos{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
#painel-meus-pjes .mes-pjes-tipos>div{padding:8px!important;border-radius:10px!important;background:#f1f5f9!important;display:flex!important;flex-direction:column!important;gap:2px!important}
#painel-meus-pjes .mes-pjes-tipos>div:first-child{background:#e0f2fe!important}
#painel-meus-pjes .mes-pjes-tipos>div:last-child{background:#ede9fe!important}
#painel-meus-pjes .mes-pjes-tipos small,#painel-meus-pjes .mes-pjes-financeiro small{font-size:8px!important;color:#64748b!important}
#painel-meus-pjes .mes-pjes-tipos b{font-size:12px!important}
#painel-meus-pjes .mes-pjes-tipos span{font-size:8px!important;color:#64748b!important}
#painel-meus-pjes .mes-pjes-financeiro{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:5px!important;margin-top:7px!important}
#painel-meus-pjes .mes-pjes-financeiro>div{padding:6px!important;border-radius:8px!important;display:flex!important;flex-direction:column!important;min-width:0!important}
#painel-meus-pjes .mes-pjes-financeiro .pago{background:#ecfdf5!important}
#painel-meus-pjes .mes-pjes-financeiro .receber{background:#fff7ed!important}
#painel-meus-pjes .mes-pjes-financeiro b{font-size:9px!important;white-space:nowrap!important}
#painel-meus-pjes .mes-pjes-total-geral{margin-top:7px!important;padding-top:7px!important;border-top:1px solid #dbeafe!important;display:flex!important;justify-content:space-between!important;align-items:center!important}
#painel-meus-pjes .mes-pjes-total-geral span{font-size:9px!important;font-weight:800!important}
#painel-meus-pjes .mes-pjes-total-geral strong{font-size:14px!important;color:#1d4ed8!important}

.pjes-mes-modal-caixa{width:min(1100px,96vw)!important;max-height:90vh!important;overflow:auto!important;background:#fff!important;color:#172033!important}
.pjes-mes-modal-acoes{display:flex!important;justify-content:flex-end!important;margin:8px 0!important}
.pjes-mes-tabela{width:100%!important}

@media(max-width:780px){
  #painel-meus-pjes .resumo-mensal-pjes{grid-template-columns:1fr!important}
  #painel-meus-pjes .pjes-totais-mes-topo{align-items:flex-start!important;flex-direction:column!important}
  #painel-meus-pjes .mes-pjes-financeiro{grid-template-columns:1fr 1fr!important}
}


/* =========================================================
   PORTAL P1 2.5.9 — Meus PJES refinado
   ========================================================= */
#painel-meus-pjes .mes-pjes-card{
  opacity:1!important;
  background:linear-gradient(145deg,#eaf4ff,#ffffff 58%,#edf6ff)!important;
  border:2px solid #bfdbfe!important;
}
#painel-meus-pjes .mes-pjes-card:nth-child(4n+2){
  background:linear-gradient(145deg,#f3e8ff,#ffffff 58%,#f5edff)!important;
  border-color:#ddd6fe!important;
}
#painel-meus-pjes .mes-pjes-card:nth-child(4n+3){
  background:linear-gradient(145deg,#ecfdf5,#ffffff 58%,#edfdf6)!important;
  border-color:#bbf7d0!important;
}
#painel-meus-pjes .mes-pjes-card:nth-child(4n){
  background:linear-gradient(145deg,#fff7ed,#ffffff 58%,#fff5e9)!important;
  border-color:#fed7aa!important;
}
#painel-meus-pjes .mes-pjes-card.mes-sem-lancamento{opacity:.78!important}
#painel-meus-pjes .mes-pjes-cabecalho strong{font-size:14px!important}
#painel-meus-pjes .mes-pjes-cabecalho span{font-size:10px!important}
#painel-meus-pjes .mes-pjes-tipos small,
#painel-meus-pjes .mes-pjes-financeiro small{font-size:9.5px!important}
#painel-meus-pjes .mes-pjes-tipos b{font-size:14px!important}
#painel-meus-pjes .mes-pjes-tipos span{font-size:9.5px!important}
#painel-meus-pjes .mes-pjes-financeiro b{font-size:10.5px!important}
#painel-meus-pjes .mes-pjes-total-geral span{font-size:10.5px!important}
#painel-meus-pjes .mes-pjes-total-geral strong{font-size:16px!important}
#painel-meus-pjes .mes-pjes-card-acoes{display:flex!important;gap:5px!important;align-items:center!important}
#painel-meus-pjes .mes-pjes-card-acoes button{background:rgba(255,255,255,.88)!important;border:1px solid rgba(37,99,235,.20)!important}

.pjes-consulta-modal-caixa{
  width:min(1100px,96vw)!important;
  max-height:90vh!important;
  overflow:auto!important;
  background:#fff!important;
  color:#172033!important;
}
.pjes-consulta-acoes{display:flex!important;justify-content:flex-end!important;margin:8px 0!important}
.status-consulta-pjes{display:inline-block!important;padding:4px 7px!important;border-radius:999px!important;font-size:8px!important;font-weight:900!important}
.status-consulta-pjes.pago{background:#dcfce7!important;color:#166534!important}
.status-consulta-pjes.receber{background:#ffedd5!important;color:#9a3412!important}

#painel-operacoes .operacao-filtros-eventos{display:grid!important;grid-template-columns:repeat(4,minmax(130px,1fr))!important;gap:7px!important;align-items:end!important}
#painel-operacoes .operacao-filtros-eventos select,#painel-operacoes .operacao-filtros-eventos input,#painel-operacoes .operacao-filtros-eventos .botao{min-height:34px!important;height:34px!important;font-size:9px!important}
#painel-operacoes .filtro-limpar-operacao{grid-column:1/span 2!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
#painel-operacoes .filtro-limpar-operacao .botao,#painel-operacoes .filtro-nome-operacao .botao{width:100%!important;font-size:9px!important}
.operacao-evento-card.evento-inconsistente{outline:2px solid #f59e0b!important;box-shadow:0 0 0 3px rgba(245,158,11,.12),0 7px 18px rgba(245,158,11,.10)!important}
.operacao-evento-status.inconsistente{background:#fef3c7!important;color:#92400e!important;border:1px solid #f59e0b!important;font-weight:900!important;font-size:10px!important}
@media(max-width:1000px){#painel-operacoes .operacao-filtros-eventos{grid-template-columns:repeat(2,minmax(130px,1fr))!important}}
@media(max-width:620px){#painel-operacoes .operacao-filtros-eventos{grid-template-columns:1fr!important}#painel-operacoes .filtro-limpar-operacao{grid-column:auto!important}}


/* =========================================================
   PORTAL P1 2.6.1 — Operações: botões, filtros, cópia e rodapé
   ========================================================= */

/* Botões do topo: todos visíveis, sem barra horizontal */
#painel-operacoes .operacao-detalhe-topo{
  align-items:flex-start!important;
  gap:8px!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:4px!important;
  overflow:visible!important;
  max-width:58%!important;
  padding-bottom:0!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes .botao{
  min-height:28px!important;
  height:28px!important;
  padding:4px 7px!important;
  font-size:8px!important;
  line-height:1!important;
  border-radius:7px!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes .botao i{
  font-size:8px!important;
}

/* Terceira linha do widget: os três botões lado a lado */
#painel-operacoes .filtro-acoes-operacao{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  align-items:center!important;
}
#painel-operacoes .filtro-acoes-operacao .botao{
  width:100%!important;
  min-width:0!important;
  height:32px!important;
  min-height:32px!important;
  padding:4px 6px!important;
  font-size:8.5px!important;
  white-space:nowrap!important;
}
#painel-operacoes .filtro-acoes-operacao .botao i{
  font-size:8.5px!important;
}

/* neutraliza regras antigas das duas caixas removidas */
#painel-operacoes .filtro-limpar-operacao,
#painel-operacoes .filtro-nome-operacao{display:none!important}

/* Status do salvamento do rodapé */
#statusRodapeOperacao{
  font-size:9px!important;
  color:var(--texto-suave)!important;
  align-self:center!important;
}

@media(max-width:1000px){
  #painel-operacoes .operacao-detalhe-topo>.acoes{max-width:64%!important}
}
@media(max-width:760px){
  #painel-operacoes .operacao-detalhe-topo{flex-direction:column!important}
  #painel-operacoes .operacao-detalhe-topo>.acoes{max-width:100%!important;justify-content:flex-start!important}
  #painel-operacoes .filtro-acoes-operacao{grid-template-columns:1fr!important}
}


/* =========================================================
   PORTAL P1 2.6.2 — Operações
   ========================================================= */

/* Botões do topo: um pouco maiores, ainda sem rolagem */
#painel-operacoes .operacao-detalhe-topo>.acoes{
  max-width:64%!important;
  gap:5px!important;
  overflow:visible!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes .botao{
  min-height:31px!important;
  height:31px!important;
  padding:5px 9px!important;
  font-size:9px!important;
  line-height:1.05!important;
  border-radius:7px!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes .botao i{font-size:9px!important}

/* Terceira linha: 3 botões do mesmo tamanho dos demais campos; 4º espaço fica vazio */
#painel-operacoes .filtro-acoes-operacao{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(130px,1fr))!important;
  gap:7px!important;
  align-items:end!important;
}
#painel-operacoes .filtro-acoes-operacao .botao{
  width:100%!important;
  min-width:0!important;
  min-height:34px!important;
  height:34px!important;
  padding:5px 8px!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#painel-operacoes .filtro-acoes-operacao .botao i{font-size:9px!important}

/* Auditoria: vermelho pendente, verde quando usuário marca ciência */
.auditoria-item-clicavel{position:relative!important;padding-right:46px!important}
.auditoria-item-clicavel.auditoria-ciente{
  border-color:#86efac!important;
  background:#f0fdf4!important;
  box-shadow:inset 4px 0 0 #22c55e!important;
}
.auditoria-item-clicavel.auditoria-ciente strong,
.auditoria-item-clicavel.auditoria-ciente p,
.auditoria-item-clicavel.auditoria-ciente span{color:#166534!important}
.auditoria-check{
  position:absolute!important;
  right:10px!important;
  top:10px!important;
  width:29px!important;
  height:29px!important;
  border-radius:8px!important;
  border:1px solid #fca5a5!important;
  background:#fff!important;
  color:#b91c1c!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
  z-index:4!important;
}
.auditoria-check.ativo{
  border-color:#86efac!important;
  background:#22c55e!important;
  color:#fff!important;
}

/* Cópia visual uniforme — também beneficia visualizações que reutilizem a tabela */
.operacao-copia-tabela{
  width:900px!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}

@media(max-width:1050px){
  #painel-operacoes .operacao-detalhe-topo>.acoes{max-width:70%!important}
}
@media(max-width:900px){
  #painel-operacoes .filtro-acoes-operacao{grid-template-columns:repeat(2,minmax(130px,1fr))!important}
}
@media(max-width:760px){
  #painel-operacoes .operacao-detalhe-topo>.acoes{max-width:100%!important}
}


/* PORTAL P1 2.6.3 — Operações */
#painel-operacoes .operacao-detalhe-topo{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  align-items:start!important;
}
#painel-operacoes .operacao-detalhe-topo>div:first-child{width:100%!important}
#painel-operacoes .operacao-detalhe-topo>.acoes{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:5px!important;
  overflow:visible!important;
  padding-bottom:0!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes .botao{
  flex:1 1 0!important;
  min-width:0!important;
  min-height:32px!important;
  height:32px!important;
  padding:5px 7px!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#painel-operacoes .operacao-detalhe-topo>.acoes .botao i{font-size:9px!important}
@media(max-width:760px){
  #painel-operacoes .operacao-detalhe-topo>.acoes{flex-wrap:wrap!important}
  #painel-operacoes .operacao-detalhe-topo>.acoes .botao{flex:1 1 calc(33.333% - 6px)!important}
}

.auditoria-check[data-saving="1"]{opacity:.7!important;pointer-events:none!important}


/* =========================================================
   PORTAL P1 2.7.2 — NOTAS
   ========================================================= */
#painel-notas{padding-bottom:28px}
.notas-categorias{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.nota-categoria-card{
  border:1px solid var(--borda,#dbe3ee);
  border-radius:14px;
  background:var(--cartao,#fff);
  color:var(--texto,#172033);
  padding:14px 16px;
  display:grid;
  grid-template-columns:44px 1fr;
  gap:11px;
  align-items:center;
  text-align:left;
  cursor:pointer;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}
.nota-categoria-card>i{
  width:44px;height:44px;border-radius:12px;
  display:grid;place-items:center;
  background:#eaf3ff;color:#1d4ed8;font-size:18px
}
.nota-categoria-card span{display:flex;flex-direction:column;gap:2px}
.nota-categoria-card strong{font-size:14px}
.nota-categoria-card small{font-size:10px;color:var(--texto-suave,#64748b)}
.nota-categoria-card.ativo{border-color:#60a5fa;background:#eff6ff;box-shadow:0 7px 20px rgba(37,99,235,.10)}
.nota-categoria-card.ativo>i{background:#1e90ff;color:#fff}
.nota-area{display:none}
.nota-area.ativo{display:block}
.nota-toolbar-card{
  border:1px solid var(--borda,#dbe3ee);
  border-radius:14px;
  padding:14px;
  background:var(--cartao,#fff);
  margin-bottom:12px;
}
.nota-toolbar-topo{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.nota-toolbar-topo h3{margin:0 0 3px;font-size:15px}
.nota-toolbar-topo p{margin:0;color:var(--texto-suave,#64748b);font-size:10px}
.nota-entrada-pm{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.nota-entrada-pm input{
  min-height:38px;border:1px solid var(--borda,#dbe3ee);border-radius:9px;
  padding:8px 10px;background:var(--hover,#f8fafc);color:var(--texto,#172033)
}
.nota-tabela-wrap{
  border:1px solid var(--borda,#dbe3ee);
  border-radius:13px;
  background:var(--cartao,#fff);
  padding:10px;
  overflow:auto;
}
.notas-tabela{
  width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed;
  font-size:10px;color:var(--texto,#172033)
}
.notas-tabela th,.notas-tabela td{
  border:1px solid #9ca3af;padding:7px 6px;text-align:center;vertical-align:middle
}
.notas-tabela th{background:#e9eef5;font-weight:800}
.notas-tabela .c-grad{width:9%}.notas-tabela .c-mat{width:12%}.notas-tabela .c-nome{width:21%}
.notas-tabela .c-parecer{width:12%}.notas-tabela .c-dias{width:9%}.notas-tabela .c-data{width:12%}
.notas-tabela .c-sei{width:11%}.notas-tabela .c-cpm{width:12%}.notas-tabela .c-acoes{width:5%}
.nota-input{
  width:100%;min-width:0;border:0;background:transparent;color:inherit;text-align:center;
  font:inherit;padding:3px 2px;outline:none
}
.nota-input:focus{background:#eff6ff;box-shadow:inset 0 0 0 1px #60a5fa;border-radius:5px}
.nota-calculada{font-weight:800;background:#f8fafc}
@media(max-width:780px){
  .notas-categorias{grid-template-columns:1fr}
  .nota-toolbar-topo{flex-direction:column}
  .nota-entrada-pm{grid-template-columns:1fr}
}


/* =========================================================
   PORTAL P1 2.7.3 — NOTAS / ajustes Atestados e Férias
   ========================================================= */
.nota-nome-duplicar{
  border:0;background:transparent;color:inherit;font:inherit;font-weight:700;
  cursor:pointer;padding:3px 5px;border-radius:6px;text-transform:uppercase
}
.nota-nome-duplicar:hover{background:#dbeafe;color:#1d4ed8;text-decoration:underline}
.nota-ferias-config{
  display:grid;grid-template-columns:180px 220px;gap:10px;margin:8px 0 10px
}
.nota-ferias-config label{
  display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;color:var(--texto,#172033)
}
.nota-ferias-config input{
  min-height:36px;border:1px solid var(--borda,#dbe3ee);border-radius:8px;
  padding:7px 9px;background:var(--hover,#f8fafc);color:var(--texto,#172033)
}
.nota-ferias-texto-padrao{
  margin:8px 0 12px;padding:11px 13px;border-radius:10px;background:#f8fafc;
  border:1px solid #e2e8f0;color:var(--texto,#172033);font-size:11px;line-height:1.5;text-align:justify
}
@media(max-width:620px){
  .nota-ferias-config{grid-template-columns:1fr}
}


/* =========================================================
   PORTAL P1 2.7.6 — NOTAS / LICENÇA PATERNIDADE
   ========================================================= */
.notas-categorias{grid-template-columns:repeat(4,minmax(0,1fr))}
.nota-paternidade-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
  margin-top:8px;
}
.nota-paternidade-form>label{
  display:flex;
  flex-direction:column;
  gap:5px;
  font-size:10px;
  font-weight:800;
  color:var(--texto,#172033);
}
.nota-paternidade-form input{
  min-height:38px;
  border:1px solid var(--borda,#dbe3ee);
  border-radius:9px;
  padding:8px 10px;
  background:var(--hover,#f8fafc);
  color:var(--texto,#172033);
}
.nota-paternidade-pm-linha{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
}
.nota-paternidade-preview-card{
  border:1px solid var(--borda,#dbe3ee);
  background:var(--cartao,#fff);
  border-radius:14px;
  padding:14px;
}
.nota-paternidade-preview-titulo{
  font-size:12px;
  font-weight:800;
  color:#1d4ed8;
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:6px;
}
.nota-paternidade-preview{
  background:#fff;
  color:#111827;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:16px 18px;
  font-size:12px;
  line-height:1.6;
  text-align:justify;
}
.nota-paternidade-preview strong{font-weight:800}
@media(max-width:900px){
  .notas-categorias{grid-template-columns:1fr}
  .nota-paternidade-form{grid-template-columns:1fr}
}
@media(max-width:620px){
  .nota-paternidade-pm-linha{grid-template-columns:1fr}
}


/* =========================================================
   PORTAL P1 2.7.10 — NOTAS / LUTO
   ========================================================= */
#painel-notas .notas-categorias{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
@media(max-width:900px){
  #painel-notas .notas-categorias{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   PORTAL P1 2.7.11 — ADPM
   ========================================================= */
#painel-adpm{padding-bottom:40px}
.adpm-cabecalho{align-items:center}
.adpm-resumo{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
.adpm-resumo article{background:#fff;border:1px solid #dbe5f3;border-radius:15px;padding:14px 16px;box-shadow:0 6px 18px rgba(25,62,105,.07)}
.adpm-resumo span,.adpm-resumo small{display:block;color:#65758b;font-size:.78rem}
.adpm-resumo strong{display:block;color:#123a73;font-size:1.05rem;margin:4px 0}
.adpm-abas{display:flex;gap:8px;margin:0 0 14px;flex-wrap:wrap}
.adpm-aba{border:1px solid #c8d8ee;background:#fff;color:#17457d;border-radius:10px;padding:10px 18px;font-weight:700;cursor:pointer}
.adpm-aba.ativo{background:#0d4ca3;color:#fff;border-color:#0d4ca3}
.adpm-area{display:none}.adpm-area.ativo{display:block}
.adpm-card{background:#fff;border:1px solid #dbe5f3;border-radius:18px;padding:18px;box-shadow:0 8px 25px rgba(25,62,105,.07)}
.adpm-card-titulo{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.adpm-card-titulo h3{margin:0;color:#173d70}.adpm-card-titulo p{margin:4px 0 0;color:#6b7788}
.adpm-status{font-size:.78rem;background:#eef6ff;color:#1761ad;border-radius:999px;padding:7px 10px;white-space:nowrap}
.adpm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.adpm-form-grid label,.adpm-manual-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#263b56}
.adpm-form-grid input,.adpm-form-grid textarea,.adpm-manual-grid input{width:100%;box-sizing:border-box;border:1px solid #cbd8e8;border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:#172b45}
.adpm-form-grid textarea{resize:vertical;min-height:72px}
.adpm-campo-largo{grid-column:1/-1}
.adpm-linha-busca{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px}
.adpm-preview-identificacao{border:1px solid #d8e4f2;background:#f7fbff;border-radius:10px;padding:12px;font-weight:500;line-height:1.5;color:#263b56}
.adpm-preview-identificacao strong{font-weight:800}
.adpm-manual-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;background:#f6f9fd;border:1px dashed #b9cce5;border-radius:12px}
.adpm-prazo-box{margin-top:16px;background:#eef7ff;border:1px solid #bddcff;border-radius:14px;padding:14px;display:flex;gap:12px;align-items:center}
.adpm-prazo-box i{font-size:1.6rem;color:#0d63bd}.adpm-prazo-box span,.adpm-prazo-box small{display:block;color:#5d7188}.adpm-prazo-box strong{display:block;font-size:1.15rem;color:#143f74;margin:2px 0}
.adpm-documentos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.adpm-doc-card{border:1px solid #d7e3f1;border-radius:14px;padding:14px;background:#fbfdff;display:flex;gap:12px;justify-content:space-between;align-items:center}
.adpm-doc-card.concluido{background:#eefaf2;border-color:#9bd6ad}
.adpm-doc-card-info{min-width:0}.adpm-doc-card-info strong{display:block;color:#173e72}.adpm-doc-card-info small{display:block;color:#697a8e;margin-top:4px}
.adpm-doc-card-acoes{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.adpm-doc-status{display:inline-block;margin-top:6px;font-size:.72rem;font-weight:800;border-radius:999px;padding:4px 8px;background:#fff0e5;color:#a54c00}
.adpm-doc-card.concluido .adpm-doc-status{background:#d9f4e1;color:#17682d}
.adpm-modal-documento{max-width:900px;width:min(94vw,900px);max-height:88vh;overflow:auto}
.adpm-documento-sei{background:#fff;color:#000;border:1px solid #d6d6d6;padding:34px 42px;margin:10px 0 18px;font-family:Arial,sans-serif;font-size:12pt;line-height:1.45}
.adpm-documento-sei p{margin:0 0 14px;text-align:justify}.adpm-documento-sei .destinatario{text-align:left}.adpm-documento-sei .centro{text-align:center}.adpm-documento-sei strong{font-weight:700}
@media(max-width:900px){
 .adpm-resumo{grid-template-columns:1fr 1fr}
 .adpm-form-grid{grid-template-columns:1fr}
 .adpm-campo-largo{grid-column:auto}
 .adpm-linha-busca{grid-template-columns:1fr}
 .adpm-manual-grid{grid-template-columns:1fr}
 .adpm-documentos-grid{grid-template-columns:1fr}
}

/* 2.7.11.2 — formatação documental ADPM conforme PDFs SEI fornecidos */
.adpm-documento-sei{
  font-family:Arial,Helvetica,sans-serif!important;font-size:12pt!important;line-height:1.35!important;
  color:#000!important;background:#fff!important;padding:34px 44px!important;text-align:left!important;
}
.adpm-documento-sei .sei-cab-unidade,.adpm-documento-sei .sei-cab-capa{text-align:center!important;line-height:1.25!important;margin-bottom:18px!important}
.adpm-documento-sei .sei-cab-capa span{font-size:10.5pt!important}
.adpm-documento-sei .sei-titulo-capa,.adpm-documento-sei .sei-subtitulo-capa,.adpm-documento-sei .sei-rel-titulo{
 text-align:center!important;font-weight:700!important;margin:24px 0 20px!important
}
.adpm-documento-sei .sei-dados-capa p{margin:0 0 8px!important;text-align:left!important}
.adpm-documento-sei .sei-expediente{text-align:left!important;margin:0 0 8px!important}
.adpm-documento-sei .sei-data-direita{text-align:right!important;margin:0 0 20px!important}
.adpm-documento-sei .sei-destinatario{text-align:left!important;margin:0 0 18px!important;line-height:1.35!important}
.adpm-documento-sei .sei-metadados{text-align:left!important;margin:0 0 20px!important;line-height:1.45!important}
.adpm-documento-sei .sei-corpo{text-align:justify!important;margin:0 0 14px!important}
.adpm-documento-sei .sei-recuo{text-indent:3.2em!important}
.adpm-documento-sei .sei-item{text-align:justify!important;margin:0 0 10px 3.2em!important}
.adpm-documento-sei .sei-assinatura{text-align:center!important;margin:28px auto 18px!important;line-height:1.35!important}
.adpm-documento-sei .sei-ref-final{text-align:left!important;margin-top:22px!important}
.adpm-documento-sei .sei-tabela-titulo{text-align:center!important;font-weight:700!important;margin:20px 0 8px!important}
.adpm-documento-sei .sei-tabela{width:100%!important;border-collapse:collapse!important;margin:0 auto 18px!important}
.adpm-documento-sei .sei-tabela th,.adpm-documento-sei .sei-tabela td{border:1px solid #000!important;padding:6px 7px!important;text-align:left!important;vertical-align:top!important}
.adpm-documento-sei .sei-tabela th{text-align:center!important;font-weight:700!important}
.adpm-documento-sei .sei-data-relatorio{text-align:left!important;margin-top:22px!important}
/* 2.7.11.3 — ajustes visuais do módulo ADPM */
.adpm-materiais-bloco{border:1px solid #dce6f2;border-radius:18px;padding:16px;background:linear-gradient(135deg,#fff,#f7fbff);box-shadow:0 10px 26px rgba(29,68,115,.08)}
.adpm-materiais-titulo{display:flex;align-items:center;gap:11px;margin-bottom:13px}.adpm-materiais-titulo>i{font-size:1.25rem}.adpm-materiais-titulo strong,.adpm-materiais-titulo small{display:block}.adpm-materiais-titulo small{margin-top:3px;color:#65758b}
.adpm-materiais-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.adpm-material-item{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e2e9f2;border-radius:12px;background:#fff;transition:transform .18s ease,box-shadow .18s ease}
.adpm-material-item:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(24,62,105,.10)}.adpm-material-item input{width:82px!important;margin:0!important;text-align:center}
.adpm-doc-card{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;background:linear-gradient(135deg,#ffffff,#f5f9ff)!important;box-shadow:0 7px 20px rgba(25,62,105,.07)}
.adpm-doc-card:nth-child(4n+1){background:linear-gradient(135deg,#fff,#f0f7ff)!important}.adpm-doc-card:nth-child(4n+2){background:linear-gradient(135deg,#fff,#f5f2ff)!important}.adpm-doc-card:nth-child(4n+3){background:linear-gradient(135deg,#fff,#effbf6)!important}.adpm-doc-card:nth-child(4n){background:linear-gradient(135deg,#fff,#fff7ed)!important}
.adpm-doc-card:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(25,62,105,.14)}.adpm-doc-card.concluido{background:linear-gradient(135deg,#f2fff6,#e8f9ee)!important}
.adpm-doc-card-acoes{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex-shrink:0}.adpm-doc-card-acoes .botao{white-space:nowrap!important}
@media(max-width:680px){.adpm-materiais-lista{grid-template-columns:1fr}.adpm-doc-card{align-items:flex-start}.adpm-doc-card-acoes{flex-direction:row!important;flex-wrap:nowrap!important}}

/* 2.7.11.4 — cards dos ofícios/memorandos ADPM */
#adpmListaDocumentos{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(330px,1fr))!important;gap:14px!important}
#adpmListaDocumentos .adpm-doc-card{--a:#2563eb;--b1:#eff6ff;--b2:#bfdbfe;position:relative!important;isolation:isolate!important;min-height:112px!important;padding:16px 16px 16px 20px!important;border:1px solid var(--a)!important;border-left:7px solid var(--a)!important;border-radius:17px!important;background:linear-gradient(135deg,var(--b1),var(--b2))!important;box-shadow:0 9px 22px rgba(15,23,42,.11)!important;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;overflow:hidden!important}
#adpmListaDocumentos .adpm-doc-card::after{content:"";position:absolute;z-index:-1;width:105px;height:105px;border-radius:50%;right:-35px;top:-42px;background:var(--a);opacity:.11;transition:transform .3s ease,opacity .3s ease}
#adpmListaDocumentos .adpm-doc-card:hover{transform:translateY(-5px) scale(1.01)!important;box-shadow:0 16px 32px rgba(15,23,42,.18)!important;filter:saturate(1.12)!important}
#adpmListaDocumentos .adpm-doc-card:hover::after{transform:scale(1.4);opacity:.18}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+1){--a:#2563eb;--b1:#eff6ff;--b2:#bfdbfe}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+2){--a:#7c3aed;--b1:#f5f3ff;--b2:#ddd6fe}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+3){--a:#0891b2;--b1:#ecfeff;--b2:#a5f3fc}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+4){--a:#db2777;--b1:#fdf2f8;--b2:#fbcfe8}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+5){--a:#ea580c;--b1:#fff7ed;--b2:#fed7aa}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+6){--a:#16a34a;--b1:#f0fdf4;--b2:#bbf7d0}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n+7){--a:#ca8a04;--b1:#fefce8;--b2:#fef08a}
#adpmListaDocumentos .adpm-doc-card:nth-child(8n){--a:#4f46e5;--b1:#eef2ff;--b2:#c7d2fe}
#adpmListaDocumentos .adpm-doc-card-info strong{font-size:15px!important;color:#172554!important}
#adpmListaDocumentos .adpm-doc-card-info small{font-size:12px!important;color:#475569!important}
#adpmListaDocumentos .adpm-doc-status{display:inline-flex!important;margin-top:9px!important;padding:4px 9px!important;border-radius:999px!important;background:rgba(255,255,255,.82)!important;color:var(--a)!important;font-weight:800!important;font-size:10px!important;border:1px solid var(--a)!important}
#adpmListaDocumentos .adpm-doc-card.concluido{--a:#15803d!important;--b1:#f0fdf4!important;--b2:#86efac!important}
#adpmListaDocumentos .adpm-doc-card.concluido .adpm-doc-status{background:#15803d!important;color:#fff!important}
@media(max-width:760px){#adpmListaDocumentos{grid-template-columns:1fr!important}}

/* 2.7.11.5 — Declarações e checklist ADPM */
.adpm-declaracoes-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:14px}
.adpm-declaracao-card{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:16px;border:1px solid #bfdbfe;border-radius:16px;background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:0 7px 18px rgba(15,23,42,.08)}
.adpm-declaracao-card>i{font-size:24px;color:#1d4ed8;text-align:center}.adpm-declaracao-card strong,.adpm-declaracao-card small{display:block}.adpm-declaracao-card small{margin-top:4px;color:#64748b}
.adpm-declaracao-editavel{min-height:560px;background:#fff;outline:none}.adpm-declaracao-editavel:focus{box-shadow:inset 0 0 0 2px #93c5fd}
.decl-cab{text-align:center;line-height:1.45}.decl-titulo{text-align:center;text-decoration:underline;margin:42px 0 38px}.decl-corpo{font-family:"Times New Roman",serif;font-size:12pt;line-height:1.65;text-align:justify}.decl-centro,.decl-ass{text-align:center;margin-top:38px}
.adpm-checklist-final h3{text-align:center;margin-bottom:6px}.adpm-checklist-lista{display:grid;gap:8px;margin-top:18px}.adpm-check-item{display:grid;grid-template-columns:28px 1fr auto;align-items:center;padding:11px 13px;border-radius:10px;border:1px solid}.adpm-check-item.ok{background:#f0fdf4;border-color:#86efac;color:#166534}.adpm-check-item.pendente{background:#fff7ed;border-color:#fdba74;color:#9a3412}.adpm-check-item strong{font-size:11px}
@media(max-width:760px){.adpm-declaracoes-grid{grid-template-columns:1fr}}

/* 2.7.11.7 — endereços SEI dos documentos ADPM */
#adpmListaDocumentos .adpm-sei-btn{background:#0f766e!important;color:#fff!important;border-color:#0f766e!important}
.adpm-modal-sei{max-width:760px!important}.adpm-sei-lista{display:grid;gap:10px;margin:16px 0}
.adpm-sei-item{display:grid;grid-template-columns:minmax(260px,1fr) auto auto auto;gap:8px;align-items:center;padding:10px;border:1px solid #dbeafe;border-radius:12px;background:#f8fafc}
.adpm-sei-item input{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;font-weight:700}
@media(max-width:700px){.adpm-sei-item{grid-template-columns:1fr auto auto}.adpm-sei-item input{grid-column:1/-1}}

/* 2.7.11.8 — rolagem interna dos endereços SEI */
.adpm-modal-sei{max-height:88vh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
.adpm-modal-sei .modal-cabecalho,.adpm-modal-sei>.acoes{flex:0 0 auto}
.adpm-sei-lista{overflow-y:auto!important;overflow-x:hidden!important;max-height:58vh!important;padding-right:8px!important;scrollbar-gutter:stable}

/* ===== Plano de Férias v2.7.12 ===== */
#painel-plano-ferias .pf-cabecalho{align-items:center}.pf-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px}.pf-sidebar{border:1px solid var(--borda);border-radius:14px;background:var(--card);padding:12px;align-self:start;position:sticky;top:12px}.pf-sidebar-titulo{display:flex;flex-direction:column;gap:2px;padding:4px 4px 10px}.pf-sidebar-titulo small,.pf-topo p{color:var(--texto-suave)}.plano-ferias-item{width:100%;border:1px solid var(--borda);background:var(--card);color:var(--texto);border-radius:10px;padding:11px;margin:4px 0;display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left}.plano-ferias-item span{font-weight:800}.plano-ferias-item.ativo{border-color:var(--cor-principal);box-shadow:0 0 0 2px color-mix(in srgb,var(--cor-principal) 15%,transparent)}.plano-ferias-item small{color:var(--texto-suave)}.pf-conteudo{min-width:0}.pf-vazio{min-height:300px;border:1px dashed var(--borda);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--texto-suave)}.pf-vazio>i{font-size:42px;margin-bottom:12px}.pf-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border:1px solid var(--borda);border-radius:14px;background:var(--card);padding:14px}.pf-topo h3{margin:0;font-size:20px}.pf-topo p{margin:4px 0 0;font-size:11px}.pf-acoes{justify-content:flex-end;flex-wrap:wrap}.pf-resumo{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:9px;margin:12px 0}.pf-resumo article{border:1px solid var(--borda);background:var(--card);border-radius:12px;padding:11px;display:flex;flex-direction:column;gap:5px}.pf-resumo span{font-size:10px;text-transform:uppercase;color:var(--texto-suave);font-weight:800}.pf-resumo strong{font-size:22px}.pf-relatorios{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.pf-rel-card{border:1px solid var(--borda);border-radius:12px;background:var(--card);padding:11px;max-height:250px;overflow:auto}.pf-rel-card h4{margin:0 0 8px}.pf-rel-card div{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid var(--borda);font-size:11px}.pf-meses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pf-mes-card{border:1px solid var(--borda);border-radius:13px;background:var(--card);padding:11px;min-width:0}.pf-mes-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pf-mes-card h4{margin:0}.pf-mes-card header strong{border-radius:999px;background:var(--cor-principal);color:#fff;min-width:27px;height:27px;display:grid;place-items:center}.pf-mes-card table{width:100%;border-collapse:collapse;font-size:10px}.pf-mes-card th,.pf-mes-card td{padding:6px;border-bottom:1px solid var(--borda);text-align:left}.pf-status{font-weight:800;font-size:9px;white-space:nowrap}.pf-status.fora{color:#b42318}.pf-status.sem{color:#7a5b00}.pf-modal{position:fixed;inset:0;z-index:31000;display:flex;align-items:center;justify-content:center;background:rgba(2,6,23,.68);padding:18px}.pf-modal-caixa{width:min(850px,calc(100vw - 28px));max-height:92vh;overflow:auto}.pf-form{padding:16px;display:grid;gap:12px}.pf-form label{display:grid;gap:6px;font-weight:800}.pf-form input,.pf-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--borda);border-radius:9px;padding:10px;background:var(--card);color:var(--texto)}.pf-form textarea{font-family:ui-monospace,Consolas,monospace;font-size:11px}.pf-form>.acoes{justify-content:flex-end}@media(max-width:1100px){.pf-resumo{grid-template-columns:repeat(4,1fr)}.pf-relatorios{grid-template-columns:repeat(2,1fr)}.pf-meses{grid-template-columns:1fr}}@media(max-width:760px){.pf-layout{grid-template-columns:1fr}.pf-sidebar{position:static}.pf-resumo{grid-template-columns:repeat(2,1fr)}.pf-relatorios{grid-template-columns:1fr}.pf-topo{flex-direction:column}.pf-acoes{justify-content:flex-start}}

/* ===== Plano de Férias v2.7.13 — relatórios cruzados e meses recolhíveis ===== */
#painel-plano-ferias .pf-resumo{grid-template-columns:repeat(8,minmax(85px,1fr))}
#painel-plano-ferias .pf-resumo-card{border:1px solid var(--borda);background:var(--card);color:var(--texto);border-radius:12px;padding:11px;display:flex;flex-direction:column;gap:5px;text-align:left;cursor:pointer;transition:.18s ease}
#painel-plano-ferias .pf-resumo-card:hover{transform:translateY(-2px);border-color:var(--cor-principal);box-shadow:0 7px 18px rgba(15,23,42,.09)}
#painel-plano-ferias .pf-resumo-card span{font-size:10px;text-transform:uppercase;color:var(--texto-suave);font-weight:800}
#painel-plano-ferias .pf-resumo-card strong{font-size:22px}
#painel-plano-ferias .pf-resumo-card small{font-size:9px;color:var(--cor-principal);font-weight:800}
#painel-plano-ferias .pf-relatorios{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
#painel-plano-ferias .pf-rel-card{max-height:none;overflow:visible;padding:12px}
#painel-plano-ferias .pf-rel-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--borda);padding-bottom:8px;margin-bottom:6px}
#painel-plano-ferias .pf-rel-card-top h4{margin:0}
#painel-plano-ferias .pf-rel-card-lista{display:grid;gap:5px;max-height:430px;overflow:auto;padding-right:3px}
#painel-plano-ferias .pf-rel-linha{width:100%;border:1px solid var(--borda);background:color-mix(in srgb,var(--card) 96%,var(--cor-principal) 4%);color:var(--texto);border-radius:9px;padding:8px 9px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;text-align:left;cursor:pointer}
#painel-plano-ferias .pf-rel-linha:hover{border-color:var(--cor-principal)}
#painel-plano-ferias .pf-rel-linha>span{min-width:0;display:block!important;border:0!important;padding:0!important}
#painel-plano-ferias .pf-rel-linha>b{display:block}
#painel-plano-ferias .pf-rel-linha>strong{align-self:center;font-size:17px;color:var(--cor-principal)}
#painel-plano-ferias .pf-rel-linha small{display:block;margin-top:4px;color:var(--texto-suave);font-size:9px;line-height:1.45}
#painel-plano-ferias .pf-cruz-item{display:block!important;border:0!important;padding:2px 0!important}
#painel-plano-ferias .pf-cruz-item b{font-size:9px;margin-right:4px}
#painel-plano-ferias .pf-cruz-item small{display:inline;font-size:9px}
#painel-plano-ferias .pf-mini-acoes{display:flex!important;align-items:center;justify-content:flex-end!important;gap:4px!important;border:0!important;padding:0!important;flex-shrink:0}
#painel-plano-ferias .pf-mini-acoes button,.pf-rel-modal-acoes .pf-mini-acoes button{width:27px;height:27px;border:1px solid var(--borda);border-radius:7px;background:var(--card);color:var(--cor-principal);display:grid;place-items:center;cursor:pointer;padding:0}
#painel-plano-ferias .pf-mini-acoes button:hover{border-color:var(--cor-principal);background:color-mix(in srgb,var(--card) 90%,var(--cor-principal) 10%)}
#painel-plano-ferias .pf-meses{grid-template-columns:1fr!important}
#painel-plano-ferias .pf-mes-card{padding:0;overflow:hidden}
#painel-plano-ferias .pf-mes-card header{margin:0;padding:11px 13px;background:color-mix(in srgb,var(--card) 94%,var(--cor-principal) 6%);gap:10px}
#painel-plano-ferias .pf-mes-toggle{border:0;background:transparent;color:var(--texto);display:flex;align-items:center;gap:9px;font-weight:900;cursor:pointer;font-size:13px;padding:4px}
#painel-plano-ferias .pf-mes-toggle i{width:14px;color:var(--cor-principal)}
#painel-plano-ferias .pf-mes-header-right{display:flex;align-items:center;gap:8px}
#painel-plano-ferias .pf-mes-header-right>strong{border-radius:999px;background:var(--cor-principal);color:#fff;min-width:27px;height:27px;display:grid;place-items:center}
#painel-plano-ferias .pf-mes-corpo{padding:10px 12px 13px}
.pf-rel-modal-acoes{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;padding:0 16px 12px}
.pf-rel-modal-tabela{padding:0 16px 16px;max-height:68vh;overflow:auto}
.pf-rel-modal-tabela table{width:100%;border-collapse:collapse;font-size:11px}.pf-rel-modal-tabela th,.pf-rel-modal-tabela td{border-bottom:1px solid var(--borda);padding:7px;text-align:left}.pf-rel-modal-tabela th{position:sticky;top:0;background:var(--card);z-index:1}
@media(max-width:1100px){#painel-plano-ferias .pf-resumo{grid-template-columns:repeat(4,1fr)}}
@media(max-width:850px){#painel-plano-ferias .pf-relatorios{grid-template-columns:1fr}}
@media(max-width:760px){#painel-plano-ferias .pf-resumo{grid-template-columns:repeat(2,1fr)}#painel-plano-ferias .pf-mes-card header{align-items:flex-start;flex-direction:column}.pf-mes-header-right{width:100%;justify-content:space-between}}

/* Plano de Férias v2.7.14 — relatórios expansíveis e visuais */
#painel-plano-ferias .pf-relatorios{display:grid;grid-template-columns:1fr!important;gap:16px}
#painel-plano-ferias .pf-rel-card{width:100%;box-sizing:border-box;border-radius:16px;padding:14px;overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.07);position:relative}
#painel-plano-ferias .pf-rel-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--pf-accent,#2563eb)}
#painel-plano-ferias .pf-rel-card-top{padding:2px 2px 12px 8px;margin-bottom:10px}
#painel-plano-ferias .pf-rel-card-top h4{font-size:15px;display:flex;align-items:center;gap:8px;color:var(--pf-accent,#2563eb)}
#painel-plano-ferias .pf-rel-mes{--pf-accent:#2563eb;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 94%,#dbeafe 6%),var(--card))}
#painel-plano-ferias .pf-rel-cpm{--pf-accent:#7c3aed;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 94%,#ede9fe 6%),var(--card))}
#painel-plano-ferias .pf-rel-graduacao{--pf-accent:#0891b2;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 94%,#cffafe 6%),var(--card))}
#painel-plano-ferias .pf-rel-status{--pf-accent:#ea580c;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 94%,#ffedd5 6%),var(--card))}
#painel-plano-ferias .pf-rel-card-lista{display:grid;gap:8px;max-height:none;overflow:visible;padding:0 2px 2px 8px}
#painel-plano-ferias .pf-rel-grupo{border:1px solid color-mix(in srgb,var(--pf-accent) 22%,var(--borda));border-radius:12px;overflow:hidden;background:var(--card);transition:.18s ease}
#painel-plano-ferias .pf-rel-grupo:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(15,23,42,.07)}
#painel-plano-ferias .pf-rel-grupo.aberto{border-color:color-mix(in srgb,var(--pf-accent) 55%,var(--borda));box-shadow:0 0 0 2px color-mix(in srgb,var(--pf-accent) 10%,transparent)}
#painel-plano-ferias .pf-rel-linha{border:0!important;border-radius:0!important;background:linear-gradient(90deg,color-mix(in srgb,var(--pf-accent) 10%,var(--card)),var(--card))!important;grid-template-columns:minmax(0,1fr) auto 22px!important;align-items:center;padding:12px 14px!important}
#painel-plano-ferias .pf-rel-linha:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--pf-accent) 17%,var(--card)),var(--card))!important}
#painel-plano-ferias .pf-rel-linha>strong{color:var(--pf-accent)!important;background:color-mix(in srgb,var(--pf-accent) 11%,var(--card));border-radius:999px;min-width:34px;height:28px;display:grid;place-items:center;padding:0 7px}
#painel-plano-ferias .pf-rel-linha>i{color:var(--pf-accent);text-align:center}
#painel-plano-ferias .pf-rel-detalhes{padding:10px;background:color-mix(in srgb,var(--pf-accent) 3%,var(--card));display:grid;gap:7px}
#painel-plano-ferias .pf-rel-detalhes-topo{display:flex;justify-content:flex-end;padding:0 0 5px!important;border:0!important}
#painel-plano-ferias .pf-rel-sub{width:100%;border:1px solid color-mix(in srgb,var(--pf-accent) 18%,var(--borda));background:var(--card);color:var(--texto);border-radius:9px;padding:9px 11px;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:9px;text-align:left;cursor:pointer;transition:.15s ease}
#painel-plano-ferias .pf-rel-sub:hover{border-color:var(--pf-accent);transform:translateX(2px)}
#painel-plano-ferias .pf-rel-sub span{display:block!important;border:0!important;padding:0!important}.pf-rel-sub small{display:block;margin-top:3px;color:var(--texto-suave);font-size:9px}.pf-rel-sub>strong,.pf-rel-sub>i{color:var(--pf-accent)}
#painel-plano-ferias .pf-rel-detalhe-vazio{padding:10px;text-align:center;color:var(--texto-suave);font-size:11px}
#painel-plano-ferias .pf-mini-acoes button:hover{border-color:var(--pf-accent,var(--cor-principal));color:var(--pf-accent,var(--cor-principal));transform:translateY(-1px)}

/* Plano de Férias v2.7.15 — pesquisa, movimentação manual e relatórios em modal */
#painel-plano-ferias .pf-topo{background:linear-gradient(135deg,color-mix(in srgb,var(--card) 88%,#dbeafe 12%),color-mix(in srgb,var(--card) 92%,#ede9fe 8%));box-shadow:0 10px 28px rgba(15,23,42,.08)}
#painel-plano-ferias .destaque-pf{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;border:0;box-shadow:0 6px 16px rgba(79,70,229,.24)}
#painel-plano-ferias .pf-resumo-card{overflow:hidden;position:relative;border:0!important;box-shadow:0 7px 20px rgba(15,23,42,.08)}
#painel-plano-ferias .pf-resumo-card::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--pf-r,#2563eb)}
#painel-plano-ferias .pf-resumo-cor-0{--pf-r:#2563eb}#painel-plano-ferias .pf-resumo-cor-1{--pf-r:#16a34a}#painel-plano-ferias .pf-resumo-cor-2{--pf-r:#f59e0b}#painel-plano-ferias .pf-resumo-cor-3{--pf-r:#06b6d4}#painel-plano-ferias .pf-resumo-cor-4{--pf-r:#8b5cf6}#painel-plano-ferias .pf-resumo-cor-5{--pf-r:#ec4899}#painel-plano-ferias .pf-resumo-cor-6{--pf-r:#ef4444}
#painel-plano-ferias .pf-pesquisa{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:13px 0;padding:10px 14px;border:1px solid color-mix(in srgb,var(--cor-principal) 22%,var(--borda));border-radius:14px;background:linear-gradient(90deg,color-mix(in srgb,var(--card) 94%,#cffafe 6%),var(--card));box-shadow:0 5px 16px rgba(15,23,42,.05)}
#painel-plano-ferias .pf-pesquisa>i{color:#0891b2;font-size:17px}#painel-plano-ferias .pf-pesquisa input{border:0;outline:0;background:transparent;color:var(--texto);font-size:13px;width:100%}#painel-plano-ferias .pf-pesquisa span{font-size:9px;font-weight:900;color:var(--texto-suave);text-transform:uppercase}
#painel-plano-ferias .pf-mes-card:nth-child(4n+1){--pf-mes:#2563eb}#painel-plano-ferias .pf-mes-card:nth-child(4n+2){--pf-mes:#7c3aed}#painel-plano-ferias .pf-mes-card:nth-child(4n+3){--pf-mes:#0891b2}#painel-plano-ferias .pf-mes-card:nth-child(4n){--pf-mes:#ea580c}
#painel-plano-ferias .pf-mes-card{border-color:color-mix(in srgb,var(--pf-mes) 24%,var(--borda));box-shadow:0 8px 22px rgba(15,23,42,.06)}#painel-plano-ferias .pf-mes-card header{background:linear-gradient(90deg,color-mix(in srgb,var(--pf-mes) 11%,var(--card)),var(--card))}#painel-plano-ferias .pf-mes-toggle i{color:var(--pf-mes)}#painel-plano-ferias .pf-mes-header-right>strong{background:var(--pf-mes)}
#painel-plano-ferias .pf-pm-linha{cursor:pointer;transition:.15s ease}#painel-plano-ferias .pf-pm-linha:hover{background:color-mix(in srgb,#38bdf8 10%,var(--card));transform:translateX(2px)}#painel-plano-ferias .pf-pm-linha.pf-manual{background:color-mix(in srgb,#f59e0b 10%,var(--card));box-shadow:inset 4px 0 #f59e0b}.pf-manual-badge{display:inline-flex;align-items:center;gap:3px;margin-left:5px;padding:2px 6px;border-radius:999px;background:#f59e0b;color:#fff;font-size:8px;font-weight:900;vertical-align:middle}
.pf-mover-opcoes{display:flex;gap:8px;flex-wrap:wrap;padding:11px;border-radius:11px;background:color-mix(in srgb,#2563eb 7%,var(--card));border:1px solid color-mix(in srgb,#2563eb 18%,var(--borda))}.pf-mover-opcoes b{width:100%}.pf-mover-opcoes span{padding:5px 8px;border-radius:8px;background:var(--card);font-size:10px}.pf-form select{width:100%;box-sizing:border-box;border:1px solid var(--borda);border-radius:9px;padding:10px;background:var(--card);color:var(--texto)}
.pf-relatorios-modal{display:grid!important;grid-template-columns:1fr!important;gap:16px;padding:0 16px 18px}.pf-modal-caixa:has(.pf-relatorios-modal){width:min(1100px,calc(100vw - 28px))}
@media(max-width:760px){#painel-plano-ferias .pf-pesquisa{grid-template-columns:auto 1fr}#painel-plano-ferias .pf-pesquisa span{display:none}}

/* Plano de Férias v2.7.16 — filtros combináveis, meses compactos e desfazer manual */
#painel-plano-ferias .pf-filtros-bar,.pf-rel-ferramentas .pf-filtros-bar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
#painel-plano-ferias .pf-filtro-btn,.pf-rel-ferramentas .pf-filtro-btn{border:1px solid color-mix(in srgb,var(--cor-principal) 28%,var(--borda));border-radius:12px;padding:9px 12px;background:linear-gradient(135deg,color-mix(in srgb,#38bdf8 10%,var(--card)),var(--card));color:var(--texto);font-weight:850;cursor:pointer;transition:.18s;box-shadow:0 5px 14px rgba(15,23,42,.05)}
#painel-plano-ferias .pf-filtro-btn:hover,.pf-rel-ferramentas .pf-filtro-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.1)}
#painel-plano-ferias .pf-filtro-btn.ativo,.pf-rel-ferramentas .pf-filtro-btn.ativo{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;border-color:transparent}.pf-filtro-btn.limpar{background:linear-gradient(135deg,color-mix(in srgb,#f97316 12%,var(--card)),var(--card))!important;color:var(--texto)!important}.pf-filtro-cont:not(:empty){display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:999px;background:#fff;color:#2563eb;font-size:10px;margin-left:4px}
.pf-filtro-pop{position:fixed;z-index:40000;width:min(310px,calc(100vw - 24px));max-height:55vh;overflow:auto;background:var(--card);color:var(--texto);border:1px solid var(--borda);border-radius:14px;box-shadow:0 18px 50px rgba(2,6,23,.28);padding:10px}.pf-filtro-pop-top,.pf-filtro-pop-rodape{display:flex;align-items:center;justify-content:space-between;gap:8px}.pf-filtro-pop-top{padding:3px 4px 9px}.pf-filtro-pop-top button{border:0;background:transparent;color:var(--texto);font-size:22px;cursor:pointer}.pf-filtro-opcoes{display:grid;gap:5px;max-height:300px;overflow:auto}.pf-filtro-opcoes label{display:flex;align-items:center;gap:8px;padding:8px;border-radius:9px;cursor:pointer}.pf-filtro-opcoes label:hover{background:color-mix(in srgb,#38bdf8 9%,var(--card))}.pf-filtro-pop-rodape{padding-top:10px;border-top:1px solid var(--borda);margin-top:8px}
#painel-plano-ferias .pf-meses{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px}
#painel-plano-ferias .pf-mes-card{min-height:78px;background:linear-gradient(145deg,color-mix(in srgb,var(--pf-mes) 14%,var(--card)),var(--card));transition:.2s ease}#painel-plano-ferias .pf-mes-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px color-mix(in srgb,var(--pf-mes) 18%,transparent)}#painel-plano-ferias .pf-mes-card.aberto{grid-column:1/-1;transform:none;min-height:auto}#painel-plano-ferias .pf-mes-card.fechado .pf-mes-header-right .pf-mini-acoes{display:none}#painel-plano-ferias .pf-mes-card.fechado header{min-height:78px;box-sizing:border-box}#painel-plano-ferias .pf-mes-card.fechado .pf-mes-toggle{font-size:12px}#painel-plano-ferias .pf-mes-card.fechado .pf-mes-toggle span{font-weight:950}
.pf-manual-badge{border:0;cursor:pointer}.pf-manual-badge:hover{filter:brightness(.92);transform:scale(1.03)}
.pf-rel-ferramentas{padding:0 16px}.pf-rel-ferramentas .pf-pesquisa{margin:0 0 10px}.pf-rel-unico{padding:0 16px 18px}.pf-rel-unico-resumo{display:flex;align-items:baseline;gap:8px;margin:5px 0 10px}.pf-rel-unico-resumo strong{font-size:25px;color:#0284c7}.pf-rel-unico-acoes{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}
@media(max-width:1150px){#painel-plano-ferias .pf-meses{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(max-width:850px){#painel-plano-ferias .pf-meses{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:560px){#painel-plano-ferias .pf-meses{grid-template-columns:1fr!important}}


/* Plano de Férias v2.7.17 — filtros iniciais, CPM padronizada e 12 cores mensais */
#painel-plano-ferias .pf-filtros-bar{flex-wrap:nowrap;align-items:center}
#painel-plano-ferias .pf-filtros-bar .pf-filtro-btn{flex:1 1 0;white-space:nowrap}
#painel-plano-ferias .pf-filtros-bar .pf-filtro-btn.limpar{flex:0 0 auto}
.pf-filtro-pop-inicial{max-height:none!important;overflow:visible!important}
.pf-filtro-pop-inicial .pf-filtro-opcoes{max-height:none!important;overflow:visible!important}
#painel-plano-ferias .pf-meses{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px}
#painel-plano-ferias .pf-mes-card.fechado .pf-mes-header-right .pf-mini-acoes{display:flex!important}
#painel-plano-ferias .pf-mes-card:nth-child(1){--pf-mes:#2563eb}#painel-plano-ferias .pf-mes-card:nth-child(2){--pf-mes:#7c3aed}#painel-plano-ferias .pf-mes-card:nth-child(3){--pf-mes:#0891b2}#painel-plano-ferias .pf-mes-card:nth-child(4){--pf-mes:#ea580c}#painel-plano-ferias .pf-mes-card:nth-child(5){--pf-mes:#16a34a}#painel-plano-ferias .pf-mes-card:nth-child(6){--pf-mes:#db2777}#painel-plano-ferias .pf-mes-card:nth-child(7){--pf-mes:#9333ea}#painel-plano-ferias .pf-mes-card:nth-child(8){--pf-mes:#0284c7}#painel-plano-ferias .pf-mes-card:nth-child(9){--pf-mes:#ca8a04}#painel-plano-ferias .pf-mes-card:nth-child(10){--pf-mes:#dc2626}#painel-plano-ferias .pf-mes-card:nth-child(11){--pf-mes:#0f766e}#painel-plano-ferias .pf-mes-card:nth-child(12){--pf-mes:#4f46e5}
#painel-plano-ferias .pf-mes-card{background:linear-gradient(145deg,color-mix(in srgb,var(--pf-mes) 20%,var(--card)),color-mix(in srgb,var(--pf-mes) 7%,var(--card)))!important;border-color:color-mix(in srgb,var(--pf-mes) 42%,var(--borda))!important}
#painel-plano-ferias .pf-mes-card header{background:linear-gradient(90deg,color-mix(in srgb,var(--pf-mes) 20%,var(--card)),color-mix(in srgb,var(--pf-mes) 6%,var(--card)))!important}
@media(max-width:900px){#painel-plano-ferias .pf-filtros-bar{flex-wrap:wrap}#painel-plano-ferias .pf-filtros-bar .pf-filtro-btn{flex:1 1 45%}#painel-plano-ferias .pf-meses{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){#painel-plano-ferias .pf-meses{grid-template-columns:1fr!important}}

/* Plano de Férias v2.7.18 — filtros automáticos, cards coloridos e ações organizadas */
.pf-filtro-pop-inicial,.pf-filtro-pop-relatorio{max-height:calc(100vh - 24px)!important;overflow:visible!important;width:min(360px,calc(100vw - 24px))!important}
.pf-filtro-pop-inicial .pf-filtro-opcoes,.pf-filtro-pop-relatorio .pf-filtro-opcoes{max-height:none!important;overflow:visible!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.pf-filtro-pop-inicial .pf-filtro-pop-rodape,.pf-filtro-pop-relatorio .pf-filtro-pop-rodape{position:static;background:var(--card)}
.pf-filtro-pop-rodape small{color:var(--texto-suave);font-weight:800}
#painel-plano-ferias .pf-mes-card{overflow:hidden!important;background:linear-gradient(135deg,color-mix(in srgb,var(--pf-mes) 34%,var(--card)),color-mix(in srgb,var(--pf-mes) 16%,var(--card)))!important;border:2px solid color-mix(in srgb,var(--pf-mes) 62%,var(--borda))!important;box-shadow:0 8px 20px color-mix(in srgb,var(--pf-mes) 18%,transparent)!important}
#painel-plano-ferias .pf-mes-card header{background:linear-gradient(110deg,color-mix(in srgb,var(--pf-mes) 38%,var(--card)),color-mix(in srgb,var(--pf-mes) 13%,var(--card)))!important;padding:10px!important;gap:8px}
#painel-plano-ferias .pf-mes-header-right{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:nowrap}
#painel-plano-ferias .pf-mes-header-right .pf-mini-acoes{display:grid!important;grid-template-columns:repeat(2,30px);gap:4px;flex:0 0 64px}
#painel-plano-ferias .pf-mes-header-right .pf-mini-acoes button{width:30px;height:28px;padding:0!important;display:grid;place-items:center}
#painel-plano-ferias .pf-mes-toggle{min-width:0;flex:1;justify-content:flex-start}
#painel-plano-ferias .pf-mes-toggle span{overflow:hidden;text-overflow:ellipsis}
#painel-plano-ferias .pf-mes-card.aberto .pf-mes-header-right .pf-mini-acoes{display:flex!important;flex:0 0 auto}
@media(max-width:1100px){.pf-filtro-pop-inicial .pf-filtro-opcoes,.pf-filtro-pop-relatorio .pf-filtro-opcoes{grid-template-columns:1fr}}

/* Plano de Férias v2.7.19 — cards mensais sólidos/compatíveis e ações visíveis */
#painel-plano-ferias .pf-mes-card:nth-child(1){background:#dbeafe!important;border-color:#2563eb!important}#painel-plano-ferias .pf-mes-card:nth-child(2){background:#ede9fe!important;border-color:#7c3aed!important}#painel-plano-ferias .pf-mes-card:nth-child(3){background:#cffafe!important;border-color:#0891b2!important}#painel-plano-ferias .pf-mes-card:nth-child(4){background:#ffedd5!important;border-color:#ea580c!important}#painel-plano-ferias .pf-mes-card:nth-child(5){background:#dcfce7!important;border-color:#16a34a!important}#painel-plano-ferias .pf-mes-card:nth-child(6){background:#fce7f3!important;border-color:#db2777!important}#painel-plano-ferias .pf-mes-card:nth-child(7){background:#f3e8ff!important;border-color:#9333ea!important}#painel-plano-ferias .pf-mes-card:nth-child(8){background:#e0f2fe!important;border-color:#0284c7!important}#painel-plano-ferias .pf-mes-card:nth-child(9){background:#fef9c3!important;border-color:#ca8a04!important}#painel-plano-ferias .pf-mes-card:nth-child(10){background:#fee2e2!important;border-color:#dc2626!important}#painel-plano-ferias .pf-mes-card:nth-child(11){background:#ccfbf1!important;border-color:#0f766e!important}#painel-plano-ferias .pf-mes-card:nth-child(12){background:#e0e7ff!important;border-color:#4f46e5!important}
#painel-plano-ferias .pf-mes-card header{background:rgba(255,255,255,.42)!important;border-radius:10px;margin:0!important}
#painel-plano-ferias .pf-mes-card{padding:8px!important;border-width:2px!important;box-shadow:0 8px 18px rgba(15,23,42,.10)!important}
#painel-plano-ferias .pf-mes-card.fechado header{min-height:88px!important}
#painel-plano-ferias .pf-mes-header-right{flex:0 0 auto!important}
#painel-plano-ferias .pf-mes-header-right .pf-mini-acoes{display:grid!important;grid-template-columns:repeat(2,29px)!important;gap:4px!important;flex:0 0 62px!important}
#painel-plano-ferias .pf-mini-acoes button{background:#fff!important;border:1px solid rgba(15,23,42,.18)!important;color:#172033!important;border-radius:8px!important;box-shadow:0 2px 5px rgba(15,23,42,.08)!important}
#painel-plano-ferias .pf-mes-card.aberto .pf-mes-corpo{background:var(--card);border-radius:10px;margin-top:8px;padding:8px}

/* Plano de Férias v2.7.20 — meses vivos, cabeçalho em duas linhas e ações estáveis */
#painel-plano-ferias .pf-mes-card{padding:0!important;border:0!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 9px 20px rgba(15,23,42,.16)!important}
#painel-plano-ferias .pf-mes-card:nth-child(1){background:#2563eb!important}#painel-plano-ferias .pf-mes-card:nth-child(2){background:#7c3aed!important}#painel-plano-ferias .pf-mes-card:nth-child(3){background:#0891b2!important}#painel-plano-ferias .pf-mes-card:nth-child(4){background:#ea580c!important}#painel-plano-ferias .pf-mes-card:nth-child(5){background:#16a34a!important}#painel-plano-ferias .pf-mes-card:nth-child(6){background:#db2777!important}#painel-plano-ferias .pf-mes-card:nth-child(7){background:#9333ea!important}#painel-plano-ferias .pf-mes-card:nth-child(8){background:#0284c7!important}#painel-plano-ferias .pf-mes-card:nth-child(9){background:#ca8a04!important}#painel-plano-ferias .pf-mes-card:nth-child(10){background:#dc2626!important}#painel-plano-ferias .pf-mes-card:nth-child(11){background:#0f766e!important}#painel-plano-ferias .pf-mes-card:nth-child(12){background:#4f46e5!important}
#painel-plano-ferias .pf-mes-card header{display:block!important;background:transparent!important;border-radius:0!important;margin:0!important;padding:10px 12px!important;min-height:0!important;color:#fff!important}
#painel-plano-ferias .pf-mes-card.fechado header{min-height:96px!important}
#painel-plano-ferias .pf-mes-linha-titulo{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px}
#painel-plano-ferias .pf-mes-toggle{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;flex:1!important;min-width:0!important;padding:4px 0!important;border:0!important;background:transparent!important;color:#fff!important;font-size:13px!important;font-weight:950!important;cursor:pointer!important}
#painel-plano-ferias .pf-mes-toggle span{display:block!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;letter-spacing:.15px}
#painel-plano-ferias .pf-mes-toggle i{font-size:11px!important}
#painel-plano-ferias .pf-mes-total{display:grid!important;place-items:center!important;min-width:31px!important;height:31px!important;padding:0 6px!important;border-radius:999px!important;background:rgba(255,255,255,.22)!important;color:#fff!important;border:1px solid rgba(255,255,255,.35)!important;font-size:14px!important}
#painel-plano-ferias .pf-mes-linha-acoes{display:flex!important;justify-content:flex-end!important;margin-top:7px!important}
#painel-plano-ferias .pf-mes-linha-acoes .pf-mini-acoes{display:grid!important;grid-template-columns:repeat(4,31px)!important;gap:6px!important;flex:0 0 auto!important}
#painel-plano-ferias .pf-mes-linha-acoes .pf-mini-acoes button{width:31px!important;height:29px!important;padding:0!important;display:grid!important;place-items:center!important;background:#fff!important;color:#172033!important;border:0!important;border-radius:8px!important;box-shadow:0 2px 5px rgba(15,23,42,.18)!important}
#painel-plano-ferias .pf-mes-card.aberto{background:var(--card)!important;border:2px solid var(--pf-mes)!important}
#painel-plano-ferias .pf-mes-card.aberto header{background:var(--pf-mes)!important}
#painel-plano-ferias .pf-mes-card.aberto .pf-mes-corpo{margin:0!important;border-radius:0!important;padding:10px!important;background:var(--card)!important}

/* Plano de Férias v2.7.21 — destaque discreto do mês e contador */
#painel-plano-ferias .pf-mes-toggle{font-size:14px!important;font-weight:900!important}
#painel-plano-ferias .pf-mes-toggle span{font-weight:900!important;letter-spacing:.2px!important}
#painel-plano-ferias .pf-mes-total{background:#000!important;color:#fff!important;border-color:#000!important;font-weight:900!important;box-shadow:0 2px 5px rgba(0,0,0,.22)!important}


/* ===== Administrador v2.7.24 ===== */
.auditoria-item-clicavel{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;border:1px solid #dbe4f0;background:#fff;border-radius:14px;padding:14px 16px;cursor:pointer;margin-bottom:9px;color:inherit}.auditoria-item-clicavel:hover{border-color:#2563eb;box-shadow:0 8px 24px rgba(37,99,235,.10);transform:translateY(-1px)}.auditoria-item-clicavel div{min-width:0}.auditoria-item-clicavel strong,.auditoria-item-clicavel small,.auditoria-item-clicavel p{display:block}.auditoria-item-clicavel p{margin:5px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-detalhe-modal{max-width:900px}.audit-detalhe-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0}.audit-detalhe-grade article{padding:12px;border-radius:12px;background:#f3f7fc}.audit-detalhe-grade span,.audit-detalhe-grade strong{display:block}.audit-detalhe-conteudo{border:1px solid #dbe4f0;border-radius:14px;padding:14px}.audit-json-detalhe{white-space:pre-wrap;word-break:break-word;background:#0f172a;color:#e2e8f0;padding:14px;border-radius:10px;max-height:55vh;overflow:auto}@media(max-width:700px){.audit-detalhe-grade{grid-template-columns:1fr}}


/* Plano de Férias v2.7.26 — ordenação e exclusão persistente em relações */
.pf-ordena-coluna{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:inherit;font:inherit;font-weight:900;cursor:pointer;padding:2px 0;white-space:nowrap}.pf-ordena-coluna i{font-size:11px;opacity:.55}.pf-ordena-coluna.ativo i{opacity:1;color:#2563eb}.pf-col-excluir{text-align:center!important;white-space:nowrap}.pf-col-excluir input{width:17px;height:17px;cursor:pointer;accent-color:#dc2626}.pf-rel-excluido{opacity:.48;text-decoration:line-through}.pf-rel-excluido .pf-col-excluir{text-decoration:none}.pf-rel-exclusao-aviso{margin:8px 0 10px;padding:9px 11px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;font-size:12px;font-weight:700}.pf-rel-modal-acoes{align-items:center}

#painel-plano-ferias .pf-resumo-cor-7{--pf-r:#64748b}
