:root {
    --ps-primary: #3577D1;
    --ps-dark-blue: #003366;
    --ps-success: #2eb89b;
    --ps-bg: #f8fafc;
    --ps-neutral: #334155;
    --ps-light-blue: #e9f2ff;
    --ps-border-radius: 18px;
    --ps-menu-text: #9CA3A8;
    --ps-highlight: #3577D1;
}

body{
    color:#283642;
    /*Default*/
    background-color: #FBFBFB;
    overflow-x: hidden;
}

.poppins-thin {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 100;
    font-style: normal;
  }
  
.poppins-extralight {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 200;
    font-style: normal;
  }
  
.poppins-light {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 300;
    font-style: normal;
  }
  
.poppins-regular {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 400;
    font-style: normal;
  }
  
.poppins-medium {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 500;
    font-style: normal;
  }
  
.poppins-semibold {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 600;
    font-style: normal;
  }
  
.poppins-bold {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 700;
    font-style: normal;
  }
  
.poppins-extrabold {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 800;
    font-style: normal;
  }
  
.poppins-black {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 900;
    font-style: normal;
  }
  
.poppins-thin-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 100;
    font-style: italic;
  }
  
.poppins-extralight-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 200;
    font-style: italic;
  }
  
.poppins-light-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 300;
    font-style: italic;
  }
  
.poppins-regular-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 400;
    font-style: italic;
  }
  
.poppins-medium-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 500;
    font-style: italic;
  }
  
.poppins-semibold-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 600;
    font-style: italic;
  }
  
.poppins-bold-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 700;
    font-style: italic;
  }
  
.poppins-extrabold-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 800;
    font-style: italic;
  }
  
.poppins-black-italic {
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 900;
    font-style: italic;
  }  

.center-items{
  text-align:center;
}

main{
  margin-bottom:5em;
}
/*Footer*/
footer{
  background-color:#EAEBEC;
  width:100%;
  padding:2em;
  position:relative;
  bottom: 0px;
}

.footer-first-line{
  border-bottom: 1px solid #ACABAB;
  padding-bottom: 1.5em;
}

.footer-second-line span{
  margin-top: 0.6em;
  text-align: center;
}

#footer-left-container span{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 500;
}

#footer-right-container span{
  margin-left:1.2em;
}

footer a{
  color: #283642;
  cursor: pointer;
  text-decoration: none;
}

footer a:hover{
  color: #6F7880;
  text-decoration:underline;
}

#adeja-title-footer{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 700;
}

.fill-container{
    height:900px;
    visibility: hidden;
}
/*End Footer*/

/*Mobile Icon Menu*/
#mobile-menu-icon-container{
    display:none;
    clear:both;
}

#mobile-icon-menu path{
    fill: #3577D1;
}

#mobile-icon-menu{
    margin-right: 1.3%;
}

#mobile-menu-icon-container:hover{
    cursor: pointer;
}

#mobile-menu-icon-container:active #mobile-icon-menu path{
    fill: #023C8C;
}

#mobile-menu-icon-container label{
    pointer-events: none; /*Ignore click events*/
}

#menu-effect{
    display: none;
    position:absolute;
    right:0;
    width:100%;
    height:100%;
    z-index: 1;
    background-color: rgba(0,0,0,0.6);
}

/*End Mobile Icon Menu*/

/*Mobile Footer*/
@media (max-width: 768px) {
    .footer-first-line{
        flex-wrap: wrap;
        justify-content: center;
    }

    #footer-right-container{
      margin-top:1em;
      justify-content: center !important;
  
    }
    #footer-left-container{
      justify-content: center !important;
    }
}

/*End Mobile Footer*/


/*Candidate Navbar*/

/* --- NAVBAR --- */
.navbar {
    background: white;
    padding: 1rem 1rem;
    margin-bottom: 2rem;
    z-index: 1000;
    position:sticky;
    width:100%;
    top:0px;
}

.nav-link-custom {
    padding: 8px 20px;
    border-radius: 10px;
    color: var(--ps-neutral);
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s;
}

.nav-link-custom:hover {
    background-color: #E6EEF9;
}

