getElementById('searchInfo');

        // --- State ---
        let isLoading = false;
        let repositories = [];
        let isSearchOpen = false;

        // --- Utilities ---
        function debounce(func, wait) {
            let timeout;
            return function executedFunction(...args) {
                const later = () => {
                    clearTimeout(timeout);
                    func(...args);
                };
                clearTimeout(timeout);
                timeout = setTimeou