diff --git a/tasks/in-progress/35-the-site-reads-on-a-phone.md b/tasks/review/35-the-site-reads-on-a-phone.md similarity index 50% rename from tasks/in-progress/35-the-site-reads-on-a-phone.md rename to tasks/review/35-the-site-reads-on-a-phone.md index ab079bc..460c7bd 100644 --- a/tasks/in-progress/35-the-site-reads-on-a-phone.md +++ b/tasks/review/35-the-site-reads-on-a-phone.md @@ -1,6 +1,6 @@ # 35 — Make the site read on a phone -**Status:** In Progress +**Status:** Review **Assignee:** istos **Priority:** Medium — a public URL gets opened on phones whatever the design was drawn at @@ -71,3 +71,23 @@ the desktop design. Do this in the templates and stylesheet, with container queries or plain media queries — nothing here justifies a script. + + +--- + +## Work report — 2026-07-31 14:58 (Piper) + +contents gutter goes and its strip appears, tables become their own scrollers, and an unbreakable token in running text breaks. At 760px the sidebar goes and its menu appears, the type scale steps down (`--t-hero` 52→36, `--t-title` 40→30, and again at 480px to 31/26; `--display` stays Zilla Slab at every width), and everything a finger has to hit gets `min-height: var(--tap)` — a new 44px token. At 480px the padding tightens, the masthead and footer spacers drop so the rows wrap, body text goes 15→16px, and the hero buttons go full width. +- **`tests/test_site_responsive.py`** — new, 22 tests, four groups: every media query is a `max-width` below the design and the strips are `display:none` in the base sheet; the step that hides a column is the step that shows its strip, and the strips in the *built* pages carry the same links as the columns; a table scrolls inside itself with a `local`/`scroll` edge shadow and a long token stays inside its `pre`; and the site still ships no `.js` and no `