Design HQ · homebase · kit chrome · 2026-08-20

MystFlo Design HQ — one language, every surface

The homebase for every mockup. Tabs below are the same chrome as design-foundations.html — not a second system. Cards open the HTML next to this hub. On a phone, Desktop 1180 shrinks to fit the screen as a slide deck — swipe between whole screens. On a computer it stays full size. Portrait still opens the 375 frames so you can scroll. Size buttons still override. Nothing builds without a mockup, your sign-off, and a pixel review against it.

black & white luxury white/gray glows only lantern = needs you flat hairline rows single-theme dark
§ Core — how design works here

Ritual, layout tiers, and the system file. Pixel tokens live in design-foundations.html · Core 0 is the V3 contract.

                     /design  (STRICT ritual — every non-trivial design task)
┌──────────────────────────────────────────────────────────────────────────────┐
│ 1 PRE-FLIGHT   read kit decisions+lessons · foundations · canon · archetypes │
│ 2 FRAME        intent · principle · constraints                              │
│ 2b BRIEFS      Chief Product + Chief Researcher (+ domain agent)            │
│                ≤10-line insight briefs — insights land BEFORE pixels         │
│ 3-4 OPTIONS    Chief Designer (Fable) sketches → Peyton picks                 │
│ 4b MOCKUP      Chief Designer authors/updates the HTML mockup here            │
│    GATE        mobile + tablet + desktop, every state → Peyton signs off     │
│                ── nothing builds without it ──                               │
│ 5 BUILD        Platform Frontend Dev (Sonnet) implements the mockup verbatim  │
│ 6 SCREENSHOTS  375px first → tablet → desktop, scored vs the mockup frames   │
│ 6b REVIEW      Chief Designer (Fable) reviews rendered pixels — blockers stop │
│ 7 MEMORY       decisions → kit ledger · misses → kit lessons                 │
└──────────────────────────────────┬───────────────────────────────────────────┘
                                   ▼
                     /ship  gate 4.4d  (every UI-surface PR)
        Chief Designer (Fable) BLOCKING review — screenshots vs mockup;
        no mockup coverage = automatic blocker · then quality/security/CTO

· Hierarchy: Peyton (CPO) owns every sign-off → Chief Designer (Fable) owns design judgment, mockup authorship, both review gates → Chief Product + Chief Researcher feed briefs → Platform Frontend Dev (Sonnet) executes, never designs
· Scope changes update the SAME mockup first, republish at the same URL, then build
· Written version: docs/design/design-artifacts/README.md · docs/architecture/agents/agent-orchestration.md §5

Mobile · 375px — designed FIRST, scored first Tablet · ~768px Desktop · 1280px+ — the authored composition

· Passes desktop but fails a smaller tier = FAIL, not a partial pass
· Every artifact carries mobile + desktop frames · tablet frames landing progressively, required in all NEW mockups

3757681280+

These three are samples along a continuum, not the only sizes that exist. Content — spacing, type, card widths, gaps — scales smoothly at every width in between, the way a photo scales rather than jumps. Structure is different: a rail collapsing into a drawer, a row turning into a stack, a grid losing a column — those have no in-between state, so they change only at a few fixed, deliberate widths and never drift anywhere else.

1 · Foundations→ 2 · Assistant lifecycle→ 3 · App shell→ 4 · Overlays→ then pages in any order
Tokens · type · rows
$41.20
A1 · System
Design system foundations
The reference sheet every other artifact obeys — color, type, rows, badges, pills, buttons. Mark / Thread / Seal / lantern live here. Platform, Website, and Social dialects share the same core.
§ Mark — Thread, Seal, lantern

The drawable kit is authored once, in the foundations file. This hub does not redraw it.

Core 0 · Mark
Mark · Thread · Seal
Kit · system
Open Mark in design foundations
Stem in frame. Edge · you vs Edge · double. Lantern is needs-you, never a status, never on the logo.
§ Platform — the app

