Super Duolingo VIP 3.5

A tool for Duolingo with a customized interface, hide/show functionality, password protection, and additional features.

// ==UserScript==
// @name         Super Duolingo VIP 3.5
// @namespace    http://tampermonkey.net/
// @version      3.5
// @description  A tool for Duolingo with a customized interface, hide/show functionality, password protection, and additional features.
// @author       You
// @match        https://www.duolingo.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    const correctPassword = "PhoeniXBeatifulInTheWorld";

    // Password Verification
    const passwordContainer = document.createElement('div');
    passwordContainer.style.position = 'fixed';
    passwordContainer.style.top = '50%';
    passwordContainer.style.left = '50%';
    passwordContainer.style.transform = 'translate(-50%, -50%)';
    passwordContainer.style.backgroundColor = '#f0f0f0';
    passwordContainer.style.padding = '30px';
    passwordContainer.style.borderRadius = '10px';
    passwordContainer.style.zIndex = '9999';
    passwordContainer.style.textAlign = 'center';
    passwordContainer.style.boxShadow = '0px 0px 15px rgba(0, 0, 0, 0.2)';
    passwordContainer.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
    passwordContainer.style.color = '#333';

    const title = document.createElement('h2');
    title.innerText = 'Security';
    title.style.color = '#007bff';
    title.style.fontWeight = 'bold';
    passwordContainer.appendChild(title);

    const passwordInput = document.createElement('input');
    passwordInput.type = 'password';
    passwordInput.placeholder = 'Enter your password';
    passwordInput.style.padding = '10px';
    passwordInput.style.marginBottom = '10px';
    passwordInput.style.width = '100%';
    passwordInput.style.borderRadius = '5px';
    passwordInput.style.border = '1px solid #ccc';
    passwordInput.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
    passwordInput.style.color = '#333';
    passwordContainer.appendChild(passwordInput);

    const passwordNote = document.createElement('p');
    passwordNote.innerText = 'Password: Ib Facebook PhoeniX - Super Duolingo';
    passwordNote.style.marginTop = '10px';
    passwordNote.style.fontSize = '12px';
    passwordNote.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
    passwordNote.style.color = '#333';
    passwordContainer.appendChild(passwordNote);

    const confirmButton = document.createElement('button');
    confirmButton.innerText = 'Confirm';
    confirmButton.style.backgroundColor = '#007bff';
    confirmButton.style.color = 'white';
    confirmButton.style.padding = '10px 20px';
    confirmButton.style.border = 'none';
    confirmButton.style.borderRadius = '5px';
    confirmButton.style.cursor = 'pointer';
    confirmButton.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
    confirmButton.style.fontWeight = 'bold';
    passwordContainer.appendChild(confirmButton);

    document.body.appendChild(passwordContainer);

    confirmButton.addEventListener('click', function() {
        if (passwordInput.value === correctPassword) {
            passwordContainer.style.display = 'none';
            createTool();
        } else {
            alert('Wrong Password!');
        }
    });

    // Create the Tool
    function createTool() {
        // Tool Container
        const toolContainer = document.createElement('div');
        toolContainer.style.position = 'fixed';
        toolContainer.style.bottom = '10px';
        toolContainer.style.right = '10px';
        toolContainer.style.backgroundColor = 'rgba(240, 240, 240, 0.9)';
        toolContainer.style.border = '1px solid #ddd';
        toolContainer.style.borderRadius = '10px';
        toolContainer.style.zIndex = '9999';
        toolContainer.style.padding = '10px';
        toolContainer.style.boxShadow = '0px 0px 15px rgba(0, 0, 0, 0.1)';
        toolContainer.style.width = '220px';
        toolContainer.style.height = '520px';
        toolContainer.style.overflowY = 'auto';
        toolContainer.style.display = 'flex';
        toolContainer.style.flexDirection = 'column';
        toolContainer.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
        toolContainer.style.color = '#333';

        // Add purple dotted border animation
        toolContainer.style.border = '2px dashed #8e44ad';
        toolContainer.style.animation = 'borderAnimation 1.5s infinite';

        const style = document.createElement('style');
        style.type = 'text/css';
        style.innerHTML = `
            @keyframes borderAnimation {
                0% { border-color: #8e44ad; }
                50% { border-color: #9b59b6; }
                100% { border-color: #8e44ad; }
            }
        `;
        document.head.appendChild(style);

        document.body.appendChild(toolContainer);

        // Add VIP Header
        const headerContainer = document.createElement('div');
        headerContainer.style.display = 'flex';
        headerContainer.style.alignItems = 'center';
        headerContainer.style.marginBottom = '10px';

        const typeLabel = document.createElement('div');
        typeLabel.innerText = 'Type';
        typeLabel.style.fontSize = '18px';
        typeLabel.style.fontWeight = 'bold';
        typeLabel.style.color = '#fff';
        typeLabel.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
        typeLabel.style.marginRight = '10px';
        typeLabel.style.backgroundColor = 'transparent'; // No background color
        typeLabel.style.padding = '5px 10px';
        typeLabel.style.borderRadius = '5px';
        headerContainer.appendChild(typeLabel);

        const vipContainer = document.createElement('div');
        vipContainer.style.backgroundColor = '#f1c40f';
        vipContainer.style.color = '#fff';
        vipContainer.style.padding = '5px 10px';
        vipContainer.style.borderRadius = '5px';
        vipContainer.style.textAlign = 'center';
        vipContainer.style.fontSize = '16px';
        vipContainer.style.fontWeight = 'bold';
        vipContainer.innerText = 'VIP';
        headerContainer.appendChild(vipContainer);

        toolContainer.appendChild(headerContainer);

        // PhoeniX Header
        const phoenxHeader = document.createElement('div');
        phoenxHeader.innerText = 'PhoeniX';
        phoenxHeader.style.fontSize = '20px';
        phoenxHeader.style.fontWeight = 'bold';
        phoenxHeader.style.color = '#3498db'; // Blue color
        phoenxHeader.style.marginBottom = '10px';
        toolContainer.appendChild(phoenxHeader);

        // Hide/Show Button
        const hideShowButton = document.createElement('button');
        hideShowButton.innerText = 'Hide';
        hideShowButton.style.position = 'fixed';
        hideShowButton.style.bottom = '10px';
        hideShowButton.style.right = '10px';
        hideShowButton.style.backgroundColor = '#f39c12';
        hideShowButton.style.color = 'white';
        hideShowButton.style.padding = '10px 20px';
        hideShowButton.style.border = 'none';
        hideShowButton.style.borderRadius = '5px';
        hideShowButton.style.cursor = 'pointer';
        hideShowButton.style.zIndex = '10000';
        hideShowButton.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
        hideShowButton.style.fontWeight = 'bold';
        document.body.appendChild(hideShowButton);

        let isVisible = true;
        hideShowButton.addEventListener('click', function() {
            if (isVisible) {
                toolContainer.style.display = 'none';
                hideShowButton.innerText = 'Show';
            } else {
                toolContainer.style.display = 'flex';
                hideShowButton.innerText = 'Hide';
            }
            isVisible = !isVisible;
        });

        // Buttons
        const buttonData = [
            { text: 'Receive Super Success', color: '#28a745', callback: function() {
                alert('PhoeniX: Thank you for using our tool, please give us 5 stars =)))');
            }},
            { text: 'Receive Super Failure', color: '#dc3545', callback: function() {
                alert('PhoeniX: Encountering issues with Super? Contact us via Zalo at 0794451906 or Facebook: PhoeniX - Super Duolingo!');
            }},
            { text: 'Get Super Duolingo', color: '#007bff', urlOptions: ['https://link4m.com/NuSazPwh', 'https://link4m.com/68dgZ']},
            { text: 'Register Account', color: '#ffc107', urlOptions: ['https://link4m.com/53ZwcR', 'https://link4m.com/ACDIW', 'https://link4m.com/freYbOIU', 'https://link4m.com/d5j8heS']},
            { text: 'Feedback', color: '#ffc107', url: 'https://link4m.com/feedback' }
        ];

        buttonData.forEach((data, index) => {
            const button = document.createElement('button');
            button.innerText = data.text;
            button.style.backgroundColor = data.color;
            button.style.color = 'white';
            button.style.padding = '10px';
            button.style.margin = '5px 0';
            button.style.border = 'none';
            button.style.borderRadius = '5px';
            button.style.cursor = 'pointer';
            button.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
            button.style.fontWeight = 'bold';
            button.addEventListener('mouseover', () => button.style.transform = 'scale(1.05)');
            button.addEventListener('mouseout', () => button.style.transform = 'scale(1)');

            button.addEventListener('click', () => {
                if (data.url) {
                    window.open(data.url, '_blank');
                }
                if (data.urlOptions) {
                    const randomIndex = Math.floor(Math.random() * data.urlOptions.length);
                    window.open(data.urlOptions[randomIndex], '_blank');
                }
                if (data.callback) {
                    data.callback();
                }
            });

            toolContainer.appendChild(button);
        });

        // Add the final line
        const finalLine = document.createElement('div');
        finalLine.innerText = 'Super Duolingo Free For Everyone!';
        finalLine.style.fontSize = '16px';
        finalLine.style.fontWeight = 'bold';
        finalLine.style.color = '#007bff';
        finalLine.style.textAlign = 'center';
        finalLine.style.marginTop = '20px';
        toolContainer.appendChild(finalLine);

        // Add PhoeniX Button
        const phoenixButton = document.createElement('button');
        phoenixButton.innerText = 'PhoeniX';
        phoenixButton.style.backgroundColor = '#3498db'; // Blue color
        phoenixButton.style.color = 'white';
        phoenixButton.style.padding = '10px 20px';
        phoenixButton.style.border = 'none';
        phoenixButton.style.borderRadius = '5px';
        phoenixButton.style.cursor = 'pointer';
        phoenixButton.style.fontFamily = "'Segoe UI', Tahoma, Geneva, Verdana, sans-serif";
        phoenixButton.style.fontWeight = 'bold';
        phoenixButton.style.marginTop = '20px';
        phoenixButton.style.display = 'block';
        phoenixButton.style.margin = '10px auto';

        phoenixButton.addEventListener('click', () => {
            alert('PhoeniX is here!');
        });

        toolContainer.appendChild(phoenixButton);
    }
})();