.nav-link-custom.active {
    background-color: var(--ps-dark-blue);
    color: white !important;
}

.user-pill {
    background-color: #94b8e9;
    border-radius: 50px;
    padding: 5px 5px 5px 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 0.85rem;
}

.avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid white;
}

    /* --- MENU OVERLAY MOBILE --- */
#mobileMenu {
    display: none;
    position: absolute;
    top: 10px; left: 10px; right: 10px;
    background: white;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    z-index: 2000;
    padding: 15px;
    animation: fadeIn 0.3s ease;
}

@keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }

.menu-item {
    display: flex; align-items: center; gap: 15px;
    padding: 15px; text-decoration: none;
    color: var(--ps-menu-text); font-weight: 500;
    border-bottom: 1px solid #f1f5f9;
}

.menu-item:active {
    background-color:#F7F7F7;
}

.menu-item.active { background: var(--ps-light-blue); color: var(--ps-dark-blue); border-radius: 12px; border: none; font-weight: 700; }
.menu-item:last-child { border: none; }
.icon-nav { width: 20px; height: 20px; fill: currentColor; }
.icon-nav path { fill: currentColor; }


.navbar-brand { margin-left:-2.5rem; width:10%;}

/* --- RESPONSIVIDADE --- */
@media (max-width: 991px) {
    .navbar-desktop { display: none !important; }
    .navbar-brand { margin-left:-1.5rem; width:20%;}
    .navbar-brand img{ height:28px; }
    .navbar { padding: 1rem 0.2rem; }
    .exit-container { display: none !important; }

    .user-pill {
    padding: 2px 2px 2px 12px;
    font-size: 0.75rem;
    margin-left:0px;
    }

    .notification-svg{
        display:none;
    }

}
    

@media (min-width: 992px) {
    #openMenuBtn { display: none; }
}


/*End Candidate Navbar*/


h1{
  font-family:  "Poppins", sans-serif, Arial, Helvetica;
  font-weight: 700;
  font-style: normal;
}

h4{
  font-family:  "Poppins", sans-serif, Arial, Helvetica;
  font-weight: 700;
  font-style: normal;
}

h5{
  font-family:  "Poppins", sans-serif, Arial, Helvetica;
  font-weight: 400;
  font-style: normal;
}

p{
    font-family:  "Poppins", sans-serif, Arial, Helvetica;
    font-weight: 400;
    font-style: normal;
}

#verse{
    font-family:  "Poppins", sans-serif, Arial, Helvetica;
    font-weight: 300;
    text-align: center;
    color:#CECDCD;

}

#reference{
    font-family:  "Poppins", sans-serif, Arial, Helvetica;
    font-weight: 600;
    color:#CECDCD;
}

#header-text-container{
    width:80%;
    position: relative;
    z-index: 1;
}

.page-header{
    height:40vh;
    margin-top: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size:cover;
    background-repeat: no-repeat;
    background-image: url("../src/images/desktop/desktop-header-background-image.jpg");
}

.page-header img{
    top:1.2em;
    left: -1em;
}

.bg-shadow-effect{
    width:100%;
    height:100%;
    background-color: rgba(0,0,0,0.6);
}

/*Header Mobile*/
@media (max-width: 768px) {
  #header-text-container{
    width:95%;
    bottom: 0px;
    margin-top: 5%;
  }

  #verse{
    font-size: 14pt;
  }

  #reference{
    font-size: 14pt;
  }

  .page-header{
    height:40vh;
    max-height: 260px;
    background-image: url("../src/images/mobile/mobile-header-background-image.jpg");/*Image mobile version*/
  }
}
/*End Header Mobile*/


.text-color-white{
    color:white;
}

#title{
    color:#0355C5;
}

#description-container{
    width: 60%;
}

.ul-navigator{
    margin-right: 25px;
}

.li-navigator{
    width:20px;
    background-color: #B1CAED;
    border: 0px;
}

#nav-page1{
    background-color:#3577D1;
}

.nav-item{
  height: 1em;
  width:3em;
  background-color: #B1CAED;
  border-radius: 18px;
  margin-right: 1.2em;
}

.form-custom{
  width:40em; /*Before 100vh*/
}

.form-error{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 600;
  font-size: small;
  color: #F9899C;
}

/*Custom Button*/
.custom-button{
  width:30vh;
  background-color: #3577D1;
  color:white;
  font-weight: 700;
  border-radius: 18px;
}
.custom-button:hover{
  background-color: #568DD8;
  color:white;
}

.custom-button:active{
  color:white !important; 
  background-color: #022F6C !important;
}

.custom-button:disabled{
  color:white !important; 
  background-color: #E6EEF9 !important;
  cursor: not-allowed;
}
/*End Custom Button*/

/*Page Form Tablets*/
@media (max-width: 992px) {
  .nav-item{
    height: 0.8em;
    width:2.5em;
    border-radius: 18px;
    margin-right: 0.6em;
  }
}
/*End Page Form Tablets*/

/*Page Form Mobile*/
@media (max-width: 768px) {
  #description-container{
    width: 95%;
  }
  .nav-item{
    height:1.2em;
    width:1.2em;
    border-radius: 100%;
    margin-right: 0.6em;
  }

  .form-container{
    width:100%;
  }

  .form-custom{
    width:100%;
  }

  .custom-button{
    width:8em;
  }

}
/*End Page Form Mobile*/


/*Custom Text Field*/
.text-field{
  border-color: #CECDCD;
  border-radius: 12px;
}
.text-field::placeholder{
  color:#BCC1C4;
  font-weight: 600;
}

.text-field:focus{
  border-color: #568DD8;
  box-shadow: none;
}

.text-field-label{
  color: #6F7880;
  font-weight: 600;
}
/*End Custom Text Field*/


#gender-form-title{
  margin-left: 4.2em;
  margin-bottom: 0.5em;
}

#religion-form-title{
  margin-left: 3.4em;
  margin-bottom: 0.5em;
}

/*Custom Radio Button*/
.custom-radio input{
  background-color: #B1CAED;
  border-color: #B1CAED;
  position: absolute;
  display: none;
  margin:0;
  padding:0;
}

.custom-radio label::before{
  content: '';
  background: #B1CAED;
  border-radius: 100%;
  border: 1px solid darken(#B1CAED, 25%);
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  position: relative;
  top: 0em;
  margin-right: 0.5em; 
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
  
}
.custom-radio input:checked ~ label::before{
  background: #3577D1;
  box-shadow: inset 0 0 0 4px #B1CAED;
}
/*End Custom Radio Button*/


/*Display Form Buttons*/
.form-buttons-container{
  height:3em;
}

.form-buttons-container #back-button{
  left:0px;
}

.form-buttons-container #next-button{
  right:0px;
}
/*End Display Form Buttons*/

/*Custom Radius Mobile*/
@media (max-width: 768px) {
  .custom-radio{
    margin-bottom: 1.2em;
    width: 10em;
  }

}
/*End Custom Radius Mobile*/

/*Password Field*/
.password-field img{
  right:1.6em;
  top:3.4em;
  width:2em;
}

.password-field img:hover{
  cursor: pointer;
}
/*End Password Field*/


/*Dropdown*/
.dropdown-custom button{
  font-family:"Poppins", sans-serif, Arial, Helvetica;
  width:100%;
  height: 3em;
  background-color: #3577D1 !important;
  border-color: #568DD8 !important;
  color:white;
  font-weight: 700;
  border-radius: 12px;
  text-align: left;
  padding-left: 1.4em;
}

/*Remove default dropdown icon*/
.dropdown-custom button.dropdown-toggle::after{
  content:none;
}

.dropdown-custom button:hover{
  background-color: #568DD8 !important;
  border-color: #568DD8 !important;
  color:white;
}

.dropdown-custom button:active{
  color:white !important; 
  background-color: #022F6C !important;
  border-color: #568DD8;
}

.dropdown-custom ul.dropdown-menu{
  width:100%;
}

@keyframes rotate-arrow-up{
  from{transform: rotate(0deg);}
  to{transform: rotate(180deg);}
}

