.hub-login{--bg:#f9fcff;--surface:#f0f6fa;--surface-2:#eaeff3;--fg:#09131a;--fg-muted:#5c656b;--fg-subtle:#80878d;--border:#dce2e7;--border-strong:#c3ccd3;--primary:#006aa0;--primary-700:#005387;--primary-fg:#fcfcfc;--ring:#006aa059;--accent:#009fc1;--accent-soft:#009fc11f;--success:#4e9a52;--warning:#dc9e12;--danger:#cc272e;--danger-soft:#cc272e1a;--danger-fg:#8f000a;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--shadow-sm:0 1px 2px #09131a0f;--shadow-md:0 4px 12px #09131a14;--font-sans:var(--font-geist-sans), ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, "SF Mono", Menlo, monospace;--ease:cubic-bezier(.2, .8, .2, 1)}@supports (color:lab(0% 0 0)){.hub-login{--bg:lab(98.8481% -.82323 -1.6523);--surface:lab(96.5327% -1.31059 -2.64);--surface-2:lab(94.2127% -1.31023 -2.63982);--fg:lab(5.27136% -1.99367 -5.70667);--fg-muted:lab(42.0196% -2.3734 -4.90611);--fg-subtle:lab(55.9374% -1.93185 -3.94157);--border:lab(89.5755% -1.63132 -3.29609);--border-strong:lab(81.4607% -2.26355 -4.60356);--primary:lab(41.5306% -10.6676 -49.2734);--primary-700:lab(32.0859% -7.0693 -49.0534);--primary-fg:lab(98.84% .0000298023 -.0000119209);--ring:lab(41.5306% -10.6676 -49.2734/.35);--accent:lab(60.1051% -34.1444 -37.2289);--accent-soft:lab(60.1051% -34.1444 -37.2289/.12);--success:lab(57.505% -36.4483 30.0272);--warning:lab(69.8406% 16.1679 70.709);--danger:lab(45.7636% 63.3818 40.1799);--danger-soft:lab(45.7636% 63.3818 40.1799/.1);--danger-fg:lab(28.2903% 63.9034 47.1652);--shadow-sm:0 1px 2px lab(5.27136% -1.99367 -5.70667/.06);--shadow-md:0 4px 12px lab(5.27136% -1.99367 -5.70667/.08)}}.hub-login[data-theme=dark],[data-theme=dark] .hub-login{--bg:#090e12;--surface:#12191f;--surface-2:#192026;--fg:#edf3f7;--fg-muted:#7e888e;--fg-subtle:#5d646a;--border:#252f37;--border-strong:#39444c;--primary:#0099e5;--primary-700:#0083c8;--primary-fg:#030303;--ring:#0099e566;--accent:#00c3e5;--accent-soft:#00c3e524;--success:#6cb26f;--warning:#e6ac3d;--danger:#ed5350;--danger-soft:#ed535024;--danger-fg:#ff9e96;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #00000059}@supports (color:lab(0% 0 0)){.hub-login[data-theme=dark],[data-theme=dark] .hub-login{--bg:lab(3.70502% -1.02625 -2.60333);--surface:lab(8.37142% -2.20205 -4.83535);--surface-2:lab(11.8532% -2.2426 -4.84933);--fg:lab(95.3727% -1.31044 -2.6399);--fg-muted:lab(55.9408% -2.39614 -4.9173);--fg-subtle:lab(42.0166% -1.91742 -3.93417);--border:lab(18.8165% -2.96721 -6.45695);--border-strong:lab(28.1002% -3.04401 -6.48739);--primary:lab(59.0608% -14.8578 -52.6803);--primary-700:lab(50.8557% -12.975 -52.4898);--primary-fg:lab(.903296% 0 0);--ring:lab(59.0608% -14.8578 -52.6803/.4);--accent:lab(71.916% -37.2917 -31.5132);--accent-soft:lab(71.916% -37.2917 -31.5132/.14);--success:lab(66.6863% -33.5986 27.2525);--warning:lab(74.5248% 14.3487 62.5064);--danger:lab(57.5028% 59.8955 35.7154);--danger-soft:lab(57.5028% 59.8955 35.7154/.14);--danger-fg:lab(75.2439% 50.0302 28.3466);--shadow-sm:0 1px 2px lab(0% 0 0/.3);--shadow-md:0 4px 12px lab(0% 0 0/.35)}}.hub-login,.hub-login *,.hub-login :before,.hub-login :after{box-sizing:border-box}.hub-login{font-family:var(--font-sans);color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1, "ss01" 1;font-size:14px;line-height:1.45}.hub-login a{color:inherit;text-decoration:none}.hub-login{background:var(--bg);grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}@media (max-width:960px){.hub-login{grid-template-columns:1fr}.hub-brand-panel{display:none}}.hub-brand-panel{color:#edf3f7;color:lab(95.3727% -1.31044 -2.6399);isolation:isolate;background:#090e12;background:lab(3.70502% -1.02625 -2.60333);border-right:1px solid #252f37;border-right:1px solid lab(18.8165% -2.96721 -6.45695);flex-direction:column;padding:32px 48px;display:flex;position:relative;overflow:hidden}.hub-brand-panel.has-grid:before{content:"";z-index:-1;background-image:linear-gradient(#edf3f70a 1px,#0000 1px),linear-gradient(90deg,#edf3f70a 1px,#0000 1px);background-image:linear-gradient(lab(95.3727% -1.31044 -2.6399/.04) 1px,#0000 1px),linear-gradient(90deg,lab(95.3727% -1.31044 -2.6399/.04) 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70% at 30%,#000 30%,#0000 80%);mask-image:radial-gradient(70% 70% at 30%,#000 30%,#0000 80%)}.hub-brand-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.hub-brand-head img{height:30px}.hub-wordmark{align-items:center;line-height:1;display:inline-flex}.hub-wordmark-img{width:auto;height:44px;display:block}.hub-wordmark.is-light .hub-wordmark-img{height:44px}.hub-wordmark.is-light .hub-divider{background:#252f37;background:lab(18.8165% -2.96721 -6.45695)}.hub-wordmark .hub-suffix{display:none}.hub-eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#00c3e5;color:lab(71.916% -37.2917 -31.5132);margin:0 0 20px;font-size:11px;font-weight:500}.hub-brand-body{flex-direction:column;flex:1;justify-content:center;max-width:460px;padding:48px 0;display:flex}.hub-brand-h{font-family:var(--font-sans);letter-spacing:-.02em;color:#edf3f7;color:lab(95.3727% -1.31044 -2.6399);margin:0 0 8px;font-size:40px;font-weight:600;line-height:1.08}.hub-brand-h .hub-h-line{display:block}.hub-brand-h .hub-h-line+.hub-h-line{color:#7e888e;color:lab(55.9408% -2.39614 -4.9173)}.hub-brand-sub{color:#7e888e;color:lab(55.9408% -2.39614 -4.9173);max-width:420px;margin:24px 0 0;font-size:14px;line-height:1.55}.hub-brand-foot-main{flex-direction:column;gap:4px;display:flex}.hub-foot-addr{color:#b1b9be;color:lab(74.498% -1.94409 -3.94803)}.hub-foot-meta{color:#7e888e;color:lab(55.9408% -2.39614 -4.9173);align-items:center;gap:8px;display:inline-flex}.hub-foot-meta a{color:#edf3f7;color:lab(95.3727% -1.31044 -2.6399)}.hub-foot-meta a:hover{color:#00c3e5;color:lab(71.916% -37.2917 -31.5132)}.hub-foot-sep{color:#50565b;color:lab(36.2162% -1.90912 -3.93)}.hub-foot-status{color:#b1b9be;color:lab(74.498% -1.94409 -3.94803);font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;border:1px solid #252f37;border:1px solid lab(18.8165% -2.96721 -6.45695);border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:11px;display:inline-flex}.hub-foot-status:hover{color:#edf3f7;color:lab(95.3727% -1.31044 -2.6399);border-color:#3e4952;border-color:lab(30.4209% -3.0582 -6.49335)}.hub-foot-dot{background:#6cb26f;background:lab(66.6863% -33.5986 27.2525);border-radius:99px;width:7px;height:7px}.hub-hub-status{border-radius:var(--radius-lg);background:#12191f;background:lab(8.37142% -2.20205 -4.83535);border:1px solid #252f37;border:1px solid lab(18.8165% -2.96721 -6.45695);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:28px;padding:14px 16px;display:grid}.hub-hub-status-dot{background:#6cb26f;background:lab(66.6863% -33.5986 27.2525);border-radius:99px;width:10px;height:10px;box-shadow:0 0 0 4px #6cb26f24;box-shadow:0 0 0 4px lab(66.6863% -33.5986 27.2525/.14)}.hub-hub-status-text{color:#7e888e;color:lab(55.9408% -2.39614 -4.9173);flex-direction:column;gap:2px;font-size:13px;line-height:1.4;display:flex}.hub-hub-status-text strong{color:#edf3f7;color:lab(95.3727% -1.31044 -2.6399);font-weight:500}.hub-hub-status-link{font-family:var(--font-mono);letter-spacing:.04em;color:#00c3e5;color:lab(71.916% -37.2917 -31.5132);white-space:nowrap;font-size:11px}.hub-hub-status-link:hover{color:#5fe2ff;color:lab(83.3743% -30.8949 -25.5052)}.hub-brand-foot{font-family:var(--font-mono);letter-spacing:.04em;color:#7e888e;color:lab(55.9408% -2.39614 -4.9173);border-top:1px solid #252f37;border-top:1px solid lab(18.8165% -2.96721 -6.45695);justify-content:space-between;align-items:flex-end;gap:24px;margin-top:auto;padding-top:24px;font-size:11px;display:flex}.hub-brand-foot a:hover{color:#edf3f7;color:lab(95.3727% -1.31044 -2.6399)}.hub-form-panel{background:var(--bg);flex-direction:column;padding:28px 48px 24px;display:flex;position:relative}.hub-form-top{color:var(--fg-muted);justify-content:flex-end;align-items:center;gap:12px;font-size:13px;display:flex}.hub-form-top a{color:var(--primary);font-weight:500}.hub-form-top a:hover{text-underline-offset:3px;text-decoration:underline}.hub-form-body{flex:1;justify-content:center;align-items:center;display:flex}.hub-form{width:100%;max-width:380px}.hub-form-mobile-brand{margin-bottom:24px;display:none}@media (max-width:960px){.hub-form-mobile-brand{align-items:center;gap:10px;display:flex}}.hub-form-h{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--fg);margin:0 0 6px;font-size:22px;font-weight:600;line-height:1.2}.hub-form-sub{color:var(--fg-muted);margin:0 0 24px;font-size:13px;line-height:1.5}.hub-sso{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.hub-sso-btn{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;height:40px;font:500 13.5px var(--font-sans);color:var(--fg);cursor:pointer;transition:background .15s var(--ease), border-color .15s var(--ease);justify-content:center;align-items:center;gap:10px;padding:0 14px;display:flex}.hub-sso-btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.hub-sso-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.hub-sso-btn svg{flex-shrink:0}.hub-divider{color:var(--fg-subtle);font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:12px;margin:4px 0 18px;display:flex}.hub-divider:before,.hub-divider:after{content:"";background:var(--border);flex:1;height:1px}.hub-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.hub-field-label{font:500 12px var(--font-sans);letter-spacing:.02em;color:var(--fg-muted);text-transform:uppercase;justify-content:space-between;align-items:center;display:flex}.hub-field-label a{color:var(--primary);text-transform:none;letter-spacing:0;font-size:12px;font-weight:500}.hub-field-label a:hover{text-underline-offset:3px;text-decoration:underline}.hub-input{width:100%;height:40px;font:14px var(--font-sans);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--fg);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);outline:none;padding:0 14px}.hub-input::placeholder{color:var(--fg-subtle)}.hub-input:hover{border-color:var(--border-strong)}.hub-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.hub-input.has-icon{padding-right:42px}.hub-input.is-mono{font-family:var(--font-mono);letter-spacing:.02em}.hub-input-wrap{position:relative}.hub-input-icon-btn{color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:4px;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.hub-input-icon-btn:hover{color:var(--fg);background:var(--surface)}.hub-field.is-error .hub-input{border-color:var(--danger)}.hub-field.is-error .hub-input:focus{box-shadow:0 0 0 3px #cc272e40;box-shadow:0 0 0 3px lab(45.7636% 63.3818 40.1799/.25)}.hub-error-banner{background:var(--danger-soft);border-radius:var(--radius-md);color:var(--danger-fg);border:1px solid #cc272e4d;border:1px solid lab(45.7636% 63.3818 40.1799/.3);align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.hub-error-banner svg{flex-shrink:0;margin-top:1px}.hub-error-banner strong{font-weight:600}.hub-row{justify-content:space-between;align-items:center;margin:4px 0 18px;display:flex}.hub-checkbox{color:var(--fg-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.hub-checkbox input{display:none}.hub-check{border:1.5px solid var(--border-strong);background:var(--bg);width:16px;height:16px;transition:background .15s var(--ease), border-color .15s var(--ease);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.hub-checkbox input:checked+.hub-check{background:var(--primary);border-color:var(--primary)}.hub-checkbox input:checked+.hub-check svg{opacity:1}.hub-check svg{opacity:0;color:var(--primary-fg)}.hub-submit{width:100%;height:40px;font:500 14px var(--font-sans);background:var(--primary);color:var(--primary-fg);border-radius:var(--radius-md);cursor:pointer;transition:background .15s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;display:inline-flex}.hub-submit:hover{background:var(--primary-700)}.hub-submit:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.hub-submit:disabled{opacity:.6;cursor:not-allowed}.hub-otp{grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:6px;display:grid}.hub-otp-cell{text-align:center;width:100%;height:48px;font:500 18px var(--font-mono);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--fg);letter-spacing:0;outline:none}.hub-otp-cell:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.hub-otp-help{color:var(--fg-muted);justify-content:space-between;align-items:center;margin:8px 0 18px;font-size:12px;display:flex}.hub-otp-help a{color:var(--primary);font-weight:500}.hub-otp-help a:hover{text-underline-offset:3px;text-decoration:underline}.hub-otp-help .hub-cooldown{font-family:var(--font-mono);color:var(--fg-subtle)}.hub-confirm{text-align:left;padding:0}.hub-confirm-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.hub-confirm h2{margin:0 0 6px}.hub-confirm-meta{font-family:var(--font-mono);color:var(--fg-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin:16px 0 8px;padding:10px 12px;font-size:12px;display:flex}.hub-confirm-meta strong{color:var(--fg);font-weight:500}.hub-form-foot{border-top:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.04em;color:var(--fg-subtle);justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;font-size:11px;display:flex}.hub-form-foot-links{gap:16px;display:flex}.hub-form-foot-links a:hover{color:var(--fg)}.hub-lang{border:1px solid var(--border);font:500 11px var(--font-sans);color:var(--fg-muted);cursor:pointer;letter-spacing:0;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.hub-lang:hover{background:var(--surface);color:var(--fg)}.hub-login.is-centered{background:var(--bg);grid-template-columns:1fr}.hub-login.is-centered .hub-brand-panel{display:none}.hub-login.is-centered .hub-form-panel{align-items:center;padding:56px 24px}.hub-login.is-centered .hub-form-mobile-brand{justify-content:center;margin-bottom:24px;display:flex}.hub-login.is-centered .hub-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);max-width:420px;padding:32px 32px 24px}.hub-login.is-centered .hub-form-foot{margin-top:18px;padding-top:14px}.hub-login.is-centered .hub-form-top{position:absolute;top:24px;right:32px}.hub-login.is-mirror{grid-template-columns:1fr 1.05fr}.hub-login.is-mirror .hub-brand-panel{border-left:1px solid #252f37;border-left:1px solid lab(18.8165% -2.96721 -6.45695);border-right:0;order:2}.hub-login.is-mirror .hub-form-panel{order:1}.hub-theme-toggle{background:var(--surface);border:1px solid var(--border);z-index:5;border-radius:999px;align-items:center;gap:0;min-width:0;margin:0;padding:2px;display:inline-flex;position:absolute;top:24px;right:32px}.hub-theme-toggle .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hub-theme-toggle button{appearance:none;color:var(--fg-muted);cursor:pointer;width:28px;height:28px;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.hub-theme-toggle button:hover{color:var(--fg)}.hub-theme-toggle button.is-active{background:var(--bg);color:var(--fg);box-shadow:var(--shadow-sm)}.hub-login:not(.is-centered) .hub-theme-toggle{top:24px;right:24px}