document.addEventListener("DOMContentLoaded", function () {

    const MOBILE_MAX = 1024;

    function isMobile() {
        return window.innerWidth <= MOBILE_MAX;
    }

    // Aplica os toggles apenas no menu mobile
    function applyMobileMenuToggle() {
        if (!isMobile()) return;

        const container = document.querySelector('.gdlr-core-mobile-menu, .gdlr-side-menu');

        if (!container) return;

        const anchors = container.querySelectorAll('.menu-item-has-children > a');

        anchors.forEach(a => {

            if (a.dataset.toggleApplied) return;
            a.dataset.toggleApplied = "1";

            a.addEventListener("click", function (e) {

                if (!isMobile()) return;

                e.preventDefault();

                const li = this.parentElement;
                const submenu = li.querySelector(".sub-menu");

                li.classList.toggle("menu-open");

                if (submenu) {
                    if (li.classList.contains("menu-open")) {
                        submenu.style.display = "block";
                        submenu.style.maxHeight = submenu.scrollHeight + "px";
                    } else {
                        submenu.style.maxHeight = "0px";
                        setTimeout(() => {
                            if (!li.classList.contains("menu-open")) {
                                submenu.style.display = "none";
                            }
                        }, 250);
                    }
                }
            });
        });
    }

    // A chave: detectar quando o menu mobile ABRE
    function hookMenuOpening() {
        const mobileButton = document.querySelector('.gdlr-header-hamburger, .gdlr-mobile-menu-button');

        if (!mobileButton) return;

        mobileButton.addEventListener("click", function () {
            setTimeout(() => {
                applyMobileMenuToggle();
            }, 200); // o Kingster precisa de tempo para gerar o menu
        });
    }

    hookMenuOpening();

    // Reaplicar em mudanças de layout
    window.addEventListener("resize", function () {
        if (isMobile()) {
            setTimeout(applyMobileMenuToggle, 300);
        }
    });

});

/* FREEDOM - Column Service */
.gdlr-core-column-service-media {
    width: 80px !important;
    max-width: 80px !important;
}

.gdlr-core-column-service-media img {
    width: 80px !important;
    max-width: 80px !important;
    height: auto !important;
}


/* FREEDOM - Planejamento para cada estudante */

.freedom-planejamento {
    margin: 0;
}

.freedom-plan-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
    line-height: 1.55;
}

.freedom-check {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    border-radius: 50%;
    background: #1557d6;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    line-height: 20px;
}

.freedom-plan-item > span:last-child {
    flex: 1;
}