<!--
--  Uploaded on : https://haxor.my.id/open/DemonXyz.html
--  Official Web : https://prinsh.com
--  script-deface-generator.prinsh.com
-->
<!DOCTYPE html>
<html lang="id">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CYBER DEMON | Indonesian Dark Net</title>
    <style>
        body {
            margin: 0;
            padding: 0;
            font-family: 'Courier New', monospace;
            background: #000 url('https://i.ibb.co/4Y3NjRx/cyber-bg.jpg') no-repeat center fixed;
            background-size: cover;
            color: #0f0;
            text-align: center;
            overflow: hidden;
            height: 100vh;
        }
        .container {
            padding: 30px;
            background: rgba(0, 0, 0, 0.8);
            border: 1px solid #0f0;
            max-width: 700px;
            margin: 5% auto;
            box-shadow: 0 0 30px #0f0;
            position: relative;
        }
        h1 {
            font-size: 3em;
            text-shadow: 0 0 15px #0f0;
            margin-bottom: 0;
            letter-spacing: 5px;
        }
        .subtitle {
            color: #f00;
            font-style: italic;
            margin-top: 0;
            text-shadow: 0 0 10px #f00;
        }
        .profile-img {
            width: 200px;
            height: 200px;
            border-radius: 50%;
            border: 3px solid #f00;
            margin: 20px auto;
            object-fit: cover;
            box-shadow: 0 0 25px #f00;
            filter: hue-rotate(90deg) contrast(120%);
            display: block;
        }
        .quote {
            font-size: 1.2em;
            line-height: 1.6;
            margin: 25px 0;
            color: #fff;
            text-shadow: 0 0 5px #0f0;
        }
        .signature {
            font-family: 'Brush Script MT', cursive;
            color: #f00;
            font-size: 1.6em;
            text-shadow: 0 0 5px #000;
        }
        .glow {
            animation: glow 1.5s ease-in-out infinite alternate;
        }
        @keyframes glow {
            from { text-shadow: 0 0 5px #0f0, 0 0 10px #000; }
            to { text-shadow: 0 0 15px #0f0, 0 0 20px #f00, 0 0 25px #000; }
        }
        .music-control {
            position: fixed;
            bottom: 20px;
            right: 20px;
            background: rgba(255, 0, 0, 0.7);
            padding: 15px;
            border-radius: 50%;
            cursor: pointer;
            border: 2px solid #0f0;
            font-size: 1.5em;
            color: #fff;
            box-shadow: 0 0 15px #f00;
        }
        .typing {
            border-right: 3px solid #0f0;
            animation: blink 0.5s step-end infinite;
        }
        @keyframes blink {
            from, to { border-color: transparent }
            50% { border-color: #0f0 }
        }
        .matrix-code {
            position: absolute;
            top: 0;
            left: 0;
            color: #0f0;
            z-index: -1;
            opacity: 0.3;
        }
    </style>
</head>
<body>
    <!-- Efek Matrix Code (Javascript akan generate otomatis) -->
    <canvas id="matrix" class="matrix-code"></canvas>

    <div class="container">
        <h1 class="glow">DEMONXYZ</h1>
        <p class="subtitle">// SYSTEM <span class="typing">ACCESS_GRANTED</span></p>
        
        <!-- Foto Hacker Otomatis dari Generator Avatar -->
        <img src="https://robohash.org/demonxyz?set=set5&size=200x200&bgset=bg1" alt="Hacker Avatar" class="profile-img">
        
        <div class="quote">
            "Aku bukan penjahat, hanya penjelajah di belantara kode."<br><br>
            "Firewall adalah tantangan, bukan penghalang."<br><br>
            "Bermain dengan sistem adalah seni memahami logika."<br><br>
            "ERROR 666: SYSTEM COMPROMISED"
        </div>
        
        <p class="signature">- DemonXyz</p>
    </div>

    <!-- Tombol Kontrol Musik -->
    <div class="music-control" onclick="toggleMusic()">
        ♫
    </div>

    <!-- Audio Background Cyber Rock -->
    <audio id="bgMusic" loop>
        <source src="https://www.soundhelix.com/examples/mp3/SoundHelix-Song-16.mp3" type="audio/mpeg">
        Browser Anda tidak mendukung audio.
    </audio>

    <script>
        // MUSIC CONTROL
        const music = document.getElementById('bgMusic');
        let isPlaying = false;

        function toggleMusic() {
            if (isPlaying) {
                music.pause();
            } else {
                music.play();
            }
            isPlaying = !isPlaying;
        }

        // MATRIX RAIN EFFECT
        const canvas = document.getElementById('matrix');
        const ctx = canvas.getContext('2d');
        canvas.width = window.innerWidth;
        canvas.height = window.innerHeight;

        const katakana = 'アァカサタナハマヤャラワガザダバパイィキシチニヒミリヰギジヂビピウゥクスツヌフムユュルグズブヅプエェケセテネヘメレヱゲゼデベペオォコソトノホモヨョロヲゴゾドボポヴッン';
        const latin = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
        const nums = '0123456789';
        const alphabet = katakana + latin + nums;

        const fontSize = 16;
        const columns = canvas.width / fontSize;
        const rainDrops = [];

        for (let x = 0; x < columns; x++) {
            rainDrops[x] = 1;
        }

        const draw = () => {
            ctx.fillStyle = 'rgba(0, 0, 0, 0.05)';
            ctx.fillRect(0, 0, canvas.width, canvas.height);
            
            ctx.fillStyle = '#0f0';
            ctx.font = fontSize + 'px monospace';

            for (let i = 0; i < rainDrops.length; i++) {
                const text = alphabet.charAt(Math.floor(Math.random() * alphabet.length));
                ctx.fillText(text, i * fontSize, rainDrops[i] * fontSize);
                
                if (rainDrops[i] * fontSize > canvas.height && Math.random() > 0.975) {
                    rainDrops[i] = 0;
                }
                rainDrops[i]++;
            }
        };

        setInterval(draw, 30);

        // Auto-play music after interaction
        window.addEventListener('click', () => {
            if (!isPlaying) {
                music.play();
                isPlaying = true;
            }
        }, { once: true });
    </script>
</body>
</html>