:root{--bg: #f4f6f8;--surface: #ffffff;--fg: #101828;--muted: #475467;--border: #d6dce4;--accent: #155eef;--accent-hover: #1149c4;--accent-on: #ffffff;--danger: #b42318;--danger-bg: #fef3f2;--ok: #067647;--ok-bg: #ecfdf3;--info-bg: #eff4ff;--focus-ring: #9db8f7;--font-body: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, monospace;--radius-sm: 6px;--radius-md: 10px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);min-height:100vh;color:var(--fg);background:var(--bg)}.rx-header{position:fixed;top:0;left:0;right:0;display:flex;align-items:baseline;gap:12px;padding:18px 24px;border-bottom:1px solid var(--border);background:var(--surface)}.rx-wordmark{margin:0;font-size:15px;font-weight:700;letter-spacing:.02em;color:var(--fg)}.rx-tagline{margin:0;font-size:12px;color:var(--muted)}.rx-main{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:96px 24px 48px}.rx-card{width:100%;max-width:400px;padding:32px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 1px 3px #10182814}.rx-title{margin:0 0 20px;font-size:22px;font-weight:600;letter-spacing:-.01em}.rx-subtitle{margin:-12px 0 20px;font-size:13px;color:var(--muted)}.rx-label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--fg)}.rx-input{width:100%;margin-bottom:16px;padding:10px 12px;font-size:14px;font-family:inherit;color:var(--fg);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease}.rx-input::placeholder{color:var(--muted)}.rx-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.rx-submit{width:100%;margin-top:4px;padding:11px 16px;font-size:14px;font-weight:600;font-family:inherit;color:var(--accent-on);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.rx-submit:hover:not(:disabled){background:var(--accent-hover)}.rx-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-ring)}.rx-submit:disabled{opacity:.6;cursor:default}.rx-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:12px}.rx-divider:before,.rx-divider:after{content:"";flex:1;height:1px;background:var(--border)}.rx-outline{display:block;width:100%;margin-bottom:8px;padding:10px 14px;text-align:center;text-decoration:none;font-size:14px;font-weight:500;font-family:inherit;color:var(--fg);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.rx-outline:hover{border-color:var(--muted);background:var(--bg)}.rx-outline:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rx-alert{margin-bottom:14px;padding:10px 12px;font-size:13px;color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);background:var(--danger-bg)}.rx-info{margin-bottom:14px;padding:10px 12px;font-size:13px;color:var(--fg);border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--info-bg)}.rx-success{margin-bottom:14px;padding:10px 12px;font-size:13px;color:var(--ok);border:1px solid var(--ok);border-radius:var(--radius-sm);background:var(--ok-bg)}.rx-field-error{margin:-10px 0 12px;font-size:12px;color:var(--danger)}.rx-links{margin-top:20px;padding-top:16px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:12px;font-size:13px}.rx-links a{color:var(--accent);text-decoration:none}.rx-links a:hover{text-decoration:underline}.rx-links a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.rx-muted{color:var(--muted);font-size:13px}.rx-scopes-intro{margin:0 0 10px}.rx-scopes{margin:0 0 20px;padding-left:20px;font-size:14px;color:var(--fg)}.rx-scopes li{margin-bottom:8px}.rx-button-row{display:flex;gap:12px}.rx-button-row .rx-submit,.rx-button-row .rx-outline{margin:0}code.rx-code{font-family:var(--font-mono);font-size:12px;color:var(--muted);word-break:break-all}
