:root{
    --primary-rgb: 59, 130, 246;
    --success-rgb: 34, 197, 94;
}
@font-face{
   font-family: Goldplay-Regular;
   font-weight: normal;
   src: url("../font/Goldplay-Regular.ttf");
   font-style: normal;
}

body{
    /* background-color: linear-gradient(to bottom right, #acb6e5, #86fde8) !important; */
    background-image: linear-gradient(to bottom right, rgba(var(--primary-rgb), 0.05), rgba(var(--success-rgb), 0.05));
    color: var(--tp4);
    cursor: default;
    font-family: "Poppins", "Lato", "Segoe UI", Tahoma, Verdana, Sans-Serif;
    min-height:100vh;
    max-width: 100vw;
	position:relative;
}

a:link { text-decoration: none; }
a.disabled {
  pointer-events: none;
  cursor: default;
}
label{
    margin-top:0.5em;
    margin-bottom: 0;
}
.modal{ height:inherit; }
.fecharModal{ border:none; }
.fechar:hover{
    background-color: #ff5050;
    border-radius: 0 0 0 0.4em;
    color:transparent;
    height:inherit;
}
.segmento{
   border-bottom: 2px solid var(--tp7);
   color: var(--tp7);
   margin-bottom: 1em;
}
.sublinhado{
    border-bottom: 2px solid #454545;
    color: var(--tp8);
    margin-top: 1em;
    width:inherit;
}
/* Tabelas */
thead{
    background-color:var(--tp3);
    color:#ffffff;
}
th{
    background-color: #343434;
    color: white;
}
th, td{
    font-weight: normal;
    padding: 0;
    text-align: center;
}
th > a{ color:#ffffff; }
th > a:hover{
    color:var(--tp2);
    text-decoration: none;
}
td{
    font-size: 0.8em;
    padding: 0.4em 0.5em;
}
tr{ background-color: white; }
tr:nth-child(2n-1){ background-color: #eaeaea; }
input[type="email"],
 input[type="date"],
  input[type="time"], 
  input[type="number"], 
  input[type="password"], 
  input[type="search"], 
  input[type="tel"], 
  input[type="text"], 
  input[type="url"], 
  textarea, select, .custom-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: #ffffff !important;
    border: 1px solid #d1d1d1;
    border-radius: .3rem;
    box-shadow: none;
    box-sizing: inherit;
    cursor: text;
    height: 2rem;
    padding: 0rem 0.5rem;
    width: 100%;
}
#nomesDocs{
    background-color: #ffffff;
    border: 1px solid #d1d1d1;
    border-radius: .3rem;
    padding: 0 0.5rem;
}
.custom-select, input[type="radio"]{ cursor:pointer; }
input:disabled { cursor: default; }
options{ cursor:pointer;}
textarea{ resize: none; min-height:4em;}
input[type="email"]:focus, input[type="date"]:focus, input[type="time"]:focus, input[type="number"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="url"]:focus, textarea:focus, select:focus {
    border-color: #7e7e7e;
    border-radius: .3rem;
    outline: 0;
}

/* ----------------- Contador de caracteres */
#cps { display: none; position:absolute; bottom:0.5em; left:0.7em; }
#cps span {
   color: #7e7e7e;
   font-size: 0.7em;
}
.qtd_char, [id*='qtd_char']{
   color: #838383;
   font-size: 0.9em;
   margin: -0.1em 0 0 0;
   text-align: right;
}
/* ------------------ FIM Contador de caracteres */

/* ------------------ Mostra Password */
#mostra_pass {
   color: #7e7e7e;
   cursor: pointer;
   position: absolute; right:0.5em; bottom: 0.4em;
}
.mostra_pass_eye { position: relative; }
/* ------------------ FIM Mostra Password */
/* FIM LOGIN */

