/* shop/static/shop/css/homepage_mega_menu.css */
/* _________________________________________Верхнє меню_____________________________________________ */
/* ____________________________________________________________________________________________________________________ */
/* ---- ОСНОВНА НАВІГАЦІЯ ---- */
.main-navigation-wrapper {
    background-color: #333333; /* Колір вашого меню */
}

.main-navigation-container {
    max-width: 1430px;
    padding: 0 15px;
    margin: 0 auto;
    background-color: #333333; /* Колір вашого меню */
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* position: relative; - не потрібно, якщо немає мобільного меню */
}

/* Логотип */
.site-logo-link {
    display: block;
}
.site-logo-img {
    height: 45px;
    display: block;
}



/* Контейнер меню (список посилань + телефон) */
.main-menu-content { /* Змінено клас */
    display: flex; /* На десктопі це flex */
    align-items: center;
    flex-grow: 1; /* Займає доступний простір */
    justify-content: flex-end; /* Вирівнює контент праворуч */
}

/* Основний список посилань */
.main-nav-list {
    display: flex;

    list-style: none;
    margin: 0 auto;
    padding: 0;
    gap: 80px;
}

.nav-list-item {
    /* Немає position: relative, бо немає дропдаунів */
}

.nav-list-link {
    color: #ffffff;
    font-size: 14px;
    background-color: transparent;
    border-radius: 5px;
    padding: 8px 15px;
    margin: 0 5px; /* Відступ між посиланнями */
    display: block;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.nav-list-link:hover {
    background-color: #ffffff;

}

/* Телефонний номер */
.header-phone-number-section {
    /* Стилі для вирівнювання, якщо потрібні */
}
.phone-number-text {
    font-size: 20px;
    color: #ffffff;
    display: block;
    padding: 0 10px;
}
.phone-number-text:hover {
    color: #f0f0f0;
}



/* ---- АДАПТИВНІСТЬ (Повне приховування на мобільних) ---- */
@media (max-width: 991px) { /* Стандартний breakpoint 'lg' */
    .main-navigation-wrapper {
        display: none; /* Приховати ВЕСЬ блок навігації на мобільних */
    }
}

/* _________________________________________Нижнє меню каталого з каруселю_____________________________________________ */
/* ____________________________________________________________________________________________________________________ */

/* НОВИЙ БЛОК: ОБГОРТКА ДЛЯ ФОНУ КНОПКИ "КАТАЛОГ ТОВАРІВ" НА ВСЮ ШИРИНУ */
.catalog-toggle-full-width-bg {
    background-color: #333333; /* Чорний фон на всю ширину екрану */
    width: 100%; /* Гарантуємо 100% ширини */
    padding: 5px 0; /* Додайте вертикальний паддінг, якщо потрібно */
}

/* НОВИЙ БЛОК: КОНТЕЙНЕР ДЛЯ КНОПКИ "КАТАЛОГ ТОВАРІВ", ЩОБ ВОНА БУЛА 70% ШИРИНИ ТА ЦЕНТРОВАНА */
.homepage-mega-menu-toggle-container {
    max-width: 1430px;
    justify-content: space-between;
    padding: 0 15px;
    margin: 0 auto;
    display: flex; /* Використовуємо flexbox, щоб вміст (кнопка) коректно вирівнювався */
     /* Вирівнюємо кнопку зліва всередині цього контейнера */
    align-items: center; /* Центруємо по вертикалі, якщо кнопка має різну висоту */
}


/* ДОДАНО: Стилі для обгортки іконки кошика */
.cart-icon-wrapper {
    position: relative; /* Важливо для позиціонування лічильника */
    margin-left: auto; /* Притисне іконку кошика до правого краю, але перед user-auth-menu */
    margin-right: 25px; /* Невеликий відступ між кошиком і кнопками користувача */
}

.cart-link {
    display: flex; /* Для вирівнювання іконки та лічильника */
    align-items: center;
    text-decoration: none;
    color: #ffbf00; /* Колір іконки кошика */
    transition: color 0.3s ease;
}

.cart-link:hover {
    color: #ffffff; /* Зміна кольору при наведенні */
    text-decoration: none;
}

.cart-icon {
    width: 24px;  /* Розмір іконки */
    height: 24px;
    /* stroke: currentColor; та fill: none; вже вказані в SVG, тому колір успадковується */
}

/* Стилі для лічильника товарів у кошику */
.cart-count {
    position: absolute;
    top: -8px; /* Підніміть вгору над іконкою */
    right: -8px; /* Зсуньте вправо */
    background-color: #ff531a; /* Червоний фон для акценту */
    color: white; /* Білий текст */
    font-size: 11px;
    font-weight: bold;
    border-radius: 50%; /* Кругла форма */
    padding: 2px 6px; /* Відступи всередині */
    min-width: 20px; /* Мінімальна ширина, щоб вмістити цифру 1 */
    text-align: center;
    line-height: 1.2; /* Вирівнювання тексту по центру */
    pointer-events: none; /* Щоб не перехоплював кліки по посиланню */
    display: none; /* Приховати за замовчуванням, якщо 0 товарів */
}


/* Основний контейнер меню (на головній сторінці) */
/* Цей контейнер тепер містить лише "homepage-mega-menu-dropdown" */
.homepage-mega-menu-container {
    position: relative; /* Можна залишити relative, якщо потрібно для інших внутрішніх елементів */
    font-family: Arial, sans-serif;
    max-width: 1430px;
    padding: 0 15px;
    margin: 0 auto;
    /* z-index: 1000; */ /* ЗАКОМЕНТУЙТЕ АБО ВИДАЛІТЬ ЦЕЙ РЯДОК - він більше не потрібен, якщо меню не накладається */
}



/* Стилі для кнопки "Каталог товарів" (видима) */
.homepage-mega-menu-toggle {
    background-color: #333333;
    color: #ffffff;

    padding: 10px 20px;
    cursor: default;
    font-size: 16px;
    font-weight: bold;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: background-color 0.3s ease;
    width: fit-content; /* Кнопка матиме ширину за вмістом, не розтягуючись */
    pointer-events: none; /* Це робить кнопку неклікабельною. Якщо має бути клікабельною, видаліть цей рядок. */
}

.homepage-mega-menu-toggle:hover {
    background-color: #008a00;
}

/* Стилі для списку кнопок входу/реєстрації/користувача */
.user-auth-menu {
    display: flex; /* Робить елементи списку горизонтальними */
    gap: 15px; /* Відстань між кнопками (використовує flexbox gap) */
    margin: 0; /* Прибираємо стандартні зовнішні відступи ul */
    padding: 0; /* Прибираємо стандартні внутрішні відступи ul */
    list-style: none; /* Забираємо маркери списку */
}


/* Стилі для самих посилань (кнопок) */
.user-auth-link {
    color: #ffffff; /* Колір тексту для кнопок користувача (як і для іконки) */
    text-decoration: none; /* Забирає підкреслення */
    font-size: 16px; /* Розмір шрифту */
    font-weight: bold; /* Жирний шрифт */
    padding: 5px 10px; /* Відступи всередині "кнопки" */
    border-radius: 4px; /* Закруглені кути */
    transition: background-color 0.3s ease, color 0.3s ease; /* Плавний перехід при наведенні */
    white-space: nowrap; /* Забороняє перенесення тексту на новий рядок */
}

/* Стилі для посилань при наведенні курсору */
.user-auth-link:hover {
    background-color: rgba(255, 255, 255, 0.1); /* Ледь помітний прозорий білий фон */
    color: #ffffff; /* Зміна кольору тексту на білий при наведенні */
    text-decoration: none; /* Гарантуємо відсутність підкреслення при наведенні */
}




/* Випадаюче меню (завжди видиме на десктопі, як частина дизайну) */
.homepage-mega-menu-dropdown {
    /* position: absolute; */ /* ВИДАЛІТЬ АБО ЗАКОМЕНТУЙТЕ ЦЕЙ РЯДОК! Це головна зміна */
    /* top: 100%; */ /* ВИДАЛІТЬ АБО ЗАКОМЕНТУЙТЕ ЦЕЙ РЯДОК */
    /* left: 0; */ /* ВИДАЛІТЬ АБО ЗАКОМЕНТУЙТЕ ЦЕЙ РЯДОК */
    width: 100%; /* 100% від свого батьківського .homepage-mega-menu-container (який є 70%) */
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    box-shadow: 0 8px 16px rgba(0,0,0,0.2);
    display: flex;
    opacity: 1; /* Залишаємо 1, бо меню завжди видиме */
    visibility: visible; /* Залишаємо visible, бо меню завжди видиме */
    transform: translateY(0); /* Залишаємо, якщо потрібно для трансформацій */
    pointer-events: auto; /* Залишаємо auto, щоб елементи всередині були клікабельні */
    height: 450px; /* Приклад: задаємо фіксовану висоту. Налаштуйте під свій дизайн. */
    overflow: hidden; /* Обрізати, якщо щось виходить за межі. Можливо, overflow-y: auto; буде краще, якщо вміст може бути довшим. */
}

/* Ліва колонка - головні категорії */
.homepage-mega-menu-main {
    width: 30%;
    padding: 15px 0;
    background-color: #f9f9f9;
    border-right: 1px solid #e0e0e0;
    display: flex;
    flex-direction: column;
    height: 100%; /* Ліва колонка повинна заповнювати всю висоту батьківського елемента */
    overflow-y: auto; /* Додаємо прокрутку, якщо категорій забагато */
}

.homepage-mega-menu-main .main-menu-item {
    display: flex;
    align-items: center;
    padding: 10px 15px;
    text-decoration: none;

    font-size: 15px;
    transition: background-color 0.2s ease, color 0.2s ease;
    white-space: nowrap;
}

.homepage-mega-menu-main .main-menu-item:hover,
.homepage-mega-menu-main .main-menu-item.hovered {
    background-color: rgba(51, 51, 51, 0.5); /* 50% прозорості */
    color: #ffcc00;
}

.homepage-mega-menu-main .main-menu-icon {
    width: 24px;
    height: 24px;
    margin-right: 10px;
    object-fit: contain;

    transition: filter 0.2s ease;
}

.homepage-mega-menu-main .main-menu-item:hover .main-menu-icon,
.homepage-mega-menu-main .main-menu-item.hovered .main_menu_icon {

}

/* Контейнер для правої колонки (підкатегорії + карусель) */
.homepage-mega-menu-right-content {
    width: 70%;
    padding: 15px;
    position: relative; /* Залишити relative, якщо внутрішні елементи позиціонуються абсолютно відносно нього */
    height: 100%; /* Права колонка повинна заповнювати всю висоту батьківського елемента */
}

/* Права колонка - підкатегорії */
.homepage-mega-menu-submenu {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    position: absolute;
    top: 15px; /* Враховуємо padding батьківського елемента */
    left: 15px; /* Враховуємо padding батьківського елемента */
    width: calc(100% - 30px); /* 100% - (padding-left + padding-right) */
    height: calc(100% - 30px); /* 100% - (padding-top + padding-bottom) */
    background-color: #fff;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    overflow-y: auto; /* Додаємо прокрутку, якщо підкатегорій забагато */
}

/* Права колонка - підкатегорії: коли активні (JS додає цей клас) */
.homepage-mega-menu-submenu.active-submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.submenu-item {
    display: flex;
    flex-direction: column; /* Зображення зверху, текст знизу */
    align-items: center;
    text-align: center;
    text-decoration: none;
    color: #333333;
    font-size: 14px;
    transition: transform 0.2s ease;
}

.submenu-item:hover {
    transform: translateY(-3px); /* Легкий ефект при наведенні */

}

.submenu-thumbnail {
    width: 160px; /* Розмір мініатюри */
    height: 160px;
    object-fit: contain; /* Зберігаємо пропорції */
    margin-bottom: 8px;
    border: 1px solid #eee;
    border-radius: 4px;
}


/* Блок з каруселлю банерів */
.homepage-mega-menu-carousel {
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    position: absolute; /* Щоб накладатися на submenu, як у вашому дизайні */
    top: 15px;
    left: 15px;
    background-color: #f0f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    color: #555;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    overflow: hidden;
}

/* Блок з каруселлю: коли прихований (JS додає цей клас) */
.homepage-mega-menu-carousel.hidden-carousel {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* --- НОВІ СТИЛІ ДЛЯ СЛАЙДІВ КАРУСЕЛІ ТА ЗОБРАЖЕНЬ --- */
.homepage-mega-menu-carousel .carousel-slide {
    width: 100%;
    height: 100%;
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    background-color: transparent;
}

.homepage-mega-menu-carousel .carousel-slide img {
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width: auto;
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

/* --- Mobile Version: FULL HIDING OF DESKTOP MENU --- */
@media (max-width: 993px) {
    .new_menu {
        display: none;
    }
}

/* Responsiveness for mega-menu on smaller screens */
@media (max-width: 992px) {
    #mega-menu-dropdown {
        width: 100%;
        height: auto;
        flex-direction: column;
        border-radius: 0;
        box-shadow: none;
    }
    #mega-menu-main {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #e0e0e0;
    }
    #mega-menu-submenu {
        width: 100%;
        padding: 10px;
        height: auto;
        grid-template-columns: repeat(2, 1fr);
        position: relative;
        top: auto;
        left: auto;
        padding: 0;
        background-color: transparent;
    }
}

/* Further adjustments for even smaller screens */
@media (max-width: 768px) {
    #mega-menu-main,
    #mega-menu-submenu {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #e0e0e0;
    }
}