* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --preto: #212529;
  --preto_alpha: rgba(33, 37, 41, 80%);
  --branco: #ffffff;
  --branco_alpha: rgba(255, 255, 255, 20%);
  --vermelho: #c4453e;
  --vermelho_hover: #9d3732;
  --vermelho_alpha: rgba(196, 69, 62, 20%);
  --verde: #38be8b;
  --roxo: #25074A; 
  --roxo_alpha: #ddc4fd; 
  --verde_hover: #2d9866;
  --verde_alpha: rgba(56, 190, 128, 20%);
  --azul: #44a6c4;
  --azul_medio: #0461AD;
  --azul_alpha: rgba(52, 144, 220, 20%);
  --azul_escuro: #052340;
  --azul_escuro_hover: #2c4b87;
  --azul_escuro_alpha: rgba(55, 94, 169, 20%);
  --laranja: #f6993f;
  --amarelo: #f1c40f;
  --laranja_alpha: rgba(247, 165, 35, 20%);
  --bg: #f5f6f8;
  --bg_escuro: #f3f6f9;
  --bg_escuro_hover: #e0e3e7;
  --borda: #e9ebec;
  --borda_input: #ced4da;
  --cinza: #a7a7a7;
  --cinza_signup: #F2F4F8;
  --cinza_hover: #e2e2e2;
  --cinza_alpha: rgba(168, 167, 167, 20%);
  --subtexto: #878a99;
  --titulo_modal: #495057;

}

body {
  opacity: 0; /* Inicialmente, oculta a página */
  transition: opacity 0.2s; /* Adiciona uma transição suave */
  background-color: var(--bg);

}

#page-topbar {
  background-color: #1E3A8A;
  color: #ffffff;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  
}

#page-topbar.topbar-admin {
  background-color: #008B92 !important; 
  color: #ffffff;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  
}

 /* Estilo inicial: branco com texto cinza */
 .btn-outline-green {
  background-color: white;
  color: gray;
  border-color: gray;
  border-radius: 4px; /* Bordas arredondadas */
  text-align: start;
}

/* Hover: laranja com texto branco */
.btn-outline-green:hover {
  background-color: white !important;
  border-color: var(--verde) !important;
  color: var(--verde) !important;
  text-align: start;

}

.btn-check:checked + .btn-outline-green {
  background-color: var(--verde) !important;
  color: white !important;
  border-color: var(--verde) !important;
}


.btn-check:disabled+.btn, .btn-check[disabled]+.btn {
  opacity: 1 !important;
  pointer-events: none; /* Mantém o estado desativado */
}

.status {
  font-size: 10px;
}

.sub_status {
  font-size: 12px;
}

.icon_status {
  font-size: 14px;
}

.footer {
  padding: 13px calc(1.5rem * 0.5) !important;
}

.botao {
  padding: 7.5px 17px !important;
  display: inline-table !important;
  font-weight: 300;
  position: relative;
  z-index: 1;
}

.botao:disabled {
  background: var(--branco) !important;
  color: var(--preto) !important;
  border: 1px solid var(--preto);
}

.botao_azul_escuro {
  background: var(--azul_escuro);
  color: var(--branco) !important;
}
.botao_azul_escuro:hover {
  background: var(--azul_escuro_hover);
  color: var(--branco);
}
.botao_azul_escuro:active {
  background: var(--azul_escuro) !important;
  color: var(--branco) !important;
}

.botao_azul {
  background: var(--azul);
  color: var(--branco) !important;
}
.botao_azul:hover {
  background: var(--azul);
  color: var(--branco) !important;
}
.botao_azul:active {
  background: var(--azul) !important;
  color: var(--branco) !important;
}


.botao_azul_medio {
  background: var(--azul_medio);
  color: var(--branco) !important;
}
.botao_azul_medio:hover {
  background: var(--azul_medio);
  color: var(--branco) !important;
}
.botao_azul_medio:active {
  background: var(--azul_medio) !important;
  color: var(--branco) !important;
}

.botao_verde {
  background: var(--verde);
  color: var(--branco) !important;
}
.botao_verde:hover {
  background: var(--verde_hover);
  color: var(--branco);
}
.botao_verde:active {
  background: var(--verde_hover) !important;
  color: var(--branco) !important;
}

.botao_roxo {
  background: var(--roxo);
  color: var(--branco) !important;
}
.botao_roxo:hover {
  background: var(--roxo_hover);
  color: var(--branco) !important;
}
.botao_roxo:active {
  background: var(--roxo_hover) !important;
  color: var(--branco) !important;
}

.botao_vermelho {
  background: var(--vermelho);
  color: var(--branco) !important;
}
.botao_vermelho:hover {
  background: var(--vermelho);
  color: var(--branco) !important;
}
.botao_vermelho:active {
  background: var(--vermelho_hover) !important;
  color: var(--branco) !important;
}

.botao_azul_escuro_transparente {
  background: var(--branco);
  color: var(--azul_escuro_padrao) !important;
  border: 1px solid var(--azul_escuro_padrao);
}
.botao_azul_escuro_transparente:hover {
  background: var(--azul_escuro_padrao);
  color: var(--branco) !important;
}
.botao_azul_escuro_transparente:active {
  background: var(--azul_escuro_padrao) !important;
  color: var(--branco) !important;
}

