No. The answer is workers: process.env.CI ? 2 : undefined.
That runner is 2 vCPU shared. Four chromium contexts plus your server plus node means everything is starved, and Playwright's actionability checks are the first thing to notice - before it clicks, it waits for the element to be stable across two animation frames, visible, and not covered. On a machine where a frame takes 400ms, "stable for two frames" stops being instant and starts being a race with your own animations.
That is exactly your symptom: the button is there in the screenshot, and the click is waiting, because the thing it is waiting for is not visibility.
Expand the failed action in the trace and you will find the stability line rather than a "not found" line. Two workers on a 2-core box is usually faster in wall clock than four, because you stop paying for retries.