/*formataes gerais*/
 
body
{
	font-family: 'InterRegular', 'Roboto', sans-serif;
	font-size:16px!important;
	color: #2C3E50;
  background-color:#FDFBF7;
	
}
p {
    margin-bottom: 1rem;
    font-size: 1rem!important;
    line-height: 1.4rem!important;
    text-rendering: optimizeLegibility;
}
.top-bar, .top-bar ul{
  background-color:#FFF;
}
.top-bar{
  border-bottom:1px solid #e6e6e6;
}
h1, h2, h3, h4, h5, h6, .card-title{
	font-family: 'InterRegular', sans-serif;
  
}
#gdpr-cookie-message{
	display:none!important;
}
.btn__title .required-indicator,
.btn__title .has-tip{
  padding-left:0!important;
  padding-right:0!important;
  margin-left:0!important;
  margin-right:0!important;
} 


/* Elemento com scroll */
 .gradient-icon{
	 background: conic-gradient(from 0deg at center, 
                rgba(255, 190, 15, 0.8), 
                rgba(249, 152, 27, 0.8), 
                rgba(210, 103, 43, 0.8), 
                rgba(207, 35, 42, 0.8), 
                rgba(205, 30, 99, 0.8), 
                rgba(120, 44, 132, 0.8), 
                rgba(80, 88, 152, 0.8), 
                rgba(0, 103, 139, 0.8), 
                rgba(0, 138, 126, 0.8), 
                rgba(0, 173, 78, 0.8), 
                rgba(113, 191, 68, 0.8), 
                rgba(189, 215, 48, 0.8), 
                rgba(255, 190, 15, 0.8));
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
 }
 .bg-white{
  background-color: white;
 }

 /* sobreposição botões */
 .button{
  border-radius: 50px; 
 }

input[type="submit"].primary, a.button.primary, button.primary{
  background-color: #2C3E50!important;
}

input[type="submit"].primary:hover, a.button.primary:hover, button.primary:hover{
  background-color: #3a526b!important;
}
/* // sobreposição botões */

 
/* dropdown menu */
.dropdown.menu li  {
  display: flex;
  align-items: center;
}
/* // dropdown menu */

/* Estilos para a secção hero */
.hero-section {
  padding: 2rem 0;
  overflow: hidden;
}

.hero-image-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.hero-illustration {
  max-width: 100%;
  height: auto;
}

/* Animações para elementos da secção hero */
.animated-item {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.animated-item.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Ajustes responsivos */
@media screen and (max-width: 640px) {
  .hero-section {
    padding: 1rem 0;
  }
  
  .hero-image-container {
    margin-top: 2rem;
  }
}

/* Esconde a barra de rolagem, exceto quando em uso */
.elemento-com-scroll::-webkit-scrollbar {
    width: 0px;
    height: 0px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.elemento-com-scroll:hover::-webkit-scrollbar {
    width: 6px; /* Torna a barra visível ao passar o mouse */
}

/* Thumb com cor suave */
.elemento-com-scroll::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 3px;
}

.elemento-com-scroll::-webkit-scrollbar-track {
    background: transparent;
}
.xsmall_div{
	clear:both;
	min-height:5px;
	max-height:5px;
}

.small_div{
	clear:both;
	min-height:20px;
	max-height:20px;
}
.medium_div{
	clear:both;
	min-height:40px;
	max-height:40px;
}
.large_div{
	clear:both;
	min-height:80px;
	max-height:80px;
}
.xlarge_div{
	clear:both;
	min-height:150px;
	max-height:150px;
}
 /*keep footer down http://matthewjamestaylor.com/blog/keeping-footers-at-the-bottom-of-the-page*/
html,
body {
   margin:0;
   padding:0;
   height:100%;
}
#container {
   min-height:100%;
   position:relative;
}
#header {
   background:transparent;
   background: #fdfbf7;
   padding:10px;
}
#body {
   padding:10px;
   padding-bottom:740px;   /* Height of the footer */
   background-color:#fdfbf7;
}
 
#footer {
   position:absolute;
   bottom:0;
   width:100%;
   min-height:740px;   /* Altura mínima do footer */
   height:auto;        /* Altura ajusta-se ao conteúdo */
   background:#2C3E50;
   color:#FFF;
   padding-bottom: 2rem; /* Espaço extra no fundo */
}
@media only screen and (max-width: 40.0625em) {
	#body {
		 /*px to rem*/
	   padding:10px;
	   padding:	0.625rem;
	   padding-bottom:580px;   /* Height of the footer */
	}
	#footer {
	   position:absolute;
	   bottom:0;
	   width:100%;
	   height:580px;   /* Height of the footer */
	   background:#2C3E50;
	   color:#FFF;
	}
}
.footer-illustration{
  width: 100%;
  height: 100%;
}

#footer h1{
  font-size: 1rem;
  color: #fff;
  font-weight: 700;
}

#footer .small{
  font-size: small;
  color: #B8C2CC;
}

#footer .ttclaim{
  color: #B8C2CC;
  font-size: 12px;
}

 

/*avisos*/
#container {
   min-height:100%;
   position:relative;
}
#header {
   background:transparent;
   background: #fdfbf7;
   padding:10px;
}

.the_footer p{
	color : #FBFCFF!important;
	font-size:13px;
}
.no-padding{
	padding:0!important;
}
.custom-bg-color-FFFFFF{
	background-color:#FFFFFF;
}
.custom-bg-color-F1F2F3{
	background-color:#F1F2F3;
}
.custom-bg-color-FFBE0F{
	background-color:#FFBE0F;
}
.custom-bg-color-F9981B{
	background-color:#F9981B;
}
.custom-bg-color-D2672B{
	background-color:#D2672B;
}

.custom-bg-color-CF232A{
	background-color:#CF232A!important;
}
.custom-bg-color-CD1E63{
	background-color:#CD1E63;
}
.custom-bg-color-782C84{
	background-color:#782C84;
}
.custom-bg-color-505898{
	background-color:#505898;
}
.custom-bg-color-505898-color-F1f2f3{
  background-color:#505898!important;
  color:#F1f2f3!important;
}
.custom-bg-color-00678B{
	background-color:#00678B;
}
.custom-bg-color-008A7E{
	background-color:#008A7E;
}
.custom-bg-color-00AD4E{
	background-color:#00AD4E;
}
.custom-bg-color-71BF44{
	background-color:#71BF44;
}
.custom-bg-color-BDD730{
	background-color:#BDD730;
}
.custom-bg-color-b4a391{
	background-color:#b4a391;
}
.custom-bg-E8E3DD{
	background-color:#E8E3DD!important;;
   
}
.custom-bg-f9f6f1{
	background-color:#f9f6f1!important;;
   
}
.custom-color-b4a391{
  color:#b4a391!important;
}
.custom-color-7897b5{
  color:#7897b5!important;
}
.custom-colormdi-008cba{
  color:#008cba;
}
.custom-colormdi-E8E3DD{
	background-color:#E8E3DD!important;;
  color:#5A6577!important;
}
.custom-bg-color-f9fafb{
  background-color:#FFF;
  padding:1rem;
}
.custom-bg-color-f9fafb .quote-inline-wrap{
  border-right:1px solid #f9fafb;
  margin-right:1rem;
}
.custom-color-F1F2F3,
.custom-colormdi-F1F2F3{
	color:#F1F2F3;
}

.custom-color-FFBE0F,
.custom-colormdi-FFBE0F{
	color:#FFBE0F!important;
}
.custom-color-F9981B,
.custom-colormdi-F9981B{
	color:#F9981B!important;
}
.mdi-color-transparent{
  color:transparent!important;
}
.custom-color-D2672B,
.custom-colormdi-D2672B{
	color:#D2672B;
}
.custom-color-CF232A,
.custom-colormdi-CF232A{
	color:#CF232A!important;
}
.custom-color-CD1E63,
.custom-colormdi-CD1E63{
	color:#CD1E63!important;
}

.custom-color-782C84,
.custom-colormdi-782C84{
	color:#782C84;
}

.custom-color-505898,
.custom-colormdi-505898{
	color:#505898;
}
.mdi.mdi-help-circle-outline,
.custom-color-00678B,
.custom-colormdi-00678B{
	color:#00678B!important;
}
.custom-color-008A7E,
.custom-colormdi-008A7E{
	color:#008A7E;
}
.custom-color-00AD4E,
.custom-colormdi-00AD4E{
	color:#00AD4E!important;
}
.custom-color-71BF44,
.custom-colormdi-71BF44{
	color:#71BF44!important;
}

.custom-color-BDD730,
.custom-colormdi-BDD730{
	color:#BDD730;
}
.custom-border-top{
	border-top-width:1px;
	border-top-style:solid;
}
.custom-border-bottom{
	border-bottom-width:1px;
	border-bottom-style:solid;
}
.custom-border-left{
	border-left-width:1px;
	border-left-style:solid;
}
.custom-border-right{
	border-right-width:1px;
	border-right-style:solid;
}

.custom-border-color-E8E3DD{
	border-color:#E8E3DD!important;;
   
}
.custom-border-color-F1F2F3{
	border-color:#F1F2F3;
}
.custom-border-color-FFBE0F{
	border-color:#FFBE0F;
}
.custom-border-color-F9981B{
	border-color:#F9981B;
}
.custom-border-color-D2672B{
	border-color:#D2672B;
}
.custom-border-color-CF232A{
	border-color:#CF232A;
}
.custom-border-color-CD1E63{
	border-color:#CD1E63;
}
.custom-border-color-782C84{
	border-color:#782C84;
}
.custom-border-color-505898{
	border-color:#505898;
}
.custom-border-color-00678B{
	border-color:#00678B;
}
.custom-border-color-008A7E{
	border-color:#008A7E;
}
.custom-border-color-00AD4E{
	border-color:#00AD4E;
}
.custom-border-color-71BF44{
	border-color:#71BF44;
}
.custom-border-color-BDD730{
	border-color:#BDD730;
}

.ttHomePage-outer-circle-div{
	display: flex; 
	align-items: start;
}
.ttHomePage-circle-div{
	width: 20px; 
	height: 20px; 
	border-radius: 50%; 
	 
	margin-right: 10px;
}

.p-0{
	padding:0!important;
}

/* Estilos para a estrutura geral */
.ttHomePage-border-right-grey {
     
    display: flex; /* Utilizando flexbox para alinhar */
    justify-content: space-between;
    padding: 10px; /* Espaçamento interno */
    align-items: center; /* Centralizar verticalmente os elementos */
    
}

/* Estilos para o dia */
.ttHomePage-aviso-day {
    font-size: 2.5em; /* Tamanho do dia maior */
    font-weight: bold; /* Negrito para destaque */
    text-align: center; /* Centralizar texto */
    display: flex; /* Flexbox para alinhar centro vertical */
    justify-content: center;
    align-items: center;
    height: 100%; /* Preenche a altura completa da linha */
}

/* Estilos para o mês e ano */
.ttHomePage-aviso-month {
    font-size: 1.2em; /* Tamanho do mês */
    text-align: center; /* Centralizar texto */
    text-transform: uppercase; /* Coloca o texto do mês em maiúsculas */
	margin-top: 8px;
}

.ttHomePage-aviso-year {
    font-size: 0.9em; /* Tamanho menor para o ano */
    text-align: center; /* Centralizar texto */
    display: block; /* Garantir que o ano fique abaixo do mês */
    margin-top: -8px; /* Pequeno espaço acima do ano */
}
/* Estilos para o dia */
.ttHomePage-aviso-day-small {
  color:#b4a391;
  font-size: 1.8em;
  font-weight: bold;
  text-align: right;
  display: flex;
  justify-content: right;
  align-items: center;
  height: 100%;
}
 
/* Estilos para o mês e ano */
.ttHomePage-aviso-month-small {
  color:#b4a391;
  font-size: 0.7em;
  text-align: left;
  text-transform: uppercase;
  margin-top: 8px;

}

.ttHomePage-aviso-year-small {
  color:#b4a391;
  font-size: 0.7em;
  text-align: left;
  display: block;
  margin-top: -4px;
}
.aviso-card{
  border-radius: 12px;
}
.aviso-card-top{
  padding: 0 1rem 0 1rem;
}
.aviso-card h5 {
  font-size: 1.25rem;
}

.aviso-card .card-section.grid-x.grid-padding-x.align-bottom.custom-border-top {
  -webkit-box-align: start!important;
  -ms-flex-align: start!important;
  align-items: flex-start!important;
}

.aviso-card-body{
  font-size: 1rem;
  color: #596577;
}

/* Estilos para a secção de Principais Características */
.caracteristica-icon-container {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background-color: #f5f5f5;
  margin-bottom: 1rem;
}

.caracteristica-icon-container i {
  font-size: 2.5rem;
}