MF-Platform · dark-glass dialect · frames in docs/design/design-artifacts/ · reviewed against design-canon.md · tabbed walkthrough, same chrome as Brain.

Wrkspc
Acct
Preview
$41.20 · Peyton⇥
Page content· · ·
A2 · System
App shell Built
2026-10-17 — Brain-agent clean-up: the first-run coach chip counts (4 of 8, never a %, R-e); step 5 points at the Brain chat (the Teach sheet is retired) and its done rule needs a ruling; H1 / H2 pages behind are owed a redraw on the new Brain page.
Header, left rail, and footer for every logged-in page. Header is one quiet line — balance · name · sign-out — with a PREVIEW badge. Rail groups Workspace / Support / Account. Covers desktop, collapsed rail, mobile drawer, and every failure that stays inside the shell.
← Billing · Wallet activity
Top-up+$50.00
Support run−$0.08
A3 · System
Overlay choreography
2026-10-17 — Brain-agent clean-up: frame 5’s worked example (“Edit in Brain” as a 40/60 slide-over) is chipped Example owed — the Brain is a full-page redirect (09-12 + R27).
Which overlay to use — do something ⇧ bottom sheet · go somewhere ⇦ slide-over · confirm = centered dialog — plus stacking, the z-map, and the system toast.
A4 · Page flow
Explore Built
2026-10-17 — Brain-agent clean-up: frame 10 (Brain-gate blocked) is chipped Redraw owed · R27 — one consent row + redirect, not per-question doors.
Browse → card → detail sheet → activation wizard (Personalize → Connect → Try) → live in Pulse. Persona tabs are hosts-first.
On-Brand Support142 runs
Retreat Bookingpaused
Waitlist + Launchidle
A5 · Page flow
Pulse Built
Overview, Attention inbox, lists, run detail, and empty states. Frame 1 / 1-m carry the one evidence-based follow-up-languages remind row in the Attention inbox; 3-chat carries the revisit card (guest language token + English-fallback meta line). 2026-08-22 IA redesign: Health tile retired for one lantern Attention pattern (statement · info line · View issue only, red=error/lantern=needs-attention); Runs + Activity merged into one 4th tab with ALL/Assistant/Brain scopes and a shared row grammar; Breakdown table keeps all run statuses with a 5-chip filter + pagination; per-assistant modal Pulse tab reuses the same activity list + pagination. 2026-08-23: added `#f4d2` (needs-attention toggle ON, desktop, populated) — the merged Activity tab's filtered state was never drawn as its own frame (the filtered-and-empty case still reuses frame 2b, unchanged). 2026-08-23 HQ Overview chrome (#3917): lifecycle tabs sit header-right with the lit underline; Overview is 3 tiles + the full inbox (every Band A/B row — no cap; hidden bookings and escalations have nowhere else to go) + Breakdown — never the retired “Your assistants” card wall. Overview tab lantern chip is escalations only (signed 2026-08-22). Activity empty (frame 2b) keeps the feed header, a quiet 0 events count, and a Source · Event · When field header so the founder knows what will land; the quiet line lives in the first ledger row, left-aligned to Pulse. 2026-08-24: assistant-detail Pulse ledger (frames 3 / 3b / 3-m) newest row is Guest needs you — AI wasn’t sure · lantern · View issue → Issue sheet `#f1q`; I handled it stays in the sheet. 2026-08-24: `#f1q` is the Issue sheet for chat leftovers — same structure as 4b (title Issue → badge + assistant → details; lantern + I handled it). Residual Guest question labels retired. 2026-08-24: assistant-detail View issue stays on the instance (`#f3q` peer sheet). Error sheet one verb follows the owning rule (connection → Reconnect). Retry + technical logs retired. 2026-08-27: branded flyer QR card + chat/support share (v1.33) — `#f3` / `#f3-m` Save image is Mark + MystFlo + program name + QR at 2048×2560; `#f3-chat` / `#f3-chat-m` fills On-Brand Support Quick-actions with a direct `wa.me/{phone}` + the same card (CTA Scan to chat); `#f3-card` is the downloaded PNG composition. 2026-10-01 (#4897, awaiting sign-off): addendum #f1p — the booking row in the inbox gains a lantern “Says they paid” badge + “Told the assistant” line (slice 1), a quiet “Not received” verdict (slice 2), and a “says they paid” roster status.
Building your Brain · working
You · saltandcedar.pt + rates-2026.pdf
Your Brain · 3 drafts ready — confirm on the Book
Which is your main business? · in chat
A6 · Page flow
Brain Partly built
The Brain page as a conversation + the Book. Tabs: Brain agent (opens on what’s left to build — one status chip per frame — then Start here, the three core screens, and one shelf per PRD stage 0–4: the pinned line, the thread, one composer, the right column in counts, the docked composer on the Book, the R27 activation redirect) · Playbook (the 13.4 editorial Book, the Book with drafts, the surviving draft → confirm maps, the examples) · More (components, future, backlog, the register of every retired frame). Spec: prd-pl-brain-agent.md (R1–R32) + prd-pl-brain.md; ledger: parity-brain.md.
2026-10-17e — audit clean-up: Build · Loop · Edit tabs retired (aliases keep old links landing), 129 pre-agent frames carry SUPERSEDED chips on the Register, the kept class-b frames fold into Stage 1 / 2 with Redraw owed, 1.6 is back on Examples; the example playbooks are owed a redraw on the new Book (follow-up).
SavedPermanent
A7 · Page flow
Team Not yet built
Saved (pre-activation) and Permanent (post) tabs, both detail modals, empty states. Reuses the Pulse card.
WhatsAppConnected
Google SheetsReconnect
StripePending
A8 · Page flow
Connects Not yet built
Catalog → picker → OAuth / key → Connected. Reconnect and Pending are the only two verbs. WhatsApp duplicate-number error is field-scoped, not a form-wide fail. WhatsApp detail carries Follow-up languages (6b): English included · added languages Approved / Pending Meta approval · one + Add language control · $10 one-time per language per account, wallet debit at confirm · ask line on WhatsApp connect-success (3a). Built in #5419: 6b-retry also lists the 429 and no-server-answer sentences the build ships.
Alerts · Slack
# retreat-alerts6
# general42
Public channels only for now
A8 · Component
Slack channel picker Built
The escalation-channel dropdown after the public-only scope cut: open list, the one-line public-only note, the silent auto-join, and the join failure that names what it costs her. The open dropdown and post-tap states on-brand-support 9e never drew.
Wallet balance
$41.20
Top-up+$50.00
A9 · Page flow
Billing Built
Wallet overview, add-funds sheet, activity drill-overs, and the receipt stack — desktop and mobile. 2026-08-22: run-log table retired (lives on Pulse now); Recent activity renamed Wallet activity and trimmed to money movements only; a dormant low-balance nudge (gated on prepaid, off today) moved here from Pulse's Overview.
A10 · Page flow
Usage Not yet built
KPIs, spend chart, period picker. 2026-08-22: Cost breakdown rebuilt as a real table (Assistant/Runs/Run fees/AI actions/Combined/% columns) using the Pulse Breakdown grammar, split into By-assistant/AI-actions tabs; decorative progress bars dropped; mobile keeps all columns via horizontal scroll; two distinct empty states (no assistants yet vs. zero spend this month). 2026-08-23: Assistant column uses Pulse #XYZ chips (last 3 of display_id — never the full ASST-… dump); 375 chip-omit retired; frames 1c / 3-t are drawn 768 shells (collapsed 64px rail, 2×2 KPI).
NamePeyton
Emailpeyton@mystflo.com
Member since2026
A11 · Page flow
Account & guest Not yet built
Account fields, guest-mode banner, the signup gate, waitlist, credential-recovery strip — the guest-to-member journey.
How does billing work?+
What connects to what?+
Is my data private?−
A12 · Page flow
Support surfaces Not yet built
Wishlist, Feedback, Support, FAQ, About, Legal — six quiet pages in the same shell. Feedback review frames live in shell.html. Desktop frames; mobile not yet drawn.
/feedback · quiet column
General platform○
Assistant-specificYour feedback…Submit
A12b · Page flow
Feedback Route shipped
Review inside shell.html: form, sent (Seal), guest (Mark). Thread under the title. Header is Private Beta + Feedback. Do not use feedback.html.
§ Assistants — lifecycle + per-assistant flows

