Subtitle Judging _Miss DHI_
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>hacked by cykomnepal</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { background: #0a0c0f; min-height: 100vh; display: flex; align-items: center; justify-content: center; font-family: 'Courier New', Courier, monospace; position: relative; overflow-x: hidden; } /* glitchy background layers */ .glitch-bg { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: repeating-linear-gradient(0deg, rgba(0, 255, 0, 0.03) 0px, rgba(255, 0, 0, 0.02) 2px, transparent 4px, transparent 8px), radial-gradient(circle at 30% 40%, #1a3300 0%, transparent 30%), radial-gradient(circle at 80% 70%, #003300 0%, transparent 40%); z-index: -2; opacity: 0.9; } .scan-line { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, transparent 50%, rgba(0, 20, 0, 0.2) 50%); background-size: 100% 4px; pointer-events: none; z-index: -1; animation: scan 8s linear infinite; } @keyframes scan { 0% { background-position: 0 0; } 100% { background-position: 0 20px; } } /* main card – terminal/crt style */ .terminal { background: rgba(10, 20, 5, 0.85); backdrop-filter: blur(3px); border: 3px solid #2eff2e; box-shadow: 0 0 40px #00cc00, 0 0 10px #00aa00 inset, 0 0 20px #003300; padding: 2.8rem 3.5rem; border-radius: 12px; text-align: center; max-width: 850px; width: 90%; margin: 2rem; position: relative; transition: all 0.2s ease; animation: flicker 5s infinite; color: #b3ffb3; } /* glitch pseudo elements */ .terminal::before, .terminal::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: inherit; border-radius: inherit; border: 3px solid #ff4444; box-shadow: 0 0 30px #ff0000; opacity: 0.4; mix-blend-mode: multiply; pointer-events: none; z-index: 1; } .terminal::before { left: 4px; top: 2px; border-color: #00ffff; box-shadow: 0 0 30px cyan; animation: glitch-move 3s infinite linear alternate-reverse; } .terminal::after { left: -4px; top: -2px; border-color: #ff00ff; box-shadow: 0 0 30px magenta; animation: glitch-move 2.8s infinite linear alternate-reverse; } @keyframes glitch-move { 0% { clip-path: inset(20% 0 30% 0); transform: translate(2px, -2px); } 20% { clip-path: inset(60% 0 10% 0); transform: translate(-3px, 1px); } 40% { clip-path: inset(10% 0 70% 0); transform: translate(2px, 2px); } 60% { clip-path: inset(40% 0 40% 0); transform: translate(-2px, -1px); } 80% { clip-path: inset(80% 0 5% 0); transform: translate(1px, 3px); } 100% { clip-path: inset(15% 0 55% 0); transform: translate(-1px, -3px); } } @keyframes flicker { 0% { opacity: 1; } 10% { opacity: 0.95; text-shadow: 0 0 5px #0f0; } 20% { opacity: 1; } 30% { opacity: 0.98; } 40% { opacity: 1; } 50% { opacity: 0.9; text-shadow: -2px 0 red, 2px 0 blue; } 60% { opacity: 1; } 70% { opacity: 1; } 80% { opacity: 0.95; } 90% { opacity: 1; } 100% { opacity: 1; } } /* main hacked text */ .hacked-title { font-size: 5.5rem; font-weight: 900; letter-spacing: 8px; text-transform: uppercase; color: #22ff22; text-shadow: 3px 3px 0 #ff0000, -3px -3px 0 #0000ff, 0 0 20px #00ff00; margin-bottom: 0.3rem; line-height: 1.1; animation: text-glitch 4s infinite; font-family: 'Courier New', Courier, monospace; } @keyframes text-glitch { 0% { transform: skew(0deg, 0deg); opacity: 1; text-shadow: 3px 3px 0 red, -3px -3px 0 blue, 0 0 20px lime; } 9% { transform: skew(2deg, 1deg); text-shadow: 5px 2px 0 red, -4px -5px 0 cyan; } 10% { transform: skew(-3deg, -2deg); text-shadow: -4px 3px 0 magenta, 5px -4px 0 lime; } 11% { transform: skew(0deg, 0deg); text-shadow: 3px 3px 0 red, -3px -3px 0 blue, 0 0 20px lime; } 90% { transform: skew(0deg, 0deg); } 91% { transform: skew(5deg, 0deg); text-shadow: -6px -3px 0 #ff00ff, 6px 3px 0 #00ffff; } 92% { transform: skew(-5deg, 0deg); } 93% { transform: skew(0deg, 0deg); } } .by-line { font-size: 2.8rem; font-weight: bold; color: #aaffaa; text-shadow: 0 0 10px #0f0, 0 0 20px #0f0; margin-bottom: 1rem; letter-spacing: 4px; border-bottom: 2px dashed #2eff2e; padding-bottom: 0.5rem; display: inline-block; } .cykomnepal { font-size: 3.5rem; font-weight: 900; background: linear-gradient(45deg, #00ff00, #ffff00, #00ff00); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: 0 0 20px #0f0, 0 0 40px #0f0; margin: 0.5rem 0 0.2rem; letter-spacing: 6px; text-transform: uppercase; filter: drop-shadow(0 0 8px #00cc00); animation: colorPulse 3s infinite; } @keyframes colorPulse { 0% { filter: drop-shadow(0 0 5px #0f0); } 50% { filter: drop-shadow(0 0 20px #ff0) drop-shadow(0 0 10px #f0f); } 100% { filter: drop-shadow(0 0 5px #0f0); } } .status-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem 2rem; margin: 2rem 0 1rem; font-size: 1.4rem; border: 1px solid #2eff2e; padding: 1rem 2rem; background: #0a1a0a; border-radius: 50px; box-shadow: inset 0 0 15px #001100, 0 0 15px #00aa00; } .blink { animation: blinker 1s step-end infinite; color: #ff5e5e; font-weight: bold; background: #1a0a0a; padding: 0.2rem 1rem; border-radius: 30px; letter-spacing: 2px; } @keyframes blinker { 0%, 100% { opacity: 1; background: #2a0000; color: #ff8888; } 50% { opacity: 0; background: #550000; color: #ff0000; } } .ip-display { background: black; padding: 0.4rem 1.2rem; border-radius: 40px; border: 1px solid #00aa00; color: #88ff88; } .matrix-code { font-size: 1.1rem; color: #55aa55; background: #0f0f0f; padding: 0.6rem 1rem; border-radius: 6px; margin: 1.5rem 0 0.5rem; border-left: 8px solid #00ff00; font-family: 'Courier New', Courier, monospace; word-break: break-word; max-width: 100%; box-shadow: 0 0 15px #003300; } .matrix-code span { display: inline-block; animation: matrixLetter 1.5s infinite; } @keyframes matrixLetter { 0% { opacity: 0.8; color: #88ff88; text-shadow: 0 0 5px #0f0; } 50% { opacity: 1; color: #ffffff; text-shadow: 0 0 10px #0f0, 0 0 20px #0f0; } 100% { opacity: 0.8; color: #88ff88; text-shadow: 0 0 5px #0f0; } } .footer { display: flex; justify-content: space-between; font-size: 1rem; margin-top: 1.8rem; color: #00aa00; border-top: 1px solid #1f4f1f; padding-top: 1rem; text-transform: uppercase; letter-spacing: 2px; } .footer .warning { color: #ff6a6a; animation: blinkWarning 2s infinite; } @keyframes blinkWarning { 0% { opacity: 1; text-shadow: 0 0 5px red; } 50% { opacity: 0.3; } 100% { opacity: 1; } } /* ascii art style */ .ascii { color: #22aa22; font-size: 0.9rem; line-height: 1.2; white-space: pre; letter-spacing: 0px; margin: 15px 0 10px; } /* random glitch button (just for fun) */ .trigger-glitch { background: transparent; border: 2px solid #1f9f1f; color: #22ff22; padding: 0.5rem 1.2rem; font-family: 'Courier New', monospace; font-weight: bold; font-size: 1.2rem; border-radius: 0; cursor: pointer; transition: 0.2s; margin-top: 1rem; box-shadow: 0 0 10px #0f0; } .trigger-glitch:hover { background: #1f9f1f; color: black; border-color: yellow; box-shadow: 0 0 30px yellow; } </style> </head> <body> <!-- background layers --> <div class="glitch-bg"></div> <div class="scan-line"></div> <main class="terminal" id="mainTerminal"> <!-- main hacked text --> <div class="hacked-title">HACKED</div> <!-- "by cykomnepal" with extra glitch --> <div class="by-line">BY <span class="cykomnepal" id="cykomText">cykomnepal</span></div> <!-- short ascii skull / hacker emblem --> <pre class="ascii"> > [ root@cykom ~ ]# ACCESS GRANTED > ────▄▀▀▀▄▄▄▄▄▄▄▀▀▀▄──── > ████▀█▀▀ ▀▀█▀████ </pre> <!-- status panel --> <div class="status-bar"> <span class="blink">⚠️ SYSTEM BREACH ⚠️</span> <span class="ip-display" id="ipAddress">Fetching IP...</span> <span>🖧 0DAY: ACTIVE</span> </div> <!-- matrix style running code (dynamic js effect) --> <div class="matrix-code" id="matrixLine"> <span>C</span> <span>y</span> <span>b</span> <span>e</span> <span>r</span> <span>a</span> <span>t</span> <span>t</span> <span>a</span> <span>c</span> <span>k</span> <span>i</span> <span>n</span> <span>p</span> <span>r</span> <span>o</span> <span>g</span> <span>r</span> <span>e</span> <span>s</span> <span>s</span> <span>.</span> <span>.</span> </div> <!-- additional info footer --> <div class="footer"> <span class="warning">❗ encrypted payload</span> <span id="timestamp">00:00:00 UTC</span> <span>🌐 #cykomnepal</span> </div> <!-- small glitch effect button (extra interactivity) --> <button class="trigger-glitch" id="glitchBtn"> >_ inject glitch</button> </main> <script> (function() { // ========== JS for dynamic effects & info ========== // 1. Display user's IP (via fetch) - with fallback const ipEl = document.getElementById('ipAddress'); if (ipEl) { fetch('https://api.ipify.org?format=json') .then(res => res.json()) .then(data => { ipEl.textContent = data.ip + " (PUBLIC)"; }) .catch(() => { ipEl.textContent = "127.0.0.1 (localhost)"; }); } // 2. update timestamp (UTC) every second const tsEl = document.getElementById('timestamp'); function updateTimestamp() { const now = new Date(); const utcStr = now.toISOString().substr(11, 8) + " UTC"; if (tsEl) tsEl.textContent = utcStr; } updateTimestamp(); setInterval(updateTimestamp, 1000); // 3. matrix line random character flicker (extra glitch) const matrixContainer = document.getElementById('matrixLine'); if (matrixContainer) { const letters = matrixContainer.querySelectorAll('span'); const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{};:"; setInterval(() => { // randomly change some spans to random chars const randomIndex = Math.floor(Math.random() * letters.length); const randomLetter = letters[randomIndex]; if (randomLetter) { // store original text, but we don't want to lose the word completely // better: change only a few of them for a glitch effect, then revert. const originalText = randomLetter.textContent; const randomChar = chars[Math.floor(Math.random() * chars.length)]; randomLetter.textContent = randomChar; // revert after 200ms setTimeout(() => { if (randomLetter) { // we need to know original — but we lost it for this span. // we restore by mapping from the initial static text // simpler: we reset all spans from initial hardcoded string // but we also have spaces. Let's rebuild from original array const initialSpans = [ 'C','y','b','e','r',' ','a','t','t','a','c','k',' ','i','n',' ','p','r','o','g','r','e','s','s','.','.' ]; // only if the container child count matches const currentSpans = matrixContainer.querySelectorAll('span'); if (currentSpans.length === initialSpans.length) { currentSpans.forEach((sp, idx) => { sp.textContent = initialSpans[idx]; }); } else { // fallback: reload page silently? we trust. } } }, 150); } }, 400); } // 4. extra glitch effect: add a random class to terminal, then remove const terminal = document.getElementById('mainTerminal'); const glitchBtn = document.getElementById('glitchBtn'); function addRandomGlitch() { if (!terminal) return; terminal.style.transform = 'skew(2deg, 1deg)'; terminal.style.borderColor = '#ff00ff'; terminal.style.boxShadow = '0 0 60px #ff0000, 0 0 30px #0000ff'; terminal.style.transition = 'all 0.05s ease'; // change cykomnepal color flash const cykom = document.getElementById('cykomText'); if (cykom) { cykom.style.color = '#ff4444'; cykom.style.textShadow = '0 0 20px yellow, 0 0 40px red'; } setTimeout(() => { if (terminal) { terminal.style.transform = 'skew(0deg, 0deg)'; terminal.style.borderColor = '#2eff2e'; terminal.style.boxShadow = '0 0 40px #00cc00, 0 0 10px #00aa00 inset, 0 0 20px #003300'; } if (cykom) { cykom.style.color = ''; cykom.style.textShadow = ''; } }, 250); } if (glitchBtn) { glitchBtn.addEventListener('click', addRandomGlitch); } // also random glitch every 12 seconds setInterval(() => { addRandomGlitch(); }, 12000); // 5. small matrix/ip detail: user-agent or something? not necessary but fine // 6. add a random "boot message" in matrix line? already fine. // 7. extra: change title periodically with glitch? optional. let originalTitle = document.title; setInterval(() => { document.title = "HACKED by cykomnepal"; setTimeout(() => { document.title = "⚠️ cykomnepal owned ⚠️"; }, 300); }, 5000); // 8. cool: fake typewriter for ascii? no needed, but we can add glitchy class. })(); </script> <!-- ensure ASCII looks okay on small screens --> <style> @media (max-width: 600px) { .hacked-title { font-size: 3.2rem; letter-spacing: 4px; } .by-line { font-size: 2rem; } .cykomnepal { font-size: 2.5rem; } .terminal { padding: 1.8rem 1.5rem; } .status-bar { font-size: 1rem; padding: 0.8rem 1rem; } .ascii { font-size: 0.7rem; } } @media (max-width: 400px) { .hacked-title { font-size: 2.5rem; } .cykomnepal { font-size: 2rem; } } </style> </body> </html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hacked by cykomnepal</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
background: #0a0c0f;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
font-family: 'Courier New', Courier, monospace;
position: relative;
overflow-x: hidden;
}
/* glitchy background layers */
.glitch-bg {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background:
repeating-linear-gradient(0deg,
rgba(0, 255, 0, 0.03) 0px,
rgba(255, 0, 0, 0.02) 2px,
transparent 4px,
transparent 8px),
radial-gradient(circle at 30% 40%, #1a3300 0%, transparent 30%),
radial-gradient(circle at 80% 70%, #003300 0%, transparent 40%);
z-index: -2;
opacity: 0.9;
}
.scan-line {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to bottom,
transparent 50%,
rgba(0, 20, 0, 0.2) 50%);
background-size: 100% 4px;
pointer-events: none;
z-index: -1;
animation: scan 8s linear infinite;
}
@keyframes scan {
0% { background-position: 0 0; }
100% { background-position: 0 20px; }
}
/* main card – terminal/crt style */
.terminal {
background: rgba(10, 20, 5, 0.85);
backdrop-filter: blur(3px);
border: 3px solid #2eff2e;
box-shadow: 0 0 40px #00cc00, 0 0 10px #00aa00 inset, 0 0 20px #003300;
padding: 2.8rem 3.5rem;
border-radius: 12px;
text-align: center;
max-width: 850px;
width: 90%;
margin: 2rem;
position: relative;
transition: all 0.2s ease;
animation: flicker 5s infinite;
color: #b3ffb3;
}
/* glitch pseudo elements */
.terminal::before,
.terminal::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: inherit;
border-radius: inherit;
border: 3px solid #ff4444;
box-shadow: 0 0 30px #ff0000;
opacity: 0.4;
mix-blend-mode: multiply;
pointer-events: none;
z-index: 1;
}
.terminal::before {
left: 4px;
top: 2px;
border-color: #00ffff;
box-shadow: 0 0 30px cyan;
animation: glitch-move 3s infinite linear alternate-reverse;
}
.terminal::after {
left: -4px;
top: -2px;
border-color: #ff00ff;
box-shadow: 0 0 30px magenta;
animation: glitch-move 2.8s infinite linear alternate-reverse;
}
@keyframes glitch-move {
0% { clip-path: inset(20% 0 30% 0); transform: translate(2px, -2px); }
20% { clip-path: inset(60% 0 10% 0); transform: translate(-3px, 1px); }
40% { clip-path: inset(10% 0 70% 0); transform: translate(2px, 2px); }
60% { clip-path: inset(40% 0 40% 0); transform: translate(-2px, -1px); }
80% { clip-path: inset(80% 0 5% 0); transform: translate(1px, 3px); }
100% { clip-path: inset(15% 0 55% 0); transform: translate(-1px, -3px); }
}
@keyframes flicker {
0% { opacity: 1; }
10% { opacity: 0.95; text-shadow: 0 0 5px #0f0; }
20% { opacity: 1; }
30% { opacity: 0.98; }
40% { opacity: 1; }
50% { opacity: 0.9; text-shadow: -2px 0 red, 2px 0 blue; }
60% { opacity: 1; }
70% { opacity: 1; }
80% { opacity: 0.95; }
90% { opacity: 1; }
100% { opacity: 1; }
}
/* main hacked text */
.hacked-title {
font-size: 5.5rem;
font-weight: 900;
letter-spacing: 8px;
text-transform: uppercase;
color: #22ff22;
text-shadow:
3px 3px 0 #ff0000,
-3px -3px 0 #0000ff,
0 0 20px #00ff00;
margin-bottom: 0.3rem;
line-height: 1.1;
animation: text-glitch 4s infinite;
font-family: 'Courier New', Courier, monospace;
}
@keyframes text-glitch {
0% { transform: skew(0deg, 0deg); opacity: 1; text-shadow: 3px 3px 0 red, -3px -3px 0 blue, 0 0 20px lime; }
9% { transform: skew(2deg, 1deg); text-shadow: 5px 2px 0 red, -4px -5px 0 cyan; }
10% { transform: skew(-3deg, -2deg); text-shadow: -4px 3px 0 magenta, 5px -4px 0 lime; }
11% { transform: skew(0deg, 0deg); text-shadow: 3px 3px 0 red, -3px -3px 0 blue, 0 0 20px lime; }
90% { transform: skew(0deg, 0deg); }
91% { transform: skew(5deg, 0deg); text-shadow: -6px -3px 0 #ff00ff, 6px 3px 0 #00ffff; }
92% { transform: skew(-5deg, 0deg); }
93% { transform: skew(0deg, 0deg); }
}
.by-line {
font-size: 2.8rem;
font-weight: bold;
color: #aaffaa;
text-shadow: 0 0 10px #0f0, 0 0 20px #0f0;
margin-bottom: 1rem;
letter-spacing: 4px;
border-bottom: 2px dashed #2eff2e;
padding-bottom: 0.5rem;
display: inline-block;
}
.cykomnepal {
font-size: 3.5rem;
font-weight: 900;
background: linear-gradient(45deg, #00ff00, #ffff00, #00ff00);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
text-shadow: 0 0 20px #0f0, 0 0 40px #0f0;
margin: 0.5rem 0 0.2rem;
letter-spacing: 6px;
text-transform: uppercase;
filter: drop-shadow(0 0 8px #00cc00);
animation: colorPulse 3s infinite;
}
@keyframes colorPulse {
0% { filter: drop-shadow(0 0 5px #0f0); }
50% { filter: drop-shadow(0 0 20px #ff0) drop-shadow(0 0 10px #f0f); }
100% { filter: drop-shadow(0 0 5px #0f0); }
}
.status-bar {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 1rem 2rem;
margin: 2rem 0 1rem;
font-size: 1.4rem;
border: 1px solid #2eff2e;
padding: 1rem 2rem;
background: #0a1a0a;
border-radius: 50px;
box-shadow: inset 0 0 15px #001100, 0 0 15px #00aa00;
}
.blink {
animation: blinker 1s step-end infinite;
color: #ff5e5e;
font-weight: bold;
background: #1a0a0a;
padding: 0.2rem 1rem;
border-radius: 30px;
letter-spacing: 2px;
}
@keyframes blinker {
0%, 100% { opacity: 1; background: #2a0000; color: #ff8888; }
50% { opacity: 0; background: #550000; color: #ff0000; }
}
.ip-display {
background: black;
padding: 0.4rem 1.2rem;
border-radius: 40px;
border: 1px solid #00aa00;
color: #88ff88;
}
.matrix-code {
font-size: 1.1rem;
color: #55aa55;
background: #0f0f0f;
padding: 0.6rem 1rem;
border-radius: 6px;
margin: 1.5rem 0 0.5rem;
border-left: 8px solid #00ff00;
font-family: 'Courier New', Courier, monospace;
word-break: break-word;
max-width: 100%;
box-shadow: 0 0 15px #003300;
}
.matrix-code span {
display: inline-block;
animation: matrixLetter 1.5s infinite;
}
@keyframes matrixLetter {
0% { opacity: 0.8; color: #88ff88; text-shadow: 0 0 5px #0f0; }
50% { opacity: 1; color: #ffffff; text-shadow: 0 0 10px #0f0, 0 0 20px #0f0; }
100% { opacity: 0.8; color: #88ff88; text-shadow: 0 0 5px #0f0; }
}
.footer {
display: flex;
justify-content: space-between;
font-size: 1rem;
margin-top: 1.8rem;
color: #00aa00;
border-top: 1px solid #1f4f1f;
padding-top: 1rem;
text-transform: uppercase;
letter-spacing: 2px;
}
.footer .warning {
color: #ff6a6a;
animation: blinkWarning 2s infinite;
}
@keyframes blinkWarning {
0% { opacity: 1; text-shadow: 0 0 5px red; }
50% { opacity: 0.3; }
100% { opacity: 1; }
}
/* ascii art style */
.ascii {
color: #22aa22;
font-size: 0.9rem;
line-height: 1.2;
white-space: pre;
letter-spacing: 0px;
margin: 15px 0 10px;
}
/* random glitch button (just for fun) */
.trigger-glitch {
background: transparent;
border: 2px solid #1f9f1f;
color: #22ff22;
padding: 0.5rem 1.2rem;
font-family: 'Courier New', monospace;
font-weight: bold;
font-size: 1.2rem;
border-radius: 0;
cursor: pointer;
transition: 0.2s;
margin-top: 1rem;
box-shadow: 0 0 10px #0f0;
}
.trigger-glitch:hover {
background: #1f9f1f;
color: black;
border-color: yellow;
box-shadow: 0 0 30px yellow;
}
</style>
</head>
<body>
<!-- background layers -->
<div class="glitch-bg"></div>
<div class="scan-line"></div>
<main class="terminal" id="mainTerminal">
<!-- main hacked text -->
<div class="hacked-title">HACKED</div>
<!-- "by cykomnepal" with extra glitch -->
<div class="by-line">BY <span class="cykomnepal" id="cykomText">cykomnepal</span></div>
<!-- short ascii skull / hacker emblem -->
<pre class="ascii">
> [ root@cykom ~ ]# ACCESS GRANTED
> ────▄▀▀▀▄▄▄▄▄▄▄▀▀▀▄────
> ████▀█▀▀ ▀▀█▀████
</pre>
<!-- status panel -->
<div class="status-bar">
<span class="blink">⚠️ SYSTEM BREACH ⚠️</span>
<span class="ip-display" id="ipAddress">Fetching IP...</span>
<span>🖧 0DAY: ACTIVE</span>
</div>
<!-- matrix style running code (dynamic js effect) -->
<div class="matrix-code" id="matrixLine">
<span>C</span> <span>y</span> <span>b</span> <span>e</span> <span>r</span>
<span>a</span> <span>t</span> <span>t</span> <span>a</span> <span>c</span> <span>k</span>
<span>i</span> <span>n</span> <span>p</span> <span>r</span> <span>o</span> <span>g</span> <span>r</span> <span>e</span> <span>s</span> <span>s</span> <span>.</span> <span>.</span>
</div>
<!-- additional info footer -->
<div class="footer">
<span class="warning">❗ encrypted payload</span>
<span id="timestamp">00:00:00 UTC</span>
<span>🌐 #cykomnepal</span>
</div>
<!-- small glitch effect button (extra interactivity) -->
<button class="trigger-glitch" id="glitchBtn"> >_ inject glitch</button>
</main>
<script>
(function() {
// ========== JS for dynamic effects & info ==========
// 1. Display user's IP (via fetch) - with fallback
const ipEl = document.getElementById('ipAddress');
if (ipEl) {
fetch('https://api.ipify.org?format=json')
.then(res => res.json())
.then(data => {
ipEl.textContent = data.ip + " (PUBLIC)";
})
.catch(() => {
ipEl.textContent = "127.0.0.1 (localhost)";
});
}
// 2. update timestamp (UTC) every second
const tsEl = document.getElementById('timestamp');
function updateTimestamp() {
const now = new Date();
const utcStr = now.toISOString().substr(11, 8) + " UTC";
if (tsEl) tsEl.textContent = utcStr;
}
updateTimestamp();
setInterval(updateTimestamp, 1000);
// 3. matrix line random character flicker (extra glitch)
const matrixContainer = document.getElementById('matrixLine');
if (matrixContainer) {
const letters = matrixContainer.querySelectorAll('span');
const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{};:";
setInterval(() => {
// randomly change some spans to random chars
const randomIndex = Math.floor(Math.random() * letters.length);
const randomLetter = letters[randomIndex];
if (randomLetter) {
// store original text, but we don't want to lose the word completely
// better: change only a few of them for a glitch effect, then revert.
const originalText = randomLetter.textContent;
const randomChar = chars[Math.floor(Math.random() * chars.length)];
randomLetter.textContent = randomChar;
// revert after 200ms
setTimeout(() => {
if (randomLetter) {
// we need to know original — but we lost it for this span.
// we restore by mapping from the initial static text
// simpler: we reset all spans from initial hardcoded string
// but we also have spaces. Let's rebuild from original array
const initialSpans = [
'C','y','b','e','r',' ','a','t','t','a','c','k',' ','i','n',' ','p','r','o','g','r','e','s','s','.','.'
];
// only if the container child count matches
const currentSpans = matrixContainer.querySelectorAll('span');
if (currentSpans.length === initialSpans.length) {
currentSpans.forEach((sp, idx) => {
sp.textContent = initialSpans[idx];
});
} else {
// fallback: reload page silently? we trust.
}
}
}, 150);
}
}, 400);
}
// 4. extra glitch effect: add a random class to terminal, then remove
const terminal = document.getElementById('mainTerminal');
const glitchBtn = document.getElementById('glitchBtn');
function addRandomGlitch() {
if (!terminal) return;
terminal.style.transform = 'skew(2deg, 1deg)';
terminal.style.borderColor = '#ff00ff';
terminal.style.boxShadow = '0 0 60px #ff0000, 0 0 30px #0000ff';
terminal.style.transition = 'all 0.05s ease';
// change cykomnepal color flash
const cykom = document.getElementById('cykomText');
if (cykom) {
cykom.style.color = '#ff4444';
cykom.style.textShadow = '0 0 20px yellow, 0 0 40px red';
}
setTimeout(() => {
if (terminal) {
terminal.style.transform = 'skew(0deg, 0deg)';
terminal.style.borderColor = '#2eff2e';
terminal.style.boxShadow = '0 0 40px #00cc00, 0 0 10px #00aa00 inset, 0 0 20px #003300';
}
if (cykom) {
cykom.style.color = '';
cykom.style.textShadow = '';
}
}, 250);
}
if (glitchBtn) {
glitchBtn.addEventListener('click', addRandomGlitch);
}
// also random glitch every 12 seconds
setInterval(() => {
addRandomGlitch();
}, 12000);
// 5. small matrix/ip detail: user-agent or something? not necessary but fine
// 6. add a random "boot message" in matrix line? already fine.
// 7. extra: change title periodically with glitch? optional.
let originalTitle = document.title;
setInterval(() => {
document.title = "HACKED by cykomnepal";
setTimeout(() => {
document.title = "⚠️ cykomnepal owned ⚠️";
}, 300);
}, 5000);
// 8. cool: fake typewriter for ascii? no needed, but we can add glitchy class.
})();
</script>
<!-- ensure ASCII looks okay on small screens -->
<style>
@media (max-width: 600px) {
.hacked-title {
font-size: 3.2rem;
letter-spacing: 4px;
}
.by-line {
font-size: 2rem;
}
.cykomnepal {
font-size: 2.5rem;
}
.terminal {
padding: 1.8rem 1.5rem;
}
.status-bar {
font-size: 1rem;
padding: 0.8rem 1rem;
}
.ascii {
font-size: 0.7rem;
}
}
@media (max-width: 400px) {
.hacked-title {
font-size: 2.5rem;
}
.cykomnepal {
font-size: 2rem;
}
}
</style>
</body>
</html>