@keyframes rotate-arrow-down{
  from{transform: rotate(180deg);}
  to{transform: rotate(0deg);}
}

.dropdown-custom .down-arrow-icon{
  right:1.2em;
  top:0.6em;
  cursor: pointer;
  pointer-events: none; /*Ignore click events*/
}

.dropdown-custom .down-arrow-icon path{
  fill:white;
  
}

.dropdown-custom ul{
  padding: 0px;
}

.dropdown-custom li{
  border-bottom: 1px solid;
  border-color: #B7B6B6;
}

.dropdown-custom li:last-child{
  border-bottom: 0px;
}

.dropdown-custom a{
  padding-left: 1.4em;
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 700;
  color: #8BB1E4;
}

.dropdown-custom a:hover{
  color: #8BB1E4;
  background-color: #E6EEF9;
}

.dropdown-custom a.active{
  color:white !important;
  background-color: #022F6C !important;
}
/*End Dropdown*/

/*Download Dropdown Custom*/
#download-dropdown-container{
    padding: 0;
    margin-right: 1em;
}

.download-dropdown-custom{
    width: 8em;
}

.download-dropdown-custom button{
    font-family:"Poppins", sans-serif, Arial, Helvetica;
    width:100%;
    height: 2.5em;
    background-color: #3577D1 !important;
    border-color: #568DD8 !important;
    color:white;
    font-weight: 700;
    border-radius: 12px;
    padding-left: 1.4em;
    padding-right: 1.4em;
}

.download-dropdown-custom.white button{
    font-family:"Poppins", sans-serif, Arial, Helvetica;
    width:100%;
    height: 2.5em;
    background-color: #FFFFFF !important;
    border-color: #B7B6B6 !important;
    color: #24313C;
}

.download-dropdown-custom button:hover{
    background-color: #568DD8 !important;
    border-color: #568DD8 !important;
    color:white;
}

.download-dropdown-custom.white button:hover{
    background-color: #F7F7F7 !important;
    border-color: #B7B6B6 !important;
    color: #24313C;
}

.download-dropdown-custom.white button:active{
    background-color: #898989 !important;
    border-color: #B7B6B6 !important;
    color: #24313C;
}
  
.download-dropdown-custom button:active{
    color:white !important; 
    background-color: #022F6C !important;
    border-color: #568DD8;
}

/*Remove default dropdown icon*/
.download-dropdown-custom button.dropdown-toggle::after{
    content:none;
}

.download-dropdown-custom .down-arrow-icon{
    right:0.8em;
    top:0.6em;
    cursor: pointer;
    pointer-events: none; /*Ignore click events*/
}

.download-dropdown-custom .down-arrow-icon path{
    fill:white;
}

.download-dropdown-custom.white .down-arrow-icon path{
    fill: #0355C5;
}

.download-dropdown-custom .download-icon{
    left:0.9em;
    top:0.7em;
    cursor: pointer;
}

.download-dropdown-custom .download-icon path{
    fill:white;
}

.download-dropdown-custom .download-icon:hover path{
    fill:#F5E9BE;
}

.download-dropdown-custom .download-icon:active path{
    fill:#A69451;
}

.download-dropdown-custom.white .download-icon path{
    fill: #0355C5;
}

.download-dropdown-custom.white .download-icon:hover path{
    fill:#8BB1E4;
}

.download-dropdown-custom.white .download-icon:active path{
    fill:#022F6C;
}

.download-dropdown-custom ul{
    padding: 0px;
    border: 0px;
    background-color:  rgba(0, 0, 0, 0);
}

.download-dropdown-custom a{
    border-bottom: 1px solid;
    border-color: #8BB1E4;
}
  
.download-dropdown-custom li:last-child a{
    border-bottom: 0px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}

.download-dropdown-custom a{
    text-align: center;
    font-family: "Poppins", sans-serif ,Arial, Helvetica;
    font-weight: 400;
    color: #283642;
    background-color: #B1CAED;
    width: 8em;
}

.download-dropdown-custom a:hover{
    color: #283642;
    background-color: #E6EEF9;
}
  