.caracteristica-card {
  background-color: #f9f9f9;
  border-radius: 8px;
  padding: 1.5rem;
  height: 100%;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.caracteristica-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.caracteristica-card i {
  font-size: 2.5rem;
  margin-bottom: 0.5rem;
}

.caracteristica-card h4 {
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
  color: #333;
}

.caracteristica-card p {
  font-size: 0.9rem;
  color: #596577;
  margin-bottom: 0;
}
.quote-inline-wrap-article-content {
  max-width: 100%;
  position: relative;
}

.quote-inline-wrap {
  float: left;
  max-width: 21.875rem;
  padding: 0 1rem 1rem 0;
}

.quote-inline-wrap .quote-inline-marks {
  font-size: 6.25rem;
  color: #8a8a8a;
  line-height: 1rem;
  font-family:none!important;
}

.quote-inline-wrap .quote-inline-testimonial {
  border-radius: 5px;
}

.quote-inline-wrap .quote-inline-testimonial p {
  font-weight: 300;
}

.quote-inline-wrap .quote-inline-person {
  margin-bottom: 1.5rem;

}

.quote-inline-wrap .quote-inline-person .quote-inline-photo img {
  border-radius: 50%;
  width: 4.375rem;
  height: 4.375rem;
  float: left;
  margin-right: 1rem;
}

.quote-inline-wrap .quote-inline-person p {
  position: relative;
  top: 5px;
}

.quote-inline-wrap .quote-inline-person p:nth-child(2) {
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 0;
}

.quote-inline-wrap .quote-inline-person p:nth-child(3) {
  font-size: 0.875rem;
  font-weight: 400;
  color: #8a8a8a;
}

@media screen and (max-width: 63.9375em) {
  .quote-inline-wrap {
    width: 100%;
    float: none;
    display: block;
  }
}

.margin_bottom_05{
  margin-bottom:0.5rem;
}

/* Menu Fancy Styling */
.menu-fancy {
    margin: 1rem 0;
    padding: 0;
     
}

.menu-fancy-option {
    position: relative;
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
    width: 90%;
}
.menu-fancy-option span,
.menu-fancy-option a {
    display: flex;
    align-items: center;
    padding: 0.2rem 1.5rem;
    padding-left:0.2rem!important;
    color: #474746;
    text-decoration: none;
    font-size: 1rem;
    font-weight: 500;
    border-radius: 0.5rem;
    transition: all 0.3s ease;
    background: #FDFBF7;
    _box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
 
}
.menu-fancy-option span i,
.menu-fancy-option i,
.menu-fancy-option a i {
  margin-right: 0.75rem;
   
  font-size: 1.5rem;
  background: #474746;
  padding:0.75rem;
   
  height:3rem;
  width:3rem; 
  border-radius: 50%;
  color: #FDFBF7;
}

/* Hover state */
.menu-fancy-option:hover a:not([href="javascript:void(0);"]) {
    background: #FDFBF7;
    color: #474746;
    transform: translateX(5px);
}

.menu-fancy-option:hover a[href="javascript:void(0);"] {
    background: #FDFBF7;
    color: #474746;
}

/* Selected state */
.menu-fancy-option.is-selected {
    position: relative;
}
.menu-fancy-option.is-selected span,
.menu-fancy-option.is-selected a {
    background: #4746461f;
    color: #474746;
    font-weight: 600;
     
}

.menu-fancy-option.is-selected i {
    color: #FDFBF7;
}

/* Active indicator */
.menu-fancy-option.is-selected::before {
    content: '';
    position: absolute;
    left: -1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 0.25rem;
    height: 2rem;
    background: #FDFBF7;
    border-radius: 0.25rem;
}

/* Alert icon styling */
.menu-fancy-option i.mdi-alert-circle-outline {
    color: #CF232A;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

.menu-fancy-option:hover i.mdi-alert-circle-outline {
    opacity: 1;
}

.menu-fancy-option.is-selected i.mdi-alert-circle-outline {
    color: white;
    opacity: 1;
}

 
.callout.secondary {
  background-color: #4746461f!important;
  color: #2C3E50;
}
.callout{
  border: 0!important;
    border-radius: 0.5rem!important;
}
label.left,
form label{
   
  text-transform:uppercase
}
 
/* Oculta os radio e checkbox padrão */
input.ttRadio,
input.ttCheckbox {
  display: none;
}

/* Estiliza o label imediatamente após input.ttRadio */
input.ttRadio + label:before {
  font-family: "Material Design Icons";
  content: "\F043D"; /* mdi-radiobox-blank */
  position: relative;
  display: inline-block;
  font-size: 1.5rem;
  color: #666;
  margin-right: 0.5rem;
  vertical-align: middle;
}

/* Estiliza o label imediatamente após input.ttCheckbox */
input.ttCheckbox + label:before {
  font-family: "Material Design Icons";
  content: "\F0131"; /* mdi-checkbox-blank */
  position: relative;
  display: inline-block;
  font-size: 1.5rem;
  color: #666;
  margin-right: 0.5rem;
  vertical-align: middle;
}

/* Quando radio está selecionado */
input.ttRadio:checked + label:before {
  content: "\F043E"; /* mdi-radiobox-marked */
  color: #008CBA;
}

/* Quando checkbox está selecionado */
input.ttCheckbox:checked + label:before {
  content: "\F0135"; /* mdi-checkbox-marked */
  color: #008CBA;
}

/* Ajustes opcionais para tabela */
table td label {
  cursor: pointer;
  padding-left: 0.5rem;
  display: inline-flex;
  align-items: center;
}

 

ul.optionset {
  display: flex;
  flex-direction: row;
  gap: 2rem;
  margin-left: 0;
  list-style-type: none;
}

ul.optionset li {
  margin-right: 1rem;
}

ul.optionset li input[type="radio"],
ul.optionset li input[type="checkbox"] {
  display: none;
}

ul.optionset li label {
  position: relative;
  padding-left: 2.2rem; /* Ajustado para dar mais espaço entre o ícone e o texto */
  cursor: pointer;
  display: flex;
  align-items: center; /* Isso alinha o ícone e o texto na vertical */
}

ul.optionset li input[type="radio"] + label:before {
  font-family: "Material Design Icons";
  content: "\F043D"; /* mdi-radiobox-blank */
  position: absolute;
  left: 0;
  font-size: 1.5rem;
  color: #666;
  line-height: 1; /* Garante que o ícone esteja alinhado com o texto */
  vertical-align: middle; /* Alinha verticalmente o ícone com o texto */
}
ul.optionset li input[type="checkbox"] + label:before {
  font-family: "Material Design Icons";
  content: "\F0131"; /* mdi-radiobox-blank */
  position: absolute;
  left: 0;
  font-size: 1.5rem;
  color: #666;
  line-height: 1; /* Garante que o ícone esteja alinhado com o texto */
  vertical-align: middle; /* Alinha verticalmente o ícone com o texto */
}
ul.optionset li input[type="radio"]:checked + label:before {
  content: "\F043E"; /* mdi-radiobox-marked */
  color: #008CBA; /* ou a cor que você preferir */
}
ul.optionset li input[type="checkbox"]:checked + label:before {
  content: "\F0135"; /* mdi-radiobox-marked */
  color: #008CBA; /* ou a cor que você preferir */
}
 
.has-tip{
	
	border-bottom:0px;
	color:#008CBA;
}
a .has-tip {
  cursor: pointer;
}
.tooltip {
   
  min-width: 0px !important;
  max-width: 600px !important;
}
.message.validation,
.message.required.bad,
span.message.required {
  display: block;
    color: #CF232A;
    font-size: 0.75rem;
    margin-top: -0.2rem;
    background-color: hsl(0deg 80% 94% / 20%);
    padding: 0.5rem;
    /* border-radius: 0.25rem; */
    border-left: 3px solid #CF232A;

}
 
.error-message {
	color:#CF232A;
}

/* Esconder o input padrão */
.custom-upload-input {
    display: none!important;
}

/* Estilizar o label substituto */
.custom-upload-label {
    display: inline-block;
    padding: 1rem;
    color: #0078d4;
    background: #eef6ff;
    border: 2px dashed #0078d4;
    border-radius: 4px;
    cursor: pointer;
    text-align: center;
    width: 100%;
    transition: background-color 0.3s ease;
}

.custom-upload-label:hover {
    background: #cce4ff;
}

/* Estilos para o campo de upload de foto */
.file-input-hidden {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

 

.file-upload-button:hover {
    background: #004494;
}
 
.file-upload-button i {
    font-size: 18px;
}
.file-preview-area,
.photo-preview-area {
    background: #f8f9fa;
    border: 2px dashed #dee2e6;
    border-radius: 8px;
    padding: 15px;
    text-align: center;
    transition: all 0.3s ease;
    min-height: 150px;
    max-height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.file-preview-area:hover,
.photo-preview-area:hover {
    border-color: #2C3E50;
    background: #f1f3f5;
}
.current-file,
.current-photo {
    height: 100%;
    max-height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.current-file img,
.current-photo img {
    max-height: 150px!important;
    width: auto!important;
    object-fit: contain!important;
}
/*
.filefield-existing-area,
.filefield-placeholder,
.file-placeholder,
.photo-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 100%;
}*/
 
/* Contact Form Grid Styling */
.ss-gridfield-title-header {
  display: none;
}

/* Esconde o texto duplicado nas células do GridField */
.ss-gridfield-item td {
  font-size: 0;  /* Esconde o texto direto na célula */
}
.ss-gridfield-table td input,
.ss-gridfield-table td select {
  font-size: 14px;  /* Restaura o tamanho da fonte para inputs e selects */
}

fieldset.frontendgrid.grid.grid-field.cell.medium-12.ss-gridfield-editable.ss-gridfield.field {
    background: #ffffff;
    border: 0px;
    border-radius: 8px;
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.05);
    
    padding: 0px;
	 border: 0;
    
}
fieldset.frontendgrid .btn-toolbar{
	float:right;
}
form .ss-gridfield .btn.font-icon-plus-circled::before {
    background:none!important;
	content: "\F0419"!important; /* Código do ícone */
    font-family: "Material Design Icons";
    font-size: 1rem;
    margin-right: 5px;/* Espaço entre o ícone e o texto */
    color: #F1F2F3; /* Cor do ícone */
	margin-bottom: 5px;
}
/* Grid Title */
fieldset.frontendgrid .grid-field__title-row h2.grid-field__title {
    color: #333;
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 20px 0;
}

form table.grid-field__table tr.grid-field__title-row th {
    
    background:transparent!important;
    border-bottom: 0px!important;

    text-shadow:none!important;
	font-family: 'InterRegular', sans-serif;
}

form table.grid-field__table tr th.main {
    color: #333!important;
    background: #f8f9fa!important;
    font-family: 'InterRegular', sans-serif;
}

form table.grid-field__table tr.sortable-header {
    background: #f8f9fa!important;
    border:1px solid #dee2e6;
}
form table.grid-field__table tr th {
     
    
    color: #333!important;
    background: #f8f9fa!important;
 
	 font-family: 'InterRegular', sans-serif;
}
form table.grid-field__table tr.sortable-header {
    background: #f8f9fa!important;
    border:1px solid #dee2e6;
}  /* Table Styling */
fieldset.frontendgrid table.grid-field__table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 1rem;
}

/* Table Header */
fieldset.frontendgrid .grid-field__title-row th {
    background: #f8f9fa;
    padding: 15px;
    border-bottom: 2px solid #dee2e6;
}

/* Table Header Buttons */
fieldset.frontendgrid .grid-field__sort.ss-ui-button {
    background: transparent;
    border: none;
    color: #495057;
    font-weight: 600;
    padding: 10px 15px;
    text-align: left;
    width: 100%;
    transition: color 0.2s ease;
    text-shadow:none!important
}
form table.grid-field__table tr th.main span{
  text-shadow:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
form table.grid-field__table tr th button.grid-field__sort:hover{
  color: #2C3E50!important;
}
fieldset.frontendgrid .grid-field__sort.ss-ui-button:hover {
    color: #2C3E50!important;
}

/* Add Button Styling */
fieldset.frontendgrid .ss-gridfield-add-new-inline.btn.btn-primary {
    background-color: #2C3E50;
    border: none;
    border-radius: 4px;
    color: white;
    padding: 8px 16px;
    font-weight: 500;
    transition: background-color 0.2s ease;
}

fieldset.frontendgrid .ss-gridfield-add-new-inline.btn.btn-primary:hover {
    background-color: #2C3E50;
}
fieldset.frontendgrid .ss-gridfield-add-new-inline.btn.btn-primary.font-icon-plus-circled::after {
  content: 'Adicionar Linha';
  color:#F1F2F3;
}
fieldset.frontendgrid .ss-gridfield-add-new-inline.btn.btn-primary.font-icon-plus-circled {
  color: transparent; /* Esconde o texto original */
  position: relative;
}
 
/* Grid Cells */
fieldset.frontendgrid table.grid-field__table td {
    padding: 0.75rem;
    border-bottom: 1px solid #dee2e6;
    vertical-align: middle;
	
}

/* Form Controls */
fieldset.frontendgrid table.grid-field__table select.dropdown.editable-column-field,
fieldset.frontendgrid table.grid-field__table input[type="text"].text.editable-column-field {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    font-size: 0.95rem;
    transition: border-color 0.2s ease;
}

fieldset.frontendgrid table.grid-field__table select.dropdown.editable-column-field:focus,
fieldset.frontendgrid table.grid-field__table input[type="text"].text.editable-column-field:focus {
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

 
 


/* Delete Button */
fieldset.frontendgrid .gridfield-button-delete {
   
  border: none;
  margin: 1rem 0;
  transition: background-color 0.2s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 20px;
}
/* Adicionando o ícone via pseudo-elemento */
fieldset.frontendgrid .gridfield-button-delete::before {
  content: "\F0B88"; /* Código do ícone mdi-delete em hexadecimal */
  font-family: 'Material Design Icons'; /* Defina a fonte para os ícones */
  font-size: 1.5rem; /* Ajuste o tamanho do ícone conforme necessário */
  color: darkred; /* Cor do ícone */
  position: absolute; /* Permite posicionar o ícone dentro do botão */
  font-weight: normal; /* Defina o peso da fonte do ícone */
}
 
 
.gridfield-button-delete {
  display: inline-block; /* Ou block, dependendo do seu layout */
  visibility: visible;
}
fieldset.frontendgrid .grid-field__add-new-inline-button:hover {
    background: #2C3E50;
}

fieldset.frontendgrid .grid-field__delete-button {
    color: #dc3545;
    padding: 0.375rem;
    transition: color 0.2s ease;
}

fieldset.frontendgrid .grid-field__delete-button:hover {
    color: #c82333;
}

/* No Items Message */
fieldset.frontendgrid .ss-gridfield-no-items td {
    padding: 20px;
    text-align: center;
    color: #6c757d;
}
form table.grid-field__table tr:hover {
  background: transparent!important; /* Azul pastel suave */
}
form table.grid-field__table tr th,
form table.grid-field__table tr:hover th {
  border: 1px solid #efefef!important; /* Azul pastel suave */
}
.ss-gridfield-inline-new:nth-child(2n) {
  background: #efefef!important; /* Verde menta */
}

 
 
/* Responsive Footer */
@media (max-width: 768px) {
    fieldset.frontendgrid {
        padding: 15px;
    }
    
    fieldset.frontendgrid table.grid-field__table td,
    fieldset.frontendgrid table.grid-field__table th {
        padding: 10px;
    }
    
    fieldset.frontendgrid .grid-field__title {
        font-size: 1.1rem;
    }

   
}

 

form table.grid-field__table .action--delete::before {
     content: '\F0A7A'!important;
    font-family: 'Material Design Icons'!important;
    font-size: 1rem!important;
    display: inline-block!important;
    color: red!important;
	background: none!important;
     
}

/* Para desabilitar os botões na célula de ordenação */
.sortable-header .grid-field__sort {
  pointer-events: none;
}

/* Se você também quiser desabilitar a interação nas células (não apenas nos botões), pode adicionar */
.sortable-header th {
  pointer-events: none;
}

/* Caso você precise desabilitar a célula específica com o nome de classe 'col-Actions' */
.sortable-header .col-Actions {
  pointer-events: none;
}

.sortable-header .grid-field__sort {
  cursor: default; /* Remove o cursor de "clique" */
  user-select: none; /* Impede que o texto seja selecionado */
}

.sortable-header .grid-field__sort .btn__title {
  pointer-events: auto; /* Permite eventos do ponteiro no título do botão */
}
.reveal#loading_modal,
.reveal#alert_modal {
  background: #fdfdfd; /* Fundo mais claro */
  border-radius: 8px; /* Cantos arredondados */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); /* Sombra suave */
  padding: 2rem; /* Espaçamento interno */
}
.reveal#loading_modal h2,
.reveal#alert_modal h2{
  color: #16468a; /* Cor de destaque */
  font-family: "InterThin", serif; /* Fonte personalizada */
  font-size: 1.75rem; /* Tamanho maior */
  margin-bottom: 1rem;
}
.reveal#loading_modal p,
.reveal#alert_modal p{
  font-size: 1rem;
  line-height: 1.5;
  color: #6d6d6d; /* Cor neutra */
}
.reveal#loading_modal .button-container,
.reveal#alert_modal .button-container {
  margin-top: 1.5rem;
  display: flex;
  justify-content: center;
  gap: 1rem;
}
.reveal#loading_modal .button,
.reveal#alert_modal .button {
  padding: 0.75rem 1.5rem;
  border-radius: 4px;
}
.reveal#loading_modal .button.alert,
.reveal#alert_modal .button.alert {
  background-color: #e74c3c;
  color: #fff;
}
.reveal#loading_modal .button.secondary,
.reveal#alert_modal .button.secondary {
  background-color: #bdc3c7;
  color: #333;
}
/* mantém o gradiente e o relógio: */
#loading_modal_text {
  font-size: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 1em;
  height: 1em;
  margin:auto;
}
#loading_modal_text i {
  position: relative;
  display: inline-block;
  color: transparent;
  background: conic-gradient(rgba(255, 190, 15, 1),
    rgba(249, 152, 27, 0.3),
    rgba(210, 103, 43, 0.3),
    rgba(207, 35, 42, 0.3),
    rgba(205, 30, 99, 0.3),
    rgba(120, 44, 132, 0.3),
    rgba(80, 88, 152, 0.3),
    rgba(0, 103, 139, 0.3),
    rgba(0, 138, 126, 0.3),
    rgba(0, 173, 78, 0.3),
    rgba(113, 191, 68, 0.3),
    rgba(189, 215, 48, 0.3),
    rgba(255, 190, 15, 0.3)
  );
  -webkit-background-clip: text;
  background-clip: text;
  transition: background 0.3s linear;
}
#loading_modal_text .time {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.20em;
  color: #336699;
  pointer-events: none;
  font-family: monospace;
}