.botao_vermelho_transparente {
  background: var(--branco);
  color: var(--vermelho) !important;
  border: 1px solid var(--vermelho);
}
.botao_vermelho_transparente:hover {
  background: var(--vermelho);
  color: var(--branco) !important;
}
.botao_vermelho_transparente:active {
  background: var(--vermelho_hover) !important;
  color: var(--branco) !important;
}

.botao_busca {
  /* margin-top: 28px; */
}

.botao_status {
  border: 1px solid #f6993f; 
  background: rgba(247, 165, 35, 20%);
  color: #f6993f;
  padding: 6px 12px;
  border-radius: 2px;
  text-transform: uppercase;
}

@media (max-width: 768px) {
  .botao_busca {
    /* margin-top: 10px; */
  }
}

.botao_disabled,
.botao_disabled:hover {
  background: var(--bg_escuro) !important;
  color: var(--cinza) !important;
}

.botao_cinza {
  background: var(--bg_escuro);
  color: var(--preto);
}
.botao_cinza:hover {
  background: var(--bg_escuro);
  color: var(--preto);
}

.btn_soft_azul_escuro {
  background: var(--azul_escuro_alpha);
  color: var(--azul_escuro);
}
.btn_soft_azul_escuro:hover,
.btn_soft_azul_escuro:active {
  background: var(--azul_escuro) !important;
  color: var(--branco) !important;
}

#password-info {
  margin: 10px 0;
  overflow: hidden;
  /* text-shadow: 0 1px 0 var(--branco); */
}
#password-info ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#password-info ul li {
  padding: 2px 10px 0px 20px;
  margin-bottom: 3px;
  /* margin-bottom: 1px; */
  background: var(--branco);
  font-size: 11px;
  transition: 250ms ease;
  position: relative;
}
#password-info ul li .icon-container {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--vermelho);
  position: absolute;
  top: 4px;
  bottom: 0;
  left: 0;
  text-align: center;
}
#password-info ul li .icon-container .fa {
  color: var(--branco);
  font-size: 0.45rem;
  padding-top: 0px;
  position: relative;
  top: -1px;
}
#password-info ul li .tip {
  color: #5ca6d5;
  text-decoration: underline;
}
#password-info ul li.valid {
  /* color: var(--verde); */
}
#password-info ul li.valid .icon-container {
  background-color: var(--verde);
}
#password-info ul li span.invalid {
  color: var(--vermelho);
}

  /* TITULO PÁGINA */
.page-title-box h4 {
  color: var(--preto);
}

/* .titulo_pagina h4 {
  color: var(--preto) !important;
  font-size: 1rem !important;
  margin: 0 !important;
  font-weight: 700 !important;
} */

/* BREADCRUMB */
.breadcrumb-item > a {
  color: var(--preto);
}

.breadcrumb-item.active {
  color: var(--subtexto);
}

.breadcrumb-item + .breadcrumb-item::before {
  color: var(--laranja) !important;
}

.drop_tabela .btn-check:checked + .btn,
.drop_tabela .btn.active,
.drop_tabela .btn.show,
.drop_tabela .btn:first-child:active,
.drop_tabela :not(.btn-check) + .drop_tabela .btn:active {
  background: var(--azul_escuro) !important;
  color: var(--branco) !important;
}

.deferir-item-btn:hover {
  color: var(--verde);
}

.remove-item-btn:hover {
  color: var(--vermelho);
}

.main_tabela {
  background: #ffffff;
  box-shadow: inset 0px 0px 0px 1px var(--cinza_claro);
  border-radius: 4px;
  line-height: 20px;
}

.tabela_itens_col label {
  color: var(--subtexto);
  text-transform: uppercase;
  line-height: 20px;
  font-size: 0.75rem;
}

.tabela_itens_col {
  padding: 5px 0;
  text-transform: uppercase;
  line-height: 20px;
}

.tabela_itens {
  box-shadow: 0px 0px 0px 1px var(--borda);
  padding: 5px 15px 5px 15px;
  margin-top: 1px;
  border-radius: 2px;
  transition: linear 0.2s;
  background: #fff;
  margin-bottom: -2px;
}

.tabela_itens:hover {
  background: var(--bg);
}

.tabela_itens label {
  font-weight: 600;
}

.tabela_itens .table > tbody > tr > td {
  border: 0 !important;
  padding: 5px 0px !important;
}

.tabela_itens .table > tbody {
  box-shadow: none !important;
} 

.error-message {
  color: var(--vz-form-invalid-color);
  font-size: 11.75px;
  margin-top: 0.25rem; 
}

/* TITULO PÁGINA */
.page-title-box h4 {
  color: var(--preto);
}

/* BREADCRUMB */
.breadcrumb-item > a {
  color: var(--preto);
}

.breadcrumb-item.active {
  color: var(--subtexto);
}

.page-title-box .breadcrumb {
  display: ruby !important;
}

