Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions docs/redesign/02-design-direction.md
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
# Design Direction — Clinical KB

## July 1 — Clinical White / Aegean Graphite (active direction)

This supersedes the earlier "single teal accent for primary actions" principle. The colour system is now **role-split** rather than single-accent:

- **Command = graphite.** Primary actions (New chat, primary CTAs, the mobile section FAB) use `--command` (`#111827` light / near-white `#F5F7F7` dark) — never teal/green.
- **Clinical accent = Aegean.** A cool blue-teal `--clinical-accent` (`#0B6F86` light / `#4CCFD0` dark) owns clinical identity only: selected mode, evidence/source rails, the composer send action, and focus.
- **Green = success only.** `--success` is reserved for ready/connected/complete; it is never brand, nav, command, send, or evidence.
- **True-white canvas.** The neutral ramp was de-blued to a true-neutral gray scale; the content surface is `#FFFFFF`, with `--surface-chrome` (`#F7F8FA`) for rails/header only. Light mode is de-glassed: flat surfaces + hairline borders + one restrained shadow; glass/blur is reserved for overlays. Dark mode keeps its black polish.

Migration was token-led: `--primary*` now resolves to the Aegean accent, `--command*` is new, and legacy `--clinical-chat-teal*` / `--clinical-chat-ready` are retained as compat aliases pointing at the role tokens (`--clinical-accent` / `--success`). New code should reference the role tokens directly. Typography (Geist), spacing, radius, and motion are unchanged from below. See decision log **D11**.

## June 20 scoped run

The active direction for the dashboard and document viewer is a quiet clinical command instrument: neutral, precise, source-first. Teal remains reserved for primary action, evidence, and focus; dense operational details should collapse into progressive sheets/drawers on mobile rather than competing with the answer or PDF.
Expand Down
7 changes: 7 additions & 0 deletions docs/redesign/03-decision-log.md
Original file line numberDiff line numberDiff line change
Expand Up@@ -84,3 +84,10 @@ Entries are appended as work lands. Format: what changed / why better / consider
**Why better:** The PDF regains priority on mobile when there is no citation to inspect, while source evidence remains discoverable and anchored for navigation.
**Rejected:** Removing the evidence anchor entirely (would weaken navigation and tests); always showing the full card (kept the original hierarchy problem).
**Verification:** Focused eslint and `npm run typecheck` pass; pinned evidence and PDF ordering are included in visual QA.

## D11 — Clinical White / Aegean Graphite: role-split colour

**What:** Split the overloaded accent into three roles. Added `--command` (graphite) for primary actions, `--clinical-accent` (Aegean blue-teal) for clinical identity (selected/evidence/send/focus), and reserved `--success` (green) for status only. De-blued the neutral ramp to true-neutral gray, set the content surface to `#FFFFFF` with a new `--surface-chrome` for rails/header, and de-glassed light-mode materials (flat + hairline + single shadow; glass kept for overlays). `--primary*` now resolves to the Aegean accent; `--clinical-chat-teal*`/`--clinical-chat-ready` retained as compat aliases pointing at the role tokens.
**Why better:** `--primary` previously drove both command buttons and evidence surfaces, so nothing read as deliberate. Roleization makes command vs clinical-identity vs success visually distinct, yields a crisper premium white, and keeps the black-polish dark mode.
**Rejected:** Keeping teal as the primary-action colour (accent keeps doing two jobs); a mass rename of the ~265 `--clinical-chat-teal` call-sites (unreviewable churn — aliases achieve the same end); a warm/cream canvas (the brief's premise; the real issue was blue-grey murk, not warmth).
**Verification:** `npm run typecheck` passes; dev server compiles and serves 200 with 0 console errors; light/dark desktop + mobile screenshots confirm graphite command, Aegean send/evidence, and success-only green; contrast spot-checks — Aegean on white ≈5.8:1, command ≈16:1, soft text ≈5.0:1, semantics ≥4.5:1.
17 changes: 17 additions & 0 deletions docs/redesign/05-changelog.md
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
# Changelog — Premium Redesign

## July 1 — Clinical White / Aegean Graphite

### Rebuild

- **Role-split colour system:** graphite `--command` for primary actions, Aegean `--clinical-accent` for clinical identity (selected/evidence/send/focus), green `--success` for status only. Splits the previously overloaded `--primary`. See decision log **D11**, direction doc updated.
- **True-white canvas:** de-blued the neutral ramp to true-neutral gray; content surface `#FFFFFF` + new `--surface-chrome` for rails/header; light-mode materials de-glassed (flat + hairline + one shadow; glass kept for overlays). Dark mode keeps black polish, brightened Aegean accent.

### Upgrade

- **Command controls:** sidebar/header New chat and the mobile section FAB now read graphite; the composer send button reads Aegean.
- **Active states:** sidebar tool tiles, recent-chat, and the header mode menu use rail + icon + graphite label instead of broad teal fills.
- **Semantic hygiene:** medication match badge moved off hardcoded `emerald-*`/`blue-*` onto accent/info role tokens; status dots resolve to `--success`.

### Verification

- `npm run typecheck` passes; dev server serves 200 with 0 console errors; light/dark desktop + light mobile screenshots confirm the direction; contrast spot-checks pass (Aegean-on-white ≈5.8:1, command ≈16:1, semantics ≥4.5:1). `npm run verify:ui`/`verify:release` not yet run in this pass.

## June 23 process hardening pass

### Upgrade
Expand Down
Loading
Loading