/*
.reveal-overlay {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  background: rgba(0, 0, 0, 0.5);  
  display: block;  
  z-index: 9998;
}*/

html.is-reveal-open body {
    overflow-y: visible;  
}
 
/* Linha de Morada e Principal, distribuídas na mesma linha */
.col-Morada {
  width: 60%!important; /* Morada ocupa 90% da linha */
   
}

.col-Principal {
  width: 5%!important; /* Principal ocupa 10% da linha */
   
}

 

.col-CodigoPostal {
  width: 10%!important; /* Código Postal ocupa 25% da linha */
 
}

.col-Localidade {
  width: 25%!important; /* Localidade ocupa 75% da linha */
   
}
table.grid-field__table input[type="datetime-local"],
table.grid-field__table input[type="date"] {
  width: 130px;
  max-width: 130px; /* Garante que o tamanho máximo seja 130px */
  box-sizing: border-box; /* Garante que o padding e borda não afetem a largura */
  font-size:0.9rem!important;
}
table.grid-field__table input[type="text"].date.text,
table.grid-field__table input[type="text"].currency.text,
table.grid-field__table input[type="text"].numeric.text{
  width: 100px!important;
  max-width: 100px!important; /* Garante que o tamanho máximo seja 130px */
  box-sizing: border-box!important; /* Garante que o padding e borda não afetem a largura */
  text-align:right;
  font-size:0.9rem!important;
}
.currency.text{
  box-sizing: border-box!important; /* Garante que o padding e borda não afetem a largura */
  text-align:right;
  font-size:0.9rem!important;
}
table.grid-field__table input[type="text"].date.text
 {
  width: 110px!important;
  max-width: 110px!important; /* Garante que o tamanho máximo seja 130px */
  
}
 
/* Bloquear a regra CSS dentro de um elemento com a classe .no-pagination */
form.no-pagination{
  background-color:#FFF;
  padding:1rem;
  border-radius:0.5rem;
}
form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination {
  padding-top: initial !important;
  position: static !important;
  left: initial !important;
  margin-left: initial !important;
  z-index: initial !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination .pagination-page-number {
  color: inherit !important;
  text-align: initial !important;
  text-shadow: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination .pagination-page-number input {
  width: auto !important;
  height: auto !important;
  margin-bottom: 0 !important;
  padding: initial !important;
  border: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination button {
  box-shadow: none !important;
  border: none !important;
  width: auto !important;
  margin: 0 !important;
  display: inline !important;
  float: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination button.ss-gridfield-previouspage {
  background: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination button.ss-gridfield-nextpage {
  background: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination button.ss-gridfield-firstpage {
  background: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination button.ss-gridfield-lastpage {
  background: none !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination button.ssui-button-disabled {
  z-index: initial !important;
}

form.no-pagination table.grid-field__table tr td.bottom-all .pagination-records-number {
  color: inherit !important;
  text-shadow: none !important;
}
.pagination-records-number{
  color: #16468a!important; /* Cor dos ícones */
  font-size: 14px !important;
  text-shadow:none!important;
  font-weight: bold!important;
  font-family: 'InterRegular', sans-serif!important;
}
/* Estilo para os botões de paginação */
form.no-pagination table.grid-field__table tr td.bottom-all  {
  background: transparent;
  border: none;
  color: #16468a; /* Cor dos ícones */
  font-size: 20px; /* Tamanho do ícone */
  padding: 8px 12px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

form.no-pagination table.grid-field__table tr td.bottom-all  .grid-field__paginator__controls button.mdi:hover {
  background-color: #e0e0e0;
  border-radius: 4px;
}

form.no-pagination table.grid-field__table tr td.bottom-all  .grid-field__paginator__controls button.mdi:focus {
  outline: none;
  background-color: #d1d1d1;
}

/* Adicionando os ícones MDI via CSS */
form.no-pagination table.grid-field__table tr td.bottom-all
form.no-pagination .grid-field__paginator__controls button.mdi.mdi-chevron-double-left::before {
  content: "\f0a8";  /* Código do ícone MDI "chevron-double-left" */
}

form.no-pagination .grid-field__paginator__controls button.mdi.mdi-chevron-left::before {
  content: "\f104";  /* Código do ícone MDI "chevron-left" */
}

form.no-pagination .grid-field__paginator__controls button.mdi.mdi-chevron-right::before {
  content: "\f105";  /* Código do ícone MDI "chevron-right" */
}

form.no-pagination .grid-field__paginator__controls button.mdi.mdi-chevron-double-right::before {
  content: "\f0a9";  /* Código do ícone MDI "chevron-double-right" */
}
form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination .pagination-page-number{
  padding: 5px!important;
 
  font-size: 16px;
  cursor: default;
}
/* Ajuste para exibir o número da página corretamente */
form.no-pagination table.grid-field__table tr td.bottom-all .datagrid-pagination .pagination-page-number input {

  pointer-events: none;  /* Impede interação com o mouse */
  user-select: none;     /* Impede seleção de texto */
  background: transparent;
   
  width: 40px!important;
  height: 30px!important;;
  padding: 5px!important;
  background-color: #16468a;
    border-radius: 4px;
    color: #f1f2f3 !important;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  cursor: default;
}
/* Estilização geral dos botões de paginação */
form.no-pagination .ss-gridfield-pagination-action {
  background: transparent;
  border: none;
  color: #16468a; /* Cor dos ícones */
  font-size: 20px; /* Tamanho do ícone */
  padding: 8px 12px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  position: relative; /* Para ocultar o texto corretamente */
}

/* Efeito ao passar o mouse */
form.no-pagination .ss-gridfield-pagination-action:hover {
  background-color: #e0e0e0;
  border-radius: 4px;
}

/* Oculta o texto dos botões */
form.no-pagination .ss-gridfield-pagination-action .btn__title {
  display: none;
}

/* Adiciona os ícones MDI via CSS */
form.no-pagination .ss-gridfield-firstpage::before {
  content: "\F0600";  /* Ícone MDI "chevron-double-left" */
  font-family: "Material Design Icons";
}

form.no-pagination .ss-gridfield-previouspage::before {
  content: "\F0141";  /* Ícone MDI "chevron-left" */
  font-family: "Material Design Icons";
}

form.no-pagination .ss-gridfield-nextpage::before {
  content: "\F0142";  /* Ícone MDI "chevron-right" */
  font-family: "Material Design Icons";
}

form.no-pagination .ss-gridfield-lastpage::before {
  content: "\F0601";  /* Ícone MDI "chevron-double-right" */
  font-family: "Material Design Icons";
}
form.no-pagination table.grid-field__table tr td.bottom-all .pagination-records-number{
  font-size: 14px !important; 
}
/* Ajuste extra para alinhar os ícones corretamente */
form.no-pagination .ss-gridfield-pagination-action::before {
  display: inline-block;
  vertical-align: middle;
}
/* Ajuste no layout para telas menores */
@media (max-width: 768px) {
  form.no-pagination .grid-field__paginator__controls {
      flex-direction: column;
      align-items: center;
  }

  form.no-pagination .grid-field__paginator__controls button.mdi {
      margin-bottom: 10px;
  }
}


 
.tableHistorico{
  width: 100%;
  border-collapse: collapse;
  background-color: white;   
  border:none;
}

.tableHistorico th {
  padding: 12px 15px;
  text-align: left;
  font-weight: 600;
  font-size: 1rem;
  color: rgba(44, 62, 80, 0.8);
}
 

.tableHistorico th h5 {
  color: rgba(44, 62, 80, 0.8);
  margin: 0;
  padding: 5px 0;
  font-size: 1.25rem;
  font-weight: 600;
}

.tableHistorico th h6 {
  color: rgba(44, 62, 80, 0.8);
  margin: 0;
  padding: 5px 0 5px 1.6rem;
  font-size: 0.75rem;
  font-weight: 500;
  font-style: italic;
}

.tableHistorico td {
  font-size: 0.9rem;
  padding: 10px 15px;
  color: #666;
  
}

.tableHistorico tbody tr:hover {
  background-color: #F7F8F9;
}

/* Estilo suave para as datas */
.tableHistorico td:nth-child(1),
.tableHistorico td:nth-child(2) {
  color: rgba(44, 62, 80, 0.8);
}
.tableHistorico td a{
  cursor:pointer!important;
}
.tableHistorico td a.has-tip{
  font-weight: normal!important;
 
}

.tableHistorico thead, .tableHistorico tbody, .tableHistorico tfoot {
  /* border: 1px solid rgb(241.3, 241.3, 241.3); */
  border:none;
}

/* Regra padrão para o efeito zebra */
.tableHistorico tbody tr:nth-child(even) {
  background-color: #f9f9f9;
}

/* Desabilitar o efeito zebra quando a classe dontZebra está presente */
.tableHistorico.dontZebra tbody tr {
  background-color: transparent !important;
  border:2px solid #F7F8F9;
}

/* Cabeçalho de secção nas tabelas de resumo */
.th-secao-titulo,
.divHistorico.td-smaller-font table tr th.th-secao-titulo {
  background-color: #2c3e50cc !important;
  color: #f8f8f8 !important;
  font-size: 0.9rem !important;
}

.relatorio-card {
    background: #fff;
     
    padding: 1.5rem;
    margin-bottom: 1rem;
    border: 0px solid #e8e3dd; 
    font-size:0.8rem;
}

.relatorio-content .relatorio-card {
    border-left: 4px solid #00678B;
}

.relatorio-form .relatorio-card {
    border-left: 4px solid #b4a391;
}

.regulamento-card {
    background: #fff;
     
    padding: 1.5rem;
    margin-bottom: 1rem;
    border: 0px solid #e8e3dd; 
}

.regulamento-atual .regulamento-card {
    border-left: 4px solid #00678B;
}
.regulamento-atual.regulamento-card {
    border-right: 4px solid #00678B;
}
.regulamentos-antigos .regulamento-card {
    border-left: 4px solid #b4a391;
}

.regulamento-list-item {
    padding: 1rem;
    
}

.regulamento-list-item:last-child {
    border-bottom: none;
}

.regulamento-title {
    font-weight: 500;
    color: #2C3E50;
    margin: 0.5rem 0;
}

.pdf-container {
    background-color: transparent !important;
}

.tableHistorico .vertical-table {
  width: 100%;
  margin-top: 10px;
  border-collapse: collapse;
  background-color: #fafafa;
}

.tableHistorico .vertical-table th,
.tableHistorico .vertical-table td {
  padding: 8px 12px;
  border-bottom: 1px solid #e0e0e0;
  text-align: left;
  font-size: 0.85rem;
}

.tableHistorico .vertical-table th {
  width: 30%;
  color: #2c3e50;
  font-weight: 600;
  background-color: #f2f2f2;
}

.tableHistorico .vertical-table td {
  color: #555;
  background-color: #f2f2f2;
}

.tableHistorico .vertical-table tr:last-child td,
.tableHistorico .vertical-table tr:last-child th {
  border-bottom: none;
}

.divGenerico{ 
  padding: 2rem;
  background-color: #FFFFFF;
  border-radius: 1rem;
}
.divHistorico {
  margin-top: 5rem;
  padding: 1rem;
  background-color: #F7F8F9;
  border-radius: 1rem;
}
.divHistorico.with-no-margin{
  margin-top: 0;
}
.divHistorico.with-very-small-margin{
  margin-top: 0.5rem;
}
.divHistorico.td-small-font table tr td{
  font-size: 0.9rem; 
}
.smaller-font,
.divHistorico.td-smaller-font table tr th,
.divHistorico.td-smaller-font table tr td{
  font-size: 0.8rem!important;
  line-height: 0.9rem!important;
}
.smalling-font {
  font-size: 0.9rem!important;
  line-height: 0.9rem!important;
}
.divHistorico.td-smaller-font table.tableHistorico td {
   
  padding-left: 0.2rem;
  padding-right: 0.2rem;
 
}
.tablecol60{
  width:60%;
}
.tablecol40{
  width:40%;
}
 
 
.btn-toolbar{
  height:4rem;
  padding-top:1rem;
}
#Form_search_sort_candidatura_form .btn-toolbar{
  padding-top:0rem!important;
}


/* Ícone de alerta de bloqueio */
#restricted-access .mdi-lock-alert-outline {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  background-color: #FDF2F2;
  color: rgba(207, 35, 42, 0.8);
  border-radius: 50%;
  font-size: 36px;
  margin-bottom: 1rem;
}

#restricted-access h2{
  color: #2C3E50;
  font-size: 1.9rem;
  font-weight: 600;
}

#restricted-access .subheader, #restricted-access .subheaderError{
  color: #596577;
  padding-bottom:2rem;
}

#restricted-access .subheaderError{
  font-size: 0.8rem;
}

#restricted-access .warning-card{
  background-color: #FDFBF7;
  padding: 1.5rem;
  border-radius: 1rem;
}

#restricted-access .warning-card h2{
  font-size: 1.2rem;
}
#restricted-access .warning-card ul{
  color:#2C3E50;
  list-style-type: none;
}

#restricted-access .warning-card ul li{
  font-size:1rem;
  margin-left:0;
  padding-left:0;
}

