[object Object]

← back to Wallco Ai

Sync /age-themes route to v9 — teen body 14→16/h22, adult line-height baseline 1.5, elder btn-min-height 56px; aligned with ~/.claude/skills/age-adaptive-theme/ + Figma file rebuild; validation-loop passed (debate verdict: ship)

f5a303a59a904199a0915f544be2e771340cee77 · 2026-05-11 20:50:43 -0700 · Steve Abrams

Files touched

Diff

commit f5a303a59a904199a0915f544be2e771340cee77
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon May 11 20:50:43 2026 -0700

    Sync /age-themes route to v9 — teen body 14→16/h22, adult line-height baseline 1.5, elder btn-min-height 56px; aligned with ~/.claude/skills/age-adaptive-theme/ + Figma file rebuild; validation-loop passed (debate verdict: ship)
---
 server.js | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/server.js b/server.js
index c3867fd..f9767bb 100644
--- a/server.js
+++ b/server.js
@@ -2440,9 +2440,9 @@ app.get('/age-themes', (req, res) => {
     {
       id: 'teen', age: '13-19', label: 'Teen',
       current: { bg:'#0a0014', panel:'#1a0030', fg:'#f0f0ff', accent:'#ff00ff', border:'#2a0050', font:'JetBrains Mono', body:12, h:18 },
-      best:    { bg:'#0a0014', panel:'#1a0030', fg:'#f0f0ff', accent:'#ff00ff', border:'#2a0050', font:'Space Grotesk, JetBrains Mono', body:14, h:20 },
-      swap: 'Body: 12px → **14px**; Heading: 18 → **20px**',
-      reasoning: 'WCAG minimum for body in any context is 14px. 12px on dark + scanline overlay drops effective contrast ~15% — illegible at arm\'s length in sunlight. Space Grotesk for prose with JetBrains Mono for code gives cyberpunk signal without the readability tax.',
+      best:    { bg:'#0a0014', panel:'#1a0030', fg:'#f0f0ff', accent:'#ff00ff', border:'#2a0050', font:'Space Grotesk, JetBrains Mono', body:16, h:22 },
+      swap: 'Body: 12 → **16px** (v9); Heading: 18 → **22px**',
+      reasoning: 'v8 bumped body to 14px but the debate team flagged that as still below WCAG normal-text 16px floor — v9 clears the floor. Cyberpunk density preserved via letter-spacing:-0.01em (set in CSS-var). Space Grotesk for prose with JetBrains Mono for code blocks gives cyberpunk signal without the readability tax.',
       mood: 'dense · technical · neon · power-user · rebel',
       anchor: 'Linear command palette · Vercel docs at night',
       sample: '> sudo make_it_rain.sh',
@@ -2451,8 +2451,8 @@ app.get('/age-themes', (req, res) => {
       id: 'adult', age: '20-44', label: 'Adult',
       current: { bg:'#0a0c12', panel:'#161a26', fg:'#e6eef8', accent:'#7c3aed', border:'#252b3d', font:'-apple-system, BlinkMacSystemFont', body:13, h:18 },
       best:    { bg:'#0a0c12', panel:'#161a26', fg:'#e6eef8', accent:'#7c3aed', border:'#252b3d', font:'-apple-system, BlinkMacSystemFont', body:15, h:18 },
-      swap: 'Body: 13px → **15px** (font unchanged)',
-      reasoning: '13px = VS Code code-editor size, fine for tables, wrong for prose UI. At 96dpi that\'s 1.4mm physical char height — below ISO 9241-303 ergonomics minimum of 1.5mm. Debate team flagged the originally proposed -apple-system → Inter swap as visually identical on macOS — kept -apple-system. The size bump is the only real change.',
+      swap: 'Body: 13px → **15px**; line-height baseline **1.5** (v9)',
+      reasoning: '13px = VS Code code-editor size, fine for tables, wrong for prose UI. At 96dpi that\'s 1.4mm physical char height — below ISO 9241-303 ergonomics minimum of 1.5mm. Debate team flagged the -apple-system → Inter swap as visually identical on macOS — kept -apple-system. v9 also adds `--font-line-height: 1.5` baseline CSS var (was implicit 1.2) to clear WCAG SC 1.4.12 text-spacing override target.',
       mood: 'refined · efficient · sophisticated · neutral · ergonomic',
       anchor: 'Linear · Notion · Vercel admin',
       sample: 'Active campaigns (24)',
@@ -2481,8 +2481,8 @@ app.get('/age-themes', (req, res) => {
       id: 'elder', age: '80+', label: 'Elder',
       current: { bg:'#000', panel:'#000', fg:'#fff', accent:'#ffff00', border:'#fff', font:'Helvetica Neue, Helvetica, Arial', body:26, h:42 },
       best:    { bg:'#000', panel:'#000', fg:'#fff', accent:'#ffff00', border:'#fff', font:'Atkinson Hyperlegible, Helvetica', body:28, h:44 },
-      swap: 'Font: Helvetica Neue → **Atkinson Hyperlegible**; Body: 26 → **28px**',
-      reasoning: 'Cataract-yellowed lens scatters blue/white — yellow-on-black avoids scatter (preserve). At 80+ letterform disambiguation (m/n/rn, 1/l/I, 0/O) is critical. Atkinson Hyperlegible is purpose-built. WCAG 2.1 large-text floor is 24px regular — 28px gives comfortable margin.',
+      swap: 'Font: Helvetica Neue → **Atkinson Hyperlegible**; Body 26→**28px**; btn-min-height **56px** (v9)',
+      reasoning: 'Cataract-yellowed lens scatters blue/white — yellow-on-black avoids scatter (preserve). At 80+ letterform disambiguation (m/n/rn, 1/l/I, 0/O) is critical. Atkinson Hyperlegible is purpose-built. WCAG 2.1 large-text floor is 24px regular — 28px gives comfortable margin. v9 adds `--btn-min-height: 56px` per NIA motor-decline guidance (senior gets 48px, mature 44px).',
       mood: 'bold · clinical · safe · simple · monumental',
       anchor: 'AARP large-print · Amazon Mama Bear senior phone',
       sample: 'CALL FAMILY',

← ffcec80 edit modal: large + live preview image at top + Adjust tab d  ·  back to Wallco Ai  ·  tick 12: process 64 new wikimedia thumbnail-mode rows (palet e637e49 →