@import url("https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap");.sso-page{--sso-background:#ffffff;--sso-foreground:#0f172a;--sso-card:#ffffff;--sso-card-foreground:#0f172a;--sso-primary:#2563eb;--sso-primary-foreground:#f8fafc;--sso-muted:#f1f5f9;--sso-muted-foreground:#64748b;--sso-accent:#f1f5f9;--sso-border:#e2e8f0;--sso-input:#e2e8f0;--sso-ring:rgb(37 99 235/0.25);--sso-destructive:#dc2626;--sso-radius:0.5rem;--sso-shadow-sm:0 1px 2px 0 rgb(15 23 42/0.05),0 1px 3px 0 rgb(15 23 42/0.05);--sso-surface-chrome:rgb(255 255 255/0.72);--sso-surface-card:rgb(255 255 255/0.92);--sso-surface-input:rgb(255 255 255/0.9);--sso-surface-status:rgb(255 255 255/0.64);--sso-primary-surface:rgb(37 99 235/0.06);--sso-primary-border:rgb(37 99 235/0.35);--sso-destructive-surface:rgb(220 38 38/0.06);--sso-destructive-border:rgb(220 38 38/0.4);--sso-shell-gutter:24px;color-scheme:light;font-family:Geist,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--sso-background);color:var(--sso-foreground);min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.dark .sso-page{--sso-background:#0c0c0e;--sso-foreground:#e5edf6;--sso-card:#14151a;--sso-card-foreground:#e5edf6;--sso-primary:#38bdf8;--sso-primary-foreground:#0c0c0e;--sso-muted:#1c1d22;--sso-muted-foreground:#a3b0c2;--sso-accent:#23252c;--sso-border:#27282f;--sso-input:#27282f;--sso-ring:rgb(56 189 248/0.4);--sso-destructive:#f87171;--sso-shadow-sm:0 14px 34px 0 rgb(0 0 0/0.42);--sso-surface-chrome:rgb(12 12 14/0.72);--sso-surface-card:rgb(20 21 26/0.92);--sso-surface-input:rgb(12 12 14/0.9);--sso-surface-status:rgb(12 12 14/0.64);--sso-primary-surface:rgb(56 189 248/0.06);--sso-primary-border:rgb(56 189 248/0.35);--sso-destructive-surface:rgb(248 113 113/0.06);--sso-destructive-border:rgb(248 113 113/0.4);color-scheme:dark}.sso-page *{box-sizing:border-box}.sso-page .sso-header{display:flex;align-items:center;justify-content:space-between;padding:20px var(--sso-shell-gutter);padding-left:calc(var(--sso-shell-gutter) + env(safe-area-inset-left));padding-right:calc(var(--sso-shell-gutter) + env(safe-area-inset-right));border-bottom:1px solid var(--sso-border);background:var(--sso-surface-chrome);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.sso-page .sso-header-actions{display:flex;align-items:center;gap:12px}.sso-page .sso-theme-toggle{border:1px solid transparent;border-radius:var(--sso-radius);background:transparent;color:var(--sso-muted-foreground);box-shadow:none}.sso-page .sso-theme-toggle:hover{background:var(--sso-accent);color:var(--sso-foreground)}.sso-page .sso-theme-toggle:focus-visible{box-shadow:0 0 0 3px var(--sso-ring)}.sso-page .sso-theme-toggle-icon{width:16px;height:16px}.sso-page .sso-brand{display:flex;align-items:center;gap:10px;color:var(--sso-foreground);text-decoration:none}.sso-page .sso-brand-mark{width:30px;height:30px;flex-shrink:0;display:block}.sso-page .sso-brand-text{font-weight:600;font-size:15px;letter-spacing:-.01em}.sso-page .sso-main{flex:1;display:grid;place-items:center;padding:48px var(--sso-shell-gutter);padding-left:calc(var(--sso-shell-gutter) + env(safe-area-inset-left));padding-right:calc(var(--sso-shell-gutter) + env(safe-area-inset-right))}.sso-page .sso-footer{padding:16px var(--sso-shell-gutter);padding-left:calc(var(--sso-shell-gutter) + env(safe-area-inset-left));padding-right:calc(var(--sso-shell-gutter) + env(safe-area-inset-right));border-top:1px solid var(--sso-border);display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--sso-muted-foreground);gap:16px;flex-wrap:wrap;background:var(--sso-surface-chrome);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.sso-page .sso-footer a{color:inherit;font-weight:400;text-decoration:none}.sso-page .sso-footer a:hover{color:var(--sso-foreground)}.sso-page .sso-footer-links{display:flex;gap:16px}.sso-page .auth-card{width:100%;max-width:400px;background:var(--sso-surface-card);color:var(--sso-card-foreground);border:1px solid var(--sso-border);border-radius:var(--sso-radius);padding:28px;box-shadow:var(--sso-shadow-sm);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:sso-card-in .2s cubic-bezier(.4,0,.2,1)}@keyframes sso-card-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sso-page .auth-card{animation:none}}.sso-page .auth-card .title{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0}.sso-page .auth-card .subtitle{font-size:14px;color:var(--sso-muted-foreground);margin-top:6px;line-height:1.5}.sso-page .auth-card .card-body{margin-top:20px;display:flex;flex-direction:column;gap:16px}.sso-page .auth-card .card-foot{margin-top:18px;font-size:13px;color:var(--sso-muted-foreground);text-align:center}.sso-page .auth-card-info .auth-card-media{display:flex;justify-content:center;margin-bottom:18px}.sso-page .auth-card-info .subtitle{max-width:34ch}.sso-page .auth-card-info .card-body{margin-top:18px}.sso-page .sso-verification-art{position:relative;display:grid;height:62px;width:62px;place-items:center;flex-shrink:0}.sso-page .sso-verification-art-icon{position:relative;z-index:1;display:grid;height:52px;width:52px;place-items:center;border:1px solid var(--sso-border);border-radius:18px;background:var(--sso-surface-input);box-shadow:0 10px 25px rgb(0 0 0/.12)}.sso-page .sso-verification-art-icon.pending,.sso-page .sso-verification-art-icon.success{color:var(--sso-primary)}.sso-page .sso-verification-art-icon.error{color:var(--sso-destructive)}.sso-page .sso-verification-art-glow{position:absolute;inset:10px;border-radius:999px;opacity:.7;filter:blur(16px)}.sso-page .sso-verification-art-glow.pending,.sso-page .sso-verification-art-glow.success{background:color-mix(in oklab,var(--sso-primary) 22%,transparent)}.sso-page .sso-verification-art-glow.error{background:color-mix(in oklab,var(--sso-destructive) 20%,transparent)}.sso-page .sso-status-rich{background:var(--sso-surface-status);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.sso-page .sso-verification-note{border-top:1px solid var(--sso-border);padding-top:2px}.sso-page .sso-verification-note-label{display:inline-block;margin-bottom:4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sso-muted-foreground)}.sso-page .sso-verification-note .field-helper{margin:0;line-height:1.55}.sso-page .sso-verification-actions{display:flex;flex-direction:column;gap:10px}.sso-page .field{display:flex;flex-direction:column;gap:6px}.sso-page .field-head{display:flex;justify-content:space-between;align-items:baseline}.sso-page .field-label{font-size:13px;font-weight:500}.sso-page .field-label-muted{color:var(--sso-muted-foreground);font-weight:400}.sso-page .field-link{font-size:13px;cursor:pointer;color:var(--sso-primary);text-decoration:none;font-weight:500}.sso-page .field-link:hover{text-decoration:underline;text-underline-offset:3px}.sso-page .field-helper{font-size:12px;color:var(--sso-muted-foreground)}.sso-page .field-helper.error{color:var(--sso-destructive)}.sso-page .sso-input{width:100%;height:40px;padding:0 14px;font-size:14px;font-family:inherit;color:var(--sso-foreground);background:var(--sso-surface-input);border:1px solid var(--sso-input);border-radius:var(--sso-radius);outline:none;transition:border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}.sso-page .sso-input::placeholder{color:var(--sso-muted-foreground)}.sso-page .sso-input:focus{border-color:var(--sso-primary);box-shadow:0 0 0 3px var(--sso-ring)}.sso-page .sso-input.error{border-color:var(--sso-destructive)}.sso-page .sso-input.error:focus{box-shadow:0 0 0 3px color-mix(in oklab,var(--sso-destructive) 25%,transparent)}.sso-page .password-wrap{position:relative}.sso-page .password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:var(--sso-muted-foreground);border-radius:6px;display:grid;place-items:center;cursor:pointer}.sso-page .password-toggle:hover{background:var(--sso-accent);color:var(--sso-foreground)}.sso-page .password-toggle svg{width:16px;height:16px}.sso-page .checkbox-row{display:flex;gap:10px;align-items:center;font-size:13px}.sso-page .checkbox-row input[type=checkbox]{appearance:none;width:16px;height:16px;border:1px solid var(--sso-border);border-radius:4px;background:var(--sso-background);cursor:pointer;display:grid;place-items:center;flex-shrink:0;margin:0}.sso-page .checkbox-row input[type=checkbox]:checked{background:var(--sso-primary);border-color:var(--sso-primary)}.sso-page .checkbox-row input[type=checkbox]:checked:after{content:"";width:10px;height:10px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") no-repeat 50% /contain}.sso-page .checkbox-row input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px var(--sso-ring)}.sso-page .sso-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;font-size:14px;font-weight:500;font-family:inherit;border-radius:var(--sso-radius);border:1px solid transparent;cursor:pointer;user-select:none;white-space:nowrap;transition:background .15s cubic-bezier(.4,0,.2,1),color .15s,border-color .15s,box-shadow .15s,transform 80ms}.sso-page .sso-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--sso-ring)}.sso-page .sso-btn:disabled{opacity:.5;cursor:not-allowed}.sso-page .sso-btn-primary{background:var(--sso-primary);color:var(--sso-primary-foreground)}.sso-page .sso-btn-primary:hover:not(:disabled){background:color-mix(in oklab,var(--sso-primary) 88%,var(--sso-background))}.sso-page .sso-btn-primary:active:not(:disabled){transform:scale(.98)}.sso-page .sso-btn-full{width:100%}.sso-page .sso-btn .spin{animation:sso-spin .7s linear infinite}@keyframes sso-spin{to{transform:rotate(1turn)}}.sso-page .sso-link{color:var(--sso-primary);font-weight:500;text-decoration:none;cursor:pointer;background:transparent;border:0;padding:0;font:inherit}.sso-page .sso-link:hover{text-decoration:underline;text-underline-offset:3px}.sso-page .sso-alert{display:flex;gap:10px;padding:10px 12px;border:1px solid var(--sso-destructive-border);background:var(--sso-destructive-surface);border-radius:var(--sso-radius);font-size:13px;line-height:1.45;color:var(--sso-destructive)}.sso-page .sso-status{display:flex;gap:12px;padding:14px 16px;border:1px solid var(--sso-border);background:var(--sso-muted);border-radius:var(--sso-radius);font-size:13px;line-height:1.5;color:var(--sso-foreground)}.sso-page .sso-status .sso-status-icon{flex-shrink:0;color:var(--sso-primary);margin-top:2px}.sso-page .sso-status-title{font-weight:600;color:var(--sso-foreground)}.sso-page .sso-status-body{color:var(--sso-muted-foreground);margin-top:4px}.sso-page .sso-status.success{border-color:var(--sso-primary-border);background:var(--sso-primary-surface)}.sso-page .sso-status.error{border-color:var(--sso-destructive-border);background:var(--sso-destructive-surface)}.sso-page .sso-status.error .sso-status-icon,.sso-page .sso-status.error .sso-status-title{color:var(--sso-destructive)}.sso-page .sso-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:8px 0}.sso-page .sso-center .sso-spinner{color:var(--sso-primary)}.sso-page .sso-center .sso-spinner .spin{animation:sso-spin .7s linear infinite}.sso-page .sso-btn-secondary{background:var(--sso-background);color:var(--sso-foreground);border-color:var(--sso-border)}.sso-page .sso-btn-secondary:hover:not(:disabled){background:var(--sso-muted)}@media (max-width:480px){.sso-page{--sso-shell-gutter:20px}.sso-page .sso-header{padding-top:16px;padding-bottom:16px}.sso-page .sso-main{padding-top:24px;padding-bottom:24px}.sso-page .auth-card{padding:22px;border-radius:var(--sso-radius)}.sso-page .auth-card .title{font-size:22px}.sso-page .sso-brand-mark{width:28px;height:28px}.sso-page .sso-footer{padding-top:14px;padding-bottom:14px;font-size:11px;justify-content:center;flex-direction:column;gap:8px;text-align:center}}