:root{--bg:#0e1116;--fg:#e6e9ef;--muted:#9aa4b2;--accent:#ff8585;--on-accent:#0e1116;--line:#222a35;--danger:#ff5c5c}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.6 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.wrap{width:min(100% - 32px,420px);margin-inline:auto;padding-block:64px}h1{letter-spacing:-.01em;margin:0 0 32px;font-size:22px}h2{margin:0 0 20px;font-size:18px}form{flex-direction:column;gap:14px;display:flex}label{color:var(--muted);flex-direction:column;gap:6px;font-size:14px;display:flex}input{border:1px solid var(--line);color:var(--fg);font:inherit;background:#151a22;border-radius:8px;padding:10px 12px}input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button{background:var(--accent);color:var(--on-accent);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:600}button:disabled{opacity:.6;cursor:default}button.link{color:var(--accent);font-weight:inherit;background:0 0;padding:0;text-decoration:underline}.muted{color:var(--muted);font-size:14px}.error{border:1px solid var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger);border-radius:8px;margin:0;padding:10px 12px;font-size:14px}.logo{color:var(--fg);margin-bottom:32px}.logo svg{width:auto;height:24px;display:block}button.google{background:var(--fg);color:var(--bg)}.auth{flex-direction:column;gap:16px;display:flex}.auth h2{margin:0 0 4px}details summary{cursor:pointer;color:var(--muted);font-size:14px}details form{margin-top:14px}