.download-dropdown-custom a.active{
    color:white !important;
    background-color: #022F6C !important;
}

.download-dropdown-custom.white a{
  background-color: #FBFBFB;
}

.download-dropdown-custom.white a:hover{
    color: #283642;
    background-color: #CECDCD;
}

.download-dropdown-custom.white a.active{
  background-color: #E6EEF9 !important;
  color:#24313C !important;
}

/*End Download Dropdown Custom*/

/*Year Dropdown Custom*/

.dropdown-custom.year button{
    background-color: white !important;
    border-color: white !important;
    color:#283642 !important;
    padding-left: 1em;
}

.dropdown-custom.year .down-arrow-icon{
    right:0.8em;
}
  
.dropdown-custom.year button:hover{
    background-color: #CECDCD !important;
    border-color: #CECDCD !important;
    color:#283642 !important;
}
  
.dropdown-custom.year button:active{
    color:#283642 !important; 
    background-color: #676767 !important;
    border-color: #676767;
}

.dropdown-custom.year ul,li{
    background-color: rgba(0, 0, 0, 0);
    border-width: 0px;
    border-color: rgba(0, 0, 0, 0);
}

.dropdown-custom.year li{
    border-bottom: 0px;
}

.dropdown-custom.year a{
    background-color: #E6EEF9;
    color: #283642;
    font-weight: 400;
    padding-left: 1em;
    width:8em;
    border-bottom: 1px solid;
    border-color: #B7B6B6;
}

.dropdown-custom.year li:last-child a{
    border-bottom: 0px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
}
  
.dropdown-custom.year a:hover{
    background-color: white;
    color: #283642;
}

.dropdown-custom.year .down-arrow-icon path{
    fill:#3577D1;
}

/*End Year Dropdown Custom*/

/*List Data*/
.list-data{
  width: 50em;
}

.list-data-row{
  border-top: 1px;
  border-left: 1px;
  border-right: 1px;
  border-bottom: 0px;
  border-style: solid;
  border-color: #B7B6B6;
}

.list-data-row:last-child{
  border-bottom: 1px solid  #B7B6B6;
}

.list-data-row .col-left{
  text-align: left;
}

.list-data-row .col-right{
  text-align: right;
}

.list-data-title{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 800;
  color:#3577D1;
}

.list-data-content{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 600;
  color: #535E68;
  border-left: 1px solid #8BB1E4;
  padding-left: 0.7em;
  margin-left: 0.5em;
}

/*End List Data*/

/*Edit Button Icon*/
.edit-button-icon{
  cursor: pointer;
}

.edit-button-icon:hover path{
  fill: #3577D1;
}

.edit-button-icon:hover rect{
  stroke: #3577D1;
}
/*End Edit Button Icon*/

/*Edit Text Button*/
.edit-text-button{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 600;
  color: #8BB1E4;
  margin-left: 0.4em;
  cursor: pointer;
}

.edit-text-button:hover{
  color:#3577D1;
}

/*End Edit Text Button*/

/*<a> BUTTON*/

.a-button{
  text-decoration:none;
}

.a-button:hover{
  color:#8BB1E4;
}

.a-button:active{
  color: #023C8C;
}

/*List Data Mobile*/
@media (max-width: 768px) {
  .list-data{
    width: 100%;
  }

  .list-data-title{
    font-size: smaller;
  }

  .list-data-content{
    font-size: smaller;
  }

  .edit-text-button{
    font-size: smaller;
  }

}
/*End List Data Mobile*/

/*List Data lg*/
@media (max-width: 992px) {
  .list-data{
    width: 100%;
  }
}
/*End List Data lg*/

/*Exit Icon*/
#exit-text-button{
  color:#283642;
  margin-left:0.5em;
}

#exit-text-button:hover{
  color:#3577D1;
}

.exit-icon{
  cursor: pointer;
}

.exit-icon path{
  fill: #F9899C;
}

.exit-icon:hover path{
  fill: #FCBBC6;
}

.exit-icon:active path{
  fill:#B04D5D;
}

/*End Exit Icon*/


/*Custom Checkbox*/
.custom-checkbox{
  margin-left:-1.5em;
}

