/* SSKNEXUS Auth v5.2.0 */
.ssk-auth-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 32px 16px;
  background:
    radial-gradient(ellipse 70% 50% at 20% 0%, rgba(37, 99, 235, 0.25), transparent 55%),
    radial-gradient(ellipse 60% 40% at 90% 100%, rgba(14, 165, 233, 0.12), transparent 50%),
    linear-gradient(160deg, #0a1128 0%, #0f172a 45%, #1e3a8a 100%);
}
.ssk-auth-shell { width: min(440px, 100%); }
.ssk-auth-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  padding: 36px 32px 32px;
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.35);
}
.ssk-auth-card h1 { margin: 0 0 8px; font-size: 26px; font-weight: 800; letter-spacing: -0.03em; color: #0a1128; }
.ssk-auth-lead { margin: 0 0 24px; color: #64748b; font-size: 14px; line-height: 1.65; }
.ssk-auth-form { display: grid; gap: 16px; }
.ssk-auth-actions { margin-top: 4px; }
.ssk-auth-actions .ssk-btn { width: 100%; }
.ssk-auth-meta { margin-top: 20px; text-align: center; font-size: 13px; color: #64748b; }
.ssk-auth-meta a { color: var(--ssk-button, #2563eb); font-weight: 700; text-decoration: none; }
.ssk-auth-row { display: flex; justify-content: space-between; align-items: center; font-size: 13px; }
.ssk-auth-verify-icon { font-size: 48px; text-align: center; margin: 8px 0 16px; }
.ssk-auth-verify-success-icon, .ssk-auth-verify-fail-icon {
  width: 64px; height: 64px; margin: 0 auto 16px; border-radius: 50%;
  display: grid; place-items: center; font-size: 28px; font-weight: 800;
}
.ssk-auth-verify-success-icon { background: #d1fae5; color: #047857; }
.ssk-auth-verify-fail-icon { background: #fee2e2; color: #b91c1c; }
.ssk-auth-success-card { text-align: center; }
.ssk-badge.is-success { background: #d1fae5; color: #047857; padding: 4px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; }
.ssk-badge.is-warn { background: #fef3c7; color: #b45309; padding: 4px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; }
