Public: anyone can read this; the crew can change it.
The dead `.headroom` rules leave src/web/style/content.ts and docs/DESIGN.md §5d, and no markup changes #5711
Check · Review · Land · Live done — Landed and live in production.
The dead `.headroom` rules are gone from `src/web/style/content.ts`, and so is the `.headroom` line in §5d of `docs/DESIGN.md`, its list of one class per line. The settings page's headroom form had already moved to the shared `.row-fields` class, so those rules no longer styled anything. Page behaviour does not change.
shipped production is serving it deploy d79f016
The unused .headroom CSS is gone. It was the last thing in the stylesheet left from the subscription headroom form, which .row-fields has drawn since before this pull. No markup changes.
src/web/style/content.ts: removed the.headroomrule, its.inputwidth, and the two phone-width rules that matched.row:has(.headroom). No page renders that class anymore, so none of these rules applied to anything.docs/DESIGN.md§5d: removed the.headroomentry from thestyle/content.tspage furniture list.test/subscriptions.test.ts: the pool page test now also fetches the stylesheet. It checks that.row-fieldsis there and.headroomis not, so the rule can't come back unnoticed. The test's existing checks on the markup are unchanged.
Main had changed §5d to put one class per line, which conflicted with this branch. In the merge I kept main's version of both files and took out only the .headroom line and rules. The headroom route, its form field and headroomPct are untouched. bun scripts/design-lint.ts, the type check, test/subscriptions.test.ts and the design audit, lint and map tests pass.
To try it, open /settings/subscriptions on the preview as an admin. Each subscription's headroom input sits in its row's .row-fields form and wraps under the name on a phone, the same as before.
🤖 Generated with Claude Code
The dead .headroom rules are gone from src/web/style/content.ts, and so is the .headroom line in §5d of docs/DESIGN.md, its list of one class per line. The settings page's headroom form had already moved to the shared .row-fields class, so those rules no longer styled anything. Page behaviour does not change.
The branch already holds the current main (35d1086b): merge commit 85e35fa4 resolved the conflicts in docs/DESIGN.md and src/web/style/content.ts. It took main's version of each and still dropped the .headroom line and rules, and it is already on the forge. Merging main again said "Already up to date", so this run has no new commit to push.
The diff against main is three files:
src/web/style/content.ts: the eight lines of.headroomrules are deleted.docs/DESIGN.md: the.headroomentry leaves the §5d list.test/subscriptions.test.ts: the subscriptions page test now fetches the served stylesheet and checks that it contains.row-fieldsand does not contain.headroom, so the old rules can't come back unnoticed.
To check it: bun scripts/design-lint.ts reports no colour, size or component added outside the system, and bun test test/subscriptions.test.ts passes (17 tests). In the preview, open /settings/subscriptions as an admin: the headroom form on each subscription row should look the same as before.
🤖 Generated with Claude Code
Dead CSS removal, no markup change. The preview stylesheet has no .headroom and still carries .row-fields; the headroom form in src/web/pages/subscriptions.ts uses row-fields, so nothing visible changes on a phone or without JS. DESIGN.md §5d entry removed consistently, and the new test asserts the served CSS so the rule cannot return. Next: (1) check the other §5d class lists for entries with no rule or markup, since this one drifted; (2) consider a generic design-lint check that every listed class appears in the served CSS.
The unused .headroom CSS is gone from src/web/style/content.ts, and its line is gone from §5d of docs/DESIGN.md. No markup changes. The subscriptions page's headroom form already uses .row-fields, so these rules styled nothing.
src/web/style/content.ts: removes the.headroomrule, its.inputwidth, and the two phone-width rules that match.row:has(.headroom).docs/DESIGN.md§5d: removes the.headroomline from thestyle/content.tspage furniture list. Main now lists one class per line, so this is a single-line deletion.test/subscriptions.test.ts: the pool page test also fetches the stylesheet. It checks that.row-fieldsis there and.headroomis not, so the old rules can't come back unnoticed. The existing checks on the markup are unchanged.
Since the last push nothing changed on main, so this run pushed nothing new. The branch contains main at 35d1086b, merges cleanly and is approved. The headroom route, its form field and headroomPct are untouched. bun scripts/design-lint.ts, the type check, test/subscriptions.test.ts and the design audit, lint and map tests passed on the last push.
To try it, open /settings/subscriptions on the preview as an admin. Each subscription's headroom input sits in its row's .row-fields form and wraps under the name on a phone, as before.
🤖 Generated with Claude Code
The unused .headroom CSS is gone from src/web/style/content.ts, and its line is gone from §5d of docs/DESIGN.md. No markup changes. The subscriptions page's headroom form already uses .row-fields, so these rules styled nothing.
src/web/style/content.ts: removes the.headroomrule, its.inputwidth, and the two phone-width rules that match.row:has(.headroom).docs/DESIGN.md§5d: removes the.headroomline from thestyle/content.tspage furniture list.test/subscriptions.test.ts: the pool page test also fetches the stylesheet. It checks that.row-fieldsis there and.headroomis not, so the old rules can't come back unnoticed. The existing checks on the markup are unchanged.
Main hasn't moved since the last push, so this run pushed nothing new. The branch already contains main at 35d1086b and merges cleanly. The headroom route, its form field and headroomPct are untouched. When the branch was last pushed, bun scripts/design-lint.ts, the type check, test/subscriptions.test.ts and the design audit, lint and map tests all passed.
To try it, open /settings/subscriptions on the preview as an admin. Each subscription's headroom input sits in its row's .row-fields form and wraps under the name on a phone, as before.
🤖 Generated with Claude Code
The unused .headroom CSS is gone from src/web/style/content.ts, and its line is gone from §5d of docs/DESIGN.md. No markup changes. The subscriptions page's headroom form already uses .row-fields, so these rules styled nothing.
src/web/style/content.ts: removes the.headroomrule, its.inputwidth, and the two phone-width rules that match.row:has(.headroom).docs/DESIGN.md§5d: removes the.headroomline from thestyle/content.tspage furniture list.test/subscriptions.test.ts: the pool page test also fetches the stylesheet. It checks that.row-fieldsis there and.headroomis not, so the old rules can't come back unnoticed. The existing checks on the markup are unchanged.
Main hasn't moved since the last push, so this run pushed nothing new. The branch contains main at 35d1086b and merges cleanly. The headroom route, its form field and headroomPct are untouched. bun scripts/design-lint.ts, the type check, test/subscriptions.test.ts and the design audit, lint and map tests passed when the branch was last pushed.
To try it, open /settings/subscriptions on the preview as an admin. Each subscription's headroom input sits in its row's .row-fields form and wraps under the name on a phone, as before.
🤖 Generated with Claude Code
The unused .headroom CSS is gone from src/web/style/content.ts, and its line is gone from §5d of docs/DESIGN.md. No markup changes. The subscriptions page's headroom form already uses .row-fields, so these rules styled nothing.
src/web/style/content.ts: removes the.headroomrule, its.inputwidth, and the two phone-width rules that match.row:has(.headroom).docs/DESIGN.md§5d: removes the.headroomline from thestyle/content.tspage furniture list.test/subscriptions.test.ts: the pool page test also fetches the stylesheet. It checks that.row-fieldsis there and.headroomis not, so the old rules can't come back unnoticed. The existing checks on the markup are unchanged.
Main hasn't moved since the last push, so this run pushed nothing new. The branch contains main at 35d1086b and merges cleanly. The headroom route, its form field and headroomPct are untouched. When the branch was last pushed, bun scripts/design-lint.ts, the type check, test/subscriptions.test.ts and the design audit, lint and map tests all passed.
To try it, open /settings/subscriptions on the preview as an admin. Each subscription's headroom input sits in its row's .row-fields form and wraps under the name on a phone, as before.
🤖 Generated with Claude Code
The unused .headroom CSS is gone from src/web/style/content.ts, and its line is gone from §5d of docs/DESIGN.md. No markup changes. The subscriptions page's headroom form already uses .row-fields, so these rules styled nothing.
src/web/style/content.ts: removes the.headroomrule, its.inputwidth, and the two phone-width rules that match.row:has(.headroom).docs/DESIGN.md§5d: removes the.headroomline from thestyle/content.tspage furniture list.test/subscriptions.test.ts: the pool page test also fetches the stylesheet. It checks that.row-fieldsis there and.headroomis not, so the old rules can't come back unnoticed. The existing checks on the markup are unchanged.
Main hasn't moved since the last push, so this run pushed nothing new. The branch contains main at 35d1086b and merges cleanly. The headroom route, its form field and headroomPct are untouched. When the branch was last pushed, bun scripts/design-lint.ts, the type check, test/subscriptions.test.ts and the design audit, lint and map tests all passed.
To try it, open /settings/subscriptions on the preview as an admin. Each subscription's headroom input sits in its row's .row-fields form and wraps under the name on a phone, as before.
🤖 Generated with Claude Code
The dead
.headroomrules are gone fromsrc/web/style/content.ts, and so is the.headroomline in §5d ofdocs/DESIGN.md, its list of one class per line. The settings page's headroom form had already moved to the shared.row-fieldsclass, so those rules no longer styled anything. Page behaviour does not change.The branch already holds the current
main(35d1086b): merge commit85e35fa4resolved the conflicts indocs/DESIGN.mdandsrc/web/style/content.ts. It took main's version of each and still dropped the.headroomline and rules, and it is already on the forge. Mergingmainagain said "Already up to date", so this run has no new commit to push.The diff against
mainis three files:src/web/style/content.ts: the eight lines of.headroomrules are deleted.docs/DESIGN.md: the.headroomentry leaves the §5d list.test/subscriptions.test.ts: the subscriptions page test now fetches the served stylesheet and checks that it contains.row-fieldsand does not contain.headroom, so the old rules can't come back unnoticed.To check it:
bun scripts/design-lint.tsreports no colour, size or component added outside the system, andbun test test/subscriptions.test.tspasses (17 tests). In the preview, open/settings/subscriptionsas an admin: the headroom form on each subscription row should look the same as before.🤖 Generated with Claude Code
Continues #5711