Ugh I’m sorry to hear that. It’s super important not to make any changes to things that will be updated (plugins, themes, WordPress itself) as the WP update process deletes the old version and installs the new version.
If you’re adding snippets of CSS and PHP, these articles should help:
https://generatepress.com/knowledgebase/adding-css/
https://generatepress.com/knowledgebase/adding-php-functions/
If you’re adding custom post templates etc.. you should create a child theme which will hold all of your changes.
Then you can update the main theme without touching the child theme.