def METHOD_NAME(self, app_type: str, preset: Preset) -> None:
    theme_dir = get_gtk_theme_dir(app_type)
    gtk_css_path = os.path.join(theme_dir, "gtk.css")
    if app_type == "gtk3":
        self.set_gtk3_theme()
    if not os.path.exists(theme_dir):
        os.makedirs(theme_dir)
    try:
        with open(gtk_css_path, "r", encoding="utf-8") as css_file:
            contents = css_file.read()
            css_file.close()
    except FileNotFoundError:
        logging.warning(f"gtk.css file not found in {gtk_css_path}. Generating new stylesheet.")
    else:
        with open(gtk_css_path + ".bak", "w", encoding="utf-8") as backup:
            backup.write(contents)
            backup.close()
    finally:
        with open(gtk_css_path, "w", encoding="utf-8") as css_file:
            css_file.write(generate_gtk_css(app_type, preset))
            css_file.close()