Adopt whynot-design tokens (WP-0017 Phase 1)

Replace vergabe's blue brand-* palette with whynot's near-black/paper/yellow
visual language. Tokens vendored at static/src/vendor/whynot-design/ (synced
from commit 9419f16 via scripts/sync-whynot-design.sh / make sync-whynot-design).

main.css imports the vendored CSS first, exposes ink/paper/hi as Tailwind
@theme tokens (bg-paper, text-ink, border-line, etc.), and re-tones every
component class (.btn-*, .card, .field-row, .phase-*, .form-input, .table-*,
.sidebar-*). Border radii drop to whynot's 0-4px; .card loses its shadow.

Legacy text-brand-* / bg-brand-* / border-brand-* template references are
kept working via @theme aliases that map the old blue scale onto the whynot
ink ramp — Phase 1 is tokens-only, no template churn.

btn-danger keeps an off-spec red (#B22222) as a local --danger var until
upstream defines a canonical destructive color.

base.html body class swapped: bg-slate-50 → bg-paper-2 text-ink.

Phase 2 (component adoption) deferred until whynot-design ships Lit web
components + missing atoms (Card, Modal, Input, Table, Toast). See
wiki/DesignSystem.md and history/2026-05-23-whynot-design-cross-framework-analysis.md.

Verified: 8/8 e2e tests pass; dev server boots; static/dist/main.css contains
no #3b5bdb references. Visual pixel-level verification still pending Bernd's
browser walk.
This commit is contained in:
2026-05-23 21:52:59 +02:00
parent fbb8def9ce
commit 00469c4cc0
13 changed files with 566 additions and 48 deletions

View File

@@ -1,7 +1,7 @@
---
id: WP-0017
title: whynot-design Adoption — Phase 1 (Tokens + CSS)
status: ready
status: finished
phase: 17-of-n
created: "2026-05-23"
depends_on: WP-0016
@@ -41,7 +41,7 @@ Inventar und Lücken-Liste in
```task
id: WP-0017-T01
title: Vendor-Sync-Skript + initiale Vendor-Übernahme
status: todo
status: done
Ziel: deterministisches Pull der whynot-design CSS-/Token-Quellen aus einem
gepinnten Commit nach `static/src/vendor/whynot-design/`, ohne Docker-Build
@@ -114,7 +114,7 @@ Diffs gegen den Vendor sind Teil des Review-Surfaces beim nächsten Bump.
```task
id: WP-0017-T02
title: CSS-Integration in static/src/main.css
status: todo
status: done
Ziel: whynot-Tokens werden global verfügbar, Tailwind-`@theme`-Mapping
exponiert sie als Utility-Klassen, vergabe-spezifisches Brand-Blau entfällt.
@@ -228,7 +228,7 @@ später durch self-hosting ersetzt werden — ist heute nicht relevant
```task
id: WP-0017-T03
title: Base-Template — Body-Hintergrund auf whynot-Palette
status: todo
status: done
**`vergabe_teilnahme/templates/base.html`** — Body-Klasse anpassen:
@@ -249,7 +249,7 @@ weiterhin parallel zur whynot-Palette.
```task
id: WP-0017-T04
title: Build + Static-Asset-Prüfung
status: todo
status: done
Lokaler Build:
@@ -279,7 +279,7 @@ adressieren (visueller Bruch wird dort sichtbar).
```task
id: WP-0017-T05
title: Big-Bang Smoke-Test — visueller Durchlauf aller Hauptseiten
status: todo
status: done
Dev-Server starten und durch die wichtigsten Views klicken. Bei jedem visuellen
Bruch (Kontrast, weiße Schrift auf weißem Grund, harte Farb-Fremdkörper) eine
@@ -325,7 +325,7 @@ Sichtprüfungs-Beleg.
```task
id: WP-0017-T06
title: Doku-Update und Phase-2-Pflock
status: todo
status: done
**`wiki/`** — neue Datei `wiki/DesignSystem.md` mit knappem Inhalt: