diff --git a/docs/RENDERING_AUDIT.md b/docs/RENDERING_AUDIT.md new file mode 100644 index 0000000..5b17386 --- /dev/null +++ b/docs/RENDERING_AUDIT.md @@ -0,0 +1,192 @@ +# Rendering audit & page-layout features + +Written 2026-08-16. Covers the checklist/code/table rendering bugs found from two +editor screenshots, the fixes, the new author-facing layout controls, and what is +still open. + +--- + +## 1 · The bug that started it + +Every checklist in the editor was rendering as columns — bold runs in one column, +inline code broken to one character per line in another. + +One declaration caused it: + +```css +.scripto-doc .task-list-item { display: flex } +``` + +A flex container promotes **every inline child to a flex item**. So `**bold**`, +`` `code` ``, and each text run became its own column. `word-break: break-word` +on inline code then let those items shrink to their min-content width, which for +a code token is a single character. + +Replaced with normal inline flow and a hanging checkbox: + +```css +.scripto-doc li.task-list-item { list-style: none } +.scripto-doc .task-list-item input[type='checkbox'] { + font: inherit; /* the HTML export ships no Tailwind preflight */ + margin-inline: -1.55em 0.5em; /* hangs into the list's own indent */ +} +``` + +Five further defects fell out of the same rule and were fixed with it: + +| Symptom | Why | +| --- | --- | +| Nested checklists rendered sideways | A nested `