Rules that keep the arcade coherent
Accessibility, focus, target size, motion and content rules that components cannot quietly break.
Contract playground
Toggle the three non-negotiable interaction rules.
Non-negotiable rules
Every keyboard-reachable control shows a high-contrast focus ring.
Important mobile actions use a minimum 44×44px interaction target.
Icon-only controls expose a useful accessible name.
Reduced motion removes decorative loops and spatial transforms.
Semantic component contract
| Component | Element | Keyboard | State |
|---|---|---|---|
| Navigation item | Link | Enter | aria-current |
| Command | Button | Space / Enter | disabled / aria-pressed |
| Tabs | Tablist + tabs | Arrow keys | aria-selected |
| Dialog | Native/owned dialog | Tab + Escape | focus trap + return |
| Toast | Live region | Dismiss button | semantic tone + copy |
Content and voice lab
Pets67 names the product once. Commands use direct verbs, feedback names the state before the consequence and task-critical copy wraps before truncation.
Otvertka-67
Practical repair companion for intermittent bugs and careful release work.
| Area | Example | Rule |
|---|---|---|
| Primary actions | Install pet · Use today · View details | Direct verb + object |
| Recovery | Retry package · Clear filters · Show all companions | Name the next useful step |
| Feedback | Pet added to loadout · Package unavailable | State first; consequence second |
| Empty states | No exact pet match | Explain without blaming the user |
| Identity | Pets67 · Visual System | One product name; descriptors stay separate |
| Stress copy | Long pet names and translated-length labels | Wrap before truncating task-critical text |
Keyboard journey lab
Tab through the real controls. The live readout makes focus order and the non-swipe dismissal alternative inspectable.
Do / Don’t
Let semantics, focus order and readable copy carry the task before animation or decoration is added.
Do not encode state by color alone, hide focus, or make a moving pet the only explanation of system status.