.form-control {
  background-color: var(--branco) !important;
  border: 0.0625rem solid #bebebe;
}

.form-control:focus {
  background-color: var(--branco);
  border-color: var(--verde-vale);
  box-shadow: none;
}

.form-control:hover:not(:disabled) {
  box-shadow: 0px 3px 6px #007e7a 36 !important;
}

.has-success .form-control {
  background-color: var(--branco);
  border-color: var(--verde-aqua);
}

.has-success .form-control:focus {
  box-shadow: none;
}

.has-success .form-control:hover:not(:disabled) {
  box-shadow: 0px 3px 6px #0abb98 36 !important;
}

.has-success .form-feedback-item {
  color: var(--verde-aqua);
}

.has-warning .form-control {
  background-color: var(--branco);
  border-color: var(--amarelo-vale);
}

.has-warning .form-control:focus {
  box-shadow: none;
}

.has-warning .form-control:hover:not(:disabled) {
  box-shadow: 0px 3px 6px #ecb11f 36 !important;
}

.has-warning .form-feedback-item {
  color: var(--amarelo-vale);
}

.has-error .form-control {
  background-color: var(--branco);
  border-color: var(--cereja-vale);
}

.has-error .form-control:focus {
  box-shadow: none;
}

.has-error .form-control:hover:not(:disabled) {
  box-shadow: 0px 3px 6px #c0305e 36 !important;
}

.has-error .form-feedback-item {
  color: var(--cereja-vale);
}

label {
  color: var(--cinza-escuro);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-normal);
  line-height: 1.625rem;
}

/* Checkbox */

:not(.form-group) > label > input[type="checkbox"] {
  appearance: none;
  display: none;
  margin: 0;
  -webkit-appearance: none;
}

:not(.form-group) > label > input[type="checkbox"] + .checkbox-box {
  border: 1px solid var(--verde-vale);
  border-radius: 4px;
  height: 1rem;
  margin-right: 0.5rem;
  vertical-align: bottom;
  width: 1rem;
}

:not(.form-group) > label > input[type="checkbox"]:checked + .checkbox-box {
  background: var(--verde-vale);
}

:not(.form-group)
  > label
  > input[type="checkbox"]:checked
  + .checkbox-box::after {
  color: var(--branco);
  content: "\2713";
  font-size: 14px;
  left: 2px;
  position: relative;
  top: -6px;
}

:not(.form-group)
  > label
  > input[type="checkbox"]:hover:not(:disabled)
  + .checkbox-box {
  background: #0075717d;
}

:not(.form-group) > label > input[type="checkbox"]:disabled + * {
  cursor: not-allowed;
  opacity: 0.4;
}

:not(.form-group) > label > input[type="checkbox"] ~ .checkbox-label {
  position: relative;
  top: -4px;
}

/* Radio */

:not(.form-group) > label > input[type="radio"] {
  appearance: none;
  display: none;
  margin: 0;
  -webkit-appearance: none;
  border: 1px solid var(--verde-vale);
  border-radius: 50%;
  display: grid;
  height: 1rem;
  margin-right: 0.5rem;
  place-content: center;
  width: 1rem;
}

:not(.form-group) > label > input[type="radio"] + span {
  position: relative;
  top: -4px;
}

:not(.form-group) > label > input[type="radio"]::before {
  border: 4px solid var(--verde-vale);
  border-radius: 50%;
  content: "";
  transform: scale(0);
  transition: 120ms transform ease-in-out;
}

:not(.form-group) > label > input[type="radio"]:checked::before {
  transform: scale(1);
}

:not(.form-group) > label > input[type="radio"]:disabled {
  cursor: not-allowed;
  opacity: 0.4;
}

:not(.form-group) > label > input[type="radio"]:hover {
  background: #0075717d;
}

/* Choices select */

.choices__inner {
  background-color: var(--branco) !important;
  border: 0.0625rem solid #bebebe !important;
  border-radius: 0.25rem !important;
  padding: 0 !important;
}

.choices__inner:hover {
  box-shadow: 0px 3px 6px #007e7a50 !important;
  border: 1px solid var(--verde-vale) !important;
}

.choices__inner:active {
  border: 1px solid var(--verde-vale) !important;
}

.choices__inner:focus {
  border: 1px solid var(--verde-vale) !important;
}

.choices::after {
  border: solid var(--verde-vale);
  border-width: 0 2px 2px 0;
  content: "";
  cursor: pointer;
  padding: 4px;
  position: absolute;
  right: 1rem;
  top: calc(50% - 3.75px);
  transform: rotate(45deg);
  transition: all ease 0.3s;
  -webkit-transform: rotate(45deg);
}

.choices.is-open::after {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.choices__list--multiple .choices__item {
  background-color: var(--bg-cinza) !important;
  border: none !important;
  border-radius: 4px !important;
  color: var(--verde-vale) !important;
}

.choices[data-type*="select-multiple"] .choices__button {
  background-image: none !important;
  border: none !important;
  margin: 0 !important;
}

.is-open .choices__list--dropdown {
  border: 1px solid #bebebe;
}

.choices__list--dropdown {
  border: 1px solid #bebebe;
  border-radius: 0.25rem;
  box-shadow: 0 1px 5px -1px rgb(0 0 0 / 30%);
  word-break: break-word;
}

.choices__list--dropdown .choices__item {
  font-size: 1rem;
}

.choices__list--dropdown .choices__item--selectable.is-highlighted {
  background-color: #f0f5ff !important;
  color: var(--verde-vale);
  opacity: 0.8;
}

.choices__list--multiple .choices__item[data-deletable] {
  margin: 0.5rem !important;
}

.choices__list--multiple .choices__item[data-deletable]::after {
  color: var(--verde-vale);
  content: "\d7";
  font-size: 1rem;
  margin-left: -1rem;
  line-height: 0;
}

.choices__input.choices__input--cloned {
  background-color: var(--branco) !important;
  font-size: 1rem;
  margin: 0;
  opacity: 0.5;
  padding-top: 0.5625rem;
  padding-left: 1rem;
  padding-bottom: 0.5625rem;
}