.custom-checkbox label{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 400;
}

.custom-checkbox input[type="checkbox"]{
  display: none;
  position: absolute;
  place-content: center;
}

.custom-checkbox label::before{
  content: '';
  font:inherit;
  background: white;
  border-radius: 25%;
  border: 1px solid #3577D1;
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  position: relative;
  top: 0.1em;
  margin-right: 0.5em; 
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}

.custom-checkbox input[type="checkbox"]:checked ~label::before{
  box-shadow: 0px 0px 5px #023C8C;
}

.custom-checkbox span.check-icon::before{
  content: url("data:image/svg+xml,%3Csvg%20class%3D%22check-accept-icon%20position-absolute%22%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2022%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M2%209L9%2017.5L20.5%201.5%22%20stroke%3D%22%233577D1%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E");
  width: 1.2em;
  height: 1.2em;
  display: inline-block;
  position: absolute;
  cursor: pointer;
  top: 0.1em;
  left:1.6em;
  transform: scale(0);
  transform-origin: bottom left;
  transition: all 250ms ease;
  pointer-events: none; /*ignore click events*/
}

.custom-checkbox input[type="checkbox"]:checked ~ span.check-icon::before{
  transform: scale(1);
}
/*End Custom Checkbox*/

/*Custom Filter*/
.filter-section{
  margin-bottom: 2em;
}

/*End Custom Filter*/

/*Custom Search Input*/
.search-input input{
  padding-left: 2.8em;
  border-radius: 18px;
  border-color: #B7B6B6;
}

.search-input input::placeholder{
  font-family: "Poppins", sans-serif ,Arial, Helvetica;
  font-weight: 400;
  color: #B7B6B6;
}

.search-input span.search-icon::before{
  content: url("data:image/svg+xml,%3Csvg%20width%3D%2217%22%20height%3D%2216%22%20viewBox%3D%220%200%2017%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_53_1400)%22%3E%0A%3Cpath%20d%3D%22M16.3045%2014.8625L12.3252%2010.8831C13.4096%209.55686%2013.9428%207.86453%2013.8144%206.15617C13.6861%204.44782%2012.906%202.85415%2011.6356%201.70481C10.3652%200.555472%208.70158%20-0.0616068%206.98895%20-0.0187856C5.27632%200.0240356%203.64566%200.723481%202.43426%201.93487C1.22287%203.14627%200.523425%204.77693%200.480604%206.48956C0.437783%208.20219%201.05486%209.86577%202.2042%2011.1362C3.35354%2012.4066%204.94721%2013.1867%206.65556%2013.315C8.36392%2013.4434%2010.0563%2012.9102%2011.3825%2011.8258L15.3619%2015.8051C15.4876%2015.9266%2015.656%2015.9938%2015.8308%2015.9922C16.0056%2015.9907%2016.1728%2015.9206%2016.2964%2015.797C16.42%2015.6734%2016.4901%2015.5062%2016.4916%2015.3314C16.4932%2015.1566%2016.426%2014.9882%2016.3045%2014.8625ZM7.16652%2012.0005C6.11169%2012.0005%205.08054%2011.6877%204.20348%2011.1016C3.32642%2010.5156%202.64283%209.68265%202.23916%208.70811C1.8355%207.73357%201.72988%206.66122%201.93567%205.62665C2.14145%204.59208%202.64941%203.64178%203.39529%202.8959C4.14117%202.15002%205.09147%201.64206%206.12604%201.43628C7.1606%201.23049%208.23296%201.33611%209.2075%201.73977C10.182%202.14344%2011.015%202.82703%2011.601%203.70409C12.1871%204.58115%2012.4999%205.6123%2012.4999%206.66713C12.4983%208.08113%2011.9359%209.43676%2010.936%2010.4366C9.93615%2011.4365%208.58052%2011.9989%207.16652%2012.0005Z%22%20fill%3D%22%23B1CAED%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_53_1400%22%3E%0A%3Crect%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22white%22%20transform%3D%22translate(0.5)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E");
  width: 1.0em;
  height: 1.0em;
  display: inline-block;
  position: absolute;
  cursor: pointer;
  top: 0.6em;
  left:0.8em;
  pointer-events: none; /*ignore click events*/
}