The master structure first, then each public assistant that has a full-flow mockup. Filter the flow cards by what the assistant does (type) and who it serves (persona) — chips combine, and the untagged placeholder card always stays visible.

ExploreTeamPersonalizeConnectTryPulseBilling
M1 · Master structure
Assistant lifecycle — every surface, one generic assistant
2026-10-17 — R27: the Brain Check door is a redirect to the full Brain page (ao-s1-activate-redirect → -rail → -ready). #sec-5d / #sec-14d carry SUPERSEDED chips; the Brain-destination redraw on #sec-5 / #sec-5c / #sec-14 is owed (chipped Redraw owed · R27). The 09-12 note below is the superseded takeover.
2026-09-12 — #4714 Add/Edit-in-Brain door: full-screen takeover, not a 60/40 split (Peyton ruling). #sec-5d / #sec-14 (1) redrawn — the Book (with the Teach bar) covers the whole viewport when opened from a Brain Check row, landed on the specific chapter the row names; the assistant sheet stays mounted underneath, unseen, and reappears with the row already re-read on Close. #sec-14 (2)/(3) Connects/funds stay genuine 60/40. Ledger: parity-assistant-lifecycle.md addendum 2026-09-12. The path every assistant takes — Explore → Team → Personalize → Connect → Try → live on Pulse → Billing → reactivation. Primary build contract; per-assistant files inherit it. Personalize opens with How you sound (#sec-4a). Share from Connect stays inside the Brain pane — stacked, not a nested 40/60. The Pulse tab is one template, typed right-slot content (#sec-9b · #sec-9b-x · #sec-9b-r · #sec-9b-k); Records (Attendees / Orders / Signups) are a slot in the Pulse card, the FIRST item of that right slot, and a nested scrollable sheet (#sec-8d · #sec-9b-r · #sec-9e) — never a full-width band, a page, or a fifth tab. A separate nested sheet (#sec-9f) carries the tab's fuller activity history. Post-activation header is the four-line contract (#sec-9g / #sec-13g-m) — subject, type + id, status + price + live-since, activity — drawn once here and inherited by every per-assistant file. Post Personalize is the locked mirror (#sec-9c / #sec-13c-m): the pre-activation layout at rest, form column locked, preview column unchanged. Wallet-empty grace window on chat assistants (#sec-8e · #sec-8e-t · #sec-8e-d, locked 2026-09-06, target behaviour pending #4522): the issue sheet names the days left while messages still reach her on Slack, then reads differently once relaying stops on day 16 — status line, badge and amber stay D-3 verbatim in both states.
Type
Persona
card → live → monitored
01 guest DMs → 02 Brain answers → 03 Slack-on → 04 channel → ◎ Pulse per request
F1 · Chat · General
On-Brand Support — full flow
2026-10-17 — Brain-agent clean-up: 5c (“Edit in Brain” 60/40) SUPERSEDED by ao-s1-activate-redirect; 4b chipped Redraw owed · R27 — this is the R27 assistant.
Re-signed 2026-08-29 (Peyton rulings). Catalog card → Personalize (one quiet How you sound · Warm Host (default) · Edit in Brain → row-peer leads the form — frames 3 / 3b / 3t; the voice CARD with trait pills + guardrails is scoped out of the assistant UI and stays in Brain / playbook) / Connect (channel, plus the full Brain Check — D-1 holds) / Try → live WhatsApp thread → one Slack + Pulse request per unhandled topic. Slack-on, default ON, instant-save toggle — no confirm modal. Off is Pulse-only. Overview is understand-only — What it does → How it works → Key benefits, byte-identical pre and post (R28), no “Your setup” read-back for any template (supersedes the 2026-08-11 lock, PR #3399; pulse.html frame 3 redrawn to match). Post Personalize (9d / 9d-m) redrawn as “pre at rest” — saved topics as chip groups, no history sections. Founder: Discover → Evaluate → Activate → Monitor. Guest: Trigger → Interact → Outcome. Post Personalize (#sec-9d) is read-only — chips carry no remove control, no add-topic, and the Slack notify renders as state text, not a switch. Personalize frames carry the read-only WhatsApp connected · This assistant's follow-ups · … · Edit → row (per-assistant status, not the account list) and the two message badges (Instant · any language / Meta pre-approved).
card → Personalize → guest DM → Pulse
01 required date → 02 booking capture → 03 payment relay (fixed) → 04 confirmation/reminder → ◎ Pulse
F2 · Booking · Workshop host
Workshop Booking — proposed flow Partly built
2026-10-17 — Brain-agent clean-up: the Connect tab’s Brain row (“Edit in Brain →”) is chipped Redraw owed · R27 — one Get <assistant> ready → row that redirects to the full Brain page.
2026-10-08 — #5311 one button (Peyton): "Activate both" is dropped; frame C and its variants use the same "Activate — $x per booking" as frame E, standard sub-line; the Support box, union Brain row, dual wallet line and locked Connect add-on stay. 2026-10-05 — #5311 phase 2 Booking comes with Support (Peyton: hard refusal). #sec-3s / #sec-3s-t / #sec-3s-m frames A–E: Personalize heads-up only when Support isn't live; Connect ends with a locked "Add-on: On-Brand Support" row (reads Active when Support is live); Try reads back both and offers the one Activate button, same as when Support is live (Paused / Stopped / Brain-short variants). Copy provisional until Peyton signs off the frames. Support pause blocked under a live booking: assistant-lifecycle.html. Catalog card → Personalize → guest DM → activation → Pulse. Booking share rail is full wa.me + Copy, short wa.me/{digits} + Copy short, and QR + Download QR — never hidden while WhatsApp is unconnected. Guest thread: invite names the program + date, paid submit thanks first then Pay now, free RSVP confirms in chat, and two live cards on one number get a name+date list (sec-9 Mode D). WhatsApp reminders required; email optional. Post-activation detail sheet lives in the artifact (sec-8b). Attendees: a slot in the Pulse card, a block in the Pulse tab, and a nested scrollable sheet with every state (sec-13) — no standalone page. Personalize now draws Start time (required) beside End time (optional) on one row — stacked at 375 — with the "before your start time" hint that #4616 ships, now placed inside the End cell itself with End cleared to a placeholder while stale (sec-3 / sec-3b). Category 01 order matches the live schema: name → date → price/seats → time pair → Timezone (new) → Location (required, new) → Google Maps link (optional, new); Photo stays in 04a. Guest invite bubble now shows date · time · location before the tap line, with a photo-header alt-state when Photo is set (#4570). Try/success now also draws the honest state for a workshop/event row that failed to seed — "Your workshop details didn't save," retry, bookings/reminders paused until it saves, plus a Pulse "Needs your attention" revisit row if dismissed (sec-try-seed-failed, desktop + 375-in-tier-m) — NOT BUILT, filed as #4634. Payment vehicles redrawn INSIDE 02 · How guests pay (Peyton ruling 2026-09-10): a two-vehicle checkbox group — link, QR, or both — under the Pay-in-full / Free-RSVP radio, both inputs required when both are ticked, Free RSVP folds the group away; 04a Messages is now one numbered flow in guest order (invite → form → Payment ask "Scan the QR to pay, or use the link below." → confirmation → reminder), rail beats tied to rows; both sent = one QR-image bubble with the link on its own caption line (sec-3 / sec-3b) — SPEC-CHANGED · #4703 · not built, supersedes the single-choice radio + separate 04b block still live in prod.
card → Personalize → Launch now → guest DM
01 3-question setup → 02 make it richer → 03 pre-sale/sold-out → 04 ⚡ Launch now (tier-cap + US-pause aware) → ◎ Pulse
F3 · Broadcast · General
Waitlist + Launch — proposed flow Not yet built
2026-10-17 — Brain-agent clean-up: the Connect tab’s Brain row (“Edit in Brain →”) is chipped Redraw owed · R27 — one Get <assistant> ready → row that redirects to the full Brain page.
TMPL-WAITL1. Three-question setup plus launch channels. Launch Now shows WhatsApp tier cap, US pause, and wallet cost. Founder: Discover → Activate → Monitor. Subscriber: Trigger → Interact → Outcome.
Discover destination deck → Overview → Personalize → Connect → Try → Activated → Pulse 2-col
listing · website · Gmail · Instagram · flyer — copy on the destination, caption block under IG/flyer, then 01 coming-soon card → 02 program facts + destination-deck preview → 03 Brain Check → activation writes v1 → Pulse deck LEFT + accordion RIGHT → Google Doc / copy
F4 · Content generation · Workshop / Retreat / Event host
Program Launch Kit — full journey Partly built
2026-10-17 — Brain-agent clean-up: the Connect tab’s Brain row (“Edit in Brain →”) is chipped Redraw owed · R27 — one Get <assistant> ready → row that redirects to the full Brain page.
TMPL-WMKT01 / RTLK01 / EVLK01. Catalog → Personalize (write a kit) → Brain Check → activation writes v1 → Pulse to review and rewrite. Workshop / Retreat / Event are separate cards — no founder-facing swap (ADR-035). Discover opens on the destination deck. IG captions and flyer carry a caption block under the graphic (every caption + flyer body, each with Copy). Pulse desktop is two columns (deck left, kit right); 375 stacks. Activity re-home (2026-08-21): a chrome-preview block below the Take-it-with-you stack — its own hairline section, never inside the delivery stack — first five rows open, See all → opens Pulse's Activity tab.
Explore → detail → Personalize → Connect → Try → Pulse → overdue verdict → guest WhatsApp
01 beta card → 02 roster + deposit/balance + relay link + sign-off → 03 read-only bindings → 04 one real test → ◎ Pulse chase feed → Mark paid · Extend · Release
F5 · Booking · Retreat host
Retreat Booking — full journey Beta
2026-10-17 — Brain-agent clean-up: Connect (3 / 9) Brain Check doors chipped Redraw owed · R27; the AI Model · coming later row conflicts with ADR-037 — flagged to Chief Writer / Chief Product, copy untouched.
2026-10-08 — #5311 one button (Peyton): Retreat 4s uses the single Activate button, standard sub-line. 2026-10-07 — #5311 phase 2 Retreat Try with Support (Peyton-signed). #sec-4s / #sec-4s-m: when Support isn't live, the Retreat box keeps booking rows only, then the "Switching on with it" Support box (Greeting + Routes, no Name row), then ONE Brain + Wallet box, then the same single Activate button. TMPL-RTBK01. Deposit and balance, T-30/14/7 chase, overdue verdict (Mark paid · Extend · Release). Payments relay through the founder’s own link. Shares the booking link rail (full + short + QR, noun “spot”) on its Pulse tab. Sibling of Workshop Booking. Attendees follow the engine shape — Pulse-card slot, Pulse-tab block, nested sheet — drawn on the master and Workshop Booking, referenced here.
Explore → detail → Personalize → Connect → Try → Pulse → guest WhatsApp
01 required date → 02 booking capture → 03 payment relay (fixed) → 04 confirmation/reminder → ◎ Pulse — same frames as Workshop Booking, event nouns
F6 · Booking · Event host
Event Booking — full journey Beta
2026-10-17 — Brain-agent clean-up: the Connect tab’s Brain row (“Edit in Brain →”) is chipped Redraw owed · R27 — one Get <assistant> ready → row that redirects to the full Brain page.
TMPL-EVBK01. Sibling card on the Program Booking Engine (ADR-035) — same per-date capture, payment relay, and reminder flow as Workshop Booking; only the program nouns change. Engine mechanics read by reference from the Retreat Booking PRD. Own file since #4460 (2026-08-06) — the 2026-08-26 "rides Workshop Booking's file" note is stale, corrected here. Attendees (sec-13): a slot in the Pulse card, a block in the Pulse tab, a nested scrollable sheet — same frames, event nouns. Personalize gains the paired Start / End time row and its stale-time hint (#4616), same as Workshop — hint now lives inside the End cell, End cleared while stale. Category 01 order: name → date → price/currency → seats → time pair → Timezone (new) → Location (required, new) → Google Maps link (optional, new). The post-activation locked mirror (sec-8c) splits its old combined "date · time" line into read-only Start/End rows and shows the read-only "This is set before the start time." note when End is stale. Guest invite bubble shows date · time · location, with a photo-header alt-state when Photo is set (#4570). Try/success also gains the event-details-didn't-save state (sec-try-seed-failed, desktop + 375-in-tier-m) plus its Pulse revisit row, same card shape as Workshop — NOT BUILT, filed as #4634. Same #4703 payment redraw as Workshop Booking (shared engine/field) — vehicle checkbox group inside 02 · How guests pay, both required when both ticked, 04a messages as one guest-order flow, one QR bubble with the link in its caption when both are sent — SPEC-CHANGED · not built.
Standing placeholder
Catch-all for the next assistant flow.
F7 · Assistant flow
Remaining live assistants Not yet drawn
Every public assistant gets its own full-flow mockup, on the same pattern as On-Brand Support, before further UI work touches it.
Not yet published
§ Email

Letter gallery in Brand System V3 chrome. Dialect pixels also live on the Email tab of design-foundations.html.

V3 · paper white · one bronze CTA
MystFlo
28 active templates · Georgia headline · lantern-ink pill
E1 · Email
Email templates
28 active Resend letters in the light dialect — paper, Double Leaf, Thread, one bronze CTA. Inbox is not a MystFlo surface.
Website — marketing site

mystflo-website · full-token dialect, the parity reference · same core, page-flow mockups arrive as website design work goes mockup-first

Same core · website dialect
locked-scale visuals · Georgia display
W1 · Website
Website dialect
Website tokens inside the unified foundations file. Page-flow mockups arrive when website work goes mockup-first.
Social & marketing materials

Feed-legible mono-card dialect + deck treatment · direction-level today — detail earns its spec when those surfaces mature

Same core · feed dialect
high-contrast mono card · one focal line · no hairline subtlety at feed scale
S1 · Social / Marketing
Social & deck dialect
Feed-scale dialect inside the unified foundations file — what carries from the core and what changes at feed size.
§ Motion

Seal states, reduced-motion holds, and earned motion — authored in the foundations file.

Proposed · Motion
Seal · idle → mid → done
Kit · system
Open Motion in design foundations
Seal states and reduced-motion holds. Do not paint the halfway arc gold.
· Repo HTML is the source of truth — each artifact republishes from it at the same URL, so the board always shows the latest signed-off state
· Built by build agents from real page code · Chief Designer (Fable) canon review gates publishing
· Written companion: docs/design/design-artifacts/README.md