.auth-captcha {
  display: grid;
  gap: 0.375rem;
  justify-items: center;
  margin: 0 0 1rem;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.auth-captcha[hidden] {
  display: none !important;
}

.auth-captcha__widget {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 65px;
  min-width: 0;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.auth-captcha__status {
  width: 100%;
  color: var(--pedefi-text-muted, #667085);
  font-size: 0.78rem;
  line-height: 1.4;
  margin: 0 !important;
  text-align: center;
}

.auth-captcha__status[hidden] {
  display: none !important;
}

.auth-captcha__status[data-tipo="erro"],
.auth-captcha__status[data-tipo="aviso"] {
  color: var(--pedefi-danger, #b42318);
}

.auth-captcha__status[data-tipo="sucesso"] {
  color: var(--pedefi-success, #067647);
}

.auth-captcha__retry {
  appearance: none;
  background: transparent;
  border: 0;
  color: var(--pedefi-primary, #e63946);
  cursor: pointer;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  justify-self: center;
  padding: 0.25rem 0.5rem;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.auth-captcha__retry:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--pedefi-primary, #e63946) 35%, transparent);
  outline-offset: 2px;
}

@media (max-width: 360px) {
  .auth-captcha {
    width: calc(100% + 0.5rem);
    margin-inline: -0.25rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .auth-captcha *,
  .auth-captcha *::before,
  .auth-captcha *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}
