"The insistence on perfect age verification requires ending anonymity. Age verification to the level of buying cigarettes or booze does not. Flash a driver's license at a liquor store to buy a single-use token, good for one year, and access your favorite social media trash. Anonymity is maintained, and most kids are locked out. In the same way that kids occasionally obtain cigs or beer despite safeguards, sometimes they may get their hands on a code. Prosecute anyone who knowingly sells or gives one to a minor."
Also after I had a certain number of birthdays, clerks have stopped demanding my ID. So my purchases are pretty much anonymous.
The card should be issued by a private company, or ideally, multiple companies. And it should be a scratch-off card with a unique code, so that codes can't be tied to transactions.
EDIT: Because age verification tokens will likely be a commodity, low-margin business with little differentiation. So I assume companies will do stuff to make their token more attractive than the competition.
Grocery stores already sell age restricted items as well as gift cards that require activation. The state could issue "age check cards" that you could purchase for some nominal fee. That would require approximately zero additional infrastructure in most of the industrialized world. The efficacy would presumably be equivalent to that for alcohol and tobacco.
Consider a somewhat extreme example. A preprinted paper ticket with nothing more than a serial number on it. The clerk only visually inspects the ID document then enters the serial number into a web portal and hands it to you. When you go to "redeem" it the service relays the number back to the government server rather than your local device doing so directly. That would be far more privacy preserving than the vast majority of present day clearnet activity.
And I don't know how things work in other places, but I've never had my ID scanned when buying alcohol. These days clerks don't even ask me for ID because I obviously appear to be legal age.
In my proposal the token would be a scratch off card with a unique code. It can't be associated with the transaction.