Skip to content

Auth unification: single calm AuthShell for all auth pages (batch unit 4)#35

Merged
duckyquang merged 1 commit into
mainfrom
feat/batch-4-auth-unification
Jul 13, 2026
Merged

Auth unification: single calm AuthShell for all auth pages (batch unit 4)#35
duckyquang merged 1 commit into
mainfrom
feat/batch-4-auth-unification

Conversation

@duckyquang

Copy link
Copy Markdown
Member

Summary

  • AuthShell is now the single auth chrome for /login, /register, /forgot, /reset, /verify: a quiet Inter headline over one white hairline card (1px var(--line), --radius-xl, --shadow-md) on a flat canvas. The sky radial gradients, floating glass signal cards, animated underline, and v2 aurora blobs are gone.
  • Register / ForgotPassword / ResetPassword / Verify migrated onto AuthShell with each page's logic, fields, and links unchanged (funnel ?ref/from params still carried by the in-card links). .yellow-text usage removed from auth copy.
  • Dead CSS deleted: legacy sky-gradient login block and the whole v2 aurora/split/aside block in src/styles.css; the v3 signal-field block in shared/design-system.css rewritten to the calm version. Base .login-wrap/.login-card rewritten (not deleted) to calm tokens because VerifyCertificate, PublicProfile, and PendingApproval share them — verified visually.
  • .login-wrap.login-v3 kept on the shell root (the body:has(...) viewport lock depends on it); tall forms scroll inside the card.
  • Polish: segmented hairline .auth-tabs (login/register only), demo quick-login as quiet chips, card entrance opacity/translateY(8px) ≤300ms ease-out, scale(0.97) on press, prefers-reduced-motion respected, focus via the shared input:focus / :focus-visible accent ring. GIS Google button rendered rectangular to match the card; Google brand colors kept.
  • Net −365 lines.

Testing

  • npm run build passes (docs/ build output reverted).
  • Backend suite: 25 files / 201 tests pass.
  • E2E on backend :4004 + Vite :5204: logged in through the UI with a demo chip (landed on Director desk), walked /register, /forgot, /reset, /verify — light + dark, 1440px + 375px (register card scrolls internally on mobile).

🤖 Generated with Claude Code

- AuthShell is now the single auth chrome for /login, /register,
  /forgot, /reset and /verify: quiet headline + one hairline card
  (white surface, 1px --line, --radius-xl, --shadow-md) on a flat
  canvas — no more sky gradients, glass signal cards, or aurora blobs.
- Register, ForgotPassword, ResetPassword and Verify migrated onto
  AuthShell with logic/fields/links unchanged; .yellow-text headings
  dropped from auth copy.
- auth-tabs restyled as a segmented hairline control (shown only for
  login/register modes); demo quick-login restyled to quiet chips.
- Deleted dead CSS: legacy sky-gradient .login-card block (base
  .login-wrap/.login-card rewritten to calm tokens since
  VerifyCertificate/PublicProfile/PendingApproval share them), the
  whole v2 aurora/split/aside block, and the v3 signal-field block
  (rewritten to the calm version, token-driven light + dark).
- card entrance reduced to opacity/translateY(8px), transitions
  <=200ms ease-out, scale(0.97) on press, reduced-motion respected;
  focus states now rely on the shared input:focus / :focus-visible
  accent ring.
- GoogleButton: GIS button rendered rectangular to match the card;
  fallback button restyled to hairline tokens (Google brand colors
  kept in the "G" mark).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
dashboard Error Error Jul 12, 2026 9:15am

@duckyquang
duckyquang merged commit d4d7d9e into main Jul 13, 2026
3 of 4 checks passed
duckyquang added a commit that referenced this pull request Jul 13, 2026
…ration tree

Those four unit branches are already fully contained in this branch with
their conflicts resolved against the unit-1 foundation (which main does not
have yet). main introduced no other content, so the integrated tree is kept
as-is.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant