body:has(.auth) .sidebar{display:none}body:has(.auth) .shell{grid-template-columns:1fr}body:has(.auth) .main{max-width:none;padding:0}body:has(.auth) .tabbar{display:none}.auth{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:var(--s8) var(--inset);width:100%;max-width:440px;margin-inline:auto}.auth .logo{margin:0 auto var(--s6);width:150px;height:46px;display:block;object-fit:contain;object-position:left center}.auth h1{font-size:29px;font-weight:700;letter-spacing:-.026em;margin:0 0 var(--s3);text-align:center;line-height:1.14}.auth p.lead{font-size:16px;color:var(--ink-2);margin:0 0 var(--s6);text-align:center;line-height:1.5;max-width:34ch;margin-inline:auto}.auth label{display:block;font-size:14px;font-weight:500;color:var(--ink-2);margin-bottom:var(--s2)}.auth input{width:100%;min-height:52px;border:1px solid var(--edge);border-radius:var(--r-control);background:var(--panel);padding:0 var(--s4);font-size:16px;color:var(--ink);font-family:inherit}.auth input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth .btn-primary,.auth input~label{margin-top:var(--s4)}.auth .foot{font-size:14px;margin:var(--s6) 0 0;max-width:40ch;margin-inline:auto}.auth .foot,.auth .legal{color:var(--ink-3);line-height:1.5;text-align:center}.auth .legal{font-size:13px;margin:var(--s8) 0 0}.sent{flex-direction:column;gap:var(--s3);text-align:center;padding:var(--s6) 0;animation:pop .35s var(--ease-out) both}.sent,.sent .tick{display:flex;align-items:center}.sent .tick{width:56px;height:56px;border-radius:var(--r-pill);background:var(--green-soft);color:var(--green);justify-content:center}.sent .tick svg{width:28px;height:28px}.sent h1,.sent p.lead{margin:0}.auth .btn-primary{width:100%;min-height:50px;border-radius:var(--r-pill);border:0;background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:600;letter-spacing:-.008em;cursor:pointer;position:relative;overflow:hidden;padding:0 var(--s4)}.auth .btn-primary:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(255,255,255,.3),transparent);animation:sweep 1.5s var(--ease-out) .7s 1 both}.auth .btn-primary:disabled{opacity:.6;cursor:progress}.auth .auth-alt{display:block;width:100%;min-height:44px;margin-top:var(--s3);padding:0;border:0;background:none;font-family:inherit;cursor:pointer;font-size:15px;font-weight:600;color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}.auth .auth-alt:disabled{opacity:.5;cursor:default}.pressable{transition:transform .11s var(--ease-out),background-color .16s linear}.pressable:active{transform:scale(.975)}.auth-msg{border-radius:8px;padding:var(--s-3) var(--s-3);font-size:var(--t-caption);line-height:1.55;border:1px solid transparent;text-align:left;margin-bottom:var(--s-4)}.auth-msg strong{display:block;margin-bottom:2px}.auth-msg-ok{background:var(--ok-bg);color:var(--ok-fg);border-color:var(--ok-fg)}.auth-msg-warn{background:var(--warn-bg);color:var(--warn-fg);border-color:var(--warn-fg)}.auth-msg-error{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-fg)}.auth-msg-info{background:var(--sunken);color:var(--text-2);border-color:var(--border)}.auth form .auth-msg{margin:var(--s-3) 0 0}.auth .mono{font-family:var(--font-mono);word-break:break-all}