/* Flash messages */
.message {
    padding: 0.1rem 0;
    background: #eff8ff;
    color: #2779bd;
    border-color: #6cb2eb;
    border-width: 1px;
    border-style: solid;
    letter-spacing: 0.05em;
    margin:0;
}
.message.hidden { display: none; }
.message.success {
    background: #e3fcec !important;
    color: #1f9d55 !important;
    border-color: #51d88a !important;
}
.message.error {
    background: #fcebea;
    color: #cc1f1a;
    border-color: #ef5753;
}

.message.warning {
    background-color: #fff3cd;
    color: #856404;
    border-color: #ffeeba;
    text-align: center;
}
.message, .message.warning, .alert-warning {
    background-color: #fff3cd !important;
    color: #856404 !important;
    border-color: #ffeeba !important;
    text-align: center !important;
}

/* Error */
.error-message{
    color: red;
    font-size: 70%;
    margin-bottom: -0.5em;
}

.banner-temporario {
    font-size: 1.5rem; /* Texto bem grande */
    padding: 1.2rem 2rem !important; /* Espaçamento interno espaçoso */
    border: 2px solid #e0a800; /* Borda amarela escura elegante */
    margin-bottom: 20px !important;
}



/* botões */
.btn-log {
  background-color: var(--td7);
  color: #ffffff;
}
.btn-log:hover {
  background-color: var(--td8);
  color: #ffffff;
}
.btn-verde{
    background-color:#22b573;
    color: white;
    font-size:2rem;
    border-radius: 2em;
    width: 100%;
    /* font-family: ; */
  }

/* ------------------ Header Content ------------------ */
.headerContainer{
    background-image: url("../img/headerImgBackground.jpg");
    background-size: cover;
    border-bottom: 0.5em solid #3084CC;
    height:7em;
    overflow: hidden;
    width:100%;
    position:relative;
}
.headerBtns{ position: absolute; top:2em;}
/* FIM Header Content */

