Start animation on mount.
Preserves _start_time when the widget is remounted (e.g., after
being removed and re-added for repositioning) so the elapsed-time
counter doesn't reset. Repositioning via move_child avoids the
remount path entirely, but this guard keeps the behavior correct
if any caller ever falls back to remove + mount.