.auth-wrap{background:var(--bg);min-height:100vh;color:var(--ivory);place-items:center;padding:24px 16px;display:grid}.auth-card{flex-direction:column;gap:20px;width:100%;max-width:380px;display:flex}.auth-card h1{font-family:var(--sans);letter-spacing:-.01em;margin:0;font-size:26px;font-weight:600}.auth-sub{color:var(--ivory-dim);margin:6px 0 0;font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-label{color:var(--ivory-dim);font-size:13px}.auth-input{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ivory);font-size:15px;font-family:var(--sans);transition:border-color .15s var(--ease);background:#ffffff08;border-radius:10px;outline:none;padding:12px 14px}.auth-input:focus-visible{border-color:var(--plat-line);box-shadow:0 0 0 3px var(--plat-bg)}.auth-input.code{font-family:var(--mono);letter-spacing:.4em;text-align:center;font-size:22px}.auth-btn{border:1px solid var(--plat-line);background:var(--plat);color:#0a0a0a;cursor:pointer;transition:opacity .15s var(--ease);border-radius:10px;padding:12px 14px;font-size:15px;font-weight:600}.auth-btn:disabled{opacity:.55;cursor:default}.auth-btn:focus-visible,.auth-btn-ghost:focus-visible,.auth-link:focus-visible{outline:2px solid var(--plat);outline-offset:2px}.auth-btn-ghost{border:1px solid var(--line);color:var(--ivory);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:12px 14px;font-size:15px;text-decoration:none;display:flex}.auth-sep{color:var(--ivory-faint);align-items:center;gap:12px;font-size:12px;display:flex}.auth-sep:before,.auth-sep:after{content:"";background:var(--line-soft);flex:1;height:1px}.auth-error{color:#f0a3a3;margin:0;font-size:13.5px;line-height:1.45}.auth-note{color:var(--ivory-faint);margin:0;font-size:12.5px;line-height:1.5}.auth-link{color:var(--ivory-dim);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:13px;text-decoration:underline}.auth-stack{flex-direction:column;gap:18px;width:100%;max-width:380px;display:flex}.auth-stack .auth-note a,.auth-legal a{color:var(--ivory-dim)}.auth-legal{border-top:1px solid var(--line-soft);flex-wrap:wrap;gap:6px 16px;padding-top:14px;font-size:12px;display:flex}.auth-legal a{color:var(--ivory-faint);text-decoration:none}.auth-legal a:hover{color:var(--ivory-dim)}
