.allin-google-auth {
  margin: 1.25rem 0 0;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(245, 136, 22, 0.22);
  border-radius: 18px;
  background: linear-gradient(180deg, #fffdf9 0%, #fff7ee 100%);
  box-shadow: 0 16px 28px rgba(61, 33, 16, 0.08);
  overflow: hidden;
}

.allin-google-auth__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.95rem;
  text-align: center;
}

.allin-google-auth__divider span {
  display: inline-block;
  padding: 0 0.9rem;
  font-family: 'Sora', sans-serif;
  font-size: 0.9rem;
  font-weight: 700;
  color: #4b2e1c;
}

.allin-google-auth__button {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  min-width: 0;
  overflow: hidden;
}

.allin-google-auth__button > div {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 100% !important;
}

.allin-google-auth__button > div,
.allin-google-auth__button iframe {
  max-width: 100% !important;
}

.allin-google-auth__button iframe {
  display: block;
  margin: 0 auto !important;
}

.allin-google-auth__help {
  margin: 0.85rem 0 0;
  text-align: center;
  color: #7a5a45;
  font-size: 0.9rem;
}

.allin-google-auth__error {
  margin-top: 0.85rem;
  padding: 0.8rem 0.9rem;
  border-radius: 14px;
  background: #fff2ef;
  color: #a03519;
  font-weight: 600;
  text-align: center;
}

#authentication .login-form,
#registration .login-form {
  padding: 1.25rem;
  border: 1px solid rgba(245, 136, 22, 0.16);
  border-radius: 22px;
  background: linear-gradient(180deg, #fffdf9 0%, #fff7ee 100%);
  box-shadow: 0 20px 36px rgba(61, 33, 16, 0.08);
}

#authentication .form-control,
#registration .form-control {
  min-height: 46px;
  border-radius: 14px;
}

#authentication .form-footer .btn,
#registration .form-footer .btn {
  min-height: 48px;
  border-radius: 16px;
}

.allin-password-rule-note {
  margin: 0.7rem 0 0;
  color: #6f5544;
  font-size: 0.92rem;
  line-height: 1.45;
}

.allin-auth-inline-error {
  margin-bottom: 1rem;
  border-radius: 16px;
}

.allin-auth-inline-error[hidden] {
  display: none !important;
}

.allin-legacy-captcha-render input[name="captcha_answer"] {
  display: none !important;
}

.allin-legacy-captcha-render input[type="hidden"] {
  display: none !important;
}

.allin-legacy-captcha-ready .form-control-label,
.allin-legacy-captcha-ready .form-control-comment {
  display: none !important;
}

.allin-legacy-captcha-ready .js-input-column,
.allin-legacy-captcha-render .js-input-column {
  width: 100%;
  max-width: 100%;
}

.allin-security-shell {
  margin-top: 0.85rem;
  padding: 1rem;
  border: 1px solid rgba(245, 136, 22, 0.16);
  border-radius: 18px;
  background: linear-gradient(180deg, #fffdf9 0%, #fff7ee 100%);
}

.allin-security-head {
  display: grid;
  gap: 0.18rem;
  margin-bottom: 0.85rem;
  color: #3e2a1f;
}

.allin-security-head strong {
  font-family: 'Sora', sans-serif;
  font-size: 0.98rem;
  font-weight: 700;
}

.allin-security-head span,
.allin-security-help {
  font-size: 0.92rem;
  line-height: 1.45;
  color: #7a5a45;
}

.allin-recaptcha-slot {
  display: flex;
  justify-content: center;
  min-height: 78px;
  width: 100%;
}

.allin-recaptcha-slot > div,
.allin-recaptcha-slot iframe {
  max-width: 100%;
  transform-origin: center top;
}

.allin-security-help {
  margin: 0.7rem 0 0;
}

.allin-security-error {
  margin: 0.8rem 0 0;
}

.allin-security-status {
  background: #fff7eb;
  border-color: rgba(245, 136, 22, 0.22);
  color: #7a5a45;
}

@media (max-width: 767px) {
  .allin-google-auth {
    padding: 0.95rem 0.9rem;
  }

  .allin-google-auth__divider span {
    padding: 0 0.3rem;
    font-size: 0.84rem;
  }

  .allin-security-shell {
    padding: 0.9rem;
  }

  .allin-google-auth__button {
    min-height: 40px;
  }

  .allin-recaptcha-slot {
    justify-content: center;
    overflow: visible;
  }
}
