Files
proof-of-work/design/inspiration/red-accent-candidates.html
T
Keysat 7fda9ceb7e
CI / proof-of-work (Next.js app) (push) Waiting to run
CI / start9/0.4 (StartOS package code) (push) Waiting to run
design: extract document-as-is UI contract (DESIGN.md + DTCG tokens)
Case-B extract of the as-built dark UI into design/: 9-section DESIGN.md,
W3C DTCG tokens.tokens.json, brand/palette.css + assets, and inspiration/
provenance (incl. the rendered red-shade decision). Two owner calls layered
in: red elevated to the single brand accent (#DC2626), two-tier radius
(4px controls / 8px containers). AGENTS.md gains the read-before-UI Design
line + design/ in the layout tree; ROADMAP gains the design-checker cleanup
backlog. No UI code changed.
2026-06-19 12:14:51 -05:00

160 lines
6.6 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Space+Grotesk:wght@400;500;600;700&display=swap" rel="stylesheet">
<style>
* { margin:0; padding:0; box-sizing:border-box; }
body {
background:#0A0A0A; color:#fff;
font-family:'Space Grotesk', system-ui, sans-serif;
padding:36px 40px 44px;
-webkit-font-smoothing:antialiased;
}
.display { font-family:'Bebas Neue', sans-serif; letter-spacing:.05em; text-transform:uppercase; }
h1 { font-family:'Bebas Neue',sans-serif; letter-spacing:.06em; font-size:34px; }
.sub { color:#a1a1aa; font-size:13px; margin-top:4px; margin-bottom:26px; }
.row {
display:grid; grid-template-columns:200px 1fr; gap:28px;
align-items:center;
padding:22px 0; border-top:1px solid #27272a;
}
/* left: raw swatch + name */
.swatch { height:120px; border-radius:8px; }
.name { font-family:'Bebas Neue',sans-serif; letter-spacing:.06em; font-size:26px; margin-top:12px; }
.hex { color:#71717a; font-size:13px; font-variant-numeric:tabular-nums; }
/* right: vignette strip */
.vignette { display:flex; gap:20px; align-items:stretch; flex-wrap:nowrap; }
.card {
background:#18181b; border:1px solid #27272a; border-left:4px solid var(--a);
border-radius:8px; padding:14px 16px; width:230px;
}
.card .label { font-family:'Bebas Neue',sans-serif; letter-spacing:.12em; font-size:13px; color:var(--a); }
.card .h { font-family:'Bebas Neue',sans-serif; letter-spacing:.05em; font-size:22px; margin-top:6px; }
.card .stat { display:flex; align-items:baseline; gap:8px; margin-top:8px; }
.card .stat .n { font-size:30px; font-weight:700; font-variant-numeric:tabular-nums; }
.card .stat .d { color:var(--a); font-size:14px; font-weight:600; }
.col { display:flex; flex-direction:column; gap:12px; justify-content:center; }
/* nav active state */
.nav { display:flex; gap:18px; align-items:center; }
.nav a { font-family:'Bebas Neue',sans-serif; letter-spacing:.1em; font-size:14px; color:#71717a; padding-bottom:6px; }
.nav a.active { color:var(--a); border-bottom:2px solid var(--a); }
/* badge (accent wash) */
.badge {
display:inline-block; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.08em;
color:var(--a); background:color-mix(in srgb, var(--a) 15%, transparent);
border:1px solid color-mix(in srgb, var(--a) 45%, transparent);
padding:4px 10px; border-radius:4px;
}
/* buttons */
.btns { display:flex; gap:10px; }
.btn-primary {
background:#fff; color:#000; font-weight:700; text-transform:uppercase; letter-spacing:.08em;
font-size:12px; padding:9px 16px; border-radius:4px; border:none;
}
.btn-accent {
background:transparent; color:var(--a); border:1px solid var(--a);
font-weight:700; text-transform:uppercase; letter-spacing:.08em;
font-size:12px; padding:9px 16px; border-radius:4px;
}
.reflabel { font-size:10px; color:#52525b; text-transform:uppercase; letter-spacing:.1em; margin-top:6px; }
</style>
</head>
<body>
<h1>Proof of Work — red accent candidates</h1>
<div class="sub">All on the app background #0A0A0A. White stays the primary button (reference, same in every row); red is used only as an accent: labels, active nav, card edge, stat delta, ghost button, badge.</div>
<!-- A -->
<div class="row" style="--a:#EF4444">
<div>
<div class="swatch" style="background:#EF4444"></div>
<div class="name">A · Signal Red</div>
<div class="hex">#EF4444 · Tailwind red-500 (in-family)</div>
</div>
<div class="vignette">
<div class="card">
<div class="label">Personal Record</div>
<div class="h">Back Squat</div>
<div class="stat"><span class="n">142.5</span><span class="d">▲ +5kg</span></div>
</div>
<div class="col">
<div class="nav"><a class="active">Today</a><a>History</a><a>Programs</a></div>
<span class="badge">PR · Week 6</span>
<div class="btns"><button class="btn-primary">Save workout</button><button class="btn-accent">Refine</button></div>
</div>
</div>
</div>
<!-- B -->
<div class="row" style="--a:#DC2626">
<div>
<div class="swatch" style="background:#DC2626"></div>
<div class="name">B · Blood Red</div>
<div class="hex">#DC2626 · Tailwind red-600 (deeper)</div>
</div>
<div class="vignette">
<div class="card">
<div class="label">Personal Record</div>
<div class="h">Back Squat</div>
<div class="stat"><span class="n">142.5</span><span class="d">▲ +5kg</span></div>
</div>
<div class="col">
<div class="nav"><a class="active">Today</a><a>History</a><a>Programs</a></div>
<span class="badge">PR · Week 6</span>
<div class="btns"><button class="btn-primary">Save workout</button><button class="btn-accent">Refine</button></div>
</div>
</div>
</div>
<!-- C -->
<div class="row" style="--a:#FF3B30">
<div>
<div class="swatch" style="background:#FF3B30"></div>
<div class="name">C · Vermilion</div>
<div class="hex">#FF3B30 · hot orange-red</div>
</div>
<div class="vignette">
<div class="card">
<div class="label">Personal Record</div>
<div class="h">Back Squat</div>
<div class="stat"><span class="n">142.5</span><span class="d">▲ +5kg</span></div>
</div>
<div class="col">
<div class="nav"><a class="active">Today</a><a>History</a><a>Programs</a></div>
<span class="badge">PR · Week 6</span>
<div class="btns"><button class="btn-primary">Save workout</button><button class="btn-accent">Refine</button></div>
</div>
</div>
</div>
<!-- D -->
<div class="row" style="--a:#E11D48">
<div>
<div class="swatch" style="background:#E11D48"></div>
<div class="name">D · Crimson</div>
<div class="hex">#E11D48 · cooler, pink-edge (rose-600)</div>
</div>
<div class="vignette">
<div class="card">
<div class="label">Personal Record</div>
<div class="h">Back Squat</div>
<div class="stat"><span class="n">142.5</span><span class="d">▲ +5kg</span></div>
</div>
<div class="col">
<div class="nav"><a class="active">Today</a><a>History</a><a>Programs</a></div>
<span class="badge">PR · Week 6</span>
<div class="btns"><button class="btn-primary">Save workout</button><button class="btn-accent">Refine</button></div>
</div>
</div>
</div>
</body>
</html>