/* ===========================
   ACESSIBILIDADE
=========================== */
#acessibilidade.acessibilidade{
  position: fixed;
  right: 15px;
  bottom: 15px;
  z-index: 9999;
  font-family: Arial, Verdana, Tahoma, sans-serif;
}
#acessibilidade #btnAcessibilidade{
  background: #005D94;
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 10px 12px;
  font-size: 20px;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(0,0,0,.2);
}
#acessibilidade #btnAcessibilidade:focus{
  outline: 3px solid rgba(0,93,148,.35);
  outline-offset: 2px;
}
#acessibilidade .acessibilidade-menu{
  margin-top: 8px;
  background: #ffffff;
  border: 2px solid #005D94;
  border-radius: 10px;
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 220px;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}
#acessibilidade .acessibilidade-titulo{
  font-weight: 700;
  font-size: 14px;
  color: #005D94;
  padding-bottom: 4px;
  border-bottom: 1px solid rgba(0,93,148,.2);
  margin-bottom: 4px;
}

#acessibilidade .acessibilidade-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
#acessibilidade .acessibilidade-acoes{
  display:flex;
  gap:6px;
}
#acessibilidade .ac-icone{
  border:1px solid rgba(0,93,148,.35);
  background:#ffffff;
  color:#005D94;
  border-radius:8px;
  padding:6px 8px;
  cursor:pointer;
  font-size:14px;
  line-height:1;
}
#acessibilidade .ac-icone:hover{
  background:#e9f2ff;
}
#acessibilidade .ac-icone:focus{
  outline: 3px solid rgba(0,93,148,.35);
  outline-offset: 2px;
}
/* Visual do botão de fixar quando ativo */
#acessibilidade.ac-pinned #btnFixarAcessibilidade{
  background:#005D94;
  color:#fff;
  border-color:#005D94;
}

#acessibilidade .ac-btn{
  font-size: 14px;
  padding: 8px 10px;
  cursor: pointer;
  border-radius: 8px;
  border: 1px solid rgba(0,93,148,.35);
  background: #f8fbff;
  color: #005D94;
  text-align: left;
}
#acessibilidade .ac-btn:hover{
  background: #e9f2ff;
}
#acessibilidade .ac-reset{
  background: #fff5f5;
  color: #a31616;
  border-color: rgba(163,22,22,.35);
}
#acessibilidade .ac-reset:hover{
  background: #ffecec;
}

/* Modos (aplicados no <html>) */
html.ac-cinza{
  filter: grayscale(100%);
}
html.ac-alto-contraste{
  background: #000 !important;
  color: #fff !important;
}
html.ac-alto-contraste body,
html.ac-alto-contraste .cabecalho_conteudo,
html.ac-alto-contraste .cabecalho_titulo_principal{
  background: #000 !important;
  color: #fff !important;
}
html.ac-alto-contraste a{
  color: #00ffff !important;
}
html.ac-alto-contraste .list-group-item{
  background: #000 !important;
  color: #fff !important;
  border-color: #444 !important;
}
html.ac-negativo{
  filter: invert(100%);
}
html.ac-fundo-claro{
  background: #ffffff !important;
  color: #000 !important;
}
html.ac-links a{
  text-decoration: underline !important;
}
html.ac-fonte{
  font-family: Arial, Verdana, Tahoma, sans-serif !important;
}

/* Aumentar/diminuir: aplicamos tamanho no html via JS,
   mas garantimos que nada "trave" com clamp */
html.ac-txt-override h1,
html.ac-txt-override h2,
html.ac-txt-override h3,
html.ac-txt-override h5,
html.ac-txt-override .cabecalho_cliente,
html.ac-txt-override .cabecalho_titulo_principal{
  font-size: inherit !important;
}
