Reconcile questionnaire branch with main's site split and redesign

Post-rebase repairs after main moved 226 commits (site/ split to the
private impeccable-site repo, DESIGN.md spec now eight sections, register
extraction replaced by extractSectionValue, seed mode rewritten):

- document.md: transplant this branch's seed pipeline (assets, interview,
  visual cues, picker) onto main's rewritten file; adopt the canonical
  section vocabulary. The interplay with new-work's workshop is left for
  PR review.
- picker: vendor kinpaku tokens/kit CSS, hero art, and favicon under
  picker/ (site/ no longer exists here); drop the sharp resize step and
  ship the compressed JPEG directly; declare astro/sharp-free deps.
- picker-server: read the register via extractSectionValue('Register')
  since extractRegister is gone from context.mjs.
- palette.mjs / utils.js / test-suites.mjs / package.json / release.mjs:
  rebuild as main's version plus this branch's additions, undoing hunks
  the -X theirs replay had clobbered.
- craft.md / shape.md: reset to main (this branch's net change was zero).
- progress bar: animate transform instead of width (design hook finding).

Validation: bun run build green (prose validators clean), bun run test
198/198, picker-server suite 7/7.

AI-assisted (agent-implemented, maintainer-directed).

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Abdul Wahab
2026-09-01 10:02:39 +05:00
co-authored by Cursor
parent c19c349fc6
commit d64909decf
14 changed files with 2002 additions and 364 deletions
+8 -4
View File
@@ -1,5 +1,7 @@
@import "../../site/styles/kinpaku-tokens.css";
@import "../../site/styles/kinpaku-kit.css";
/* Vendored from the site's design system (now in the private impeccable-site
repo) so the picker stays self-contained. Update by re-copying from there. */
@import "./vendor/kinpaku-tokens.css";
@import "./vendor/kinpaku-kit.css";
/* Scoped subset of the reset imported by site/styles/main.css through
site/styles/tokens.css (lines 12-27). */
@@ -170,10 +172,12 @@ html.light .ks-button.ks-button-primary:active {
.picker-progress span {
display: block;
width: calc(var(--progress, 0) * 100%);
width: 100%;
height: 100%;
background: var(--ks-champagne);
transition: width 180ms var(--ks-ease);
transform: scaleX(var(--progress, 0));
transform-origin: left;
transition: transform 180ms var(--ks-ease);
}
#picker-form[data-current="01"] .picker-progress {