What problem does it solve? Flutter widgets built from custom-painted or composite surfaces contribute no accessibility semantics by default, and ad-hoc strings, clamped text scaling, or hard-coded domain nouns silently break screen readers, Voice Control, and localization. This Skill encodes the binding rules for what a widget says — semantics labels, headings, live regions, text scaling, and ARB message management — so every label, string, heading, date, and number format is correct for assistive technology and British English users. ## Core Features & Use Cases - Semantics enforcement: Rules for ShedTapTarget labels, headingLevel (never header:), live regions via Semantics(liveRegion: true), and bans on MergeSemantics, sortKey, SemanticsService.announce, and Material date/time pickers. - Text scaling and typography gates: Prohibits FittedBox, clamped text scalers, and font weights above w700, requiring rows to grow taller at 200% scale instead of shrinking glyphs. - ARB localization discipline: Every user-facing string is an ARB message with a description, domain nouns arrive as placeholders from terminologyProvider, dates are never all-numeric, and times are 24-hour HH:mm with provenance labels. - Use Case: When adding a new labelled button or changing a confirmation string in the Flutter app, apply this Skill to produce a semantics label containing the visible words, an ARB entry with a safety-rationale description, and en_GB date/number formatting that passes the 14-variant accessibility gate. ## Quick Start Apply the shed-accessibility-and-copy rules to review the semantics labels and ARB strings in the new pen board row widget I just added.