Files
spa/TRM_Design_System-handoff/trm-design-system/project/preview/comp-inputs.html
T
julian 8223a566e4 docs: import TRM design handoff + defer adoption to phase 3.8
A design handoff bundle generated by Claude Design (claude.ai/design)
on 2026-05-02. Defines the Bloomberg/F1-pit-wall aesthetic for TRM:
- ink-on-paper base + race-flag red accent (#E8412B)
- square-edged everything, sharp printed offset shadows
- mono numerics (JetBrains Mono) for any changing value
- Goldplay (real licensed font, three weights in bundle fonts/)
- four surfaces designed: dashboard / leaderboard / mobile / marketing
  (SPA scope is the first two)

The bundle is committed in-tree at TRM_Design_System-handoff/ so 3.8
has the full source material when it picks the work up. Includes:
- Top-level + project READMEs (the design spec)
- chats/chat1.md (intent + iteration history)
- colors_and_type.css (token set, drop-in for Tailwind 4 @theme)
- fonts/ (Goldplay regular/semibold/bold)
- ui_kits/ (HTML prototypes per surface)
- preview/ (per-token visual reference cards)

Updated phase-3-dogfood-readiness/README.md task 3.8 row to point at
the bundle and document the recommended approach (retheme shadcn via
CSS variable overrides + Tailwind 4 @theme, not replace).

Why deferred: foundational tokens are non-blocking for Phase 1 (login
+ placeholder home) and Phase 2 (live map without chrome). Applying
them now would either delay dogfood-blocking work or land partial
styling that gets reworked when 3.8 lands the full pass.
2026-05-02 19:11:57 +02:00

43 lines
1.9 KiB
HTML

<!doctype html><html><head><meta charset="utf-8">
<link rel="stylesheet" href="../colors_and_type.css">
<link rel="stylesheet" href="_card.css">
<style>
body { padding: 24px; }
.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { display: flex; flex-direction: column; gap: 6px; }
.field label { font-family: var(--font-display); font-size: 11px; font-weight: 600; letter-spacing: 0.10em; text-transform: uppercase; color: var(--ink-3);}
.input {
border: 1px solid var(--ink); background: var(--paper); height: 36px;
padding: 0 12px; font-family: var(--font-mono); font-size: 14px; color: var(--ink);
border-radius: 2px;
}
.input:focus { outline: 2px solid var(--flag); outline-offset: 2px; }
.input.error { border-color: var(--flag); }
.hint { font-family: var(--font-mono); font-size: 11px; color: var(--ink-4); }
.err { color: var(--flag); }
.select { appearance: none; background-image: linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%); background-position: calc(100% - 14px) 14px, calc(100% - 9px) 14px; background-size: 5px 5px; background-repeat: no-repeat; padding-right: 30px;}
</style></head>
<body>
<div class="overline" style="margin-bottom:14px;">Inputs</div>
<div class="grid">
<div class="field">
<label>Bib number</label>
<input class="input" value="247" />
<div class="hint">Tabular figures — leading zeros optional</div>
</div>
<div class="field">
<label>Wave</label>
<select class="input select"><option>Wave 1 · Elite</option></select>
</div>
<div class="field">
<label>Start time</label>
<input class="input" value="09:15:00.000" />
</div>
<div class="field">
<label>Bib number</label>
<input class="input error" value="—" />
<div class="hint err">Bib already in use by Wave 2</div>
</div>
</div>
</body></html>