.auth-root{--background:#0a0a0a;--surface-1:#121212;--surface-2:#171717;--surface-3:#1f1f1f;--text-primary:#f5f5f5;--text-secondary:#a3a3a3;--text-muted:#6b6b6b;--text-dim:#3f3f3f;--border:#ffffff14;--border-strong:#ffffff29;--accent:#fff;--accent-ink:#0a0a0a;--primary:#0285ff;--primary-subtle:#0285ff24;--shadow:#00000080;--dot:#ffffff0a;--ok:#10b981;--warn:#f59e0b;--err:#ef4444}:root.light .auth-root,.auth-root.is-light{--background:#fff;--surface-1:#f6f6f6;--surface-2:#ededed;--surface-3:#e2e2e2;--text-primary:#0a0a0a;--text-secondary:#525252;--text-muted:#8a8a8a;--text-dim:silver;--border:#00000014;--border-strong:#0000002e;--accent:#0a0a0a;--accent-ink:#fff;--shadow:#00000014;--dot:#0000000f}:root.light .auth-root .status-glyph.ok,.auth-root.is-light .status-glyph.ok{color:#059669;background:#10b98114;border-color:#10b98173}:root.light .auth-root .status-glyph.err,.auth-root.is-light .status-glyph.err{color:#dc2626;background:#ef44440f;border-color:#ef444473}:root.light .auth-root .status-glyph.warn,.auth-root.is-light .status-glyph.warn{color:#b45309;background:#f59e0b14;border-color:#f59e0b80}:root.light .auth-root .req-list li.ok:before,.auth-root.is-light .req-list li.ok:before{background:var(--accent)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='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/10px no-repeat}.auth-root{font-family:var(--font-vica-inter),"Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--text-primary);background:var(--background);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:16px;line-height:1.55}.auth-root *,.auth-root :before,.auth-root :after{box-sizing:border-box}.auth-root .mono{font-family:var(--font-vica-mono),"JetBrains Mono",ui-monospace,monospace;font-weight:500}.auth-root a{color:inherit;text-decoration:none}.auth-root button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0;font-family:inherit}.auth-root img,.auth-root svg{display:block}.auth-page{background:var(--background);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-page:before{content:"";background-image:radial-gradient(1px 1px at 20% 30%,var(--dot),transparent 60%),radial-gradient(1px 1px at 70% 70%,var(--dot),transparent 60%),radial-gradient(1px 1px at 40% 80%,var(--dot),transparent 60%),radial-gradient(1px 1px at 85% 20%,var(--dot),transparent 60%);pointer-events:none;z-index:0;background-size:400px 400px,300px 300px,500px 500px,350px 350px;position:absolute;inset:0}.auth-nav{z-index:2;border-bottom:1px solid var(--border);align-items:center;padding:20px 40px;display:flex;position:relative}.auth-nav .brand{letter-spacing:-.035em;color:var(--text-primary);align-items:baseline;gap:1px;font-size:22px;font-weight:500;display:inline-flex}.auth-nav .brand .dot-accent{color:inherit}.auth-nav .nav-right{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-muted);letter-spacing:.02em;align-items:center;gap:10px;margin-left:auto;font-size:12px;display:flex}.auth-nav .nav-right a{color:var(--text-primary);transition:color .15s}.auth-nav .nav-right a:hover{color:var(--text-secondary)}.auth-page-body{z-index:1;flex:1;grid-template-columns:1fr;min-height:0;display:grid;position:relative}@media (min-width:1024px){.auth-page-body{grid-template-columns:1fr 1fr}}.auth-side{background:var(--surface-1);border-right:1px solid var(--border);flex-direction:column;justify-content:space-between;padding:56px;display:none;position:relative;overflow:hidden}@media (min-width:1024px){.auth-side{display:flex}}.auth-side:after{content:"";filter:blur(40px);pointer-events:none;background:radial-gradient(circle,#ffffff0d,#0000 65%);width:520px;height:520px;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}.auth-side-top{z-index:1;position:relative}.auth-side[data-justify=top]{justify-content:flex-start;padding-top:clamp(48px,12vh,128px)}.auth-side[data-features=hidden] .side-features{display:none}.side-eyebrow{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-secondary);border:1px solid var(--border);background:var(--surface-2);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;align-items:center;gap:10px;margin-bottom:32px;padding:6px 14px;font-size:11px;display:inline-flex}.side-eyebrow .dot{background:var(--primary);width:6px;height:6px;box-shadow:0 0 10px var(--primary);border-radius:50%}.auth-side h1{letter-spacing:-.025em;text-wrap:balance;margin:0 0 20px;font-size:46px;font-weight:400;line-height:1.02}.auth-side h1 em{color:var(--text-muted);font-style:normal}.auth-side p{color:var(--text-secondary);max-width:420px;margin:0;font-size:15px;line-height:1.6}.side-features{z-index:1;border-top:1px solid var(--border);flex-direction:column;gap:14px;max-width:420px;padding:22px 0 0;display:flex;position:relative}.side-feat{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-secondary);align-items:flex-start;gap:14px;font-size:12px;line-height:1.55;display:flex}.side-feat .ix{background:var(--surface-2);border:1px solid var(--border);width:22px;height:22px;color:var(--text-primary);border-radius:6px;flex-shrink:0;place-items:center;font-size:10px;font-weight:600;display:grid}.side-mini-chat{z-index:1;background:var(--background);border:1px solid var(--border);max-width:420px;box-shadow:0 20px 40px -20px var(--shadow);border-radius:16px;margin-top:28px;padding:16px;position:relative}.smc-head{border-bottom:1px dashed var(--border);align-items:center;gap:10px;margin-bottom:10px;padding-bottom:10px;display:flex}.smc-av{background:var(--accent);width:22px;height:22px;color:var(--accent-ink);font-family:var(--font-vica-mono),"JetBrains Mono",monospace;border-radius:7px;place-items:center;font-size:10px;font-weight:700;display:grid}.smc-name{color:var(--text-primary);font-size:13px}.smc-tag{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;background:var(--surface-2);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:10px}.smc-lines{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.smc-lines li{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-secondary);gap:8px;font-size:11.5px;display:flex}.smc-lines li:before{content:"›";color:var(--text-primary);font-weight:700}.smc-lines li b{color:var(--text-primary);font-weight:600}.smc-confirm{border-top:1px dashed var(--border);color:var(--text-primary);align-items:center;gap:6px;margin-top:10px;padding-top:10px;font-size:13px;font-weight:500;display:flex}.auth-form-wrap{z-index:1;flex-direction:column;justify-content:center;padding:40px 24px;display:flex;position:relative}@media (min-width:640px){.auth-form-wrap{padding:56px}}.auth-form-inner{width:100%;max-width:420px;margin:0 auto}.form-head{margin-bottom:32px}.form-kicker{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:8px;margin-bottom:14px;font-size:11px;display:inline-flex}.form-kicker:before{content:"";background:var(--text-muted);border-radius:50%;width:6px;height:6px}.form-kicker.is-success:before{background:#34d399}.form-kicker.is-warn:before{background:#fbbf24}.form-kicker.is-error:before{background:#f87171}.form-head h2{letter-spacing:-.025em;color:var(--text-primary);margin:0 0 12px;font-size:34px;font-weight:400;line-height:1.1}.form-head p{color:var(--text-secondary);margin:0;font-size:15px;line-height:1.55}.form-head p a{color:var(--text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}.oauth-row{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px;display:grid}.oauth-row.is-single{grid-template-columns:1fr}.oauth-btn{border:1px solid var(--border-strong);height:46px;color:var(--text-primary);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:10px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.oauth-btn:hover{background:var(--surface-1)}.oauth-btn svg{width:16px;height:16px}.divider{color:var(--text-muted);font-family:var(--font-vica-mono),"JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:14px;margin:20px 0;font-size:10px;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.field{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.field-label{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;font-size:11px;display:flex}.field-label .hint{color:var(--text-secondary);text-transform:none;letter-spacing:0;font-size:12px}.field-label .hint a{color:var(--text-primary);cursor:pointer}.field-label .hint a:hover{text-decoration:underline}.input-wrap{position:relative}.input{background:var(--surface-1);border:1px solid var(--border);width:100%;height:50px;color:var(--text-primary);letter-spacing:-.005em;border-radius:14px;outline:none;padding:0 44px 0 16px;font-family:inherit;font-size:15px;transition:all .15s}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:var(--border-strong);background:var(--surface-2)}.input.error{background:#ef44440f;border-color:#ef44448c}.input-icon{color:var(--text-muted);place-items:center;width:18px;height:18px;display:grid;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.input-icon svg{width:16px;height:16px}.input-icon.is-button{cursor:pointer;background:0 0;border:none;padding:0}.input-icon.is-button:hover{color:var(--text-primary)}.field-error{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:#f87171;align-items:center;gap:6px;font-size:11px;display:inline-flex}.field-help{color:var(--text-muted);font-size:12px;font-family:var(--font-vica-mono),"JetBrains Mono",monospace}.field-help.is-ok{color:#34d399}.check-row{color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:10px;margin:4px 0 20px;font-size:13px;line-height:1.5;display:flex;position:relative}.check-row a{color:var(--text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}.checkbox{border:1px solid var(--border-strong);background:var(--surface-1);border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;margin-top:1px;transition:background .15s,border-color .15s;display:grid}.checkbox.checked{background:var(--accent);border-color:var(--accent)}.checkbox svg{opacity:0;width:12px;height:12px;color:var(--accent-ink)}.checkbox.checked svg{opacity:1}.btn{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;height:50px;padding:0 22px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-ink);width:100%}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent)85%,transparent)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-strong);background:0 0}.btn-secondary:hover{background:var(--surface-1)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{color:var(--text-primary)}.form-foot{color:var(--text-muted);text-align:center;margin-top:22px;font-size:13px}.form-foot a{color:var(--text-primary)}.form-foot a:hover{text-decoration:underline}.status-glyph{border:1px solid var(--border-strong);background:var(--surface-1);width:72px;height:72px;color:var(--text-primary);border-radius:20px;place-items:center;margin-bottom:28px;display:grid;position:relative}.status-glyph svg{width:30px;height:30px}.status-glyph.ok{color:#34d399;background:#10b98114;border-color:#10b98159}.status-glyph.err{color:#f87171;background:#ef444414;border-color:#ef444459}.status-glyph.warn{color:#fbbf24;background:#f59e0b14;border-color:#f59e0b66}.info-box{background:var(--surface-1);border:1px solid var(--border);color:var(--text-secondary);border-radius:14px;align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px 18px;font-size:13px;line-height:1.55;display:flex}.info-box .ix{background:var(--surface-2);border:1px solid var(--border);width:28px;height:28px;color:var(--text-primary);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.info-box .ix svg{width:14px;height:14px}.info-box b{color:var(--text-primary);font-weight:500}.info-box .body{flex:1}.info-box.is-warn{color:#fde68a;background:#f59e0b0f;border-color:#f59e0b40}.info-box.is-warn .ix{color:#fbbf24;border-color:#f59e0b59}.info-box.is-warn b{color:#fef3c7}.info-box.is-error{color:#fecaca;background:#ef44440f;border-color:#ef444440}.info-box.is-error .ix{color:#f87171;border-color:#ef444459}.info-box.is-error b{color:#fee2e2}.req-list{grid-template-columns:1fr 1fr;gap:8px 18px;margin:0 0 18px;padding:0;list-style:none;display:grid}.req-list li{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-muted);align-items:center;gap:8px;font-size:11px;display:flex}.req-list li:before{content:"";border:1px solid var(--border);background:var(--surface-1);border-radius:50%;flex-shrink:0;width:14px;height:14px;transition:background .15s,border-color .15s}.req-list li.ok{color:var(--text-primary)}.req-list li.ok:before{background:var(--accent)url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a0a0a' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/10px no-repeat;border-color:var(--accent)}.resend-row{border-top:1px dashed var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:14px;font-size:13px;display:flex}.resend-row .left{font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-muted);font-size:12px}.resend-row .right{color:var(--text-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-family:inherit;font-size:13px;display:inline-flex}.resend-row .right:hover:not(:disabled){text-decoration:underline}.resend-row .right:disabled,.resend-row .right.disabled{color:var(--text-muted);cursor:not-allowed}.trust{border-top:1px solid var(--border);font-family:var(--font-vica-mono),"JetBrains Mono",monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;align-items:center;gap:18px;margin-top:24px;padding-top:18px;font-size:10px;display:flex}.trust .item{align-items:center;gap:6px;display:inline-flex}.trust .item:before{content:"";background:var(--ok);width:6px;height:6px;box-shadow:0 0 8px var(--ok);border-radius:50%}