Intent: #4614 rewritten smaller. Its pull #4657 stayed red twice.
Done:
[ ] the one class="flag-form" in src/web/pages/flags.ts becomes class="row-fields", the §5d settings-rows form the other settings pages use (test/settings-visible.test.ts already requires row-fields on flags). Inputs and buttons stay as they are
[ ] the .flag-form rules leave src/web/style/content.ts, and its §5d line goes
[ ] a test fetches /settings/flags as an admin and asserts no flag-form, and that each flag still posts its value
Files: src/web/pages/flags.ts, src/web/style/content.ts, docs/DESIGN.md and one test.
Run bun scripts/design-lint.ts and bun test test/design-lint.test.ts before pushing; lower docs/design/baseline.json only where a count fell. In docs/DESIGN.md, delete only your classes' own lines from §5d (one class per line since the issue this waits for), so parallel pulls do not conflict. If a test you did not touch goes red, name it in the pull and do not fix it here.
Intent: #4614 rewritten smaller. Its pull #4657 stayed red twice.
Done:
class="flag-form"in src/web/pages/flags.ts becomesclass="row-fields", the §5d settings-rows form the other settings pages use (test/settings-visible.test.ts already requiresrow-fieldson flags). Inputs and buttons stay as they are.flag-formrules leave src/web/style/content.ts, and its §5d line goesflag-form, and that each flag still posts its valueFiles: src/web/pages/flags.ts, src/web/style/content.ts, docs/DESIGN.md and one test.
Run
bun scripts/design-lint.tsandbun test test/design-lint.test.tsbefore pushing; lower docs/design/baseline.json only where a count fell. In docs/DESIGN.md, delete only your classes' own lines from §5d (one class per line since the issue this waits for), so parallel pulls do not conflict. If a test you did not touch goes red, name it in the pull and do not fix it here.