/* Widget do captcha (prova de trabalho) — estados controlados por captcha.js via data-estado */

.captcha-isca {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.captcha-widget {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0.6rem 0.9rem;
  border: 1.5px solid #dde2e8;
  border-radius: 10px;
  background: #fafbfc;
  text-align: left;
  transition: border-color 0.2s, background 0.2s;
}
.captcha-widget__icone {
  position: relative;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 1.1rem;
  color: #9aa5b1;
}
.captcha-widget__titulo {
  font-size: 0.8rem;
  font-weight: 600;
  color: #1e293b;
  line-height: 1.2;
}
.captcha-widget__status {
  font-size: 0.74rem;
  color: #6b7280;
  line-height: 1.3;
}
/* Prefixado com .captcha-widget de propósito: o .fa-solid do Font Awesome tem a mesma
   especificidade, carrega depois deste arquivo e reexibiria o check antes do desafio. */
.captcha-widget .captcha-widget__ok,
.captcha-widget .captcha-widget__spinner { display: none; }
.captcha-widget__spinner {
  width: 18px;
  height: 18px;
  border: 2.5px solid #e8edf2;
  border-top-color: #2f7fdd;
  border-radius: 50%;
  animation: captcha-giro 0.8s linear infinite;
}
@keyframes captcha-giro {
  to { transform: rotate(360deg); }
}

.captcha-widget[data-estado="resolvendo"] .captcha-widget__escudo { display: none; }
.captcha-widget[data-estado="resolvendo"] .captcha-widget__spinner { display: block; }
.captcha-widget[data-estado="ok"] { border-color: #b7e4c7; background: #f1fbf4; }
.captcha-widget[data-estado="ok"] .captcha-widget__escudo { display: none; }
.captcha-widget[data-estado="ok"] .captcha-widget__ok { display: inline-block; color: #00a35c; }
.captcha-widget[data-estado="erro"] { border-color: #f5c2c7; background: #fdf2f3; }
.captcha-widget[data-estado="erro"] .captcha-widget__icone { color: #e63757; }

html.dark .captcha-widget { background: #1e2a3a; border-color: #2d3f55; }
html.dark .captcha-widget__titulo { color: #d8e2ef; }
html.dark .captcha-widget__status { color: rgba(216, 226, 239, 0.6); }
html.dark .captcha-widget[data-estado="ok"] { background: #13301f; border-color: #1f5c3a; }
html.dark .captcha-widget[data-estado="erro"] { background: #3a1820; border-color: #6b2737; }