.breadcrumb_painel {
  padding: 25px 0 0 0;

  & h4 {
    color: #fff !important;
  }

  & a {
    color: #fff !important;
  }

  & .breadcrumb-item + .breadcrumb-item::before {
    color: var(--laranja);
  }

  & .breadcrumb-item.active {
    color: rgb(255 255 255 / 60%) !important;
  }
}

@media (width < 576px) {
  .breadcrumb_painel {
    padding: 0 0 0 0;
  }
}

@media (max-width: 1190px) {
  #filterButton {
      width: auto;
      min-width: 75px;
      text-align: center;
  }
}


.search-box .form-control {
  padding-left: 35px !important;
}

.table.dataTable.no-footer {
  border-bottom: none;
}

/*********************************************************************************************** TABELA */

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control {
  position: relative;
  padding-left: 30px !important;
  cursor: pointer;
}

table.dataTable.nowrap th,
table.dataTable.nowrap td {
  white-space: normal !important;
}

.hide_data {
  /* Esta classe faz com que as datas da tabela fiquem na ordem dd/mm/YYYY */
  display: none;
}

.dataTables_wrapper {
  /* overflow-y: hidden !important; */
}

table tr:hover {
  background: #e0e9f1;
  transition: all 0.2s linear;
}

.table-nowrap td,
.table-nowrap th {
  white-space: normal !important;
}

.bts_table {
  box-shadow: inset -1px 0px 0px 0px #ced4da !important;
}
.table_acao {
  width: 50px;
}

.total_table {
  background: var(--azul_escuro);
  color: #fff;
  display: inline-block;
  padding: 5px 10px;
  border-radius: 4px;
}

.total_table span {
  font-weight: 600;
}

#tabela .hide_data {
  /* Esta classe faz com que as datas da tabela fiquem na ordem dd/mm/YYYY */
  display: none;
}

.hide_data {
  /* Esta classe faz com que as datas da tabela fiquem na ordem dd/mm/YYYY */
  display: none;
}

.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
  background: #fff;
  border-color: var(--borda_input);
  border-radius: 4px;
}

.dataTables_length select {
  margin: 0px 5px !important;
}

.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label {
  margin-bottom: 0 !important;
}

.dataTables_wrapper .dataTables_length:hover select,
.dataTables_wrapper .dataTables_filter:hover input {
  border-color: var(--preta);
}

.dataTables_wrapper .dataTables_filter input {
  padding: 10px 15px !important;
}


.table-responsive.proposta_single {
  padding-bottom: 0 !important;
}

.table {
  border-collapse: separate !important;
  border-spacing: 0px 0px !important;
}

tbody,
td,
tfoot,
th,
thead,
tr {
  vertical-align: middle !important;
}

.table tbody th, .table tbody td {
  border-bottom: 1px solid var(--borda) !important;
  padding: 10px 15px 10px 15px !important;
  border-color: var(--borda) !important;
  font-size: 0.75rem;
}

.table tbody th,
.table tbody td {
  border-bottom: 1px solid #e9ebec !important;
  border-color: #e9ebec !important;
}

.row_link td {
  padding: 15px 0 !important;
}

.row_tabela {
  padding: 10px;
  background: #ffffff;
  box-shadow: inset 1px 0px 0px 0px #ced4da;
  border-radius: 0;
  font-size: 0.875rem;
  line-height: 20px;
  height: 52px !important;
}

.row_tabela:hover {
  /* box-shadow: 0 0 0.875rem 0 rgb(33 37 41 / 10%);
  box-shadow: inset 0px 0px 0px 2px #20639b; */
  background: #e0e9f1;
  transition: all 0.1s linear;
  position: relative;
  z-index: 1;
}

.table > :not(:first-child) {
  border-top: none;
}

.table > :not(caption) > * > * {
  border-bottom-width: 0px !important;
  color: var(--preto) !important;
}

.borda_item_table {
  border: 1px solid #a4b5c2;
  padding: 6px 12px;
  border-radius: 30px;
  flex-wrap: nowrap;
}

.borda_item_table::before {
  width: 10px;
  height: 10px;
  display: inline-block;
  position: relative;
  content: "";
  background: var(--verde);
  border-radius: 6px;
  margin-right: 8px;
}

.item_table {
  border-radius: 2px;
  display: inline-block;
  padding: 2px 12px;
  font-size: 12px;
  line-height: 15px;
  color: #fff;
  font-weight: 500;
}

.item_table_branco {
  background: var(--branco);
  color: var(--cinza) !important;
}

.item_table_verde {
  background: var(--verde);
}

.item_table_cinza {
  background: var(--cinza);
}

.item_table_azul_escuro {
  background: var(--azul_escuro);
}

.item_table_azul {
  background: var(--azul);
}

.item_table_roxo {
  background: var(--roxo);
}

.item_table_rosa {
  background: var(--rosa);
}

.item_table_vermelho {
  background: var(--vermelho-claro);
}

.item_table_laranja {
  background: var(--laranja);
}

.item_table_amarelo {
  background: var(--amarelo);
}

.item_bt_table a {
  /* border: 1px solid var(--borda); */
  /* box-shadow: 0 0 0 1px var(--borda); */
  /* background: #fff; */
  padding: 6px;
  /* margin: 0 0 0 8px; */
  width: 33px;
  text-align: center;
  border-radius: 2px;
  display: inline-block;
  font-size: 1rem;
  color: var(--subtexto) !important;
  transition: linear 0.1s;
}