/* Paginação ========================================================================================   */
.paginator { text-align: right; }
.paginator > p{ text-align:center; font-size:0.8em; color:gray; }
.pagination {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0.5rem 0;
}
.pagination li a{ color:gray; margin: 0 0.3rem; padding: 0.2em; }
.pagination li a:hover{ background-color:gray; color:white; margin: 0 0.3rem; padding: 0.2em; border-radius: 0.1em; }
.prev.disabled a, .next.disabled a { cursor: not-allowed; color: #606c76; }
.asc:after { content: " ▾"; } /*\2193*/
.desc:after { content: " ▴"; } /*\2191*/

/* FOOTER ========================================================================================   */
footer {
    background-color: #1D4794;
    border-top: 0.5em solid #3084CC;
	box-sizing: border-box;
}
.footerSpace{ height:17vh; }
.dpid p, .pmpg p{
    color: #ffffff;
	font-size: 0.6875em;
    margin: 0.7em 0 0 0;
}
.dpid img{
	float:left;
	height:45px;
	margin-right:1em;
}
.pmpg img{
    float:right;
	height:50px;
    margin-top: 0.1em;
	margin-right:1em;
}
.pmpg p{ float:right; text-align: center; margin: 0; }
.pmpg p span{ font-size:80% }
/* FIM FOOTER */

/* classe Cores */
.cl-tp4{ color: var(--tp4); }
.cl-tp6{ color: var(--tp6); }
.cl-tp8{ color: var(--tp8); }
.bg-tp8{ background-color: var(--tp8); }
.bg-tp5{ background-color: var(--tp5); }

/* ========================================================================================   */
@media screen and (min-width:576px)
{
    .centro{ height:60vh; }
}

@media screen and (max-width:767px)
{
    .dpid p{ font-size: 60%; }
    .dpid img{
        height:35px;
        margin-right:0.5em;
        margin-top:0.3em;
    }
}

@media screen and (max-width:575px)
{
    .dpid p{ font-size: 50%; }
    .dpid img{
        height:35px;
        margin-right:0.5em;
        margin-top:0em;
    }
    .logoBdp > p{
       font-size: 1.5em;
       letter-spacing: 0.05em;
    }
}

/* IMPRESSÃO ========================================================================================   */
.print{ display: none; }
@media print {
    body{ font-size:13pt; width:209mm!important; height:346mm!important; }
    @page{
        size: auto;
        margin: 0mm 5mm 0mm 5mm;
    }
    .no-print{ display: none!important; }
    .print{ display: block!important; }
}



/* =======================================================
   DARK THEME
======================================================= */

[data-bs-theme="dark"] body{
    background: linear-gradient(to bottom right, #0f172a, #111827) !important;
    color: #4e6072;
}

/* TABELAS */
[data-bs-theme="dark"] tr{
    background-color: #1e293b;
    color: #f8fafc;
}

[data-bs-theme="dark"] tr:nth-child(2n-1){
    background-color: #334155;
}

[data-bs-theme="dark"] th{
    background-color: #0f172a;
    color: white;
}

/* INPUTS */
[data-bs-theme="dark"] input[type="email"],
[data-bs-theme="dark"] input[type="date"],
[data-bs-theme="dark"] input[type="time"],
[data-bs-theme="dark"] input[type="number"],
[data-bs-theme="dark"] input[type="password"],
[data-bs-theme="dark"] input[type="search"],
[data-bs-theme="dark"] input[type="tel"],
[data-bs-theme="dark"] input[type="text"],
[data-bs-theme="dark"] input[type="url"],
[data-bs-theme="dark"] textarea,
[data-bs-theme="dark"] select,
[data-bs-theme="dark"] .custom-select{

    background-color: #1e293b !important;
    border: 1px solid #475569;
    color: #f8fafc;
}

/* FOCUS */
[data-bs-theme="dark"] input:focus,
[data-bs-theme="dark"] textarea:focus,
[data-bs-theme="dark"] select:focus{

    border-color: #60a5fa;
    box-shadow: 0 0 0 0.1rem rgba(96,165,250,.25);
}

/* MODAL */
[data-bs-theme="dark"] .modal-content{
    background-color: #1e293b;
    color: white;
}


/* LINKS */
[data-bs-theme="dark"] a{
    color: #93c5fd;
}

/* DROPDOWN */
[data-bs-theme="dark"] .dropdown-menu{
    background-color: #1e293b;
    border-color: #334155;
}

[data-bs-theme="dark"] .dropdown-item{
    color: #f8fafc;
}

[data-bs-theme="dark"] .dropdown-item:hover{
    background-color: #334155;
}
/* HEADER NORMAL */ .headerContainer{ 
    background-image: url("../img/headerImgBackground.jpg"); 
    background-size: cover; background-position: center; border-bottom: 0.5em solid #3084CC; 
    height: 7em; overflow: hidden; width: 100%; position: relative; }
    /* HEADER DARK */
     [data-bs-theme="dark"] .header-content{
         background: linear-gradient( rgba(15, 23, 42, 0.92), 
         rgba(15, 23, 42, 0.92) ), url("../img/headerImgBackground.jpg"); 
         background-size: cover; background-position: center; }

/* FLASH */
[data-bs-theme="dark"] .message{
    background: #1e3a8a;
    color: #dbeafe;
    border-color: #3b82f6;
}

/* NAVBAR */
[data-bs-theme="dark"] .nav-link.icon-link:hover{
    background: rgba(255,255,255,0.08);
}

.nav-pills .nav-link {
    background-color: rgba(0,79,119,0.25)!important;
    color: white;
}

.nav-pills .nav-link.active {
    background-color:  rgba(0,79,119,0.25)!important;
}
.nav-pills .nav-link i {
    color: white;
}
/* BOTÃO ENTRAR */
[data-bs-theme="dark"] .bg-white{
    background-color: #334155 !important;
    color: white !important;
}
.wrapper-title
 {
    font-weight: normal !important;
    color:#028dcf !important;
    margin: 0rem;
}
legend {
    display: block;
    unicode-bidi: isolate;
    padding-inline: 2px;
}
.lead {
    font-size: 1.25rem;
    font-weight: 300;
}
.gap-4 {
    gap: 1.5rem !important;
}