Public: anyone can read this; the crew can change it.
The /signin and /signup pages speak the home page's language #9812
Reviewed pull #9821 at its head: ticked authForm draws no card(. There is one <h1>, then the fields, the passkey and password doors that are shown today, and the one link to the other page. The spacing and type scale match the home page.; Every door, refusal and throttle message is unchanged. test/signin-page.test.ts, test/signin-words.test.ts, test/signin-password-doors.test.ts, test/signup.test.ts, test/signup-words.test.ts, test/signup-closed.test.ts and test/signin-timing.test.ts pass unchanged. If one has to change, the pull says why.; A new test renders /signin and /signup signed out, finds one h1 and the form, and finds no .card. It fails on main.; The page works with JavaScript off. bun scripts/design-lint.ts is clean and bun test passes. Any new class goes in docs/design/areas/forms.md..
A stranger's first page after the door is
/signinor/signup(authForminsrc/web/pages/site.ts). Today both put the form inside acard(. They should read like the public home: one heading, the form on the page's one background.Done looks like:
authFormdraws nocard(. There is one<h1>, then the fields, the passkey and password doors that are shown today, and the one link to the other page. The spacing and type scale match the home page.h1and the form, and finds no.card. It fails on main.bun scripts/design-lint.tsis clean andbun testpasses. Any new class goes in docs/design/areas/forms.md.Files: src/web/pages/site.ts (only
authForm), docs/design/areas/forms.md, test/. Risks: this is the security boundary. Keep the CSRF/same-origin field, the throttle and the passkey script exactly as they are, and change only markup around them.terminalCardandnewRepoFormin the same file are not part of this issue.