.item_bt_table_desativado {
  padding: 6px;
  width: 33px;
  text-align: center;
  border-radius: 2px;
  display: inline-block;
  font-size: 1rem;
  color: var(--borda) !important;
  transition: linear 0.1s;
}

.bt_exc_itens button {
  border: none;
  padding: 2px 5px;
  background: #fff;
  border-radius: 2px;
  display: inline-block;
  font-size: 1rem;
  color: var(--subtexto);
  transition: linear 0.1s;
}

.bt_exc_itens button:hover {
  color: var(--grafite);
}

.item_bt_row a {
  padding: 2px;
  width: 30px;
  text-align: center;
  border-radius: 2px;
  display: inline-block;
  font-size: 1rem;
  color: var(--subtexto) !important;
  transition: linear 0.1s;
}

.item_bt_form a {
  /* border: 1px solid var(--borda); */
  box-shadow: 0 0 0 1px var(--borda);
  background: #fff;
  padding: 3px 8px;
  margin: 0 0 0 8px;
  width: 33px;
  text-align: center;
  border-radius: 2px;
  display: inline-block;
  font-size: 1rem;
  color: var(--subtexto) !important;
  transition: linear 0.1s;
}

.bt_table:hover {
  box-shadow: none;
  color: var(--cinza) !important;
  background: var(--branco);
}

.bt_table_vervelho:hover {
  box-shadow: none;
  color: var(--branco) !important;
  background: var(--vermelho);
}

.bt_table_azul:hover {
  box-shadow: none;
  color: var(--branco) !important;
  background: var(--azul);
}

.bt_table_laranja:hover {
  box-shadow: none;
  color: var(--branco) !important;
  background: var(--laranja);
}

.table.dataTable.no-footer {
  border-bottom: none;
}

.tabela_limpa {
  border-collapse: separate !important;
  border-spacing: 0px 3px !important;
}

.table-responsive.tabela_limpa_resp {
  padding-bottom: 0 !important;
}

.tabela_limpa thead th,
.tabela_limpa thead td {
  /* border-bottom: 10px solid #f5f7fb !important; */
  padding: 5px 10px !important;
  /* border-color: #f5f7fb !important; */
  background: var(--amarelo);
  /* border-radius: 4px; */
  border-color: none;
  color: var(--preto);
  font-weight: 600 !important;
}

.table.dataTable thead th,
table.dataTable thead td {
  border-bottom: 10px solid #f3f6f9;
  font-weight: 500 !important;
  letter-spacing: 0.02rem;
}

.tabela_limpa tbody th,
.tabela_limpa tbody td {
  /* border-bottom: 10px solid #f5f7fb !important; */
  padding: 8px 10px 8px 10px !important;
  border-color: #f5f7fb !important;
}

.tabela_limpa tbody tr:hover {
  background: rgb(44 74 134 / 10%);
  transition: all 0.2s linear;
}

.tabela_limpa i {
  color: var(--cinza);
}
.tabela_limpa i:hover {
  color: var(--azul);
  transition: all 0.2s linear;
}
/* paginacao */

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--azul_escuro);
  color: #fff !important;
  border-radius: 4px;
  padding: 7px 16px;
  border: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
  background: var(--cinza);
  /* margin-left: 8px; */
  color: var(--grafite);
  border-radius: 4px;
  padding: 6px 16px;
  border: none;
  color: var(--subtexto) !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:active {
  background: var(--branco);
  color: var(--preto) !important;
  border: none;
  box-shadow: none !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: var(--branco);
  color: var(--preto) !important;
  border: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
  padding: 6px 13px;
  border: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
  border: none;
}

.dataTables_wrapper .dataTables_length {
  margin-top: 5px;
}

.dataTables_info,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_paginate {
  font-weight: 500;
  color: var(--preto) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
  color: var(--cinza) !important;
}

.dataTables_filter input {
  min-width: 400px;
  padding: 10px 15px;
}

@media (max-width: 768px) { /* Ajuste para telas menores */
  .dataTables_filter input {
    min-width: 100%;
  }
}

.main_tabela {
  background: #ffffff;
  box-shadow: inset 0px 0px 0px 1px var(--cinza);
  border-radius: 4px;
  line-height: 20px;
}

.tabela_itens_col label {
  color: var(--subtexto);
  text-transform: uppercase;
  line-height: 20px;
  font-size: 0.75rem;
}

.tabela_itens_col {
  padding: 5px 0;
  text-transform: uppercase;
  line-height: 20px;
}

.tabela_itens {
  box-shadow: 0px 0px 0px 1px var(--borda);
  padding: 5px 15px 5px 15px;
  margin-top: 1px;
  border-radius: 2px;
  transition: linear 0.2s;
  background: #fff;
  margin-bottom: -2px;
}

.tabela_itens:hover {
  background: var(--bg);
}

.tabela_itens label {
  font-weight: 600;
}

.tabela_itens .table > tbody > tr > td {
  border: 0 !important;
  padding: 5px 0px !important;
}

.tabela_itens .table > tbody {
  box-shadow: none !important;
}