.search-input input:focus ~ span.search-icon::before{
  content: url("data:image/svg+xml,%3Csvg%20width%3D%2217%22%20height%3D%2216%22%20viewBox%3D%220%200%2017%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_53_1400)%22%3E%0A%3Cpath%20d%3D%22M16.3045%2014.8625L12.3252%2010.8831C13.4096%209.55686%2013.9428%207.86453%2013.8144%206.15617C13.6861%204.44782%2012.906%202.85415%2011.6356%201.70481C10.3652%200.555472%208.70158%20-0.0616068%206.98895%20-0.0187856C5.27632%200.0240356%203.64566%200.723481%202.43426%201.93487C1.22287%203.14627%200.523425%204.77693%200.480604%206.48956C0.437783%208.20219%201.05486%209.86577%202.2042%2011.1362C3.35354%2012.4066%204.94721%2013.1867%206.65556%2013.315C8.36392%2013.4434%2010.0563%2012.9102%2011.3825%2011.8258L15.3619%2015.8051C15.4876%2015.9266%2015.656%2015.9938%2015.8308%2015.9922C16.0056%2015.9907%2016.1728%2015.9206%2016.2964%2015.797C16.42%2015.6734%2016.4901%2015.5062%2016.4916%2015.3314C16.4932%2015.1566%2016.426%2014.9882%2016.3045%2014.8625ZM7.16652%2012.0005C6.11169%2012.0005%205.08054%2011.6877%204.20348%2011.1016C3.32642%2010.5156%202.64283%209.68265%202.23916%208.70811C1.8355%207.73357%201.72988%206.66122%201.93567%205.62665C2.14145%204.59208%202.64941%203.64178%203.39529%202.8959C4.14117%202.15002%205.09147%201.64206%206.12604%201.43628C7.1606%201.23049%208.23296%201.33611%209.2075%201.73977C10.182%202.14344%2011.015%202.82703%2011.601%203.70409C12.1871%204.58115%2012.4999%205.6123%2012.4999%206.66713C12.4983%208.08113%2011.9359%209.43676%2010.936%2010.4366C9.93615%2011.4365%208.58052%2011.9989%207.16652%2012.0005Z%22%20fill%3D%22%233577D1%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_53_1400%22%3E%0A%3Crect%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22white%22%20transform%3D%22translate(0.5)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E");
}

.search-input input:focus{
  box-shadow: none;
  border-color: #3577D1;
}

/*End Custom Search Input*/

/*Custom Nav Arrow*/

#nav-back-arrow{
   cursor: pointer;
}


#nav-back-arrow:hover path{
    fill: #568DD8;    
}

#nav-back-arrow:active path{
    fill: #022F6C;    
}

#nav-next-arrow{
   cursor: pointer;
}

#nav-next-arrow:hover path{
    fill: #568DD8;
}

#nav-next-arrow:active path{
    fill: #022F6C;
}

/*End Custom Nav Arrow*/

/* Define a animação de brilho (shimmer) para o carregamento de tabelas*/
@keyframes shimmer {
    0% {
        background-position: -468px 0; /* Inicia o gradiente fora da vista */
    }
    100% {
        background-position: 5620px 0; /* Move o gradiente para a direita, criando o efeito de brilho */
    }
}

