Finish the redesign's edges: auth page, modals, dead code, docs

The sign-in page becomes a plain centred column with the brand mark
and a segmented login/register switch, modals lose their last inner
boxes, the red-days list collapses every year but the current one,
and the retired components' CSS, an unused list component and 23
unreferenced translation keys are removed. ARCHITECTURE.md documents
the Almanacka styling conventions and the per-year balance rule.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XBRLomdLK9jF7wU7a8AA6H
This commit is contained in:
2026-09-20 07:00:22 +02:00
parent eafa32e6b0
commit 0081f60b06
28 changed files with 326 additions and 745 deletions
+11 -7
View File
@@ -3,6 +3,7 @@ import { useNavigate } from 'react-router-dom'
import { useAuth } from '@/context/AuthContext'
import { useWorkspace } from '@/context/WorkspaceContext'
import { useTranslation } from '@/i18n'
import { LanguageToggle } from '@/components/layout/LanguageToggle'
import './auth.css'
export function Auth() {
@@ -48,12 +49,16 @@ export function Auth() {
return (
<main className="auth-page">
<div className="auth-page__card card">
<p className="eyebrow auth-page__brand">{t('app.name')}</p>
<div className="auth-page__tabs">
<div className="auth-page__lang">
<LanguageToggle />
</div>
<div className="auth-page__column">
<img className="auth-page__mark" src="/img/icon-64.png" alt="" width={32} height={32} />
<h1 className="auth-page__title">{isRegister ? t('auth.createAccountTitle') : t('auth.loginTitle')}</h1>
<div className="segmented auth-page__tabs" role="group">
<button
type="button"
className="btn btn--ghost auth-page__tab"
className="segmented__option auth-page__tab"
aria-pressed={!isRegister}
onClick={() => switchTab(false)}
data-testid="auth-tab-login"
@@ -62,7 +67,7 @@ export function Auth() {
</button>
<button
type="button"
className="btn btn--ghost auth-page__tab"
className="segmented__option auth-page__tab"
aria-pressed={isRegister}
onClick={() => switchTab(true)}
data-testid="auth-tab-register"
@@ -70,7 +75,6 @@ export function Auth() {
{t('auth.createAccountButton')}
</button>
</div>
<h1 className="auth-page__title">{isRegister ? t('auth.createAccountTitle') : t('auth.loginTitle')}</h1>
<form className="auth-page__form" onSubmit={(e) => void handleSubmit(e)}>
{isRegister && (
<div className="field">
@@ -115,7 +119,7 @@ export function Auth() {
/>
</div>
{error && (
<p role="alert" className="alert alert--error">
<p role="alert" className="auth-page__error">
{error}
</p>
)}