.bg_info_azul_escuro {
  color: var(--azul_escuro) !important;
  background-color: var(--azul_escuro_alpha) !important;
}

/* TAGS TABELAS */
.bg_info_azul {
  color: var(--azul) !important;
  background-color: var(--azul_alpha) !important;
}

.bg_info_laranja {
  color: var(--laranja) !important;
  background-color: var(--laranja_alpha) !important;
}

.bg_info_roxo {
  color: var(--roxo) !important;
  background-color: var(--roxo_alpha) !important;
}

.bg_info_rosa {
  color: var(--rosa) !important;
  background-color: var(--rosa_alpha) !important;
}

.bg_info_vermelho {
  color: var(--vermelho) !important;
  background-color: var(--vermelho_alpha) !important;
}

.bg_info_verde {
  color: var(--verde) !important;
  background-color: var(--verde_alpha) !important;
}

.bg_info_cinza {
  color: var(--cinza) !important;
  background-color: var(--cinza_alpha) !important;
}

/* TAGS HEADER STATUS */
.tag_header_verde {
  color: var(--verde) !important;
  background-color: var(--verde_alpha) !important;
  border: 1px solid var(--verde);
}
.tag_header_vermelho {
  color: var(--vermelho) !important;
  background-color: var(--vermelho_alpha) !important;
  border: 1px solid var(--vermelho);
}
.tag_header_azul {
  color: var(--azul) !important;
  background-color: var(--azul_alpha) !important;
  border: 1px solid var(--azul);
}
.tag_header_laranja {
  color: var(--laranja) !important;
  background-color: var(--laranja_alpha) !important;
  border: 1px solid var(--laranja);
}
/* *** */

.btn_soft_azul_escuro {
  background: var(--azul_escuro_alpha);
  color: var(--azul_escuro);
}
.btn_soft_azul_escuro:hover,
.btn_soft_azul_escuro:active {
  background: var(--azul_escuro) !important;
  color: var(--branco) !important;
}

.drop_tabela .btn-check:checked + .btn,
.drop_tabela .btn.active,
.drop_tabela .btn.show,
.drop_tabela .btn:first-child:active,
.drop_tabela :not(.btn-check) + .drop_tabela .btn:active {
  background: var(--azul_escuro) !important;
  color: var(--branco) !important;
}

.remove-item-btn:hover {
  color: var(--vermelho);
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {
  left: 5px !important;
}

table.dataTable.dtr-inline.collapsed
  > tbody
  > tr.parent
  > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed
  > tbody
  > tr.parent
  > th.dtr-control:before {
  background-color: var(--verde) !important;
}

/*********************************************************************************************** ICONES DROP CARD PAINEL */
.icon_card_nav a {
  display: flex;
  align-items: center;
}

.icon_card_nav .dropdown-item i {
  width: 18px !important;
  display: flex;
  justify-content: center;
  margin-right: 10px;
}

/*********************************************************************************************** PAGINAÇÃO */
.dataTables_wrapper .dataTables_paginate {
  padding: 0.7em;
}

.dataTables_wrapper .dataTables_info {
  padding: 1em;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--azul_escuro);
  color: #fff !important;
  border-radius: 4px;
  padding: 7px 14px;
  border: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
  background: var(--branco);
  margin: 5px;
  color: var(--grafite);
  border: 1px solid var(--borda) !important;
  border-radius: 4px;
  padding: 7px 14px;
  border: none;
  color: var(--subtexto) !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:active {
  background: var(--branco);
  color: var(--preto) !important;
  border: none;
  box-shadow: none !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: var(--azul_escuro_alpha);
  color: var(--azul_escuro) !important;
  border: 1px solid var(--azul_escuro_alpha) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
  padding: 6px 13px;
  border: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
  border: none;
}

.dataTables_wrapper .dataTables_length {
  margin: 1rem;
}

.dataTables_info,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_paginate {
  font-weight: 400 !important;
  color: var(--preto) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
  color: var(--cinza) !important;
}



.main_tabela {
  background: #ffffff;
  box-shadow: inset 0px 0px 0px 1px var(--cinza_claro);
  border-radius: 4px;
  line-height: 20px;
}

.tabela_itens_col label {
  color: var(--subtexto);
  text-transform: uppercase;
  line-height: 20px;
  font-size: 0.75rem;
}

.tabela_itens_col {
  padding: 5px 0;
  text-transform: uppercase;
  line-height: 20px;
}

.tabela_itens {
  box-shadow: 0px 0px 0px 1px var(--borda);
  padding: 5px 15px 5px 15px;
  margin-top: 1px;
  border-radius: 2px;
  transition: linear 0.2s;
  background: #fff;
  margin-bottom: -2px;
}

.tabela_itens:hover {
  background: var(--bg);
}

.tabela_itens label {
  font-weight: 600;
}

.tabela_itens .table > tbody > tr > td {
  border: 0 !important;
  padding: 5px 0px !important;
}

.tabela_itens .table > tbody {
  box-shadow: none !important;
}

.dataTables_length select:focus {
  outline: none; /* Remove o contorno padrão */
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--azul_escuro) !important;
  color: #fff !important;
  border-radius: 4px;
  padding: 7px 14px;
  border: none;
}

