* {
  margin: 0; 
  padding: 0;
  box-sizing: border-box;
  font-family: 'Inter', sans-serif;
}

html {font-size: 62.5%;}
body {margin: 0; padding: 0; background: #fff; font-family: Tahoma; font-size: 1.4em;}
input {height: 28px; border: 1px solid #777; font-family: Arial; font-size: 1em; color: #333; outline: none;}
textarea {border: 1px solid #777; font-family: Arial; font-size: 1em; color: #333; outline: none;}
select {height: 32px; border: 1px solid #777; font-family: Arial; font-size: 1em; color: #333; outline: none;}
button {font-size: 1em; font-family: Arial; color: #FFF; background: #1E374B; border: 0px; height: 30px; outline: none; cursor: pointer;}
a {text-decoration: none; color: #666;}
a:visited {text-decoration: none; color: #666;}
a:hover {color: #369;}
table {width: 100%;}
input[type="file"] {display: none;}

#cabecalho {float: left; width: 100vw; height: 50px; font-size: 1.2em; background: #1E374B; color: #fff; display: flex;}
#cabecalho_esquerdo {width: 50%; height: 100%; padding-left: 2%; display: flex; justify-content: left; align-items: center;}
#cabecalho_direito {width: 50%; height: 100%; padding-right: 3%; line-height:50px; text-align: right;}

#cabecalho_direito a:link {text-decoration: none; color: #DAA520;}
#cabecalho_direito a:visited {text-decoration: none; color: #DAA520;}
#cabecalho_direito a:hover {color: #FFD700;}

#menu_vazio {float: left; width: 100%; background: #fff; height: 35px;}
#menu {float: left; width: 100%; background: #333; height: 35px; padding-left: 25px;}
#menu ul {list-style: none; float: left; position: absolute; top: 50px; z-index: 1;}
#menu ul li {float: left; height: 35px;}
#menu ul li a {float: left; text-decoration: none; font: 15px Arial; color: #fff; padding: 9px 15px;}
#menu ul li:hover {background: #666;}
#menu ul li ul {display: none;}
#menu ul li:hover ul {display: block; position: absolute; top: 35px; background: #666; width: 180px;}
#menu ul li:hover ul li {float: left; position: relative; left: 0px; width: 180px; border-bottom: 1px solid #777;}
#menu ul li:hover ul li:last-child {border: none;}
#menu ul li:hover ul li a {width: 180px;}
#menu ul li:hover ul li a:hover {background: #888;}

#conteudo {float: left; width: 100%; background: #fff; text-align: center; display: flex; justify-content: center; align-items: center; position: absolute; top: 85px; bottom: 55px; overflow-y: auto;}
#conteudo #conteudo_bloqueado_ate_carregar {display: none;}
#conteudo #mensagem_carregando {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
#conteudo #tabela_padrao {width: 98vw; height: 32vh; background: #fff; text-align: center; overflow: auto; overflow-y: scroll;}
#conteudo #tabela_pequena {width: 68vw; height: 32vh; background: #fff; text-align: center; overflow: auto; overflow-y: scroll;}
#conteudo #titulo_tabela {background: #369; color: #fff; text-align: center;}
#conteudo #frase_atencao {color: #DD1A2A;}
#conteudo #tabela_arquivos_anexos_tmp {width: 100%; height: 15vh; background: #fff; font-size: 1em; text-align: center; overflow: auto; overflow-y: scroll;}
#conteudo #tabela_solicitacoes {width: 100%; height: 50vh; background: #fff; text-align: center; overflow: auto; overflow-y: scroll;}

#conteudo #solicitar_declaracao {width: 50vw; padding: 15px;}
#conteudo #verificar_declaracao {width: 50vw; padding: 5px;}
#conteudo #anexos_obrigatorios {font-size: 0.9em;}

#conteudo #conteudo_superior {display: flex; position: fixed; top: 70px; left: 0; right: 0; height: 40%; justify-content: center; align-items: center;}
#conteudo #conteudo_inferior {display: flex; position: fixed; bottom: 50px; left: 0; right: 0; height: 40%; justify-content: center; align-items: center;}

#relatorio {float: left; width: 100%;}
#relatorio #titulo {text-align: center; height: 30px; font-weight: bold;}

#celula_tabela_claro {background: #cfb53b40; padding-left: 5px; padding-top: 10px; padding-bottom: 10px;}
#celula_tabela_escuro {background: #cfb53b59; padding-left: 5px; padding-top: 10px; padding-bottom: 10px;}
#celula_tabela_alerta {background: #dd721a9c; padding-left: 5px; padding-top: 10px; padding-bottom: 10px;}
#celula_tabela_incolor {background: null; padding-left: 5px; padding-top: 10px; padding-bottom: 10px;}
#coluna_tabela {background: #FFFFFF;}
#linha_tabela:hover {background: #cfb53b1a;}

#mensagem_vazio {float: left; width: 100%; height: 20px; background: #ffffff; position: absolute; bottom: 25px;}
#mensagem_vermelho {float: left; width: 100%; height: 30px; background: #DD1A2A; color: #fff; font-size: 1.2em; text-align: center; position: absolute; padding: 5px; bottom: 25px;}
#mensagem_verde {float: left; width: 100%; height: 30px; background: #049906; color: #fff; font-size: 1.2em; text-align: center; position: absolute; padding: 5px; bottom: 25px;}

#rodape {float:left; width: 100%; height: 25px; background: #1E374B; color: #fff; display: flex; font-size: 0.75em; justify-content: center; align-items: center; position: absolute; bottom: 0px;}

.caixa_texto_padrao {width: 48vw; height: 100px; padding: 10px; resize: none;}
.caixa_grande {padding-left: 7px; margin-bottom: 5px; width: 48vw;}
.caixa_padrao {padding-left: 7px; margin-bottom: 5px; width: 26vw;}
.caixa_pequena {padding-left: 7px; margin-bottom: 5px; width: 12vw;}
.caixa_user {display:inline-block; padding-left: 34px; width: 250px; background-position: 7px center; background-repeat: no-repeat; background-image: url(../imagens/user.png);}
.caixa_pass {display:inline-block; padding-left: 34px; width: 250px; background-position: 7px center; background-repeat: no-repeat; background-image: url(../imagens/key.png);}
.caixa_busca {display:inline-block; padding-left: 38px; width: 500px; height: 30px; background-position: 4px center; background-repeat: no-repeat; background-image: url(../imagens/busca.png);}
.caixa_verificador {display:inline-block; padding-left: 38px; width: 60%; height: 40px; background-position: 4px center; background-repeat: no-repeat; background-image: url(../imagens/busca.png);}
.caixa_arquivo {margin-bottom: 5px; width: 320px; border-left: 0px; border-top: 0px;}

.caixa_selecionar_arquivo {display:inline-block; border: 1px solid #777; border-left: 0px; border-top: 0px; color: #666; display: flex; justify-content: space-between; align-items: center; padding: 1vh; width: 100%; height: 5vh; font-size: 1em;}
.botao_selecionar_arquivo {color: #fff; background: #666; padding: 5px; padding-left: 25px; padding-right: 25px; cursor: pointer;}
.botao_excluir_arquivo {font-size: 1em; font-family: Arial; font-weight: bold; color: #FFF; background: #f44336; border: 0px; margin-left: 0.5vh; margin-right: 0.5vh; width: 4vh; height: 4vh;}

.select_padrao {padding-left: 2px; margin-bottom: 5px; width: 26vw;}

.link_anexo {text-decoration: none; color: #FFD700;}
.link_anexo:visited {text-decoration: none; color: #FFD700;}
.link_anexo:hover {color: #eeff00;}

.botao_padrao {width: 100px;}
.botao_grande {width: 150px;}
.botao_adicionar {width: 120px;}
.botao_solicitar_declaracao {width: 90%; height: 40px;}
.botao_verificar_declaracao {width: 30%; height: 40px;}
.botao_link {padding: 0px; border: 0px; width: 25px; height: 25px; background: none;}
.botao_link_fosco {padding: 0px; border: 0px; width: 25px; height: 25px; background: none; opacity: 30%; cursor: auto;}
.botao_sim_nao {border: 0px; width: 120px; height: 30px; margin: 15px; font-size: 0.8em;}
.botao_baixar_declaracao {width: 95%; height: 40px; margin-bottom: 5px; background: #049906;}

.botao_mobile {font-size: 2.4vh; color: #FFF; background: #1E374B; border: 0px; width: 50vh; height: 7vh; margin-bottom: 1.5vh;}
.botao_mobile_excluir_arquivo {font-size: 2vh; font-weight: bold; color: #FFF; background: #f44336; border: 0px; margin-left: 0.5vh; margin-right: 0.5vh; width: 4vh; height: 4vh;}
.caixa_input_mobile {display:inline-block; border-left: 0px; border-top: 0px; margin-bottom: 1vh; width: 50vh; height: 5vh; min-width: 50vh; font-size: 2vh; padding: 5px;}
.caixa_select_mobile {padding-left: 2px; margin-bottom: 5px; width: 50vh; height: 5vh; border-left: 0; border-top: 0; min-width: 40.5vh; font-size: 2vh;}
.caixa_check_mobile {width: 4vh; height: 4vh; margin: 5px;}
#texto_mobile {font-size: 2.5vh;}

.caixa_arquivo_mobile {display: inline-block; border: 1px solid #777; border-left: 0px; border-top: 0px; color: #000; display: flex; justify-content: space-between; align-items: center; padding: 1vh; width: 60vh; height: 5vh; font-size: 2vh;}
.botao_arquivo_mobile {color: #fff; background: #666; padding: 5px; padding-left: 25px; padding-right: 25px; cursor: pointer; font-size: 12px;}


.brasao {width: 50vh; height: 27vh;}

/* Alert personalizado */
.alerta {display: flex; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 50%; height: auto; background-color: #f44336; opacity: 0.95; color: #fff; padding: 20px; text-align: center; font-size: 1.2em;}
.confirma_exclusao {display: flex; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 50%; height: auto; background-color: #f44336; opacity: 0.95; color: #fff; padding: 20px; text-align: center; font-size: 1.2em;}
.confirma_abertura_solicitacao {display: flex; position: fixed; top: 200px; height: auto; right: 400px; left: 400px; background-color: #049906; opacity: 0.95; color: #fff; padding: 20px; text-align: center; font-size: 1.2em;}
.closebtn {margin-left: 15px; color: white; font-weight: bold; float: right; font-size: 30px; line-height: 15px; transition: 0.1s; cursor: pointer;}
.closebtn:hover {color: black;}
.visualizar_detalhes {display: flex; position: fixed; top: 20vh; right: 20vw; left: 20vw; height: auto; background-color: #666; opacity: 0.95; color: #fff; padding: 20px; text-align: center; font-size: 1.2em;}
.visualizar_detalhes_tabela {margin-top: 5%; margin-left: 2%; width: 90%; height: auto; overflow-y: none;}
/* Alert personalizado */

.esconde_tela {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; height: 90%; background-color:null;}

@media screen and (max-width: 640px) {  
  #conteudo {top: 60px;}
  #conteudo #solicitar_declaracao {width: 98vw;}
  #conteudo #verificar_declaracao {width: 98vw;}
  .caixa_padrao {width: 95vw;}
  .botao_padrao {width: 95%; height: 40px; margin-bottom: 5px;}
  .botao_adicionar {width: 50vw;}
  .confirma_exclusao {right: 10px; left: 10px;}
  .confirma_abertura_solicitacao {right: 10px; left: 10px;}
  .botao_sim_nao {height: 40px; margin: 5px; width: 35vw;}
  table {width: 95vw;}
  #cabecalho {font-size: 0.85em;}
}

/* não alterar cor preenchimento automático */
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-text-fill-color: #000;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}
/* não alterar cor preenchimento automático */

/* barra de rolagem estilizada */
::-webkit-scrollbar-track {
  background-color: #F4F4F4;
}
::-webkit-scrollbar {
  width: 12px;
  background: #F4F4F4;
}
::-webkit-scrollbar-thumb {
  background: #dad7d7;
}
/* barra de rolagem estilizada */