diff --git a/sandbox/md-graphics-demo/README.md b/sandbox/md-graphics-demo/README.md
index d8015da8e2..121197cbbf 100644
--- a/sandbox/md-graphics-demo/README.md
+++ b/sandbox/md-graphics-demo/README.md
@@ -1,283 +1,175 @@
-# Markdown Graphics — a pattern language
+# Inline graphics — a pattern language (no committed files)
-Diagrams, math, and maps that render on **github.com** straight from text — no
-uploaded screenshots, no binary drag-and-drop. Everything here lives in the diff,
-reviews as code, and regenerates deterministically.
+Graphics that render on **github.com** from **text alone** — nothing committed but
+this `.md`. No SVG, no PNG, no STL: if it isn't a fence or `$math$`, it's not here.
-Companion to `HAND.md` (code style) and `papers/VOICE.md` (prose). This file is
-the craft guide for *visual* explanation inside PRs, issues, and repo docs.
+Companion to `HAND.md` (code style) and `papers/VOICE.md` (prose). The craft guide
+for *visual* explanation that lives entirely in the diff.
> [!NOTE]
-> This page is also the live render test. Open it on github.com (or in this PR's
-> description) and every block below paints. In a plain editor you'll see the raw
-> fences — that's expected; Mermaid/math render server-side at GitHub.
+> This page is the live render test. On github.com every block paints; in a plain
+> editor you see raw fences — that's expected, GitHub renders them server-side.
---
-## The sanitizer boundary (read this first)
+## The inline palette (and its hard limit)
-GitHub runs all markdown through a sanitizer. Knowing what survives is the whole game:
+Text-only, this is everything you get:
-| Renders from text | Stripped / inert |
-|---|---|
-| ` ```mermaid ` diagrams | inline `` |
-| `$math$` and ` ```math ` | `data:` URI images |
-| ` ```geojson ` / ` ```topojson ` maps | `