:root{--brand-900: #2A2A63;--brand-800: #33347D;--brand-700: #3E3F8F;--brand-600: #4A4BA0;--brand-500: #6566B0;--brand-400: #8081C0;--brand-300: #A1A2CC;--brand-200: #C8C8E2;--brand-100: #E8E8F4;--brand-50: #F4F4FB;--brand-grad: linear-gradient(135deg, #43448F 0%, #6A6BC0 100%);--ink: #2B2B33;--ink-soft: #6C6C78;--ink-faint: #9A9AA6;--line: #E7E7EE;--line-soft: #F0F0F5;--bg: #FAFAFD;--paper: #FFFFFF;--danger: #C7402B;--danger-bg:#FBEEEB;--ok: #2F8A5B;--ok-bg: #EAF5EF;--font-ui: "Plus Jakarta Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--shadow-sm: 0 1px 2px rgba(43,43,51,.06), 0 1px 3px rgba(43,43,51,.05);--shadow-md: 0 8px 24px rgba(43,43,51,.08), 0 2px 6px rgba(43,43,51,.05);--shadow-brand: 0 10px 24px rgba(58,60,143,.28), 0 2px 6px rgba(58,60,143,.18);--ring: 0 0 0 4px rgba(74,75,160,.16)}*{box-sizing:border-box}.giox{font-family:var(--font-ui);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.gx-scroll{position:relative;height:100%;overflow-y:auto;overflow-x:hidden;background:var(--bg)}.gx-lang{position:absolute;top:18px;right:18px;z-index:5;display:inline-flex;gap:2px;padding:3px;background:var(--paper);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow-sm)}.gx-lang button{border:none;background:none;cursor:pointer;font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--ink-soft);padding:5px 11px;border-radius:999px;transition:background .15s,color .15s}.gx-lang button:hover{color:var(--ink)}.gx-lang button.is-active{background:var(--brand-grad);color:#fff}.gx-stage{position:relative;min-height:100%;display:flex;align-items:center;justify-content:center;padding:40px 24px;background:radial-gradient(120% 80% at 50% -10%,#6a6bc01a,#6a6bc000 55%),radial-gradient(90% 60% at 50% 115%,#a1a2cc1f,#a1a2cc00 60%),var(--bg);overflow:hidden}.gx-stage:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(43,43,51,.035) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(80% 60% at 50% 40%,#000 0%,transparent 75%);pointer-events:none}.gx-form{position:relative;width:100%;max-width:380px;display:flex;flex-direction:column;gap:22px}.gx-form--wide{max-width:400px}.gx-head{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.gx-logo{height:38px;width:auto}.gx-eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-500)}.gx-title{font-size:25px;font-weight:700;letter-spacing:-.02em;margin:0;line-height:1.15}.gx-sub{font-size:14.5px;color:var(--ink-soft);margin:0;line-height:1.5}.gx-tenant{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.gx-tenant-avatar{width:56px;height:56px;border-radius:16px;background:var(--brand-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;letter-spacing:-.02em;box-shadow:var(--shadow-brand)}.gx-slug{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-family:var(--font-mono);font-size:12px;color:var(--brand-700);background:var(--brand-50);border:1px solid var(--brand-100);padding:4px 12px;border-radius:999px}.gx-slug svg{width:12px;height:12px;opacity:.7}.gx-fields{display:flex;flex-direction:column;gap:16px}.gx-field{display:flex;flex-direction:column;gap:7px}.gx-label{font-size:13px;font-weight:600;color:var(--ink);display:flex;justify-content:space-between;align-items:center}.gx-label a{font-weight:500;font-size:12.5px;color:var(--brand-600);text-decoration:none;white-space:nowrap;cursor:pointer}.gx-label a:hover{text-decoration:underline}.gx-input{position:relative;display:flex;align-items:center;background:var(--paper);border:1.5px solid var(--line);border-radius:var(--r-md);padding:0 14px;height:48px;transition:border-color .15s,box-shadow .15s,background .15s}.gx-input:focus-within{border-color:var(--brand-500);box-shadow:var(--ring)}.gx-input.is-error{border-color:var(--danger);box-shadow:0 0 0 4px #c7402b1f}.gx-input input{border:none;outline:none;background:transparent;width:100%;height:100%;font-family:var(--font-ui);font-size:15px;color:var(--ink)}.gx-input input::placeholder{color:var(--ink-faint)}.gx-input--mono input{font-family:var(--font-mono);font-size:14px}.gx-input .gx-lock{color:var(--ink-faint);display:flex}.gx-eye{background:none;border:none;cursor:pointer;color:var(--ink-faint);font-size:12.5px;font-weight:600;font-family:var(--font-ui);padding:4px}.gx-eye:hover{color:var(--ink-soft)}.gx-readonly{background:var(--brand-50);border-color:var(--brand-100)}.gx-readonly input{color:var(--ink-soft)}.gx-hint{font-size:12.5px;color:var(--ink-soft)}.gx-hint.is-error{color:var(--danger);display:flex;align-items:center;gap:5px}.gx-suffix{font-size:12px;color:var(--ink-faint);white-space:nowrap}.gx-btn{height:48px;border-radius:var(--r-md);border:none;cursor:pointer;white-space:nowrap;font-family:var(--font-ui);font-size:15px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;transition:transform .12s,box-shadow .15s,background .15s,opacity .15s}.gx-btn:active{transform:translateY(1px)}.gx-btn-primary{background:var(--brand-grad);color:#fff;box-shadow:var(--shadow-brand)}.gx-btn-primary:hover{filter:brightness(1.04)}.gx-btn-primary:disabled{background:var(--brand-200);color:#fff;box-shadow:none;cursor:not-allowed;filter:none}.gx-btn-ghost{background:var(--paper);color:var(--ink);border:1.5px solid var(--line);box-shadow:var(--shadow-sm)}.gx-btn-ghost:hover{border-color:var(--brand-200);background:var(--brand-50)}.gx-btn-quiet{background:transparent;color:var(--brand-600);box-shadow:none;height:auto}.gx-btn-quiet:hover{text-decoration:underline}.gx-spin{width:16px;height:16px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:gxspin .7s linear infinite}.gx-spin--ink{border-color:#4a4ba040;border-top-color:var(--brand-600)}.gx-spin--lg{width:38px;height:38px;border-width:3.5px}@keyframes gxspin{to{transform:rotate(360deg)}}.gx-divider{display:flex;align-items:center;gap:12px;color:var(--ink-faint);font-size:12.5px}.gx-divider:before,.gx-divider:after{content:"";flex:1;height:1px;background:var(--line)}.gx-google{display:inline-flex;align-items:center;gap:10px}.gx-google svg{width:18px;height:18px}.gx-foot{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--ink-faint);font-size:12px;white-space:nowrap}.gx-foot img{height:14px;opacity:.65}.gx-foot-link{color:var(--brand-600);text-decoration:none;font-weight:500}.gx-banner{display:flex;align-items:flex-start;gap:10px;border-radius:var(--r-md);padding:12px 14px;font-size:13.5px;line-height:1.45}.gx-banner--danger{background:var(--danger-bg);color:#8c2c1c;border:1px solid #F2D3CC}.gx-banner--info{background:var(--brand-50);color:var(--brand-800);border:1px solid var(--brand-100)}.gx-banner svg{width:17px;height:17px;flex-shrink:0;margin-top:1px}.gx-banner--info svg{color:var(--brand-500)}.gx-bg-plain{background:var(--bg)}.gx-bg-plain:before{display:none}.gx-bg-mesh{background:radial-gradient(50% 40% at 12% 10%,rgba(106,107,192,.18),transparent 60%),radial-gradient(45% 45% at 90% 15%,rgba(161,162,204,.2),transparent 60%),radial-gradient(60% 50% at 80% 100%,rgba(67,68,143,.16),transparent 60%),var(--bg)}.gx-inputs-underline .gx-input{border:none;border-bottom:2px solid var(--line);border-radius:0;padding:0 2px;background:transparent}.gx-inputs-underline .gx-input:focus-within{box-shadow:none;border-bottom-color:var(--brand-500)}.gx-inputs-underline .gx-input.is-error{box-shadow:none;border-bottom-color:var(--danger)}.gx-inputs-underline .gx-readonly{background:transparent}.gx-screen-wrap{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 24px}.gx-reqs{display:flex;flex-direction:column;gap:7px}.gx-req{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);white-space:nowrap}.gx-req svg{width:15px;height:15px;flex-shrink:0}.gx-req.is-ok{color:var(--ink)}.gx-req.is-ok svg{color:var(--ok)}.gx-otp{display:flex;gap:9px;justify-content:center}.gx-otp input{width:46px;height:56px;text-align:center;font-family:var(--font-mono);font-size:22px;color:var(--ink);border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--paper);transition:border-color .15s,box-shadow .15s}.gx-otp input:focus{outline:none;border-color:var(--brand-500);box-shadow:var(--ring)}.gx-otp.is-error input{border-color:var(--danger)}.gx-passkey{width:72px;height:72px;border-radius:50%;align-self:center;background:var(--brand-50);border:1px solid var(--brand-100);display:flex;align-items:center;justify-content:center;color:var(--brand-600)}.gx-passkey svg{width:34px;height:34px}.gx-passkey--err{background:var(--danger-bg);border-color:#f2d3cc;color:var(--danger)}.gx-select,.gx-select input{cursor:pointer}.gx-chevron{color:var(--ink-faint);display:flex;align-items:center}.gx-chevron svg{width:18px;height:18px}.gx-codeword{font-family:var(--font-mono);font-size:.9em;color:var(--danger);background:var(--danger-bg);padding:1px 7px;border-radius:6px;white-space:nowrap}.gx-link{color:var(--brand-600);text-decoration:none;font-size:13.5px;font-weight:500;cursor:pointer;white-space:nowrap}.gx-link:hover{text-decoration:underline}.gx-center{text-align:center}.gx-status{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.gx-badge{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center}.gx-badge svg{width:30px;height:30px}.gx-badge--ok{background:var(--ok-bg);color:var(--ok)}.gx-badge--warn{background:var(--danger-bg);color:var(--danger)}.gx-badge--brand{background:var(--brand-50);color:var(--brand-600)}.gx-bg-glow{background:radial-gradient(120% 80% at 50% -10%,#6a6bc01a,#6a6bc000 55%),radial-gradient(90% 60% at 50% 115%,#a1a2cc1f,#a1a2cc00 60%),var(--bg)}.gx-bg-glow:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(43,43,51,.035) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(80% 60% at 50% 40%,#000 0%,transparent 75%);pointer-events:none}@keyframes gxfade{0%{transform:translateY(7px)}to{transform:none}}.gx-anim{animation:gxfade .28s ease both}@media(prefers-reduced-motion:reduce){.gx-anim{animation:none}}
