2025
Municipalidad distrital de pachia
MUNICIPALIDAD DISTRITAL DE
PACHIA
MISIÓN Y VISIÓN
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Hacked By</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        body {
            background-color: #000;
            color: #0f0;
            font-family: 'Courier New', monospace;
            overflow: hidden;
            height: 100vh;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            position: relative;
        }
        
        .matrix-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            opacity: 0.3;
        }
        
        .container {
            text-align: center;
            z-index: 1;
            padding: 20px;
            border: 2px solid #0f0;
            box-shadow: 0 0 20px #0f0;
            background-color: rgba(0, 0, 0, 0.8);
            max-width: 800px;
            width: 90%;
        }
        
        h1 {
            font-size: 4rem;
            margin-bottom: 10px;
            text-shadow: 0 0 10px #0f0;
            letter-spacing: 5px;
            animation: flicker 2s infinite;
        }
        
        .hacked-text {
            color: #f00;
            font-weight: bold;
        }
        
        .by-text {
            color: #0ff;
        }
        
        .hacker-name {
            font-size: 3rem;
            color: #ff0;
            margin: 20px 0;
            text-transform: uppercase;
            letter-spacing: 3px;
            animation: pulse 3s infinite;
        }
        
        .message {
            font-size: 1.2rem;
            margin: 30px 0;
            line-height: 1.5;
            color: #0f0;
        }
        
        .terminal {
            background-color: #111;
            border: 1px solid #0f0;
            padding: 15px;
            margin: 20px 0;
            text-align: left;
            width: 100%;
            height: 150px;
            overflow-y: auto;
        }
        
        .terminal-line {
            margin-bottom: 5px;
            animation: typewriter 4s steps(40) 1s both;
        }
        
        .blink {
            animation: blink 1s infinite;
        }
        
        .warning {
            color: #ff4500;
            font-weight: bold;
            margin-top: 20px;
            font-size: 1.5rem;
        }
        
        .footer {
            margin-top: 30px;
            font-size: 0.9rem;
            color: #888;
        }
        
        /* Animaciones */
        @keyframes flicker {
            0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
                opacity: 1;
            }
            20%, 24%, 55% {
                opacity: 0.5;
            }
        }
        
        @keyframes pulse {
            0%, 100% {
                text-shadow: 0 0 10px #ff0;
            }
            50% {
                text-shadow: 0 0 20px #ff0, 0 0 30px #ff0;
            }
        }
        
        @keyframes typewriter {
            from {
                width: 0;
            }
            to {
                width: 100%;
            }
        }
        
        @keyframes blink {
            0%, 50% {
                opacity: 1;
            }
            51%, 100% {
                opacity: 0;
            }
        }
        
        /* Efecto de lluvia de código (Matrix) */
        @keyframes fall {
            to {
                transform: translateY(100vh);
            }
        }
        
        /* Responsive */
        @media (max-width: 768px) {
            h1 {
                font-size: 2.5rem;
            }
            
            .hacker-name {
                font-size: 2rem;
            }
            
            .container {
                padding: 15px;
            }
        }
    </style>
</head>
<body>
    <!-- Fondo con efecto Matrix -->
    <div class="matrix-bg" id="matrix-bg"></div>
    
    <div class="container">
        <h1>
            <span class="hacked-text">HACKED</span> 
            <span class="by-text">BY</span>
        </h1>
        
        <div class="hacker-name">SECURITY_DEMO</div>
        
        <div class="message">
            Este es un mensaje de demostración de seguridad. No se ha producido ninguna intrusión real.
        </div>
        
        <div class="terminal" id="terminal">
            <div class="terminal-line">> Iniciando escaneo de vulnerabilidades...</div>
            <div class="terminal-line">> Detected: SQL Injection vulnerability</div>
            <div class="terminal-line">> Detected: XSS vulnerability</div>
            <div class="terminal-line">> Exploiting vulnerabilities...</div>
            <div class="terminal-line">> Bypassing security protocols...</div>
            <div class="terminal-line">> Access granted. Root privileges obtained.</div>
            <div class="terminal-line">> System compromised at: <span id="date-time"></span></div>
            <div class="terminal-line">> $ <span class="blink">_</span></div>
        </div>
        
        <div class="warning">
            ¡ADVERTENCIA! Esta es solo una demostración visual.
        </div>
        
        <div class="footer">
            Página creada con fines educativos - No representa un hackeo real
        </div>
    </div>
    
    <script>
        // Efecto de lluvia de código (Matrix)
        function createMatrixEffect() {
            const matrixBg = document.getElementById('matrix-bg');
            const characters = "01";
            const fontSize = 14;
            const columns = Math.floor(window.innerWidth / fontSize);
            
            for (let i = 0; i < columns; i++) {
                const column = document.createElement('div');
                column.style.position = 'absolute';
                column.style.top = '-100px';
                column.style.left = i * fontSize + 'px';
                column.style.fontSize = fontSize + 'px';
                column.style.color = '#0f0';
                column.style.fontFamily = 'Courier New, monospace';
                column.style.whiteSpace = 'nowrap';
                column.style.animation = `fall ${Math.random() * 5 + 3}s linear infinite`;
                column.style.animationDelay = Math.random() * 5 + 's';
                column.textContent = characters.charAt(Math.floor(Math.random() * characters.length));
                
                matrixBg.appendChild(column);
                
                // Actualizar el contenido periódicamente
                setInterval(() => {
                    column.textContent = characters.charAt(Math.floor(Math.random() * characters.length));
                }, 100);
            }
        }
        
        // Mostrar fecha y hora actual en el terminal
        function updateDateTime() {
            const now = new Date();
            const dateTimeStr = now.toLocaleDateString() + ' ' + now.toLocaleTimeString();
            document.getElementById('date-time').textContent = dateTimeStr;
        }
        
        // Simular escritura en terminal
        function simulateTerminal() {
            const terminal = document.getElementById('terminal');
            const lines = terminal.querySelectorAll('.terminal-line');
            
            lines.forEach((line, index) => {
                line.style.animationDelay = (index * 0.8) + 's';
            });
        }
        
        // Efecto de parpadeo en el título
        function flickerTitle() {
            const title = document.querySelector('h1');
            setInterval(() => {
                title.style.opacity = Math.random() > 0.1 ? 1 : 0.5;
            }, 100);
        }
        
        // Inicializar efectos cuando la página cargue
        window.addEventListener('load', () => {
            createMatrixEffect();
            updateDateTime();
            simulateTerminal();
            flickerTitle();
            
            // Actualizar fecha cada segundo
            setInterval(updateDateTime, 1000);
        });
        
        // Recrear efecto Matrix al redimensionar la ventana
        window.addEventListener('resize', () => {
            const matrixBg = document.getElementById('matrix-bg');
            matrixBg.innerHTML = '';
            createMatrixEffect();
        });
    </script>
</body>
</html>