/* Estilo base para os elementos de placeholder com o efeito de brilho */
.shimmer-effect {
    background: #525252; /* Cor de fundo padrão */
    background-image: linear-gradient(to right, #f0eeee 0%, #e4e4e4 20%, #d6d6d6 40%, #f1f1f1 100%); /* Gradiente para o brilho */
    background-repeat: no-repeat;
    background-size: 9500px 100%; /* Tamanho do gradiente, maior que o elemento para o efeito de deslizamento */
    animation: shimmer 1.5s infinite linear; /* Aplica a animação de brilho */
}

/*MODAL CUSTOM*/
.error-modal-content{
  background-color:#FEF0F3;
  border-radius: 20px;
  box-shadow: 5px 5px 4px rgba(0,0,0,0.25);
}

.error-modal-footer{
  /*position:relative;*/
  border-top:0px;
}

.error-modal-header{
  border-width:0px;
  padding-left: 3.2em;
  padding-right: 3.2em;
}

.sub-header-modal{
  width:100%;
  border-bottom-color: #F86C83;
  border-bottom-width:4px;
  border-bottom-style:solid;
  text-align: center;
}

.sub-header-modal h1{
  color:#535E68;
}

.sub-footer-modal{
  width:100%;
  text-align: center;
}

.sub-footer-modal .custom-button{
  background-color: #F9899C;
}

.sub-footer-modal .custom-button:hover{
  background-color: #FA9DAC;
}

.sub-footer-modal .custom-button:active{
  background-color: #883B48 !important;
}

.modal-body{
  text-align:center;
  color:#535E68;
}

/*Loading Subscribe Modal*/
.loading-subscribe-modal-content{
  border-radius: 25px;
  box-shadow: 5px 5px 4px rgba(0,0,0,0.25);
}

.loading-text{
  color:#283642;
}

#manual-loading-backdrop{
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0.6);
  position:absolute;
  z-index: 3;
  display:none;
}


/* --- PILLS / SELETORES --- */
.pill-group { display: flex; gap: 10px; flex-wrap: wrap; }
.btn-pill {
    border: 1px solid var(--ps-highlight);
    color: var(--ps-highlight);
    background: white;
    padding: 8px 20px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.85rem;
    transition: all 0.2s;
}
.btn-pill.active { background-color: var(--ps-primary); border-color: var(--ps-primary); color: white; }
.btn-pill:hover:not(.active) { border-color: #8BB1E4; color: #8BB1E4; }
.is-dirty-pill { border: 2px solid var(--ps-changed) !important; color: var(--ps-changed) !important; }

/* --- CONFIGURAÇÃO DO MODAL QUADRADO --- */

.btn-action-modal {
    width:auto;
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 700;
    letter-spacing: 1px;
    transition: all 0.3s;
}

.square-modal {
    border-radius: 40px !important;
    border: none;
    background-color: #ffffff;
    width: 100%;
    max-width: 600px; /* Tamanho ideal para desktop */
    aspect-ratio: 1 / 1; 
    margin: auto;
    position: relative;
    overflow: hidden; /* Garante que o círculo fique dentro dos cantos arredondados */
}

/* Corpo do Modal - Organização em 3 blocos (Topo, Centro, Base) */
.modal-body-container {
    position: relative;
    z-index: 2; /* Fica acima do círculo */
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Texto no topo, Botões na base */
    padding: 2.5rem !important;
}

/* --- TIPOGRAFIA --- */
.text-top-container {
    position: relative;
}

.modal-question-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #24313C;
    line-height: 1.1;
}

.text-highlight-blue {
    color: #3577D1;
}

/* --- ILUSTRAÇÃO CENTRALIZADA --- */
.illustration-center-container {
    position: relative;
    flex: 1; /* Ocupa todo o espaço entre o texto e os botões */
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0; /* Permite que o container ignore o tamanho intrínseco da imagem */
}

.custom-illustration {
    max-height: 75%; /* Imagem cresce até quase o limite do container */
    width: auto;
    object-fit: contain;
}

.button-outlined { border: 1.5px solid var(--ps-highlight); color: var(--ps-highlight); background: transparent; }

.button-outlined:hover {
    border-color: #B1CAED;
    color: #B1CAED;
}

.button-outlined:active {
    border-color: #023C8C;
    color: #023C8C;
}


/* --- BOTÕES NA BASE --- */
.buttons-bottom-container {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 20px;
    padding-top: 10px;
}

@media (max-width: 768px) {
    .btn-action-modal {
        padding: 8px 16px;
    }
}

 /* Responsividade para telas muito pequenas */
@media (max-width: 576px) {
    .square-modal { max-width: 95vw; }
    .modal-body-container { padding: 2rem !important; }
    .modal-question-text { font-size: 1.4rem; }
}