Many thanks to those who have tested this recent version. All the currently-identified errors affecting game play have been corrected, and some minor enhancements have been made. (No corrections have been made yet to the stats being reported after a game ends. Yes, I know there are a number of them. No, you don’t need to report them.)
Some of the changes and fixes:
This information has been moved to the Play clock page.
Available to each player once each half. (It is also available in overtime.)
This is also described on the Play clock page.
This button becomes available to a player any time they are behind by more points than the number of minutes remaining in the game. When selected, a confirmation box is displayed.

When confirmed, the game ends immediately.

To confirm a resignation, replace the “No” with “Yes” and select “OK”.
Selecting “Cancel” means you are not resigning.
Selecting “OK” with a “No” response also cancels the resignation.
It is now completely up to the players to identify when overtime has ended.
This button appears during overtime.

When either player selects this button, the other player is asked to confirm that the game has ended. If the second player confirms the selection, the game is ended. If denied, the button is removed until after the next play is resolved.

If the second player confirms the selection, the game is ended.
The following issues have been corrected.
Wrong Down after the free kick after a safety.
The handling of penalties during kickoffs.
The handling of Long Gain returns after a Fumble during a kickoff.
Fix FG chart selection when changing from a 2-pt Try to a PAT.
When you challenge a player to a game and the system has a record that you and your opponent have a league game to be played, you will get a new selection panel after selecting “Issue challenge”.
This new selection panel allows you to identify this game as your league game or as a game being played “for fun”.

If you select “Issue League challenge”, then your opponents confirmation box will look like this:

If you select “Play for fun”, then their confirmation box will look like this:

If the player issuing the challenge doesn’t select the “League challenge” box, then the player being challenged should reject the challenge if they want this game to be “Official”
Once a game has been selected as a Tournament Game, it must be played to completion. Failure to complete a game the first time will result in a warning. Failure to complete a game the second time can be considered a forfeit.
A game played without being identified as a Tournament Game will not be counted as an official result.
If you do not get the League challenge dialog, this means that the person you are challenging is not someone you are scheduled to play. If you believe this to be incorrect, let me know. Do not try to start a tournament game without seeing that option.
The lobby has a “Join Call” button that opens boxes for turning the camera and microphone on and off. Everyone in the lobby is together in a group call. When two players start a game, they are moved to a private call.
Players are not required to use this facility, however, it’s being supplied as an option for those not wishing to use other conferencing options for communicating during the game.
Until this feature is implemented, it is up to the players to figure out the best way to communicate during play.
The end-of-game statistics page still has a number of errors. (These don’t factor into anything, they are provided purely for entertainment. As such, they’re very low on the priority list of things being worked on.)