A) under 13 years of age, or B) at least 13 years of age and under 16 years of age, or C) at least 16 years of age and under 18 years of age or D) at least 18 years of age.
that's it. The OS can decide how it wants to implement that, but personally I'd literally just do get_age_bracket_enum(now() - get_user_birthday());
The bill is here: https://leginfo.legislature.ca.gov/faces/billTextClient.xhtm...
The uproar seems to be extremely overblown.