.required::after {
  content: "*";
  color: firebrick;
  margin-left: 4px;
}

/******************************* MODAL */
.modal_padrao .modal-header.modal_padrao_cinza {
  background: var(--azul_alpha) !important;
  color: var(--preto) !important;
  padding: 15px 20px;
}

.modal_padrao .modal-title {
  color: var(--preto);
  font-weight: 600;
}

.modal_padrao .btn-close-modal {
  color: var(--preto) !important;
  border: none;
  background: none;
  font-size: 1rem;
}

.modal_emp .modal-header.modal_emp_verde {
  background: var(--verde);
  padding: 15px 20px;
}

.modal_emp .modal-header.modal_emp_azul {
  background: var(--azul_escuro);
  padding: 15px 20px;
}

.modal_emp .modal-header.modal_emp_vermelho {
  background: var(--vermelho);
  padding: 15px 20px;
}

.modal_emp .modal-content {
  border: none;
}

.modal_emp .modal-title {
  color: var(--branco);
  font-weight: 600;
}

.modal_emp .btn-close-modal {
  color: var(--branco);
  background: none;
  border: none;
  font-size: 1rem;
}

.card_info_modal {
  border: 1px solid var(--borda_input);
  border-radius: 4px;
  margin-bottom: 15px;

  & p {
    border-bottom: 1px solid var(--borda_input);
    margin: 0;
    padding: 10px 15px;
  }
  & p:last-child {
    border: none;
  }
}

/* CADASTRO DO USUARIO */

.card_user_registro {
  padding: 32px 32px;
  max-width: 450px;

  & .card-body {
    padding: 0px;
  }

  & .card_user_registro_footer {
    margin-top: 35px;
  }

  & h5 {
    font-family: Montserrat, sans-serif;
    color: var(--azul_escuro_padrao) !important;
    font-size: 1.063rem;
    margin-bottom: 15px;
  }

  & p {
    color: var(--subtexto);
    line-height: 18px;
  }
}

@media (width < 577px) {
  .card_user_registro {
    padding: 32px 24px;
  }
}

/*************************************************** MODAL */

/* POLITICA PRIVACIDADE */

.modal_politica {
  font-size: 0.813rem;
}

.modal_politica img {
  min-width: 150px;
}

.modal_politica .modal-header {
  display: flex !important;
  padding: 20px 50px !important;
}

.modal_politica .modal-header img {
  width: 25%;
}

.modal_politica .modal-body h3 {
  font-weight: 600;
  text-align: center;
  margin-bottom: 30px;
  font-size: 1rem !important;
}

.modal_politica .modal-body {
  padding: 10px 50px 50px 50px !important;
}

.modal_politica_footer {
  padding: 20px 50px 40px 50px !important;
}

.modal_politica_footer img {
  max-width: 150px;
}

.modal_politica_footer div {
  padding: 0px !important;
}

.modal_politica_footer ul {
  padding-left: 0px !important;
}

.modal_politica_footer ul li {
  list-style: none;
}

.modal_politica_footer p {
  font-size: 0.65rem !important;
  margin-bottom: 0px;
}

.modal_politica_footer p strong {
  font-weight: 600;
}

@media (max-width: 576px) {
  .modal_politica .modal-header {
    padding: 20px 30px !important;
  }

  .modal_politica .modal-body {
    padding: 10px 30px 30px 30px !important;
  }

  .modal_politica_footer {
    padding: 20px 30px 40px 30px !important;
  }
}

.link_back_reg {
  margin: 30px 0 70px 0;
  text-align: center;
}

/******************************* FOOTER */
.footer_user_register {
  height: 125px !important;
  position: absolute !important;
  text-align: center;
  bottom: 0px;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  color: rgba(128, 142, 167, 1);

  & img {
    height: 48px;
    
  }
  & p {
    font-size: 12px;
    font-weight: 300;
    margin-bottom: 0px;
  }
}

/******************************* FORMULÁRIO */

.card_info {
  border: 1px solid var(--borda_input);
  border-radius: 4px;
  margin-bottom: 15px;
  padding: 15px;
  /* display: inline-block; */

  & p {
    margin: 0;
    padding: 2px 0px;
  }
}

.search-box .form-control {
  padding-left: 35px !important;
}

.form-label {
  color: var(--preto) !important;
  font-size: 0.813rem !important;
  font-weight: 500 !important;
  line-height: normal !important;
  margin-bottom: 10px;
}

.form-control:disabled,
.form-control[readonly] {
  background-color: #f2f4f8 !important;
  color: #636363 !important;
  box-shadow: inset 0px 0px 0px 0px #f3f6f9;
  opacity: 1 !important;
}

.form-label span {
  color: var(--vermelho);
}

.label_asterisco {
  font-size: 0.75rem;
  font-weight: 300;

  & p {
    color: var(--preto) !important;
  }

  & span {
    color: var(--vermelho);
  }
}
/* input:read-only,
select:disabled {
  background-color: var(--azul_alpha) !important;
  border-color: var(--azul) !important;
} */

.modal_emp .form-control:read-only,
.modal_emp select:disabled {
  background-color: var(--azul_alpha) !important;
  border-color: var(--azul) !important;
}

