.ws-center{display:flex;justify-content:center;margin-top:24px}.ws-saas-auth{position:relative;display:flex;align-items:center;justify-content:center;padding:32px 16px;overflow:hidden;background-color:var(--secondary);height:100vh}.ws-saas-auth__bg{position:absolute;inset:0;pointer-events:none}.ws-saas-auth__card{position:relative;z-index:1;width:100%;max-width:420px;border-radius:16px;background:#ffffff;box-shadow:0 10px 30px rgba(15, 23, 42, 0.08);padding:28px}.ws-saas-auth__title{margin:0;font-size:30px;line-height:1.15;font-weight:700;color:#0f172a;margin-bottom:24px}.ws-saas-auth__subtitle{margin:10px 0 22px;color:#475569;font-size:14px;line-height:1.55}.ws-saas-auth__notice{border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:12px;line-height:1.5}.ws-saas-auth__notice--success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.ws-saas-auth__notice--error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.ws-saas-auth__notice--debug{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.ws-saas-auth__notice--debug ul{margin:8px 0 0 0;padding-left:18px;font-size:12px}.ws-saas-auth__notice a{color:inherit;font-weight:700;text-decoration:underline}.ws-saas-auth__form{display:grid;gap:12px}.ws-saas-auth__label{font-size:13px;font-weight:600;color:#334155}.ws-saas-auth__input{width:100%;height:46px;border-radius:10px;border:1px solid #cbd5e1;padding:0 14px;font-size:14px;color:#0f172a;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.ws-saas-auth__input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37, 99, 235, 0.12)}.ws-saas-auth__otp-group[hidden]{display:none}.ws-saas-auth__input--otp{text-align:center;letter-spacing:0.3em;font-size:18px;font-weight:600}.ws-saas-auth__inline-note{font-size:13px;line-height:1.5;color:#475569}.ws-saas-auth__inline-note.is-error{color:#b91c1c}.ws-saas-auth__inline-note.is-success{color:#166534}.ws-saas-auth__btn{display:inline-flex;align-items:center;justify-content:center;height:46px;border-radius:10px;border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease}.ws-saas-auth__btn:hover{transform:translateY(-1px)}.ws-saas-auth__btn:active{transform:translateY(0)}.ws-saas-auth__btn--primary{margin-top:4px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#2563eb;color:#ffffff;box-shadow:0 8px 18px rgba(37, 99, 235, 0.28)}.ws-saas-auth__btn--primary.is-loading{opacity:0.92;pointer-events:none}.ws-saas-auth__spinner{display:none;width:16px;height:16px;border-radius:50%;border:2px solid rgba(255, 255, 255, 0.4);border-top-color:#ffffff;animation:wsSaasSpin .7s linear infinite}.ws-saas-auth__btn--primary.is-loading .ws-saas-auth__spinner{display:inline-block}.ws-saas-auth__btn--google{background:#ffffff;color:#0f172a;border-color:#d1d5db}.ws-saas-auth__btn--facebook{background:#1877f2;color:#ffffff;width:100%;text-decoration:none;gap:10px}.ws-saas-auth__btn--facebook:hover{color:#ffffff}.ws-saas-auth__social-icon{width:20px;height:20px;border-radius:999px;background:rgba(255, 255, 255, 0.16);display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;line-height:1}.ws-saas-auth__divider{margin:20px 0 14px;display:flex;align-items:center;gap:10px;color:#64748b;font-size:13px}.ws-saas-auth__divider::before,.ws-saas-auth__divider::after{content:"";flex:1;height:1px;background:#e2e8f0}.ws-saas-auth__socials{display:grid;gap:10px;max-width:360px;width:100%}.ws-saas-auth__google{display:block}.ws-saas-auth__google-error{display:none;font-size:12px;color:#b91c1c}.ws-saas-auth__meta-link{margin-top:16px;font-size:13px;color:#475569;text-align:center}.ws-saas-auth__meta-link a{font-weight:700;color:#2563eb;text-decoration:underline}@keyframes wsSaasSpin{to{transform:rotate(360deg)}}@media (max-width: 786px){.ws-saas-auth{padding:20px 12px;align-items:flex-start}.ws-saas-auth__card{padding:22px 16px}.ws-saas-auth__title{font-size:26px}.ws-saas-auth__card{box-shadow:unset}.ws-saas-auth{background-color:#fff}}