mirror of
https://github.com/pbakaus/impeccable.git
synced 2026-09-11 21:57:14 +03:00
Default the color question to full palette and color the type boards
The default lives in each surface's fallback, not in the markup: show() checks whichever row the fallback names every time a tab opens, so the checked attribute on the option never survived. Persuade, Operate, and Read now open on Full palette. Experience keeps Restrained because four working colors are not on its allow list, and a default pointing at a blocked row would leave that tab with nothing selected. The font screen's boards also take the chosen palette under Restrained, which is the one answer no strategy block rewrites. They were drawing a page the palette had never reached while screen 03 kept its color under the same answer. Prepared with AI assistance (Cursor). Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -57,9 +57,11 @@ export const SURFACE_ANSWERS = {
|
||||
answered: 'colored {}',
|
||||
unanswered: 'no color strategy chosen yet',
|
||||
surfaces: {
|
||||
persuade: { allow: 'restrained committed full-palette drenched', fallback: 'committed' },
|
||||
operate: { allow: 'restrained committed full-palette', fallback: 'restrained' },
|
||||
read: { allow: 'restrained committed full-palette', fallback: 'restrained' },
|
||||
persuade: { allow: 'restrained committed full-palette drenched', fallback: 'full-palette' },
|
||||
operate: { allow: 'restrained committed full-palette', fallback: 'full-palette' },
|
||||
read: { allow: 'restrained committed full-palette', fallback: 'full-palette' },
|
||||
// The one surface that cannot take four working colors, so it keeps the
|
||||
// quietest answer its allow list has.
|
||||
experience: { allow: 'restrained committed drenched', fallback: 'restrained' },
|
||||
},
|
||||
},
|
||||
|
||||
@@ -3073,6 +3073,26 @@ body.picker-page {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* The type boards under Restrained, which is the answer no strategy block
|
||||
below rewrites. Left to the artboard's own defaults these slots sit on bone
|
||||
and the near-neutral surface step, so the font screen drew a page the chosen
|
||||
palette had never reached while the drawing on screen 03 kept its color under
|
||||
the same answer. Restrained still means mostly neutral: the mixes stay on the
|
||||
quiet end and the ground is untouched. Declared ahead of the strategy section
|
||||
so the three answers that do rewrite these slots still win. */
|
||||
.picker-preview-type {
|
||||
--pvs-ghost: color-mix(in oklab, var(--pv-primary) 14%, var(--pv-neutral));
|
||||
--pvs-ghost-edge: color-mix(in oklab, var(--pv-primary) 42%, var(--pv-neutral));
|
||||
--pvs-image: color-mix(in oklab, var(--pv-primary) 22%, var(--pv-neutral));
|
||||
--pvs-image-a: color-mix(in oklab, var(--pv-primary) 26%, var(--pv-neutral));
|
||||
--pvs-image-b: color-mix(in oklab, var(--pv-primary) 48%, var(--pv-neutral));
|
||||
--pvs-image-edge: color-mix(in oklab, var(--pv-primary) 40%, var(--pv-neutral));
|
||||
--pvs-accent-a: var(--pv-primary);
|
||||
--pvs-accent-b: color-mix(in oklab, var(--pv-primary) 62%, var(--pv-neutral));
|
||||
--pvs-accent-c: color-mix(in oklab, var(--pv-primary) 38%, var(--pv-neutral));
|
||||
--pvs-accent-d: color-mix(in oklab, var(--pv-primary) 20%, var(--pv-neutral));
|
||||
}
|
||||
|
||||
/* ============================================================
|
||||
The strategy, applied to the surface in the frame.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user