.login-screen{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--bg,#0f1115);background-image:radial-gradient(ellipse 60% 45% at 50% 42%, #a78bfa1a, transparent 70%), radial-gradient(circle, var(--bg-dots,#1a1e26) 1.2px, transparent 1.7px);color:var(--text,#e6e9ef);font-family:var(--font,-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--text-md,13px);-webkit-font-smoothing:antialiased;background-size:100% 100%,24px 24px;padding:24px 16px;line-height:1.45;display:flex;position:fixed;inset:0;overflow-y:auto}.login-screen *,.login-screen :before,.login-screen :after{box-sizing:border-box}.login-card{border:1px solid var(--border-strong,#394150);background:var(--surface-raised,#1d212a);text-align:center;width:min(360px,100%);animation:login-rise var(--glide,.3s) var(--ease-out,cubic-bezier(.22, 1, .36, 1));border-radius:18px;flex-direction:column;align-items:center;margin:auto;padding:36px 28px 28px;display:flex;box-shadow:0 24px 60px #0000008c,inset 0 1px #ffffff0a}@keyframes login-rise{0%{opacity:0;transform:translateY(6px)}}.login-mark{box-shadow:0 0 0 1px var(--border-strong,#394150), 0 10px 32px #a78bfa38;border-radius:14px;flex:none;margin-bottom:18px;display:block}.login-title{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:650;line-height:1.3}.login-text{color:var(--text-dim,#9aa3b2);text-wrap:balance;margin:6px 0 0}.login-error{border-radius:var(--radius-sm,6px);color:#fecaca;width:100%;font-size:var(--text-sm,12px);overflow-wrap:anywhere;background:#f8717114;border:1px solid #f8717159;margin:18px 0 0;padding:8px 10px}.login-google{border-radius:var(--radius,10px);color:#1f1f1f;width:100%;height:42px;font:inherit;white-space:nowrap;cursor:pointer;transition:background-color var(--fast,.15s), box-shadow var(--fast,.15s), transform var(--fast,.15s);background:#fff;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;margin-top:24px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.login-error+.login-google{margin-top:12px}.login-google:not(:disabled):hover{background:#f1f3f4;box-shadow:0 6px 18px #00000059}.login-google:not(:disabled):active{transform:translateY(1px)}.login-google:focus-visible{outline:2px solid var(--accent,#a78bfa);outline-offset:3px}.login-google:disabled{opacity:.7;cursor:default}.login-google-logo{flex:none}.login-google--pointed{animation:login-point 1.2s var(--ease-out,cubic-bezier(.22, 1, .36, 1)) 2;box-shadow:0 0 0 3px #a78bfa8c}@keyframes login-point{50%{box-shadow:0 0 0 6px #a78bfa40}}.login-divider{width:100%;color:var(--text-faint,#6b7483);font-size:var(--text-xs,11px);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;margin:18px 0;font-weight:650;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-strong,#394150);flex:1;height:1px}.login-email{text-align:left;flex-direction:column;gap:10px;width:100%;margin:0;display:flex}.login-email .login-error{margin:0}.login-input{border:1px solid var(--border-strong,#394150);border-radius:var(--radius,10px);background:var(--surface,#161920);width:100%;min-width:0;height:40px;color:var(--text,#e6e9ef);font:inherit;transition:border-color var(--fast,.15s), box-shadow var(--fast,.15s);margin:0;padding:0 12px;font-size:14px;display:block}.login-input::placeholder{color:var(--text-faint,#6b7483)}.login-input:hover{border-color:#4a5366}.login-input:focus{border-color:var(--accent,#a78bfa);outline:none;box-shadow:0 0 0 3px #a78bfa38}.login-email-row{border:1px solid var(--border,#2a303c);border-radius:var(--radius,10px);background:#ffffff05;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:4px 6px 4px 12px;display:flex}.login-email-address{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.login-link{border-radius:var(--radius-sm,6px);color:var(--accent,#a78bfa);font:inherit;font-size:var(--text-sm,12px);cursor:pointer;background:0 0;border:0;flex:none;margin:0;padding:4px 6px;font-weight:600}.login-link:hover{background:#a78bfa1a}.login-link:focus-visible{outline:2px solid var(--accent,#a78bfa);outline-offset:1px}.login-note{color:var(--text-dim,#9aa3b2);font-size:var(--text-sm,12px);margin:0}.login-note strong{color:var(--text,#e6e9ef);font-weight:600}.login-check{border:1px solid var(--border-strong,#394150);border-radius:var(--radius,10px);background:var(--surface,#161920);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--fast,.15s), border-color var(--fast,.15s);align-items:center;gap:10px;padding:10px 12px;font-weight:550;display:flex}.login-check:hover{background:var(--surface-hover,#252a35);border-color:#4a5366}.login-check--on,.login-check--on:hover{background:#a78bfa1a;border-color:#a78bfa99}.login-checkbox{width:16px;height:16px;accent-color:var(--accent,#a78bfa);cursor:pointer;flex:none;margin:0}.login-submit{border-radius:var(--radius,10px);color:#ddd2ff;width:100%;height:42px;font:inherit;white-space:nowrap;cursor:pointer;transition:background-color var(--fast,.15s), border-color var(--fast,.15s), opacity var(--fast,.15s), transform var(--fast,.15s);background:#a78bfa24;border:1px solid #a78bfa73;justify-content:center;align-items:center;margin:0;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.login-submit:not([aria-disabled=true]):hover{background:#a78bfa38;border-color:#a78bfab3}.login-submit:not([aria-disabled=true]):active{transform:translateY(1px)}.login-submit:focus-visible{outline:2px solid var(--accent,#a78bfa);outline-offset:3px}.login-submit[aria-disabled=true]{opacity:.7;pointer-events:none}.login-setup{border-radius:var(--radius-sm,6px);color:#fde6a8;font-size:var(--text-sm,12px);text-align:left;overflow-wrap:anywhere;background:#fbbf2414;border:1px solid #fbbf2459;margin:14px 0 0;padding:10px 12px}.login-setup code{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:var(--text-xs,11px);color:#fff3cf}@media (prefers-reduced-motion:reduce){.login-card,.login-google--pointed{animation:none}}
