.carregandoUtils {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: 0.5s ease-in;
}

.campo-vazio,
.campo-vazio~span:not(.aviso-alert) {
  background: #FCC !important;
}

/* animação de tremer ao sinalizar */
.campo-vazio {
  animation: campoVazioShake 0.3s ease;
}

/* animação suave ao remover a classe */
.campo-normalizou {
  animation: campoNormalizouFade 0.4s ease;
}

@keyframes campoVazioShake {
  0% {
    transform: translateX(0px);
  }

  25% {
    transform: translateX(-4px);
  }

  50% {
    transform: translateX(4px);
  }

  75% {
    transform: translateX(-4px);
  }

  100% {
    transform: translateX(0px);
  }
}

@keyframes campoNormalizouFade {
  0% {
    background-color: #fcc;
  }

  100% {
    background-color: white;
  }
}

.label-input:has(.campo-vazio) .span-input-text {
  background: #FCC !important;
}

.aviso-alert {
  color: red !important;
  background-color: unset !important;
  transition: background 200ms ease, box-shadow 200ms ease;

}

.aviso-alert {
  opacity: 1;
  transition: opacity 0.3s ease;
}

.aviso-alert.fade-out {
  opacity: 0;
}

.campo-vazio {
  border: 1px solid #888 !important;
}


.carregandoUtils:after {

  content: attr(data-value);
  color: #11275b;
  font-weight: bold;
  display: table-cell;
  /* vertical-align: top; */
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 100%;
  background: #ffffff;
  opacity: .9;
  transition: all ease 1s;
  z-index: 1;
  bottom: 0;
  opacity: .8;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;

  transition: 0.5s ease-in;
}

@keyframes carregandoUtils {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}


.carregandoUtils:before {
  content: "";
  display: block;
  position: fixed;
  /* padding: 10px; */
  width: 200px;
  height: 200px;
  border-radius: 100%;
  border: 11px solid #11275b;
  /* background-color: white; */
  opacity: 1;
  border-right-style: double;
  top: 0;
  margin-top: 67px;
  margin: auto;
  transition: all ease 1s;
  z-index: 2;
  bottom: 0;
  left: 0;
  right: 0;
  animation: 1s infinite carregandoUtils;
  transition: 0.5s ease-in;
}