<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<style>
  * {
    all: unset; /* Reset all inherited styles */
  }

  html, body {
    background-color: #000 !important;
    color: #0f0 !important;
    font-family: 'Courier New', monospace !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: hidden !important;
    position: fixed !important; /* Ensure it covers the entire viewport */
    top: 0 !important;
    left: 0 !important;
    z-index: 2147483647 !important; /* Maximum z-index value */
  }

  .glitch {
    font-size: 4em;
    position: relative;
    animation: glitch 1s linear infinite;
    text-shadow: 0 0 5px #0f0;
    margin-bottom: 30px;
  }

  @keyframes glitch {
    2%, 64% {
      transform: translate(2px,0) skew(0deg);
    }
    4%, 60% {
      transform: translate(-2px,0) skew(0deg);
    }
    62% {
      transform: translate(0,0) skew(5deg); 
    }
  }

  .glitch:before,
  .glitch:after {
    content: 'site hacked by generic :3';
    position: absolute;
    left: 0;
  }

  .glitch:before {
    animation: glitchTop 1s linear infinite;
    clip-path: polygon(0 0, 100% 0, 100% 33%, 0 33%);
  }

  @keyframes glitchTop {
    2%, 64% {
      transform: translate(2px,-2px);
    }
    4%, 60% {
      transform: translate(-2px,2px);
    }
    62% {
      transform: translate(13px,-1px) skew(-13deg); 
    }
  }

  .glitch:after {
    animation: glitchBottom 1.5s linear infinite;
    clip-path: polygon(0 67%, 100% 67%, 100% 100%, 0 100%);
  }

  @keyframes glitchBottom {
    2%, 64% {
      transform: translate(-2px,0);
    }
    4%, 60% {
      transform: translate(-2px,0);
    }
    62% {
      transform: translate(-22px,5px) skew(21deg); 
    }
  }

  .matrix {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }

  .skull {
    font-size: 1.5em;
    line-height: 1.2;
    margin: 20px;
    animation: pulse 2s infinite;
    text-shadow: 0 0 10px #0f0;
    white-space: pre;
  }

  @keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
  }

  .message {
    margin: 20px;
    font-size: 1.5em;
    text-align: center;
    max-width: 600px;
    text-shadow: 0 0 5px #0f0;
    animation: fadeInOut 2s infinite;
  }

  @keyframes fadeInOut {
    0% { opacity: 0.7; }
    50% { opacity: 1; }
    100% { opacity: 0.7; }
  }
</style>
</head>
<body>
  <canvas class="matrix"></canvas>
  <div class="skull">
    <img src="https://generic.is-a.dev/colonthree.jpg" width=260 height=240 alt=":3">
  </div>
  <div class="glitch">site hacked by generic :3</div>
  <div class="message">don't use innerHTML next time ^_^</div>

<script>
// Matrix rain effect
const canvas = document.querySelector('.matrix');
const ctx = canvas.getContext('2d');

canvas.width = window.innerWidth;
canvas.height = window.innerHeight;

const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#$%^&*()';
const fontSize = 14;
const columns = canvas.width / fontSize;
const drops = Array(columns).fill(1);

function 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`;

    drops.forEach((drop, i) => {
        const text = chars[Math.floor(Math.random() * chars.length)];
        ctx.fillText(text, i * fontSize, drop * fontSize);

        if (drop * fontSize > canvas.height && Math.random() > 0.975) {
            drops[i] = 0;
        }

        drops[i]++;
    });
}

setInterval(draw, 33);

window.addEventListener('resize', () => {
    canvas.width = window.innerWidth;
    canvas.height = window.innerHeight;
});
</script>
</body>
</html>