.form_perfil input:read-only,
.form_perfil select:disabled {
  background-color: var(--azul_alpha) !important;
  border-color: var(--azul) !important;
}

::-ms-input-placeholder {
  /* Edge 12-18 */
  color: var(--cinza);
}

::placeholder {
  color: var(--cinza);
}

input:focus,
select:focus {
  box-shadow: 0 0 0 0 !important;
  outline: 0 !important;
}

.form-control,
.form-select {
  border: 1px solid var(--borda_input);
  padding: 0.54rem !important;
}

.form-control-icon {
  border: 1px solid var(--borda_input);
  padding: 0.54rem 0.54rem 0.54rem 2.1rem !important;
}

.form-control-codigo {
  padding: 11px 0 !important;
}

.form-control:hover,
.form-select:hover {
  border: 1px solid var(--preto);
}

.form-control:focus,
.form-select:focus {
  border: 1px solid var(--preto) !important;
}

.select2-container .select2-selection--single {
  padding: 1px 0px !important;
  height: 39px !important;
}

.select2-container .select2-selection--single:hover,
.select2-container .select2-selection--single:focus {
  box-shadow: 0 0 0 1px var(--preto) !important;
  border-radius: 2px;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out,
    -webkit-box-shadow 0.15s ease-in-out;
}

.select2-dropdown {
  /* z-index: 1 !important; */
}

.form-check-input {
  width: 1.2em;
  height: 1.2em;
  margin-top: 0.15em;
}
.form-check-input:checked {
  background-color: var(--verde);
  border-color: var(--verde);
}

.form-check-danger .form-check-input:checked {
  background-color: var(--vermelho);
  border-color: var(--vermelho);
}

/* POLITICA PRIVACIDADE */

.modal_politica {
  font-size: 0.813rem;
}

.modal_politica img {
  min-width: 150px;
}

.modal_politica .modal-header {
  display: flex !important;
  padding: 20px 50px !important;
}

.modal_politica .modal-header img {
  width: 25%;
}

.modal_politica .modal-body h3 {
  font-weight: 600;
  text-align: center;
  margin-bottom: 30px;
  font-size: 1rem !important;
}

.modal_politica .modal-body {
  padding: 10px 50px 50px 50px !important;
}

.modal_politica_footer {
  padding: 20px 50px 40px 50px !important;
}

.modal_politica_footer img {
  max-width: 150px;
}

.modal_politica_footer div {
  padding: 0px !important;
}

.modal_politica_footer ul {
  padding-left: 0px !important;
}

.modal_politica_footer ul li {
  list-style: none;
}

.modal_politica_footer p {
  font-size: 0.65rem !important;
  margin-bottom: 0px;
}

.modal_politica_footer p strong {
  font-weight: 600;
}

@media (max-width: 576px) {
  .modal_politica .modal-header {
    padding: 20px 30px !important;
  }

  .modal_politica .modal-body {
    padding: 10px 30px 30px 30px !important;
  }

  .modal_politica_footer {
    padding: 20px 30px 40px 30px !important;
  }
}

/******************************* HEADER */

.nav-item a {
  color: var(--preta) !important;
  font-weight: 400;
}

.nav-item a.active {
    color: #0461AD !important;
}

.topbar-user {
  background-color: var(--branco_alpha);
}

[data-layout="horizontal"] .navbar-menu .navbar-nav .nav-link {
  color: var(--vz-topnav-item-color);
  padding: 0.75rem 1.3rem;
}

@media (max-width: 1024.98px) {
  [data-layout="horizontal"] .horizontal-logo {
    padding-left: 1rem;
  }
}

.dropdown-item.icon_drop i {
  color: var(--label);
}

.icon_avatar {
  width: 32px;
  height: 32px;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
}

.icon_avatar.icon_avatar_azul {
  background: var(--azul);
}

.icon_avatar.icon_avatar_verde {
  background: var(--verde);
}

.icon_avatar.icon_avatar_roxo {
  background: var(--roxo);
}

.navbar-header .user-name-text {
  color: var(--branco);
  font-weight: 300 !important;
}

.navbar-header .user-name-sub-text {
  color: rgb(255 255 255 / 70%);
  font-weight: 200 !important;
  max-width: 230px;
}

.user_menu_nome {
  color: var(--branco) !important;
  font-weight: 500;
}

.user_menu_admin {
  color: var(--branco) !important;
  font-weight: 300;
}

.hamburger-icon span {
  background-color: var(--branco);
}

@media (max-width: 768px) {
  .navbar-brand-box {
    display: block;
  }
}

.cont_sub {
  background: var(--vermelho);
  font-size: 0.65rem;
  width: 20px;
  height: 20px;
  text-align: center;
  color: var(--branco);
  margin-left: 5px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}



[data-layout="horizontal"] .menu-dropdown {
  width: 300px !important;
}

.navbar-menu .navbar-nav .nav-sm .nav-link {
  padding: 0.5rem 1.5rem !important;
}

.btn_soft_azul_escuro {
  background: var(--azul_escuro_alpha);
  color: var(--azul_escuro);
}
.btn_soft_azul_escuro:hover,
.btn_soft_azul_escuro:active {
  background: var(--azul_escuro) !important;
  color: var(--branco) !important;
}

