How would I update the Theme Settings for font selection

My scenario is I want to have a Font Paring page for the client to choose their option and update the Theme Styles with their selection.

I want to be able to show the updated fonts in a demo page of colours, headings and body text etc that the client can choose themselves.

I think I’ve found some code to do this, I just need to find out how to run it when the client clicks ‘selected’