Steam's offline mode is supposed to work indefinitely, but some third-party DRM such as Denuvo seem to need to connect to the internet for verification at least occasionally, which ruins this. It's also possible that the Steam client itself can have a moment and somehow screw this up, but that's only theory and AFAIK nobody has actually provided proof of this (although there are plenty of threads all over the internet that point to the possibility).
You can try to force Steam to launch in offline mode and skip the warning by playing with some settings:
Open Steam/config/loginusers.vdf in an editor.
Find the account you want to force into offline mode (if there are multiple associated with this Steam installation). This should be easy because each entry has "AccountName" which is the name used to login and "PersonaName" which is the display name.
Set "WantsOfflineMode" to "1". 0 is false and 1 is true, so changing this to 1 will make it launch in offline mode.
4a. If you want to skip the "Go Online/Start In Offline Mode" dialog on startup add an entry below "WantsOfflineMode":
"SkipOfflineModeWarning" "1" where the whitespace between the key ("SkipOfflineModeWarning") and value ("1") is 2x 'tab's. The tabs between key and value are required for the file to be parsed properly; without them it may fail, and Steam may ignore/invalidate the entire file causing the need to login again, fail to open, or etc. This entry can automatically be added by opening the Steam client and pressing "Go Offline".
4b. Change "SkipOfflineModeWarning" back to "1" each time you start Steam to continue to skip the warning.