#restricted-access .actionButtons{
  padding-top:2rem;
}

/* registo entidade */

#registo-entidade h2{
  color: #2C3E50;
  font-size: 1.9rem;
  font-weight: 600;
  margin-top: 2rem;
}

#registo-entidade p{
  font-size: 1rem;
}

#registo-entidade .subheaderError{
  color: #596577;
  padding-bottom:2rem;
}

#registo-entidade .subheaderError{
  font-size: 0.8rem;
}

#registo-entidade .warning-card{
  background-color: #FFFFFF;
  padding: 1.5rem;
  border-radius: 1rem;
  border-color: #E8E4DD;
  border-width: 1px;
  border-style: solid;
}

#registo-entidade .warning-card h2{
  font-size: 1.2rem;
}
#registo-entidade .warning-card ul{
  color:#2C3E50;
  list-style-type: none;
}

#registo-entidade .warning-card ul li{
  font-size:1rem;
  margin-left:0;
  padding-left:0;
}
.ttDisabled-optionset label,
.ttDisabled-optionset input[type="radio"],
.ttDisabled-optionset input[type="checkbox"] {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.5; /* aparência de desativado */
}

.ttDisabled-optionset label:not(.left) {
  color: #9e9e9e;
  cursor: not-allowed;
  font-style: italic;
  background: repeating-linear-gradient(to right, 
    rgba(255, 190, 15, 0.05), rgba(249, 152, 27, 0.05) 10%, 
    rgba(210, 103, 43, 0.05) 20%, rgba(207, 35, 42, 0.05) 30%, 
    rgba(205, 30, 99, 0.05) 40%, rgba(120, 44, 132, 0.05) 50%, 
    rgba(80, 88, 152, 0.05) 60%, rgba(0, 103, 139, 0.05) 70%, 
    rgba(0, 138, 126, 0.05) 80%, rgba(0, 173, 78, 0.05) 90%, 
    rgba(113, 191, 68, 0.05) 100%, rgba(189, 215, 48, 0.05) 110%, 
    rgba(255, 190, 15, 0.05) 120%);
 
  border-radius: 4px;
  display: inline-block;
  vertical-align: middle;
  line-height: 1.4;
}
.icon-circle-help i {
    font-size: 32px; /* tamanho do ícone */
    background: #505898;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}
.icon-circle-help-special i { 
    background: #505898;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}
/* Desativa apenas a opção 1 do OptionsetField */
.ttDisabled-optionset-single-field input[type="radio"][value="1"],
.ttDisabled-optionset-single-field label[for$="_1"] {
    pointer-events: none;
    cursor: not-allowed;
    opacity: 0.5; /* label visível */
    color: #9e9e9e;
    font-style: italic;
    background: repeating-linear-gradient(
        to right, 
        rgba(255, 190, 15, 0.05), 
        rgba(249, 152, 27, 0.05) 10%, 
        rgba(210, 103, 43, 0.05) 20%, 
        rgba(207, 35, 42, 0.05) 30%, 
        rgba(205, 30, 99, 0.05) 40%, 
        rgba(120, 44, 132, 0.05) 50%, 
        rgba(80, 88, 152, 0.05) 60%, 
        rgba(0, 103, 139, 0.05) 70%, 
        rgba(0, 138, 126, 0.05) 80%, 
        rgba(0, 173, 78, 0.05) 90%, 
        rgba(113, 191, 68, 0.05) 100%, 
        rgba(189, 215, 48, 0.05) 110%, 
        rgba(255, 190, 15, 0.05) 120%
    );
    border-radius: 4px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1.4;
}
.ttDisabled-optionset-single-field input[type="radio"][value="1"] {
  opacity:0!important;
}
.ttDisabled-input-text select.dropdown ,
.ttDisabled-dropdown select{
  color: #9e9e9e;
  pointer-events: none;
  cursor: not-allowed;
  font-style: italic;
  background: repeating-linear-gradient(to right, 
    rgba(255, 190, 15, 0.05), rgba(249, 152, 27, 0.05) 10%, 
    rgba(210, 103, 43, 0.05) 20%, rgba(207, 35, 42, 0.05) 30%, 
    rgba(205, 30, 99, 0.05) 40%, rgba(120, 44, 132, 0.05) 50%, 
    rgba(80, 88, 152, 0.05) 60%, rgba(0, 103, 139, 0.05) 70%, 
    rgba(0, 138, 126, 0.05) 80%, rgba(0, 173, 78, 0.05) 90%, 
    rgba(113, 191, 68, 0.05) 100%, rgba(189, 215, 48, 0.05) 110%, 
    rgba(255, 190, 15, 0.05) 120%)!important;
 
   
  display: inline-block;
  vertical-align: middle;
   
}

/* Chosen container desativado */

.ttDisabled-dropdown .chosen-container {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.9;
}

/* Caixa principal do chosen */
.ttDisabled-dropdown .chosen-container-single .chosen-single {
  background: repeating-linear-gradient(
    to right, 
    rgba(255, 190, 15, 0.05), rgba(249, 152, 27, 0.05) 10%, 
    rgba(210, 103, 43, 0.05) 20%, rgba(207, 35, 42, 0.05) 30%, 
    rgba(205, 30, 99, 0.05) 40%, rgba(120, 44, 132, 0.05) 50%, 
    rgba(80, 88, 152, 0.05) 60%, rgba(0, 103, 139, 0.05) 70%, 
    rgba(0, 138, 126, 0.05) 80%, rgba(0, 173, 78, 0.05) 90%, 
    rgba(113, 191, 68, 0.05) 100%, rgba(189, 215, 48, 0.05) 110%, 
    rgba(255, 190, 15, 0.05) 120%
  )!important;
  border: 1px solid #ccc;
  color: #9e9e9e;
  cursor: not-allowed;
}

/* Dropdown do chosen (quando aberto) */
.ttDisabled-dropdown .chosen-drop {
  background: repeating-linear-gradient(
    to right, 
    rgba(255, 190, 15, 0.05), rgba(249, 152, 27, 0.05) 10%, 
    rgba(210, 103, 43, 0.05) 20%, rgba(207, 35, 42, 0.05) 30%, 
    rgba(205, 30, 99, 0.05) 40%, rgba(120, 44, 132, 0.05) 50%, 
    rgba(80, 88, 152, 0.05) 60%, rgba(0, 103, 139, 0.05) 70%, 
    rgba(0, 138, 126, 0.05) 80%, rgba(0, 173, 78, 0.05) 90%, 
    rgba(113, 191, 68, 0.05) 100%, rgba(189, 215, 48, 0.05) 110%, 
    rgba(255, 190, 15, 0.05) 120%
  );
}

.ttDisabled-upload,
 
.ttDisabled-input-text input{
  pointer-events: none;  /* Desabilita interações */
  cursor: not-allowed;   /* Muda o cursor para não permitido */
  background-color: #e0e0e0; /* Cor de fundo do input */
  color: #9e9e9e; /* Cor do texto */
  border: 1px solid #bdbdbd; /* Cor da borda */
  padding-right: 30px;  /* Espaço para o ícone */
  position: relative;   /* Necessário para o ícone absoluto */
  padding: 8px;         /* Adicionando um padding para o texto */
  
  /* Adicionando o padrão de listras diagonais */
  background: repeating-linear-gradient(to right, rgba(255, 190, 15, 0.05), rgba(249, 152, 27, 0.05) 10%, rgba(210, 103, 43, 0.05) 20%, rgba(207, 35, 42, 0.05) 30%, rgba(205, 30, 99, 0.05) 40%, rgba(120, 44, 132, 0.05) 50%, rgba(80, 88, 152, 0.05) 60%, rgba(0, 103, 139, 0.05) 70%, rgba(0, 138, 126, 0.05) 80%, rgba(0, 173, 78, 0.05) 90%, rgba(113, 191, 68, 0.05) 100%, rgba(189, 215, 48, 0.05) 110%, rgba(255, 190, 15, 0.05) 120%);
  font-style: italic;
  background-repeat: repeat;  /* Faz o padrão se repetir */
}

.ttDisabled-textarea textarea {
  pointer-events: none;
  cursor: not-allowed;
  font-style: italic;
  resize: none; /* Evita redimensionamento manual, se quiser */
  min-height: 100px; /* Altura mínima razoável, ajusta conforme necessário */
  width: 100%; /* Garante que ocupe o espaço completo */
  padding: 8px;
  border: 1px solid #bdbdbd;
  background-repeat: repeat;
  color: #9e9e9e;
  background: repeating-linear-gradient(
    to right,
    rgba(255, 190, 15, 0.05),
    rgba(249, 152, 27, 0.05) 10%,
    rgba(210, 103, 43, 0.05) 20%,
    rgba(207, 35, 42, 0.05) 30%,
    rgba(205, 30, 99, 0.05) 40%,
    rgba(120, 44, 132, 0.05) 50%,
    rgba(80, 88, 152, 0.05) 60%,
    rgba(0, 103, 139, 0.05) 70%,
    rgba(0, 138, 126, 0.05) 80%,
    rgba(0, 173, 78, 0.05) 90%,
    rgba(113, 191, 68, 0.05) 100%,
    rgba(189, 215, 48, 0.05) 110%,
    rgba(255, 190, 15, 0.05) 120%
  );
  
}
/* Estilo para o input */
.ttDisabled-input,
.middleColumn .ttDisabled-input {
  pointer-events: none;  /* Desabilita interações */
  cursor: not-allowed;   /* Muda o cursor para não permitido */
  background-color: #e0e0e0; /* Cor de fundo do input */
  color: #9e9e9e; /* Cor do texto */
  border: 1px solid #bdbdbd; /* Cor da borda */
  padding-right: 30px;  /* Espaço para o ícone */
  position: relative;   /* Necessário para o ícone absoluto */
  padding: 8px;         /* Adicionando um padding para o texto */
  
  /* Adicionando o padrão de listras diagonais */
  background: repeating-linear-gradient(to right, rgba(255, 190, 15, 0.05), rgba(249, 152, 27, 0.05) 10%, rgba(210, 103, 43, 0.05) 20%, rgba(207, 35, 42, 0.05) 30%, rgba(205, 30, 99, 0.05) 40%, rgba(120, 44, 132, 0.05) 50%, rgba(80, 88, 152, 0.05) 60%, rgba(0, 103, 139, 0.05) 70%, rgba(0, 138, 126, 0.05) 80%, rgba(0, 173, 78, 0.05) 90%, rgba(113, 191, 68, 0.05) 100%, rgba(189, 215, 48, 0.05) 110%, rgba(255, 190, 15, 0.05) 120%);
  font-style: italic;
  background-repeat: repeat;  /* Faz o padrão se repetir */
}

.ttDisabled-link
{
  pointer-events: none;  /* Desabilita interações */
  cursor: not-allowed;   /* Muda o cursor para não permitido */
  opacity:0.5;
}

  
/* Adiciona transição suave para mudanças de largura */
.ss-gridfield-item td {
  transition: width 0.3s ease;
  position: relative; /* Importante para que o overlay funcione */
}

/* Quando o mouse passa sobre a célula, os inputs dentro dela aumentam, 
   exceto os que têm .date.text ou .numeric.text */
.ss-gridfield-item td:hover input.text:not(.date):not(.numeric),
.ss-gridfield-item td:hover select {
   
  white-space: nowrap;
}

/* Para os elementos desabilitados, garantimos que fiquem visíveis no hover */
.ss-gridfield-item td:hover input.ttDisabled-input:not(.date):not(.numeric),
.ss-gridfield-item td:hover select.ttDisabled-input {
  pointer-events: none; /* Mantém desabilitado */
  cursor: not-allowed; /* Mostra que ainda está desativado */
  opacity: 1; /* Mantém visível */
  
  white-space: nowrap;
}

/* Opcional: Evita que o hover afete o layout geral */
.ss-gridfield-item td {
  overflow: hidden;
}

/* Classe CSS para aplicar o overlay */
.input-overlay {
  position: fixed;
  z-index: 9999;
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
  pointer-events: none;
  white-space: nowrap;
  overflow: visible;
  display: none;
  padding: 4px 8px;
  box-sizing: border-box;
}

/* Mantém os estilos específicos do ttDisabled-input no overlay */
.input-overlay.ttDisabled-input {
  font-style: italic !important;
  background-color: #f4f4f4 !important;
  cursor: not-allowed;
}
.ttDisabled-button{
  cursor: not-allowed;
}
/* Remove regras de hover desnecessárias */
.ss-gridfield-item td {
  overflow: hidden;
}
.input-overlay {
  position: fixed;
  z-index: 9999;
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
  pointer-events: none;
  white-space: nowrap;
  max-width: 80vw;
  overflow: hidden;

  display: none;
  padding: 0 8px;
  box-sizing: border-box;
}

.input-overlay.ttDisabled-input {
  font-style: italic !important;
  background-color: #f4f4f4 !important;
  cursor: not-allowed !important;
}

.input-overlay.text:not(.date):not(.numeric) {
  background-color: #fff;
}

.input-overlay.select {
  background-color: #fff;
  border: 1px solid #ccc;
}

/* Estilos para o campo de upload de foto dentro do GridField */
.gridfield td .file-grid-upload-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #2C3E50;
  color: white;
  padding: 8px 16px;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 500;
}

.gridfield td .file-grid-upload-button:hover {
  background: #004494;
}

.gridfield td .file-grid-upload-button i {
  font-size: 18px;
}

/* Estilos para a área de pré-visualização da foto */
.gridfield td .file-grid-preview-area {
  background: #f8f9fa;
  border: 2px dashed #dee2e6;
  border-radius: 8px;
  padding: 15px;
  text-align: center;
  transition: all 0.3s ease;
  min-height: 150px;
  max-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Hover na área de preview */
.gridfield td .file-grid-preview-area:hover {
  border-color: #2C3E50;
  background: #f1f3f5;
}

/* Estilo do arquivo atual visualizado */
.gridfield td .file-grid-current-photo {
  height: 100%;
  max-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.gridfield td .file-grid-current-photo img {
  max-height: 150px;
  width: auto;
  object-fit: contain;
}

/* Estilos para a área de placeholder da foto */
.gridfield td .file-grid-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 100%;
}

.gridfield td .file-grid-placeholder i {
  font-size: 48px;
  color: #adb5bd;
}

.gridfield td .file-grid-placeholder .file-grid-placeholder-text {
  color: #6c757d;
  font-size: 14px;
}

.tipo-natureza-img {
  background-color: transparent;
  border-radius: 1rem;
  padding: 2rem;
  position: relative; /* Para posicionar os círculos relativamente ao elemento */
 
}
.tipo-natureza-img img{
  z-index: 1000;
}
.tipo-natureza-img::before,
.tipo-natureza-img::after {
  content: "";
  width: 40px; /* Tamanho do círculo */
  height: 40px;
  background-color: #e8e3dd; /* Cor do círculo */
  border-radius: 50%;
  position: absolute;
  z-index: -1; /* Fica por baixo da div */
}

.tipo-natureza-img::before {
  top: -0.5rem;
  left: -0.5rem;
}

.tipo-natureza-img::after {
  bottom: -0.5rem;
  right: -0.5rem;
}
.custom_bg_color_DDE7F0{
  background-color: #DDE7F0!important;
}
.custom_bg_color_e8e3dd{
  background-color: #e8e3dd!important;
  border:1px solid #e8e3dd!important; 
  color:#b4a391!important;
  opacity:1!important;
}
.custom_bg_color_e8e3dd_not_disabled{
  cursor: auto!important;
}
.less_line_height_h1{
  line-height:3.2rem!important;
}
.bgwhite{
  background-color:#FFF;
}
.bgoriginal{
  background-color:#fdfbf7;
}
 

.huge-icon::before {
   
  position: absolute;
  width: 7rem; /* Ligeiramente maior que o ícone */
  height: 7rem;
  background-color: #d4c3b1; /* Cor do círculo */
  border-radius: 50%;
 
  transform: translate(-50%, -50%); /* Centraliza o círculo */
  z-index: -1; /* Garante que fica atrás do ícone */
  
    top: -0.5rem;
    left: -0.5rem;
 
}
.huge-icon-gradient-icon,
.huge-icon {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative; /* Mantém o ícone acima do círculo */
  margin-top:1.2rem;
  margin-bottom:1.5rem;
}

.huge-icon::before {
  content: "";
  position: absolute;
  width: 6.1rem;
  height: 6.1rem;
  background-color: #e8e3dd;
  border-radius: 50%;
  top: -0.5rem;
  left: -0.5rem;
  transform: translate(-0.5rem, -0.5rem);
  z-index: 0;
}
.huge-icon-gradient-icon::before {
  content: "";
  position: absolute;
  width: 6.1rem;
  height: 6.1rem;
  background: conic-gradient(from 0deg at center, 
    rgba(255, 190, 15, 0.8), 
    rgba(249, 152, 27, 0.8), 
    rgba(210, 103, 43, 0.8), 
    rgba(207, 35, 42, 0.8), 
    rgba(205, 30, 99, 0.8), 
    rgba(120, 44, 132, 0.8), 
    rgba(80, 88, 152, 0.8), 
    rgba(0, 103, 139, 0.8), 
    rgba(0, 138, 126, 0.8), 
    rgba(0, 173, 78, 0.8), 
    rgba(113, 191, 68, 0.8), 
    rgba(189, 215, 48, 0.8), 
    rgba(255, 190, 15, 0.8)
  );
  border-radius: 50%;
  top: 0;
  left: 0;
  transform: translate(-1rem, -1rem);
  z-index: 0;
}
.huge-icon-gradient-icon i,
.huge-icon i {
  font-size: 5rem;
  border: 1px solid #b4a391;
  width: 6rem;
  height: 6rem;
  border-radius: 1rem;
  color: #b4a391;
  background-color: #FFF; /* Garante que o ícone não fica transparente */
  z-index: 1;
}

.small-icon-gradient-icon,
.small-icon{
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative; /* Mantém o ícone acima do círculo */
  
} 
.small-icon-gradient-icon i,
.small-icon i {
  font-size: 2rem;
  border: 1px solid #b4a391;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #b4a391;
  background-color: #FFF; /* Garante que o ícone não fica transparente */
  z-index: 1;
  padding-left: 0.4rem;
}
.small-icon-gradient-icon::before {
  content: "";
  position: absolute;
  width: 3.1rem;
  height: 3.1rem;
  background: conic-gradient(from 0deg at center, 
    rgba(255, 190, 15, 0.8), 
    rgba(249, 152, 27, 0.8), 
    rgba(210, 103, 43, 0.8), 
    rgba(207, 35, 42, 0.8), 
    rgba(205, 30, 99, 0.8), 
    rgba(120, 44, 132, 0.8), 
    rgba(80, 88, 152, 0.8), 
    rgba(0, 103, 139, 0.8), 
    rgba(0, 138, 126, 0.8), 
    rgba(0, 173, 78, 0.8), 
    rgba(113, 191, 68, 0.8), 
    rgba(189, 215, 48, 0.8), 
    rgba(255, 190, 15, 0.8)
  );
  border-radius: 50%;
  top: 0;
  left: 0;
  transform: translate(-0.5rem, -0.5rem);
  z-index: 0;
}
.small-icon::before {
  content: "";
  position: absolute;
  width: 3.1rem;
  height: 3.1rem;
  background-color: #e8e3dd;
  border-radius: 50%;
 
  transform: translate(-0.5rem, -0.5rem);
  z-index: 0;
}
.happyBirthday {
  font-family: 'montserratlight', sans-serif;
 
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: 1.4rem;
  background: linear-gradient(45deg, #d4c3b1, #c4b3a1, #b4a391);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  padding: 8px 12px;
  border-radius: 8px;
  text-align: center;
   
}
.card-valencia-outer {
  position: relative;
  display: inline-block;
  margin-bottom: 1rem;
}
/* Criando o efeito de camada maior atrás */
.card-valencia-outer::before {
  content: "";
  position: absolute;
  top: -0.7rem;
  left: -0.5rem;
  width: calc(100% + 1rem);
  height: calc(100% + 0.5rem);
  background-color: #e8e3dd;
  border-radius: 1rem;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  z-index: 1;
}
.card-valencia {
  position: relative;
   
  padding: 1.5rem;
  text-align: center;
  border-radius: 1rem;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%); /* Forma de hexágono */
  overflow: hidden;
  
  z-index: 1; /* Para garantir que a borda fique visível */
}
.card-valencia h3{
 
    color: #b4a391;
    line-height: 2rem;
}

.card-modalidade {
  position: relative;
  padding: 1.5rem;
  text-align: center;
  border-radius: 1rem;
  clip-path: polygon(0% 0%, 100% 0%, 80% 100%, 20% 100%); /* Triângulo com base larga em cima */
  overflow: hidden;
  background-color: #e8e3dd; /* Cor base */
  z-index: 1; /* Para garantir que a borda fique visível */
}
.card-modalidade i{
  font-size: 3rem;
  color: #FDFBF7;
}
.mini-card-modalidade {
  position: relative;
  width: 90%;
  padding: 0.75rem;
  clip-path: polygon(0% 0%, 100% 0%, 80% 100%, 20% 100%);
  background-color: #e8e3dd;
  text-align: center;
  transform:translateY(30%);
   
}

.mini-card-modalidade i {
  font-size: 1.5rem;
  _color: #FDFBF7;
  
}
.mini-card-valencia {
  position: relative;
  width: 60%;
  padding: 0.6rem;
  border-radius:10px;
  background-color: #e8e3dd;
  text-align: center;
  
   
}

.mini-card-valencia i {
  font-size: 1.5rem;
  _color: #FDFBF7;
  
}
.modalidades-card{
  
  border-radius:5px;
  border:1px solid #E8E3DD; 
  margin-bottom:1rem;
}
.valencias-card{
  
  border-radius:5px;
  border:1px solid #E8E3DD; 
  margin-bottom:1rem;
}
.benef-mini {
  font-size: 0.75rem;
  color: #333;
  margin-top: 0.25rem;
  font-weight: bold;
}

.data-range {
  font-size: 1rem;
 
}

.data-range .ttHomePage-aviso-day-small
{
  justify-content: start;
} 
.solidariedade-social-img {
  background-image: url('/_resources/themes/foundationSeis/images/footer/single_line_maos.svg');
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 200px; /* Ajuste a altura conforme necessário */
  filter: invert(79%) sepia(15%) saturate(527%) hue-rotate(357deg) brightness(85%) contrast(87%);
}

.cultural-recreativa-juvenil-img {
  background-image: url('/_resources/themes/foundationSeis/images/footer/single_line_cinema.svg');
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 200px; /* Ajuste a altura conforme necessário */
  filter: invert(79%) sepia(15%) saturate(527%) hue-rotate(357deg) brightness(85%) contrast(87%);
}

.desportiva-img {
  background-image: url('/_resources/themes/foundationSeis/images/footer/single_line_hiphop.svg');
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  min-height: 200px; /* Ajuste a altura conforme necessário */
  filter: invert(79%) sepia(15%) saturate(527%) hue-rotate(357deg) brightness(85%) contrast(87%);
}

.solidariedade-social-img svg path,
.cultural-recreativa-juvenil-img svg path,
.desportiva-img svg path {
  stroke: red!important;
}
/* CSS para centralizar a imagem da entidade */
 
.tipo-natureza-img {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1 / 1; /* torna o container quadrado */
}
.tipo-natureza-img.sem-foto {
  aspect-ratio: 2 / 1; /* largura 2, altura 1 → mais largo e mais baixo */
}
.bg-wrapper {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.bg-layer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: contain;
  opacity: 0;
  z-index: 0;
}

/* Visibilidade permanente para layers sem fade */
.bg-layer:not(.fade-bg-2):not(.fade-bg-3) {
  opacity: 1;
}

/* Ajusta altura para sem foto */
.tipo-natureza-img.sem-foto .bg-layer {
  height: 50%;
}

/* === ANIMAÇÃO PARA 2 LAYERS === */
.fade-bg-2 {
  animation: fadeCycle2 8s infinite;
}
.fade-bg-2:nth-of-type(1) { animation-delay: 0s; }
.fade-bg-2:nth-of-type(2) { animation-delay: 4s; }

@keyframes fadeCycle2 {
  0%, 100%   { opacity: 0; }
  10%, 40%   { opacity: 1; }
  50%, 90%   { opacity: 0; }
}

/* === ANIMAÇÃO PARA 3 LAYERS === */
.fade-bg-3 {
  animation: fadeCycle3 12s infinite;
}
.fade-bg-3:nth-of-type(1) { animation-delay: 0s; }
.fade-bg-3:nth-of-type(2) { animation-delay: 4s; }
.fade-bg-3:nth-of-type(3) { animation-delay: 8s; }

@keyframes fadeCycle3 {
  0%, 100%   { opacity: 0; }
  10%, 40%   { opacity: 1; }
  50%, 90%   { opacity: 0; }
}

.centered-img {
  position: relative;
  z-index: 1;
  display: block;
  margin: auto; /* afasta a imagem do topo */
  max-height: 70%;
  height: auto;
  border-radius: 1rem;
}
.submit-summary{
  background-color:#FFF;
  border:1px solid #b4a391;
  border-radius:10px;
  margin-bottom:1rem;
}
.submit-summary i:not(.button-group.small .button i){
  font-size:2.5rem;
}

.submit-label{
  font-size:0.8rem;
  color:#3e5871;
  text-transform: capitalize;
}
.submit-data{
  font-size:1.1rem;
  color:#2C3E50;
 
}

.circle-percentage-008A7E,
.circle-percentage-CF232A {
  width: 100px;
  height: 100px;
  max-width: 100px; /* Para evitar que fique muito grande */
  max-height: 100px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  position:relative;
}
.circle-percentage-008A7E{
  border:5px solid #008A7E;
  color:#008A7E;
}
.circle-percentage-CF232A {
  border:5px solid #CF232A;
  color:#CF232A;
}


/* Smiley Face no canto inferior direito */
.circle-percentage-008A7E::after {
  
  font-family: "Material Design Icons";
  content: "\F01F2"; /* mdi-radiobox-blank */
  font-size: 20px;
  position: absolute;
  bottom: 0px;
  right: 40%;
}

/* Sad Face no canto inferior direito */
.circle-percentage-CF232A::after {
   
  font-family: "Material Design Icons";
  content: "\F01F8"; /* mdi-radiobox-blank */
  font-size: 20px;
  position: absolute;
  bottom: 0px;
  right: 40%;
}
.do-circle-center{
  display: flex;
  justify-content: center;
  align-items: center;
}
 
 

.remove-file {
  margin-left: auto;
}

/* Estilo da mensagem */
.remove-message {
  margin-top: 10px;
  color: #CF232A;
  font-size: 0.9rem;
  text-align: right;
    width: 100%;
}

.custom-color {
  color: #CF232A;
}

.remove-photo i,
.remove-file i,
.remove-single i{
  font-size:3rem;
}
 


/* Ajusta a posição para evitar que o preview fique muito afastado */

.file-preview-tooltip {
  position: absolute;
  display: none;
  width: 300px;
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #ccc;
  box-shadow: 2px 2px 10px rgba(0,0,0,0.2);
  padding: 10px;
  z-index: 1000;
  border-radius: 5px;
  transition: opacity 0.2s ease-in-out;
}

.file-preview-tooltip img, 
.file-preview-tooltip iframe {
      width: 100% !important;
    height: auto !important;
    border: none;
 
}


.file-preview-tooltip.show {
  display: block;
  opacity: 1;
}

.file-preview {
  cursor: pointer;
  margin-left: 8px;
  color: #007bff;
}

.file-preview:hover {
  text-decoration: underline;
}

/*new*/
/*.file-input-hidden {
  display: none;
}*/

.file-upload-button {
  display: flex;
  align-items: center;
  padding: 10px 15px;
  background-color: #16468a;
  color: white!important;
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.3s ease;
  text-align: center;
  justify-content: center;
   
}
.file-upload-button span,
.file-upload-button i {
 
  color: white!important;
   
}

.file-upload-button:hover {
  background-color: #122f5b;
}

.file-upload-button i {
  margin-right: 8px;
}
/* Estado desativado */
.ttDisabled-input-text + div .file-upload-button,
.ttDisabled-input-text .file-upload-button,
.mustBeDisabled + div .file-upload-button,
.mustBeDisabled .file-upload-button {
  background-color: #b0b0b0;
  color: #eee !important;
  cursor: not-allowed;
  opacity: 0.6;
  pointer-events: none;
}
.ttDisabled-input-text + div .file-upload-button span,
 
.ttDisabled-input-text + div .file-upload-button i,
.ttDisabled-input-text .file-upload-button span,
.ttDisabled-input-text .file-upload-button i,
.mustBeDisabled + div .file-upload-button span,
.mustBeDisabled + div .file-upload-button i,
.mustBeDisabled .file-upload-button span,
.mustBeDisabled .file-upload-button i {
  color: #eee !important;
}
.file-description {
  font-size: 14px;
  color: #6D6D6D;
  margin-top: 5px;
  font-family: "InterItalic", serif;
}

 
.filefield-preview-area {
    background: #f8f9fa;
    border: 2px dashed #dee2e6;
    border-radius: 8px;
    padding: 15px;
    text-align: center;
    transition: all 0.3s ease;
    min-height: 150px;
    max-height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.filefield-preview-area.drag-over,
.filefield-preview-area:hover {
    border-color: #2C3E50;
    background: #f1f3f5;
}
/* Estado desativado */
 
.ttDisabled-input-text + div .filefield-preview-area,
.ttDisabled-input-text .filefield-preview-area,
.mustBeDisabled + div .filefield-preview-area,
.mustBeDisabled .filefield-preview-area {
  background: #e9ecef;
  border-color: #ccc;
  color: #999;
  opacity: 0.6;
  pointer-events: none;
  user-select: none;
} 

.filefield-existing-area {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  border-bottom: 1px groove #122f5b30!important;
  background-color:#122f5b30;
}
.filefield-existing-area .filefield-placeholder,
.filefield-existing-area .filefield-download {
  display: flex;
  align-items: center;
  gap: 5px;
}

.filefield-existing-area i {
  font-size: 24px;
  color: #16468a;
  cursor:pointer;
}

.filefield-more {
  font-size: 12px;
  color: #6D6D6D;
}
.filefield-existing-area .filefield-placeholder,
.filefield-existing-area .filefield-placeholder i
 {
  color:#6D6D6D;
  font-size:0.8rem;
  padding-top:0.1rem;
  padding-left:0.2rem;
 }
 .current-filefield {
    max-height: 150px;
    width: auto;
    object-fit: contain;
     display: flex;
     align-items: center;
     justify-content: start;
     border-radius:5px;
 }
 .current-filefield-div {
  display: flex;
  margin: 1rem;
  gap: 0.5rem;
  position: relative;
 }
 .current-filefield-div i{
  font-size: 5rem;
  color: #16468a;
  cursor:pointer;
 }
 .current-filefield-div .remove-filefield i,
 .filefield-download .remove-filefield i{
  font-size:1.5rem!important;
  color: #CF232A!important;
 }


.ttDisabled-input-text .current-filefield-div .remove-filefield i,
  .ttDisabled-input-text .current-filefield-div .remove-filefield +div i,
 .ttDisabled-input-text .filefield-download .remove-filefield i,
 .ttDisabled-input-text .filefield-download .remove-filefield +div i,

 .current-filefield-div .remove-filefield.mustBeDisabled i,
 .current-filefield-div .remove-filefield.mustBeDisabled +div i,
 .filefield-download .remove-filefield.mustBeDisabled i,
 .filefield-download .remove-filefield.mustBeDisabled +div i{
   cursor:not-allowed;
   opacity:0.5;
 }
 .add-left-right-1-padding{
    padding-left: 1rem;
    padding-right: 1rem;
 }

 .sub-datas {
  display: inline-block;
  font-size: 0.65em;
  line-height: 1.1;
  margin-left: 4px;
  transform: translateY(0.5rem);
}

.pdf-preview {
	display: none;
	position: absolute;
	border: 1px solid #16468a;
  border-radius:5px;
	background-color: white;
	z-index: 9999;
	padding: 10px;
	 
}
.card-icon img{
  border-radius:0.5rem;
  max-width: 75%;
  margin:  auto;
}
.photo-radius{
  border-radius:0.5rem !important;
}
.take-me-up-and-right{
  margin-top: -1rem;
  _margin-left: 1rem;
}
.fraction {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  font-family: sans-serif;
  font-size: 1.2rem;
  line-height: 1;
}
 
.fraction .line {
  width: 100%;
  height: 1px;
  background: #000;
  margin: 2px 0;
}
.gray-section {
  position: relative;
  filter: grayscale(100%);
  color: #999;
  overflow: hidden;
}

.gray-section::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(
    -45deg,
    rgba(0, 0, 0, 0.05),
    rgba(0, 0, 0, 0.05) 1px,
    transparent 1px,
    transparent 3px
  );
  pointer-events: none;
}
.gray-section * {
  color: #999 !important;
  
}
.gray-section .fraction .line {
  background: #999 !important;
 
}
aside{
  height:100%;
}


  
.callout.warning-Pendente    { background-color: rgba(255, 190, 15, 1); color: #000; }
.callout.warning-EmAnalise   { background-color: rgba(249, 152, 27, 1); color: #000; }
.callout.warning-Deferido    { background-color: rgba(0, 173, 78, 1);  color: #fff; }
.callout.warning-Indeferido  { background-color: rgba(207, 35, 42, 1); color: #fff; }
.callout.warning-Finalizado  { background-color: rgba(0, 103, 139, 1); color: #fff; }
.callout.warning-Invalido    { background-color: rgba(205, 30, 99, 1); color: #fff; }

.maynotshowdetails td{
  padding:0;
}

/* Container geral do chosen */
.chosen-container {
   
  font-size: 1rem;
  font-family: 'InterRegular', 'Roboto', sans-serif;
}

/* Dropdown estilo Foundation */
.chosen-container-single .chosen-single {
  background-color: #fefefe;
  border: 1px solid #cacaca;
  border-radius: 0;
  padding: 0.25rem 2.5rem 0.25rem 1rem; /* reduzido para compensar altura */
  height: 33px; /* exatamente igual ao Foundation 6 */
  line-height: 1.5;
  font-size: 1rem;
  color: #2c3e50;
  box-shadow: none;
  display: flex;
  align-items: center;
  position: relative;
  background-image: none !important;
  filter: none !important;
  appearance: none;
  font-family: 'InterRegular', 'Roboto', sans-serif;
}

/* Seta estilo Foundation */
.chosen-container-single .chosen-single div {
  position: absolute;
  pointer-events: none;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #2c3e50;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

/* Remove a seta original do Chosen */
.chosen-container-single .chosen-single div b {
  display: none;
}

/* Hover e focus */
.chosen-container-active .chosen-single,
.chosen-container-single .chosen-single:hover {
  border-color: #8a8a8a;
  box-shadow: none;
}

/* Dropdown da lista */
.chosen-container .chosen-drop {
  border: 1px solid #cacaca;
  border-radius: 0;
  box-shadow: none;
  margin-top: 0.25rem;
  font-family: 'InterRegular', 'Roboto', sans-serif;
}

/* Lista de opções */
.chosen-container .chosen-results {
  margin: 0;
  padding: 0.5rem;
  font-size: 1rem;
  font-family: 'InterRegular', 'Roboto', sans-serif;
}

/* Itens da lista */
.chosen-container .chosen-results li {
  padding: 0.5rem 1rem;
  font-size: 1rem;
  color: #0a0a0a;
  font-family: 'InterRegular', 'Roboto', sans-serif;
}

/* Item selecionado na lista */
.chosen-container .chosen-results li.highlighted {
  background-color: #e6e6e6;
  color: #0a0a0a;
}
.chosen-container .chosen-results li.highlighted,
.chosen-container .chosen-results li:hover,
.chosen-container .chosen-results li:focus {
  background-color: #e6e6e6 !important; /* ou a cor de fundo desejada */
  color: #0a0a0a !important;
  font-size: 1rem !important;
  background-image: none !important;
  font-family: 'InterRegular', 'Roboto', sans-serif;
  font-weight: normal !important;
}

/* Espaçamento superior para o label de campos readonly */
.field.uploadfield.readonly ~ .grid-x label.left ,
.field.readonly label {
  margin-top: 1rem;
  display: block;
}

/* Estilo para o conteúdo readonly (input, textarea, span, etc.) */
.field.readonly .middleColumn * {
  
  background-repeat: repeat;
  
  padding: 0.5rem;
  border-radius: 4px;
   
  background: repeating-linear-gradient(
    to right,
    rgba(255, 190, 15, 0.05),
    rgba(249, 152, 27, 0.05) 10%,
    rgba(210, 103, 43, 0.05) 20%,
    rgba(207, 35, 42, 0.05) 30%,
    rgba(205, 30, 99, 0.05) 40%,
    rgba(120, 44, 132, 0.05) 50%,
    rgba(80, 88, 152, 0.05) 60%,
    rgba(0, 103, 139, 0.05) 70%,
    rgba(0, 138, 126, 0.05) 80%,
    rgba(0, 173, 78, 0.05) 90%,
    rgba(113, 191, 68, 0.05) 100%,
    rgba(189, 215, 48, 0.05) 110%,
    rgba(255, 190, 15, 0.05) 120%
  );
}

/* Garante que <span> também herde o estilo */
.field.readonly .middleColumn span.readonly {
  display: block;
}

.card.tipo-associacao .card-title::after {
  content: "[Associação]";
   
  font-size: 0.8em;
  color: #999;
  font-weight: 300;
  font-style: normal;
}

.card.tipo-individual .card-title::after {
  content: "[Individual]";
  
  font-size: 0.8em;
  color: #999;
  font-weight: 300;
  font-style: normal;
}
.ttTipoEntidade{
    font-size: 0.8em;
    color: #999;
    font-weight: 300;
    font-style: normal;
}

/*Card Animado com Ícone Flutuante*/

.callout-float {
 
  position: relative;
  text-align: center;
  padding: 2.75rem 1.5rem 1.75rem;
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 12px;
  background: transparent;
  box-shadow:
    0 0 0 2px rgba(0,0,0,0.03) inset,
    0 4px 16px rgba(0,0,0,0.1);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.callout-float::before {
  content: "";
  position: absolute;
  inset: -2px;
  z-index: -1;
  border-radius: inherit;
  background: conic-gradient(from 0deg, rgba(255, 190, 15, 0.5), rgba(210, 103, 43, 0.5), rgba(205, 30, 99, 0.5), rgba(255, 190, 15, 0.5));
  filter: blur(8px) saturate(140%);
  opacity: 0.35;
}

.cf-float-icon {
  font-size: 48px;
  color: rgba(210, 103, 43, 0.8);
  display: inline-block;
  animation: cf-bob 2.4s ease-in-out infinite;
}

@keyframes cf-bob {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

.callout-float h5 {
  margin-top: 0.75rem;
  margin-bottom: 0.25rem;
  font-weight: 700;
  color: #5c2e00;
}

.callout-float p {
  margin: 0 0 1rem;
  color: #5c2e00;
}

.callout-float .cf-actions {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.callout-float .close-button {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  color: #764c26;
}
.callout-float.nopage {
  --cB: rgba(0, 103, 139, 0.5);
  --cBg: rgba(0, 103, 139, 0.05);

  position: relative;
  text-align: center;
  padding: 2.75rem 1.5rem 1.75rem;
  border: 1px solid var(--cB);
  border-radius: 12px;
  background: var(--cBg);
  box-shadow:
    0 0 0 2px rgba(0, 0, 0, 0.03) inset,
    0 4px 16px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.callout-float.nopage::before {
  content: "";
  position: absolute;
  inset: -2px;
  z-index: -1;
  border-radius: inherit;
  background: conic-gradient(
    from 0deg,
    rgba(0, 103, 139, 0.5),
    rgba(120, 44, 132, 0.5),
    rgba(0, 138, 126, 0.5),
    rgba(80, 88, 152, 0.5)
  );
  filter: blur(8px) saturate(140%);
  opacity: 0.35;
}

.callout-float.nopage .cf-float-icon {
  font-size: 48px;
  color: rgba(0, 103, 139, 0.8);
  display: inline-block;
  animation: cf-bob 2.4s ease-in-out infinite;
}

.callout-float.nopage h5 {
  margin-top: 0.75rem;
  margin-bottom: 0.25rem;
  font-weight: 700;
  color: #003c71; /* tom escuro de azul, pode ser ajustado */
}

.callout-float.nopage p {
  margin: 0 0 1rem;
  color: #003c71;
}

.callout-float.nopage .cf-actions {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.callout-float.nopage .close-button {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  color: #003c71;
} 
.card {
  position: relative;
  overflow: hidden;
}

/* Estilo base da fita */
.ribbon {
  position: absolute;
  top: 20px;
  left: -60px;
  width: 200px;
  text-align: center;
  font-size: 0.75rem;
  font-weight: bold;
  color: white;
  transform: rotate(-45deg);
  z-index: 50;
  padding: 4px 0;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  pointer-events: none;
}

/* Cores específicas */
.ribbon-vermelha {
   color: #cf232a;
  background-color: #F7F8F963;
}
.ribbon-grey {
  background-color: #F7F8F963;
  
  color:#777;
}
.ribbon-laranja {
  color: #F9981B;
  background-color: #F7F8F953;
  top: 45px;
  left: -40px;
  
}

/* Container da linha com ribbon */
.trribbon {
  _position: absolute;
      _top: 21px;
    _left: -25px;
    width:10rem;
  text-align: left;
  font-size: 0.75rem;
  font-weight: bold;
  color: white;
  transform: rotate(-10deg);
    transition: transform 0.3s ease;
  z-index: 50;
  padding: 4px 0;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  pointer-events: none;
      padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left:1rem;
    margin-bottom:0.5rem;
}
tr.trribbon-row td:first-child {
  position: relative;
  overflow: visible;
}

/* Ribbon principal */
tr.trribbon-row td:first-child .ribbon {
  position: absolute;
  
  text-align: left;
  font-size: 0.7rem;
  font-weight: bold;
  color: white;
  left: -25px;
  
  z-index: 2;
  padding: 3px 0;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  pointer-events: none;
 
    /* aqui o truque */
 
   
  /* ↑ este "recorta" a ponta direita em V */
}

/* Variações de cor */
.trribbon-vermelha {
   color: #cf232a;
  background-color: #F7F8F963;
  /* 💡 recorte horizontal no lado direito */
_clip-path: polygon(8% 0, /* canto superior esquerdo */ 80% 0%, /* canto superior direito do retângulo */ 70% 0%, /* vértice do triângulo (topo direita) */ 90% 90%, /* base direita do triângulo */ 0 100% /* canto inferior esquerdo */);

}
.trribbon-grey {
  background-color: #F7F8F963;
  
  color:#777;
  /* 💡 recorte horizontal no lado direito */
_clip-path: polygon(8% 0, /* canto superior esquerdo */ 80% 0%, /* canto superior direito do retângulo */ 70% 0%, /* vértice do triângulo (topo direita) */ 90% 90%, /* base direita do triângulo */ 0 100% /* canto inferior esquerdo */);
}
.trribbon-grey small, .ribbon-grey small {
  font-size: 0.7em;
  opacity: 0.9;
  font-weight: normal;
}
.trribbon-laranja {
  color: #F9981B;
  background-color: #F7F8F953;
  _clip-path: polygon(5% 0, /* canto superior esquerdo */ 80% 0%, /* canto superior direito do retângulo */ 70% 0%, /* vértice do triângulo (topo direita) */ 85% 95%, /* base direita do triângulo */ 0% 100% /* canto inferior esquerdo */);
    _width: 350px;
    _left: -35px;

}

.heading-entidade {
  background-color: #F1F2F3;
  border-left: 6px solid #596577; /* cor azul primária */
  padding: 1rem;
  margin-top: 2rem;
  margin-bottom: 0.5rem; 
  
  gap: 0.5rem;
 
  box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.entidade-formularios-bloco {
  background-color: #fff;
  border: 1px solid #F1F2F3;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.colorfull-line::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: 1rem auto;
  background: linear-gradient(to right,
    rgba(255, 190, 15, 0.25), 
    rgba(249, 152, 27, 0.25), 
    rgba(210, 103, 43, 0.25), 
    rgba(207, 35, 42, 0.25), 
    rgba(205, 30, 99, 0.25), 
    rgba(120, 44, 132, 0.25), 
    rgba(80, 88, 152, 0.25), 
    rgba(0, 103, 139, 0.25), 
    rgba(0, 138, 126, 0.25), 
    rgba(0, 173, 78, 0.25), 
    rgba(113, 191, 68, 0.25), 
    rgba(189, 215, 48, 0.25), 
    rgba(255, 190, 15, 0.25)
  );
  border-radius: 3px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.final-status-radius-right{
  
  /* Apenas no lado direito */
border-top-right-radius: 1rem;
border-bottom-right-radius: 1rem;

/* Prefixos antigos (hoje quase desnecessários) */
-webkit-border-top-right-radius: 1rem;
-webkit-border-bottom-right-radius: 1rem;
-moz-border-radius-topright: 1rem;
-moz-border-radius-bottomright: 1rem;
}
.final-status-radius-left{
  
  /* Apenas no lado esquerdo */
border-top-left-radius: 1rem;
border-bottom-left-radius: 1rem;

/* Prefixos antigos (hoje quase desnecessários) */
-webkit-border-top-left-radius: 1rem;
-webkit-border-bottom-left-radius: 1rem;
-moz-border-radius-topleft: 1rem;
-moz-border-radius-bottomleft: 1rem;
}

.fatura-frame {
  border: 1px solid #ccc;
  padding: 5px;
  overflow: auto;
  width: 100%;
  max-width: 600px;
  height: 600px;
  position: relative;
}

.fatura-frame {
  position: relative;
  border: 1px solid #ccc;
  padding: 5px;
  overflow: hidden;
  width: 100%;
  max-width: 600px;
  height: 600px;
}

.fatura-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
  cursor: grab;
  display: block;
  pointer-events: none; /* evita que a imagem bloqueie cliques na toolbar */
}

.fatura-toolbar {
  position: absolute;
  top: 5px;
  right: 5px;
  background: rgba(255,255,255,0.8);
  padding: 5px;
  border-radius: 4px;
  display: flex;
  gap: 5px;
  z-index: 10; /* acima da imagem */
}

.fatura-toolbar button,
.fatura-toolbar a {
  pointer-events: auto; /* garante que os botões são clicáveis */
  cursor:pointer;
}

.fatura-frame.dragging {
  cursor: grabbing;
}

 
 

.fatura-img-wrapper {
  width: 100%;
  height: 100%;
  overflow: hidden; /* esconde as scrollbars */
  cursor: grab;
  position: relative;
}

.fatura-img-wrapper.dragging {
  cursor: grabbing;
}

.fatura-img {
  position: absolute; /* permite mover dentro do wrapper */
  top: 0;
  left: 0;
  transition: transform 0.3s ease;
}
.small-font,
 
ul.small-font  li{
  font-size:1rem!important;
  line-height:1.2rem!important;
}
#Form_search_sort_candidatura_form_sort_estado_atual_Holder .middleColumn,
#Form_search_sort_candidatura_form_sort_title_Holder .middleColumn,
#Form_search_sort_candidatura_form_sort_entidade_Holder .middleColumn{
  width:100%;
}

/* Reset antigo que causava conflito */
.input-group-field,
.input-group-button,
.input-group-checkbox {
    margin: 0;
    display: block; /* deixa o flex do container controlar o layout */
}

/* Container flex para campos lado a lado */
.input-group {
    display: flex;
    align-items: stretch; /* faz input e botão com mesma altura */
    gap: 0; /* sem espaço entre input e botão */
}

/* Ajusta input para ocupar o máximo de espaço */
.input-group-field {
    flex: 1 1 auto; /* cresce para preencher espaço disponível */
    border-top-right-radius: 0; /* remove arredondamento do lado do botão */
    border-bottom-right-radius: 0;
}

/* Ajusta botão para colar no input */
.input-group-button {
    flex: 0 0 auto; /* mantém tamanho do conteúdo */
    border-top-left-radius: 0; /* remove arredondamento do lado do input */
    border-bottom-left-radius: 0;
    margin: 0; /* garante que não haja gap extra */
}

/* Opcional: deixa botão com mesma altura do input */
.input-group-button .button {
    height: 100%;
    padding: 0 1rem; /* ajusta largura interna */
}
/* Se o input dentro do input-group tiver a classe ttDisabled-input-text */
 .ttDisabled-input-text .input-group  .input-group-button input[type="submit"],
 .ttDisabled-input-text .input-group   .input-group-button input[type="submit"] {
    pointer-events: none!important;  /* Desabilita interações */
    cursor: not-allowed!important;   /* Cursor "não permitido" */
    opacity: 0.5!important;          /* Deixa o botão mais "cinza" */
}
.ttAdjusted {
  background-color: #fff3cd; /* amarelo claro */
  border: 1px solid #ffeeba;
  cursor: not-allowed;
}

.alphabet-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.alphabet-option {
  position: relative;
  display: inline-block;
  cursor: pointer;
}

.alphabet-option input[type="radio"] {
  display: none;
}

.alphabet-option span {
  display: inline-block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-weight: 600;
  border-radius: 6px;
  background: #4746461f; /* azul elegante */
  color: white;
  transition: all 0.2s ease-in-out;
}

.alphabet-option input[type="radio"]:checked + span {
  background: rgba(0, 103, 139, 0.8); /* azul vivo ao selecionar */
   
  transform: scale(1.1);
}

.execution-time {
    background: #f5f5f5;
    padding: 5px 10px;
    border-radius: 4px;
    margin: 10px 0;
    font-size: 12px;
    color: #666;
    font-family: monospace;
    display: inline-block;
    border: 1px solid #e0e0e0;
}
.margin-top-1{
  margin-top:1rem;
}
.must-show-right input{
  text-align:right;
}

.fluxo-estado  tr:nth-child(even){
  background-color: transparent;
}
 .fluxo-estado  tr td{
  padding:0;
 }
 
 
 .custom-bg-color-505898.riscado::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: repeating-linear-gradient(
        -45deg,
        rgba(255,255,255,0.3) 0px,
        rgba(255,255,255,0.3) 2px,
        transparent 2px,
        transparent 6px
    );
    pointer-events: none; /* permite clicar no span normalmente */
    border-radius: inherit; /* mantém os cantos arredondados do label */
}
.has-tip span{
  font-weight:normal!important;
}

.show-me-hand{
  cursor: pointer;
} 
table.pvtTable tbody tr td,
table.pvtTable thead tr th, table.pvtTable tbody tr th{
  background-color:#fff!important; 
}
.pvtRendererArea{
  padding:0rem !important;
}

 table.pvtTable tr:nth-child(even) td {
  background-color: #fdfbf7!important;
}
 
table.pvtUi > tbody > tr:first-child > td:nth-child(3) {
    width: 70%!important;
    max-width: 70%!important;
}
/* Aplica a todas as células da primeira coluna */
table.pvtUi td:nth-child(1),
table.pvtUi th:nth-child(1) {
    width: 15% !important;
    max-width: 15% !important;
}

/* Segunda coluna */
table.pvtUi td:nth-child(2),
table.pvtUi th:nth-child(2) {
    width: 15% !important;
    max-width: 15% !important;
}

/* Terceira coluna */
table.pvtUi td:nth-child(3),
table.pvtUi th:nth-child(3) {
    width: 70% !important;
    max-width: 70% !important;
}
  .margin-05rem{
    margin-bottom:0.5rem;
  } 
  .margin-15rem{
    margin-bottom:1.5rem;
  } 
.padding-top-bottom-0{
  padding-top:0!important;
  padding-bottom:0!important;
}

/* ===============================
   QUOTE INLINE MARKS - BASE
   =============================== */

.quote-inline-wrap .quote-inline-marks {
  font-size: 3.25rem;
  line-height: 1rem;
  font-family: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  
  height: 85px;
 
  margin-bottom: 1rem;
  opacity: 1;
  transition: all 0.25s ease-in-out;
}

/* ===============================
   EVENTOS
   =============================== */

 

 
/* ===============================
   RESPONSIVE (mobile)
   =============================== */

@media screen and (max-width: 640px) {
  .quote-inline-wrap .quote-inline-marks {
    width: 65px;
    height: 65px;
    font-size: 4.2rem;
    margin-bottom: 0.75rem;
  }
}
#help_modal{
  padding:2rem;
}

/* Animação de tremer */
@keyframes shake {
    0% { transform: translateX(0); }
    20% { transform: translateX(-3px); }
    40% { transform: translateX(3px); }
    60% { transform: translateX(-3px); }
    80% { transform: translateX(3px); }
    100% { transform: translateX(0); }
}

.shake {
    animation: shake 0.5s ease-in-out 3; /* dura 0.5s, repete 3 vezes */
}
/* WRAPPER */
.cookie-policy-wrapper {
    padding: 4rem 1rem;
    background: #fdfbf7;
    position: relative;
}


/* MAIN CARD */
.cookie-policy-card {
    max-width: 1200px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 16px;
    padding: 3rem;
    box-shadow: 0 20px 60px rgba(44, 62, 80, 0.08);
}

/* SECTION SPACING */
.cookie-section {
    margin-bottom: 3rem;
}

.cookie-aside {
    background: #f4f6f8;
    padding: 2rem;
    border-radius: 12px;
    border-left: 5px solid #2C3E50;
}

.cookie-aside h3 {
    margin: 0;
    font-size: 1.05rem;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: #2C3E50;
}

/* RIGHT CONTENT */
.cookie-content {
    padding: 0 1rem;
    color: #2C3E50;
    line-height: 1.7;
}

/* FORM WRAPPER */
.cookie-form-wrapper {
    background: #f8f9fb;
    padding: 2rem;
    border-radius: 12px;
}

/* COOKIE GROUP */
.cookie-group {
    margin-bottom: 3rem;
}

.cookie-group h4 {
    color: #2C3E50;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.cookie-group-description {
    margin-bottom: 1.5rem;
}

/* TABLE WRAPPER */
.cookie-table-wrapper {
    overflow-x: auto;
}

/* TABLE */
.cookie-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(44, 62, 80, 0.05);
}

.cookie-table thead {
    background: #2C3E50;
    color: #ffffff;
}

.cookie-table th,
.cookie-table td {
    padding: 0.9rem 1rem;
    text-align: left;
    font-size: 0.9rem;
}

.cookie-table tbody tr {
    border-bottom: 1px solid #eef1f5;
}

.cookie-table tbody tr:nth-child(even) {
    background: #f7f9fc;
}

.cookie-table tbody tr:hover {
    background: #eef3f8;
    transition: background 0.2s ease;
}

/* FOOTER */
.cookie-footer {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #e5e8ec;
    font-size: 0.9rem;
    color: #5c6b7a;
}

.timeline-container {
    position: relative;
    margin: 3rem 0;
}

/* Linha vertical central */
.timeline-container::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 4px;
    background: #ddd;
    transform: translateX(-50%);
}

.timeline-item {
    position: relative;
    width: 100%;
    margin-bottom: 3rem;
}

/* Caixa do conteúdo */
.timeline-content {
    position: relative;
    width: 45%;
    background: #f9fafb;
    padding: 1rem;
    border-radius: 6px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

/* Itens da esquerda */
.timeline-item .timeline-content {
    left: 0;
}

/* Itens da direita */
.timeline-item.right .timeline-content {
    left: 55%;
}

/* Ícone central */
.timeline-icon  {
    position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 5rem;
  height: 5rem;
  background: #00678B;
  border: 2px solid #00678B;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  font-size: 75%;
  color: #FFF;
}

 

 
/* faz cada cell comportar-se como coluna flex */
.the_avisos.grid-x .cell {
  display: flex;
}

/* faz o card ocupar 100% da altura da coluna */
.aviso-card {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.aviso-card-body {
  flex: 1 1 auto;
}
.submenu.menu{
  z-index:10000;
}

/* Menu Fancy Styling */
.menu-fancy-regulamento {
    margin: 1rem 0;
    padding: 0;
}

.menu-fancy-regulamento .menu-fancy-option-regulamento {
    position: relative;
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
    width: 100%;
}

/* Remove background e border-radius genérico */
.menu-fancy-regulamento .menu-fancy-option-regulamento span,
.menu-fancy-regulamento .menu-fancy-option-regulamento a {
    display: flex;
    align-items: center;
    padding: 0.2rem 1.5rem;
    padding-left: 0.2rem !important;
    color: #474746;
    text-decoration: none;
    font-size: 1rem;
    font-weight: 500;
    border-radius: 0; /* remover aqui */
    transition: all 0.3s ease;
    background: transparent; /* remover aqui */
}

/* Remove todos os backgrounds e círculos dos i globais */
.menu-fancy-regulamento .menu-fancy-option-regulamento i {
    margin-right: 0.75rem;
    font-size: 1.5rem;
    background: none;   /* só o alerta terá background */
    padding: 0;
    height: auto;
    width: auto;
    border-radius: 0;
    color: #00678B;
}

/* Container flex do li */
.menu-fancy-regulamento .menu-fancy-option-regulamento .menu-fancy-regulamento-content {
    display: flex;
    align-items: center;
    gap: 0.75rem; /* espaço entre colunas */
    padding: 0.5rem 1rem;
    background: #ffffff;
    border-radius: 0.5rem;
    transition: all 0.3s ease;
}

/* Ícone alerta com background e radius personalizado */
.menu-fancy-regulamento .menu-fancy-option-regulamento .menu-fancy-regulamento-content .menu-fancy-regulamento-icon i {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.7rem; /* ajusta o tamanho */
    border-radius: 10px; /* o que pediste */
    background: #F1F2F3;
    color: #00678B; 
}
.menu-fancy-regulamento .menu-fancy-option-regulamento.is-selected .menu-fancy-regulamento-content  .menu-fancy-regulamento-icon i {
   background: #00678B;
    color: #F1F2F3 ; 
}
/* Texto expansível */
.menu-fancy-regulamento .menu-fancy-option-regulamento .menu-fancy-regulamento-content .menu-fancy-regulamento-text {
    flex: 1 1 auto; /* ocupa todo o espaço disponível */
}

/* Ações (ver/download) sem background/círculo */
.menu-fancy-regulamento .menu-fancy-option-regulamento .menu-fancy-regulamento-content .menu-fancy-regulamento-action {
    font-size: 1.5rem;
    color: #474746; /* cor normal, sem background */
    background: none;
    border-radius: 0;
    padding: 0;
    width: 7%;
}
 
/* Hover */
/* Hover igual ao is-selected */
.menu-fancy-regulamento .menu-fancy-option-regulamento:hover .menu-fancy-regulamento-content {
    background: rgba(0, 103, 139,0.05);
    cursor:pointer;
}

/* Hover do ícone */
.menu-fancy-regulamento .menu-fancy-option-regulamento:hover .menu-fancy-regulamento-content .menu-fancy-regulamento-icon i {
    background: #00678B;
    color: #F1F2F3;
    
}

/* Selected */
.menu-fancy-regulamento .menu-fancy-option-regulamento.is-selected .menu-fancy-regulamento-content {
    background: rgba(0, 103, 139,0.05);
     
}
 
/* MENU ENTIDADE */
.menu-fancy-entidade {
    margin: 1rem 0;
    padding: 0;
}

/* Cada item */
.menu-fancy-entidade .menu-fancy-option-entidade {
    display: flex;
    align-items: center; /* alinhar i e a na mesma linha */
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

/* Link */
.menu-fancy-entidade .menu-fancy-option-entidade a {
    display: inline-block;
    padding: 0.4rem 0.5rem;
    color: #00678B;
    text-decoration: none;
    font-size: 1rem; 
}
 

/* Ícone */
.menu-fancy-entidade .menu-fancy-option-entidade i {
    font-size: 1.3rem;
    color: #00678B;
    padding: 0.3rem;
    border-radius: 5px;
    transition: all 0.3s ease;
}

/* Estado selecionado */
.menu-fancy-entidade .menu-fancy-option-entidade.is-selected i {
    background: #FFF;
    border-radius: 5px;
}

/* Ações (ver/download) sem background/círculo */
.menu-fancy-entidade .menu-fancy-option-entidade .menu-fancy-entidade-content .menu-fancy-entidade-action {
    font-size: 1.5rem;
    color: #00678B; /* cor normal, sem background */
    background: none;
    border-radius: 0;
    padding: 0;
    width: 7%;
}
 
/* Hover */
/* Hover igual ao is-selected */
.menu-fancy-entidade .menu-fancy-option-entidade:hover .menu-fancy-entidade-content {
    background: rgba(0, 103, 139,0.05);
    cursor:pointer;
}

/* Hover do ícone */
.menu-fancy-entidade .menu-fancy-option-entidade:hover .menu-fancy-entidade-content .menu-fancy-entidade-icon i {
    background: #00678B;
    color: #F1F2F3;
    
}

/* Selected */
.menu-fancy-entidade .menu-fancy-option-entidade.is-selected .menu-fancy-entidade-content {
    background: rgba(0, 103, 139,0.05);
     
}

.bg-color-FFF-radius-5{
  background-color: #FFF;
  border-radius: 10px;
  padding:1rem;
}
.bg-color-f9f6f1-radius-5{
  background-color: #f9f6f1;
  border-radius: 10px;
  padding:1rem;
}
.bg-color-f9f6f1-radius-10{
  background-color: #f9f6f1;
  border-radius: 10px;
  padding:0.2rem;
  padding-left: 0.4rem;
    padding-right: 0.4rem;
  font-size:1.5rem;
}
.bg-color-00678B-radius-5{
	background-color:#00678B;
   border-radius: 10px;
  padding:1rem;
  color:#F1F2F3;  
}
.bg-color-00769f-radius-5{
    background: rgba(0, 118, 159, 0.5);
    padding: 1rem;
    border-radius: 10px;
    
}
.bg-color-00769f-radius-10{
    background: rgba(0, 118, 159, 1);
    padding: 1rem;
    border-radius: 10px;
    
}
.bg-color-00769f-radius-10{
    background: rgba(0, 118, 159, 0.3);
    padding:0.2rem;
    padding-left: 0.4rem;
    padding-right: 0.4rem;
  font-size:1.5rem;
    border-radius: 10px;
    
}
.color-009cd3{
  color:#009cd3;
}
a.color-FFFFFF,
.color-FFFFFF{
  color:#FFFFFF;
}
a.color-FFFFFF:hover{
  color:#F1F2F3;
}
.divtitle{
  font-weight:bold;
}
.nav-entidade-selected{
    background: #FFF;
    width: 100%;
    border-radius: 10px;
}
.entidade-side-nav{
  position: sticky;
    top: 80px;
}

/* Container */
.tt-ajuda {
    padding: 10px;
    font-size: 14px;
    line-height: 1.5;
}

/* Título principal */
.tt-ajuda-titulo {
    font-size: 18px;
    margin-bottom: 15px; 
    display: flex;
    align-items: center;
    gap: 8px;
}

/* CARD */
.tt-ajuda-card {
    background: #f9f6f1;
    border-radius: 10px;
    padding: 20px;
    height: 100%;
}

/* ÍCONE GRANDE */
.tt-ajuda-icon {
    font-size: 1.5rem;
    margin-bottom: 10px;
}
.tt-ajuda-icon i{
    font-size: 34px;
    
}

/* cores por função */
.tt-ajuda-icon.filtros {
    color: #e2d4bb;
 }

.tt-ajuda-icon.lista {
    color:#e2d4bb;
}

.tt-ajuda-icon.acoes {
    color:  #e2d4bb;
}

/* título dentro do card */
.tt-ajuda-card-title {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
    color: rgba(80, 88, 152, 1);
}

/* texto */
.tt-ajuda-card p {
    margin-bottom: 10px;
}

/* lista */
.tt-ajuda-lista {
    margin: 0;
    padding-left: 18px;
}

.tt-ajuda-lista li {
    margin-bottom: 6px;
}

/* ícones dentro da lista */
.tt-ajuda-lista i {
    margin-right: 6px; 
}
.optionset--column {
  display:initial!important;
  
 
}
 
.optionset--column ul{ 
  display:block!important;
   column-count: 2!important;
  column-gap: 1rem;
 
}

/* tooltip dentro de link: forçar cursor pointer (mãozinha) em vez do cursor help do Foundation */
a[data-tooltip],
a [data-tooltip],
a.has-tip,
a .has-tip {
  cursor: pointer !important;
}

.classEmFalta td{
  color:#CF232A;
}