SEED Page
SEED anchors every player action. It does not expose a full shop or settings panel; it answers only three questions: how many Sparks do I have, how fast are they growing, and what happens if I touch the Seed now?

Atomic hierarchy
| Layer | Content | Refresh strategy | Interaction |
|---|---|---|---|
| Top arcs | SEED / SHOP / STAR | Page change | Tap label or rotate edge |
| Resource line | Sparks and CPS | Value change / low rate | None |
| Sync cursor | Lucky-beat angle | 30 FPS | Modifies lucky tap |
| Seed core | 160×160, six-frame loop | Authored 8 FPS phase | Tap and hold |
| Heat / combo | Short radial bars and values | State change | None |
| Bottom entry | TAP POWER | While expanded | Upgrade tap power |
| Feedback layer | Particles, callouts, tap FX | Event-driven | Never captures input |
Center hit region
The visible Seed is not the only clickable pixel. A broad safe region tolerates an imprecise thumb, while dragging more than 12 px from the center cancels the tap so edge rotation and swipes cannot also award Sparks.
Three-stage hold
The radial meter lights at 0.65 / 1.2 / 1.9 seconds. Economy commits only on release, so leaving the region or cancellation never creates half an action.

Elapsed time → one commit
The meter may update every frame, but economy resolves at one pointer-up point. A stage-specific burst continues afterwards; ambient, launch or a device sequence cancels it.
Tilt response
The Seed is split into horizontal pixel bands. QMI8658 X/Y produces integer displacement and shear per band. LOW/MID/HIGH cap displacement at (3,2) / (6,4) / (10,7), preserving 2×2 texels without interpolation. Tilt affects visuals and STAR RUSH, not ordinary tap coordinates.
Why battery is not persistent
v6 placed battery status on all three pages. v7 moves it into the black SETTINGS instrument because battery is not a per-second decision variable and should not compete with resource, navigation and edge-safe space.
