```python
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
import time

def setup_driver():
    """
    Настройка и инициализация WebDriver с использованием webdriver_manager.
    Возвращает экземпляр драйвера.
    """
    chrome_options = Options()
    chrome_options.add_argument('--headless')
    chrome_options.add_argument('--disable-gpu')
    chrome_options.add_argument('--no-sandbox')

    service = Service(ChromeDriverManager().install())
    driver = webdriver.Chrome(service=service, options=chrome_options)
    return driver


def build_xpath_selector(parent_classes):
    """
    Строит XPath-селектор для родительских элементов, содержащих все указанные классы.
    Использует метод contains(@class, 'class-name') для каждого класса.

    :param parent_classes: Список классов родительского элемента
    :return: Строка с XPath-селектором
    """

    xpath_selector = "//div" + \
        "".join([f"[contains(@class, '{cls}')]" for cls in parent_classes])
    return xpath_selector


def get_timer_value(driver):
    """
    Получает текущее значение таймера с веб-страницы.

    :param driver: экземпляр Selenium WebDriver
    :return: строковое представление значения таймера или None в случае ошибки
    """
    try:
        # Обновите XPath в соответствии с фактической структурой вашей страницы
        timer_xpath = "//div[contains(@class, 'transition-opacity') and contains(@class, 'duration-1000') and contains(@class, 'ease-out') and contains(@class, 'flex-col')]//span[2]"
        timer_element = driver.find_element(By.XPATH, timer_xpath)
        timer_text = timer_element.text.strip()
        return timer_text
    except Exception as e:
        print(f"Ошибка при получении значения таймера: {e}")
        return None


def main():

    driver = setup_driver()

    try:

        url = "https://www.tf2easy.com/double"
        driver.get(url)
        print(f"Открыта страница: {url}")

        parent_classes = [
            "flex",
            "items-center",
            "justify-center",
            "w-[85%]",
            "max-[1900px]:w-[98%]",
            "h-[62px]",
            "double-last-rolls-parent-bg",
            "rounded-bl-[14px]",
            "rounded-br-[14px]"
        ]

        xpath_selector = build_xpath_selector(parent_classes)
        print(f"Используемый XPath-селектор: {xpath_selector}")

        wait = WebDriverWait(driver, 15)

        wait.until(EC.presence_of_element_located((By.XPATH, xpath_selector)))
        print("Найден хотя бы один родительский элемент.")

        parents = driver.find_elements(By.XPATH, xpath_selector)
        print(f"Найдено родительских элементов: {len(parents)}")

        # Инициализация счетчиков (при необходимости)
        count_black = 0
        count_red = 0
        count_gold = 0

        while True:
            # Ждем, пока таймер достигнет 0.00
            print("Ожидание завершения таймера...")
            while True:
                timer_text = get_timer_value(driver)
                if timer_text == "0.00":
                    print("Таймер достиг 0.00! Запускаем проверку кнопок.")
                    break
                elif timer_text is None:
                    print("Не удалось получить значение таймера. Пробуем снова.")
                else:
                    print(f"Текущее значение таймера: {timer_text}")
                time.sleep(0.5)  # Интервал проверки таймера

            # Выполняем проверку кнопок
            try:
                # Обновляем список родительских элементов (возможно, DOM изменился)
                parents = driver.find_elements(By.XPATH, xpath_selector)
                print(f"Найдено родительских элементов для проверки: {len(parents)}")

                # Сброс счетчиков перед новой проверкой
                count_black = 0
                count_red = 0
                count_gold = 0

                for index, parent in enumerate(parents, start=1):
                    black_buttons = parent.find_elements(By.CSS_SELECTOR, ".black-button")
                    red_buttons = parent.find_elements(By.CSS_SELECTOR, ".red-button")
                    gold_buttons = parent.find_elements(By.CSS_SELECTOR, ".gold-button")

                    count_black += len(black_buttons)
                    count_red += len(red_buttons)
                    count_gold += len(gold_buttons)

                    print(f"Родительский элемент {index}:")
                    print(f"  Черных кнопок: {len(black_buttons)}")
                    print(f"  Красных кнопок: {len(red_buttons)}")
                    print(f"  Золотых кнопок: {len(gold_buttons)}")

                print("\nИтоговые результаты проверки кнопок:")
                print(f"Количество черных кнопок: {count_black}")
                print(f"Количество красных кнопок: {count_red}")
                print(f"Количество золотых кнопок: {count_gold}")
            except Exception as e:
                print(f"Произошла ошибка при проверке кнопок: {e}")

            # Ждем, пока таймер начнет новый цикл (например, сбросится на 15.00)
            print("Ожидание начала нового цикла таймера...")
            while True:
                timer_text = get_timer_value(driver)
                if timer_text and timer_text != "0.00":
                    print(f"Таймер сброшен: {timer_text}. Готовимся к следующей проверке.")
                    break
                time.sleep(0.5)

    except Exception as e:
        print(f"Произошла ошибка: {e}")

    finally:
        driver.quit()
        print("Браузер закрыт.")


if __name__ == "__main__":
    main()
```
Максимально оптимизируй код, максимально синхронизируй его, максимально улучши, произведи рефакторинг. Сделай дополнительные изменения которые улучшат код.