diff --git a/design/front/UI-PARITY.md b/design/front/UI-PARITY.md index 4e325d7..2a1d8ec 100644 --- a/design/front/UI-PARITY.md +++ b/design/front/UI-PARITY.md @@ -10,25 +10,27 @@ SoT: [`boards/calentiq-ui-board-final.png`](boards/calentiq-ui-board-final.png). ## Known deviations from board (Front#29) -Зафиксировано осознанно / пока не делаем: +Зафиксировано осознанно / пока не делаем (после visual pass ×3 moods, local preview): | Зона | Борд | Сейчас | |------|------|--------| -| Pixel-perfect calendar | denser board mock + Today/Upcoming rail | Agenda rail (§B) + month chips/cell wash (§B/D) по mood; не 1:1 Figma | +| Pixel-perfect calendar | denser board mock + Today/Upcoming rail | Agenda rail (§B): title-case Сегодня/Предстоящие + count, time-first rows; month chips/cell wash (§B/D) по mood; не 1:1 Figma | | Discover cards | soft cards + media thumb + CTA | mood media plane (wash/initials + `image_url` when present) + soft-card rhythm + CTA; без full photo-hero grid | -| CONTROL booking §E | отдельные mock-карточки «слот/специалист» | `EventActionCard` / specialists / bookings: steel rail, avatar, available label, Confirm/Decline; не pixel-perfect board mocks | +| CONTROL booking §E | отдельные mock-карточки «слот/специалист» | `EventActionCard` / specialists / bookings: steel rail (усилен), avatar, available label, Confirm/Decline; не pixel-perfect board mocks | +| Login §D phone chrome | три phone frames + (на борде) Google CTA | brand-first hero + mood `--auth-*`; email/password only; mood switcher на login для atmosphere check; **без** Google OAuth | | Favicon set | 3 отдельных favicon файла на борде | mood appicon через `applyMood` | | Stage | полный smoke на stage | после deploy | | Домены calentiq.* | — | DNS не куплен (B1 checklist) | -| Login Google CTA | на борде | не в MVP (OAuth вне scope) — на login только email/password | IA без sidebar / без Creator mood — совпадает с non-goals. -### Follow-up: Login §D composition +### Visual pass ×3 moods (local) -**Design:** board §D Core Screens (Login column) -**Done (local):** brand-first hero (CalenTIQ wordmark + tagline), mood `--auth-*` atmosphere/glow/panel/CTA radii, soft auth panel (не discover-card stack), email/password + existing register/verify links; **без** Google/social OAuth. Mood switcher на login остаётся для atmosphere check. -**Remaining:** visual pass ×3 moods на stage после batch push; pixel-perfect phone chrome не цель. +**Checked (vite preview + Playwright shots):** Login §D, Calendar grid+agenda, Discover media, CONTROL slot/bookings empty, More mood cards — FLOW / MOMENTUM / CONTROL. + +**Polish in this pass:** agenda copy/casing/counts + time-first rows; CONTROL steel rail emphasis; neutral Discover cover in mock (не flow-appicon во всех moods). + +**Remaining intentional:** no pixel-perfect phone chrome; Discover без photo-hero grid; bookings empty-state в mock без Confirm/Decline rows; stage smoke после batch push. ## Mood concept = product surface @@ -126,9 +128,11 @@ CSS-токены и chrome на mood beyond primary hex: surfaces, gradients, ev - [x] Mock smoke: calendar → discover → bookings в 3 moods (+ IA без sidebar) - [x] Нет регрессий IA (top + bottom nav) — покрыто mock e2e - [x] Известные отклонения от борда зафиксированы в UI-PARITY (Known deviations) +- [x] Visual pass ×3 moods (local preview / Playwright shots) — Login / Calendar / Discover / CONTROL booking - [ ] Stage smoke на живом стенде — **после batch push/deploy** -**Done:** EventHubFront#29 — `e2e/tests/mood-parity-smoke.spec.ts`, brand meta, CONTROL tagline polish. +**Done:** EventHubFront#29 — `e2e/tests/mood-parity-smoke.spec.ts`, brand meta, CONTROL tagline polish. +**Follow-up:** visual pass polish — agenda Предстоящие + counts/time-first; CONTROL steel rail; mock Discover cover neutral. ## Non-goals