.auth-split{grid-template-columns:1.08fr 1fr;min-height:100dvh;display:grid}.auth-brand{background:var(--paper);border-right:1px solid var(--hairline);align-items:center;padding:clamp(48px,6vw,88px);display:flex;position:relative}.brand-inner{max-width:none}.brand-rule{background:var(--accent);transform-origin:0;width:40px;height:3px;animation:rule-in .65s var(--ease-out) both;border-radius:2px;margin-bottom:28px}@keyframes rule-in{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.wordmark{font-family:var(--font-display), sans-serif;letter-spacing:-.032em;color:var(--ink);animation:fade-up .7s var(--ease-out) 80ms both;margin:0;font-size:clamp(44px,5.2vw,74px);font-weight:600;line-height:1.04}.wordmark-ai{color:var(--accent)}.brand-tagline{letter-spacing:-.014em;color:var(--text-muted);text-wrap:pretty;animation:fade-up .7s var(--ease-out) .16s both;margin:18px 0 0;font-size:clamp(18px,1.35vw,21px);font-weight:400;line-height:1.45}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auth-panel{background:var(--white);place-items:center;padding:clamp(32px,4vw,64px);display:grid}.auth-panel-inner{width:100%;max-width:348px;animation:fade-up .7s var(--ease-out) .22s both}.auth-head{margin-bottom:30px}.auth-title{font-family:var(--font-display), sans-serif;letter-spacing:-.026em;color:var(--ink);margin:0;font-size:29px;font-weight:600;line-height:1.16}.auth-sub{color:var(--text-muted);margin:8px 0 0;font-size:15.5px;line-height:1.45}.field{margin-bottom:11px;position:relative}.field-input{letter-spacing:-.011em;width:100%;height:54px;color:var(--text);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius);transition:border-color .18s var(--ease), box-shadow .18s var(--ease);outline:none;padding:20px 14px 6px;font-family:inherit;font-size:16px}.field-input:hover:not(:disabled):not(:focus){border-color:var(--hairline-strong)}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.field-input:disabled{opacity:.5;cursor:not-allowed}.field-label{letter-spacing:-.011em;color:var(--text-muted);pointer-events:none;transform-origin:0 0;transition:transform .18s var(--ease-out), color .18s var(--ease);font-size:16px;position:absolute;top:16px;left:15px}.field-input:focus+.field-label,.field-input:not(:placeholder-shown)+.field-label{transform:translateY(-9px)scale(.72)}.field-input:focus+.field-label{color:var(--accent)}.field-hint{color:var(--text-muted);margin:8px 0 0 2px;font-size:12.5px;line-height:1.35}.auth-error{color:var(--danger);background:#b4342a0d;border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:13px;line-height:1.4}.auth-button{letter-spacing:-.011em;color:#fff;background:var(--accent);border-radius:var(--radius);cursor:pointer;width:100%;min-height:50px;transition:background .18s var(--ease), transform .12s var(--ease);border:none;margin-top:20px;padding:13px 20px;font-family:inherit;font-size:16px;font-weight:500;position:relative}.auth-button:hover:not(:disabled){background:var(--accent-hover)}.auth-button:active:not(:disabled){background:var(--accent-active);transform:scale(.99)}.auth-button:disabled{cursor:default;opacity:.55}.is-hidden{visibility:hidden}.spinner{border:2px solid #ffffff52;border-top-color:#fff;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;animation:.6s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.auth-switch{text-align:center;color:var(--text-muted);margin:20px 0 0;font-size:14.5px}.auth-textlink{color:var(--accent);font-weight:500;text-decoration:none}.auth-textlink:hover{text-underline-offset:2px;text-decoration:underline}.auth-sent{text-align:center}.sent-mark{width:44px;height:44px;color:var(--accent);background:var(--accent-tint);animation:pop .45s var(--ease-out) both;border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.sent-mark svg{width:21px;height:21px}@keyframes pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.auth-sent .auth-sub{margin-bottom:22px}.auth-sent .auth-textlink{font-size:14.5px}@media (max-width:900px){.auth-split{grid-template-columns:1fr}.auth-brand{border-right:none;border-bottom:1px solid var(--hairline);padding:48px 30px 40px}.brand-rule{margin-bottom:20px}.wordmark{font-size:clamp(38px,10.5vw,52px)}.brand-tagline{margin-top:12px;font-size:16.5px}.auth-panel{align-items:start;padding:40px 24px 60px}}@media (max-height:640px) and (min-width:901px){.auth-brand{padding-top:44px;padding-bottom:44px}}
