TRKING / contact_protocol.html
Shinhati2023's picture
Update contact_protocol.html
bf20809 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>TR KING | Contact Protocol</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
:root {
--bg-dark: #0b1120;
--panel-bg: rgba(30, 41, 59, 0.95);
--accent-primary: #0ea5e9; /* Cyan */
--accent-secondary: #10b981; /* Green */
--text-main: #f1f5f9;
--text-dim: #94a3b8;
}
* { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Segoe UI', monospace; }
body {
background-color: var(--bg-dark);
color: var(--text-main);
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
overflow-x: hidden;
-webkit-tap-highlight-color: transparent;
}
/* BG ANIMATION */
#bg-canvas { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; }
/* CONTAINER */
.container { max-width: 900px; width: 100%; padding: 20px; z-index: 10; }
/* HEADER */
.header { margin: 40px 0; border-left: 4px solid var(--accent-secondary); padding-left: 20px; }
.header h1 { font-size: 2rem; text-transform: uppercase; text-shadow: 0 0 10px rgba(16, 185, 129, 0.4); }
.back-link {
color: var(--accent-primary); text-decoration: none; font-weight: bold;
display: inline-flex; align-items: center; gap: 8px; margin-bottom: 20px;
cursor: pointer;
}
.back-link:hover { text-decoration: underline; }
/* TERMINAL BOX */
.terminal-box {
background: #000; border: 1px solid var(--accent-secondary);
padding: 40px; border-radius: 8px; margin-bottom: 50px;
box-shadow: 0 0 30px rgba(16, 185, 129, 0.15);
position: relative; overflow: hidden;
text-align: left;
}
.terminal-box::after {
content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%);
background-size: 100% 4px; pointer-events: none; z-index: 2;
}
.terminal-text { color: var(--text-dim); font-family: 'Courier New', monospace; margin-bottom: 20px; font-size: 0.9rem; }
.cursor { display: inline-block; width: 10px; height: 18px; background: var(--accent-secondary); animation: blink 1s infinite; vertical-align: middle; }
@keyframes blink { 50% { opacity: 0; } }
/* THE REVEALED CONTACT DATA */
.revealed-data {
background: rgba(16, 185, 129, 0.1);
border: 1px dashed var(--accent-secondary);
color: var(--accent-secondary);
font-family: 'Courier New', monospace;
font-size: 1.5rem;
padding: 20px;
margin: 20px 0;
text-align: center;
font-weight: bold;
letter-spacing: 1px;
word-break: break-all;
text-shadow: 0 0 10px rgba(16, 185, 129, 0.5);
position: relative;
z-index: 5;
}
.action-btn {
display: block;
background: var(--accent-secondary);
color: #000;
text-align: center;
padding: 15px;
font-weight: bold;
text-decoration: none;
text-transform: uppercase;
border-radius: 4px;
transition: 0.3s;
position: relative;
z-index: 5;
margin-top: 20px;
}
.action-btn:hover {
background: #fff;
box-shadow: 0 0 20px rgba(255, 255, 255, 0.5);
}
/* FACTS GRID */
.facts-section { margin-top: 50px; }
.section-title { font-size: 1.5rem; margin-bottom: 25px; border-bottom: 1px solid #334155; padding-bottom: 10px; color: var(--accent-primary); }
.facts-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 25px; }
.fact-card {
background: var(--panel-bg); border: 1px solid #334155;
padding: 20px; border-radius: 8px; backdrop-filter: blur(5px);
transition: 0.3s;
}
.fact-card:hover { border-color: var(--accent-primary); transform: translateY(-5px); }
.fact-icon { font-size: 1.5rem; color: var(--accent-primary); margin-bottom: 15px; }
.fact-title { font-weight: bold; margin-bottom: 10px; color: #fff; }
.fact-desc { font-size: 0.9rem; color: var(--text-dim); line-height: 1.6; }
/* CYBER IMAGE */
.cyber-img {
width: 100%; height: 250px; object-fit: cover;
border-radius: 8px; margin-top: 30px; margin-bottom: 30px;
border: 1px solid var(--accent-primary);
filter: grayscale(40%) contrast(1.2);
}
@media (max-width: 768px) {
.header h1 { font-size: 1.5rem; }
.terminal-box { padding: 20px; }
.revealed-data { font-size: 1.1rem; }
}
</style>
</head>
<body>
<canvas id="bg-canvas"></canvas>
<div class="container">
<a href="index.html" class="back-link"><i class="fas fa-arrow-left"></i> ABORT & RETURN TO DASHBOARD</a>
<header class="header">
<p style="color:var(--accent-secondary); font-size: 0.9rem;">ENCRYPTED CHANNEL // TR KING</p>
<h1>Contact Protocol Established</h1>
</header>
<section class="terminal-box">
<div class="terminal-text">
> DECRYPTING SECURE CHANNEL... [100%]<br>
> TARGET IDENTIFIED: TR KING<br>
> PRIMARY COMM LINK REVEALED:<span class="cursor"></span>
</div>
<div class="revealed-data">
treyvonste@proton.me
</div>
<div class="terminal-text" style="margin-top:20px;">
> STATUS: READY FOR TRANSMISSION
</div>
<a href="https://mail.google.com/mail/?view=cm&fs=1&to=treyvonste@proton.me" target="_blank" class="action-btn">
<i class="fas fa-envelope-open-text"></i> INITIALIZE GMAIL CLIENT
</a>
</section>
<img src="https://images.unsplash.com/photo-1515879218367-8466d910aaa4?q=80&w=1000&auto=format&fit=crop" alt="Cyberpunk Data City" class="cyber-img">
<section class="facts-section">
<h2 class="section-title">DECLASSIFIED DATA: JAVASCRIPT</h2>
<div class="facts-grid">
<div class="fact-card">
<div class="fact-icon"><i class="fas fa-bolt"></i></div>
<div class="fact-title">Single-Threaded Speed</div>
<p class="fact-desc">JS uses an <strong>Event Loop</strong> to handle concurrency. It doesn't wait for I/O operations, making it incredibly fast for servers (Node.js) despite being single-threaded.</p>
</div>
<div class="fact-card">
<div class="fact-icon"><i class="fas fa-code-branch"></i></div>
<div class="fact-title">Prototypal Inheritance</div>
<p class="fact-desc">Unlike C# or Java, JS uses <strong>Prototypes</strong>. Objects inherit directly from other objects, creating a flexible, dynamic chain of properties.</p>
</div>
<div class="fact-card">
<div class="fact-icon"><i class="fas fa-memory"></i></div>
<div class="fact-title">V8 Engine Power</div>
<p class="fact-desc">Chrome's V8 engine compiles JS directly to <strong>Machine Code</strong> just before execution (JIT), giving it near-native performance speeds.</p>
</div>
<div class="fact-card">
<div class="fact-icon"><i class="fas fa-globe"></i></div>
<div class="fact-title">The Language of the Web</div>
<p class="fact-desc">It is the only language that runs natively in 99% of web browsers, making it the universal standard for client-side logic.</p>
</div>
</div>
</section>
<div style="text-align:center; margin-top: 50px; color: #555; font-size: 0.8rem;">
END OF TRANSMISSION // TR KING
</div>
</div>
<script>
const canvas = document.getElementById('bg-canvas');
const ctx = canvas.getContext('2d');
let particles = [];
function resize() {
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
initParticles();
}
window.addEventListener('resize', resize);
class Particle {
constructor() {
this.x = Math.random() * canvas.width;
this.y = Math.random() * canvas.height;
this.vx = (Math.random() - 0.5) * 0.5;
this.vy = (Math.random() - 0.5) * 0.5;
this.size = Math.random() * 2 + 1;
}
update() {
this.x += this.vx; this.y += this.vy;
if (this.x < 0 || this.x > canvas.width) this.vx *= -1;
if (this.y < 0 || this.y > canvas.height) this.vy *= -1;
}
draw() {
ctx.fillStyle = 'rgba(14, 165, 233, 0.4)';
ctx.beginPath(); ctx.arc(this.x, this.y, this.size, 0, Math.PI * 2); ctx.fill();
}
}
function initParticles() {
particles = [];
const particleCount = Math.min(window.innerWidth / 15, 60);
for (let i = 0; i < particleCount; i++) { particles.push(new Particle()); }
}
function animate() {
ctx.clearRect(0, 0, canvas.width, canvas.height);
for (let i = 0; i < particles.length; i++) {
particles[i].update(); particles[i].draw();
for (let j = i; j < particles.length; j++) {
const dx = particles[i].x - particles[j].x;
const dy = particles[i].y - particles[j].y;
const distance = Math.sqrt(dx * dx + dy * dy);
if (distance < 120) {
ctx.beginPath(); ctx.strokeStyle = `rgba(14, 165, 233, ${0.15 - distance/800})`;
ctx.lineWidth = 1; ctx.moveTo(particles[i].x, particles[i].y); ctx.lineTo(particles[j].x, particles[j].y); ctx.stroke();
}
}
}
requestAnimationFrame(animate);
}
resize(); animate();
</script>
</body>
</html>