Make the armed reset a centred, unwinding ring in the button flash colour

The old confirmation ring was a scaling, fading border. It sat off-centre —
the ::before had no top/left, so it landed on its static position in the
grid rather than over the icon — and it read as a shrinking circle rather
than time running out.

It's now an SVG ring animated on stroke-dashoffset (0 to 113.1, the
circumference at r=18) and rotated -90deg to start at 12 o'clock, so it
unwinds like a progress ring in reverse over the same 2s as the timeout.
Explicitly centred on the button.

The stroke is currentColor against #reset.armed{color:var(--icon-hot)},
so it uses the pale flash every button already shows on :active instead of
the theme accent, and no longer changes with the colour setting.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-11 11:31:06 +02:00
co-authored by Claude Opus 5
parent 559b6cd335
commit 0b96eb824b
2 changed files with 23 additions and 11 deletions
+1 -1
View File
@@ -35,7 +35,7 @@ except installation and the service worker.
- The bar under the big time is the delay draining. When it empties you get a
soft tick and your reserve starts moving. That's the moment worth hearing.
- **Reset** returns to the starting position. It takes two taps: the first arms
the button — it turns your accent colour and a ring drains — and a second tap
the button — it lights up and a ring unwinds around it — and a second tap
within those two seconds does it. One stray thumb can't wipe a live game.
- **Pause** freezes mid-turn and resumes exactly where it stopped, delay
included. Opening settings pauses automatically, and leaves it paused so the