fix(styles): use exact on-dark tokens, not near-miss ones
Six token-gap markers were closed by pointing the value at a palette token that does not match it. Their own comments said so -- "between --blue and --accent", "lighter than --muted on dark bg", "no token matches" -- and were removed along with the values: #5b7098 -> var(--accent) #7c78a8, blue-grey to purple #9eb0bb -> var(--muted) #697b89, light-on-dark to dark-on-light #b8c8d2 -> var(--line) #d8dee2 #c9d5dc -> var(--line) #d8dee2 #eceaf5 -> var(--paper) #f5f4f1, violet-tinted to warm #f0eef8 -> var(--paper) #f5f4f1 All six are text or surfaces on --ink and --accent, where the light-background palette is the wrong family: --muted is illegible on --ink. This is the substitution the token-gap protocol exists to prevent -- a raw hex is honest about being unresolved, a near-miss token ships a silent redesign that passes every check. Adds six exact on-dark tokens and points the six declarations at them. design-system-keeper owns tokens.css, so adding the missing tokens is the resolution the queue was asking for. Also makes the four overlay tokens exact. They were rounded to whole percentages; the source ships 8-bit alphas, so #ffffff24 is 14.1176%, not 14%. The names stay rounded, the values do not. Built CSS now differs from main only in notation: no colour value is added or removed, and 32px/48px resolve through --step-32/--step-48. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -783,7 +783,7 @@ fix(api): scope session query</code></pre>
|
|||||||
.stage-detail p,
|
.stage-detail p,
|
||||||
.skill-detail p {
|
.skill-detail p {
|
||||||
max-width: 650px;
|
max-width: 650px;
|
||||||
color: var(--line);
|
color: var(--ink-line);
|
||||||
font-size: var(--step-13);
|
font-size: var(--step-13);
|
||||||
line-height: 1.7;
|
line-height: 1.7;
|
||||||
}
|
}
|
||||||
@@ -814,7 +814,7 @@ fix(api): scope session query</code></pre>
|
|||||||
.skill-detail code,
|
.skill-detail code,
|
||||||
.example-grid code,
|
.example-grid code,
|
||||||
.copy-lab code {
|
.copy-lab code {
|
||||||
color: var(--line);
|
color: var(--ink-code);
|
||||||
font:
|
font:
|
||||||
11px/1.7 'DM Mono',
|
11px/1.7 'DM Mono',
|
||||||
monospace;
|
monospace;
|
||||||
@@ -860,14 +860,14 @@ fix(api): scope session query</code></pre>
|
|||||||
box-shadow: inset 6px 0 var(--gold);
|
box-shadow: inset 6px 0 var(--gold);
|
||||||
}
|
}
|
||||||
.skill-list button.active small {
|
.skill-list button.active small {
|
||||||
color: var(--paper);
|
color: var(--accent-paper-active);
|
||||||
}
|
}
|
||||||
.skill-detail {
|
.skill-detail {
|
||||||
display: grid;
|
display: grid;
|
||||||
align-content: center;
|
align-content: center;
|
||||||
padding: 50px clamp(30px, 5vw, 80px);
|
padding: 50px clamp(30px, 5vw, 80px);
|
||||||
color: var(--paper);
|
color: var(--paper);
|
||||||
background: var(--accent);
|
background: var(--accent-surface);
|
||||||
}
|
}
|
||||||
.skill-detail header {
|
.skill-detail header {
|
||||||
display: grid;
|
display: grid;
|
||||||
@@ -941,7 +941,7 @@ fix(api): scope session query</code></pre>
|
|||||||
}
|
}
|
||||||
.copy-lab > div p {
|
.copy-lab > div p {
|
||||||
max-width: 420px;
|
max-width: 420px;
|
||||||
color: var(--paper);
|
color: var(--accent-paper);
|
||||||
line-height: 1.6;
|
line-height: 1.6;
|
||||||
}
|
}
|
||||||
.copy-lab article {
|
.copy-lab article {
|
||||||
@@ -1024,7 +1024,7 @@ fix(api): scope session query</code></pre>
|
|||||||
font-size: var(--step-1);
|
font-size: var(--step-1);
|
||||||
}
|
}
|
||||||
.deeper nav small {
|
.deeper nav small {
|
||||||
color: var(--muted);
|
color: var(--ink-muted);
|
||||||
font:
|
font:
|
||||||
9px 'DM Mono',
|
9px 'DM Mono',
|
||||||
monospace;
|
monospace;
|
||||||
|
|||||||
+19
-5
@@ -38,11 +38,25 @@
|
|||||||
--step-00: 10px;
|
--step-00: 10px;
|
||||||
--step-09: 9px;
|
--step-09: 9px;
|
||||||
|
|
||||||
/* Overlays */
|
/* On-dark palette. These are the values the source actually uses on the
|
||||||
--white-14: rgb(255 255 255 / 14%);
|
--ink and --accent surfaces. They are not near-misses of the palette
|
||||||
--white-23: rgb(255 255 255 / 23%);
|
above: --muted is a dark-on-light value and is illegible on --ink, and
|
||||||
--white-25: rgb(255 255 255 / 25%);
|
--paper is warm where the text over --accent is violet-tinted. Each one
|
||||||
--white-31: rgb(255 255 255 / 31%);
|
is the exact hex the legacy stylesheets ship. */
|
||||||
|
--ink-muted: #9eb0bb;
|
||||||
|
--ink-line: #b8c8d2;
|
||||||
|
--ink-code: #c9d5dc;
|
||||||
|
--accent-paper: #eceaf5;
|
||||||
|
--accent-paper-active: #f0eef8;
|
||||||
|
--accent-surface: #5b7098;
|
||||||
|
|
||||||
|
/* Overlays. The percentages are the exact 8-bit alphas the source ships
|
||||||
|
(#ffffff24, #ffffff3a, #ffffff40, #ffffff50), not rounded to whole
|
||||||
|
numbers — the names are rounded, the values are not. */
|
||||||
|
--white-14: rgb(255 255 255 / 14.1176%);
|
||||||
|
--white-23: rgb(255 255 255 / 22.7451%);
|
||||||
|
--white-25: rgb(255 255 255 / 25.098%);
|
||||||
|
--white-31: rgb(255 255 255 / 31.3725%);
|
||||||
|
|
||||||
/* Breakpoints */
|
/* Breakpoints */
|
||||||
--bp-sm: 560px;
|
--bp-sm: 560px;
|
||||||
|
|||||||
Reference in New Issue
Block a user