.result_file {
  background: var(--azul_alpha);
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 6px 6px 15px;
  margin: 8px 0 0 0;
}

.result_file_name {
  padding: 0 10px 0 0;
}

.result_file_name a {
  word-wrap: break-word; /* Quebra palavras longas */
  overflow-wrap: break-word; /* Para compatibilidade com navegadores */
  word-break: break-all; /* Garante que palavras longas serão quebradas */
  color: #0461ad;
}

.label_info,
.label_info_link {
  color: var(--subtexto) !important;
  font-style: italic;
  font-weight: 400;
  line-height: 19px;
  margin-top: 4px;
  margin-bottom: -5px;
  width: 100%;
  font-size: 0.813rem;
}

/******************************* CHECKBOX */

.check_item_container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.check_item_container .check_item {
  font-size: 0.813rem;
  margin: 8px 16px 8px 0px;
  padding: 10px 16px;
  border: 1px solid var(--borda_input) !important;
  color: var(--subtexto) !important;
  text-transform: uppercase;
  outline: 0 !important;
  box-shadow: 0 0 0 0 !important;
  border-radius: 0.25rem;
  transition: all 0.2s;
  cursor: pointer;
}

.check_item_container .check_item:hover {
  border: 1px solid var(--laranja) !important;
  color: var(--laranja) !important;
}

.check_item_container .btn-check:checked + .check_item,
.check_item_container .check_item.active,
.check_item_container .check_item.show,
.check_item_container .check_item:first-child:active,
:not(.btn-check) + .check_item:active {
  border: 1px solid var(--laranja) !important;
  background: var(--laranja) !important;
  color: var(--branco) !important;
}

@media (max-width: 768px) {
  .check_item_container .check_item {
    font-size: 0.75rem;
    margin: 5px;
    padding: 10px 20px;
  }
}

@media (max-width: 576px) {
  .check_item_container .check_item {
    /* font-size: 0.75rem;
    margin: 5px;
    padding: 10px 20px; */
    width: 100%;
  }
}

/* Estilos aplicados apenas à tabela de avaliação */
.tabela-avaliacao {
  width: 100%; /* Define uma largura máxima */
  margin: 20px auto; /* Centraliza a tabela */
  border-collapse: collapse; /* Remove espaços entre as bordas */
}

.tabela-avaliacao th, .tabela-avaliacao td {
  padding: 12px; /* Adiciona espaçamento interno */
  text-align: left; /* Mantém o alinhamento do texto */
  vertical-align: middle; /* Centraliza verticalmente */
}

.tabela-avaliacao thead {
  background-color: #f8f9fa; /* Fundo diferenciado para o cabeçalho */
}

.tabela-avaliacao .form-control {
  width: 100%;
  padding: 8px;
  height: 38px;
}

/*********************************************************************************************** PERFIL */

.header_perfil p {
  font-size: 0.813rem;
  color: #ffffff;
  font-weight: 300;
  margin: 0;
}

.header_perfil span {
  font-size: 0.813rem;
  color: #ffffff;
  opacity: 70%;
  font-weight: 300;
  margin: 0;
}

.header_perfil h3 {
  font-size: 1.25rem;
  color: #ffffff;
  font-weight: 400;
  line-height: inherit;
}

.header_perfil_nav svg {
  color: #ffffff;
  width: 20px;
  height: auto;
}

.avatar_perfil {
  width: 60px;
  height: 60px;
  display: flex;
  color: #fff;
  border: 2px solid #ffffff;
  font-size: 1.375rem;
  border-radius: 50%;
  background: var(--roxo);
  align-items: center;
  justify-content: center;
}

.profile-wid-bg::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  opacity: 1 !important;
  background: #1E3A8A;
}

.animation-nav li a span {
  position: relative;
  color: #ffffff !important;
  font-weight: 300 !important;
}

.profile-nav.nav-pills .nav-link::before {
  background-color: rgba(255, 255, 255, 20%) !important;
}

.profile-analise-bg {
  height: 320px !important;
}

@media (width < 1200px) {
  .profile-analise-bg {
    height: 500px !important;
  }
}

@media (width < 768px) {
  .profile-wid-bg {
    height: 445px !important;
  }

  .profile-analise-bg {
    height: 600px !important;
  }
}

.tit_section {
  border-bottom: 1px solid var(--borda_input);
  margin: 20px 0 20px 0;
  padding-bottom: 8px;
  
}

.border-light.table > thead tr {
  background-color: #f3f6f9;

}

table.dataTable thead th, table.dataTable thead td {
  font-size: 12px;
  padding: 10px 15px !important;
}


@media (max-width: 991.98px) {
  div.dataTables_filter {
    margin-bottom: 1rem !important; /* ajuste conforme necessário */
  }
}

.spinner-border {
    height: 12px !important;
    width: 12px !important;
    margin: 0 5px 0 0;
    border-width: 2px !important;
  }

  .titulo-limitado {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 3em;        /* força altura mínima de 2 linhas */
  line-height: 1.5em;     /* define altura de linha para facilitar o cálculo */
}