614e1ee46965c23f8b511bf855676588a6115eaf
Researched it instead of guessing again. Launched from the homescreen, WebKit resolves the DYNAMIC viewport and every env() inset once against a provisional geometry and does not revisit them until the geometry is "exercised" — a rotation. That is the whole bug, and it also explains why listening for a signal could never fix it: nothing fires, so there is nothing to observe. Two known workarounds, both applied. Standalone has no toolbars, so 100vh is correct AND stable from the first frame — dvh only exists for the browser's disappearing toolbars, so it now applies only there. And toggling viewport-fit off and back on at boot forces WebKit to recalculate, without the user rotating anything. Countdown moved up off the ad boards — the strip's own projected line is its ceiling now, so it stays in the stands whatever the phone does to the layout, with a 1px shadow to carry it over the crowd. Sources: gist.github.com/fozzedout/5e77925381991a9570151550992baf14 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Languages
JavaScript
75.2%
Python
15.8%
HTML
7.3%
Shell
1.4%
Swift
0.2%