feat(auth): redesign auth UI to match Dart original

- Full-bleed bg_login.png background outside 500px MobileShell
- Facebook landing: logo + Facebook pill button + "Other Sign In Options" link
- Replace centered Dialog with true bottom sheet (drag handle, top radius 28px)
- Email panel: internal login/register toggle, no separate route
- Pink gradient primary button (#f96ADE → #f657A0)
- Pill input fields (46px, white, radius 24, pink 10% shadow)
- Pink circular checkbox + bold Privacy/Terms rich text (visual only, non-blocking)
- Floating 40x40 white back button (top:20/left:20)
- Wire AuthPanelModeChanged dispatch for panel switching
- New design tokens (--color-auth-*, --auth-*, --radius-bottom-sheet)
- New generic BottomSheet component
- Copy ic-logo-login.png (+@2x, +@3x) from Dart assets

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-06-10 14:27:06 +08:00
parent 4e27b4c512
commit 90bb711a45
30 changed files with 967 additions and 335 deletions
@@ -0,0 +1,23 @@
/* 原始 Dart: lib/ui/auth/auth_screen.dart
*
* 视觉规格(与 Dart 对齐):
* - 全屏 `bg_login.png` 背景(cover
* - 500px 内容列由 MobileShell 约束
* - 内容列居中
*/
.fullBleed {
position: relative;
flex: 1 1 auto;
display: flex;
flex-direction: column;
min-height: 100dvh;
background: url("/images/auth/bg-login.png") center / cover no-repeat;
}
.content {
flex: 1 1 auto;
display: flex;
flex-direction: column;
justify-content: center;
padding: var(--spacing-lg);
}