.sb-auth-widget { width: 100%; }

.sb-auth-card {
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 14px;
  padding: 16px;
  background: #fff;
  box-sizing: border-box;
}

.sb-auth-head { margin-bottom: 12px; }
.sb-auth-title { font-size: 18px; font-weight: 700; }
.sb-auth-sub { font-size: 13px; margin-top: 6px; }
.sb-auth-sub a { text-decoration: underline; }

.sb-auth-label { display:block; font-size: 13px; margin: 10px 0 6px; }

.sb-auth-input {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.15);
  box-sizing: border-box;
}

.sb-auth-btn {
  width: 100%;
  margin-top: 14px;
  padding: 11px 12px;
  border-radius: 10px;
  border: 0;
  cursor: pointer;
}

.sb-auth-btn:disabled { opacity: .7; cursor: not-allowed; }

.sb-auth-alert {
  padding: 10px 12px;
  border-radius: 10px;
  margin: 10px 0;
  font-size: 13px;
}

.sb-auth-alert--error { background: rgba(220, 38, 38, .08); }
.sb-auth-alert--ok    { background: rgba(16, 185, 129, .10); }

.sb-auth-foot { margin-top: 10px; text-align: center; }
.sb-auth-link { font-size: 13px; text-decoration: underline; }

.sb-auth-actions {
  margin-top: 12px;
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.sb-auth-help {
  font-size: 12px;
  opacity: 0.75;
  margin-top: 6px;
}

/*
 * Anti-bot honeypot: must exist in DOM but never be visible to the user.
 * Uses both class-based and attribute-based selectors for maximum coverage
 * across themes and Elementor versions.
 */
.sb-auth-form .sb-auth-hp,
.sb-auth-widget .sb-auth-form input[name="hp"] {
  position: absolute !important;
  left: -99999px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  background: transparent !important;
}

