Compare commits
1 Commits
fb82a41e4e
...
new-tempat
| Author | SHA1 | Date | |
|---|---|---|---|
| b3bb417519 |
260
index.html
Normal file
260
index.html
Normal file
@@ -0,0 +1,260 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="ru">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>NSA Secure Terminal</title>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
body{
|
||||||
|
margin:0;
|
||||||
|
background:#000;
|
||||||
|
font-family:monospace;
|
||||||
|
color:#00ff88;
|
||||||
|
overflow:hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* GRID */
|
||||||
|
|
||||||
|
.grid{
|
||||||
|
position:absolute;
|
||||||
|
width:100%;
|
||||||
|
height:100%;
|
||||||
|
background:
|
||||||
|
linear-gradient(#00ff8822 1px, transparent 1px),
|
||||||
|
linear-gradient(90deg,#00ff8822 1px, transparent 1px);
|
||||||
|
background-size:40px 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* SCAN LINE */
|
||||||
|
|
||||||
|
.scanline{
|
||||||
|
position:absolute;
|
||||||
|
width:100%;
|
||||||
|
height:4px;
|
||||||
|
background:#00ff88;
|
||||||
|
opacity:.2;
|
||||||
|
animation:scan 4s linear infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes scan{
|
||||||
|
0%{top:-10%}
|
||||||
|
100%{top:110%}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* MATRIX */
|
||||||
|
|
||||||
|
canvas{
|
||||||
|
position:absolute;
|
||||||
|
top:0;
|
||||||
|
left:0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* RADAR */
|
||||||
|
|
||||||
|
.radar{
|
||||||
|
position:absolute;
|
||||||
|
right:50px;
|
||||||
|
top:50px;
|
||||||
|
width:150px;
|
||||||
|
height:150px;
|
||||||
|
border:1px solid #00ff88;
|
||||||
|
border-radius:50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.radar::after{
|
||||||
|
content:"";
|
||||||
|
position:absolute;
|
||||||
|
width:50%;
|
||||||
|
height:2px;
|
||||||
|
background:#00ff88;
|
||||||
|
top:50%;
|
||||||
|
left:50%;
|
||||||
|
transform-origin:left;
|
||||||
|
animation:radar 3s linear infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes radar{
|
||||||
|
0%{transform:rotate(0deg)}
|
||||||
|
100%{transform:rotate(360deg)}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* LOGIN BOX */
|
||||||
|
|
||||||
|
.login{
|
||||||
|
position:absolute;
|
||||||
|
top:50%;
|
||||||
|
left:50%;
|
||||||
|
transform:translate(-50%,-50%);
|
||||||
|
border:1px solid #00ff88;
|
||||||
|
padding:40px;
|
||||||
|
width:350px;
|
||||||
|
background:rgba(0,20,0,.85);
|
||||||
|
box-shadow:0 0 30px #00ff88;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* SAM FISHER LIGHTS */
|
||||||
|
|
||||||
|
.goggles{
|
||||||
|
display:flex;
|
||||||
|
justify-content:center;
|
||||||
|
gap:10px;
|
||||||
|
margin-bottom:20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.light{
|
||||||
|
width:14px;
|
||||||
|
height:14px;
|
||||||
|
border-radius:50%;
|
||||||
|
background:#00ff88;
|
||||||
|
box-shadow:0 0 15px #00ff88,0 0 30px #00ff88;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* INPUT */
|
||||||
|
|
||||||
|
input{
|
||||||
|
width:100%;
|
||||||
|
margin:10px 0;
|
||||||
|
padding:10px;
|
||||||
|
background:#001a00;
|
||||||
|
border:1px solid #00ff88;
|
||||||
|
color:#00ff88;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* BUTTON */
|
||||||
|
|
||||||
|
button{
|
||||||
|
width:100%;
|
||||||
|
padding:12px;
|
||||||
|
background:#002200;
|
||||||
|
border:1px solid #00ff88;
|
||||||
|
color:#00ff88;
|
||||||
|
cursor:pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
button:hover{
|
||||||
|
background:#00ff88;
|
||||||
|
color:#000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* TERMINAL TEXT */
|
||||||
|
|
||||||
|
.terminal{
|
||||||
|
position:absolute;
|
||||||
|
bottom:30px;
|
||||||
|
left:30px;
|
||||||
|
font-size:14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cursor{
|
||||||
|
animation:blink 1s infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink{
|
||||||
|
0%,50%,100%{opacity:1}
|
||||||
|
25%,75%{opacity:0}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* GLITCH */
|
||||||
|
|
||||||
|
.glitch{
|
||||||
|
animation:glitch 2s infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes glitch{
|
||||||
|
0%{text-shadow:2px 0 red}
|
||||||
|
20%{text-shadow:-2px 0 blue}
|
||||||
|
40%{text-shadow:2px 0 green}
|
||||||
|
60%{text-shadow:-2px 0 red}
|
||||||
|
80%{text-shadow:2px 0 blue}
|
||||||
|
100%{text-shadow:0 0 5px #00ff88}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="grid"></div>
|
||||||
|
<div class="scanline"></div>
|
||||||
|
|
||||||
|
<canvas id="matrix"></canvas>
|
||||||
|
|
||||||
|
<div class="radar"></div>
|
||||||
|
|
||||||
|
<div class="login">
|
||||||
|
|
||||||
|
<div class="goggles">
|
||||||
|
<div class="light"></div>
|
||||||
|
<div class="light"></div>
|
||||||
|
<div class="light"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h2 class="glitch">NSA SECURE TERMINAL</h2>
|
||||||
|
|
||||||
|
<form action="/user/login" method="post">
|
||||||
|
|
||||||
|
<input type="text" name="user_name" placeholder="username">
|
||||||
|
<input type="password" name="password" placeholder="password">
|
||||||
|
|
||||||
|
<button>ACCESS SYSTEM</button>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="terminal">
|
||||||
|
Initializing secure channel...<br>
|
||||||
|
Scanning user credentials...<br>
|
||||||
|
Access protocol ready<span class="cursor">_</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
/* MATRIX RAIN */
|
||||||
|
|
||||||
|
const canvas=document.getElementById("matrix")
|
||||||
|
const ctx=canvas.getContext("2d")
|
||||||
|
|
||||||
|
canvas.height=window.innerHeight
|
||||||
|
canvas.width=window.innerWidth
|
||||||
|
|
||||||
|
const letters="01GITEA_SECURE_ACCESS"
|
||||||
|
letters.split("")
|
||||||
|
|
||||||
|
const font=14
|
||||||
|
const columns=canvas.width/font
|
||||||
|
const drops=[]
|
||||||
|
|
||||||
|
for(let x=0;x<columns;x++)
|
||||||
|
drops[x]=1
|
||||||
|
|
||||||
|
function draw(){
|
||||||
|
|
||||||
|
ctx.fillStyle="rgba(0,0,0,.05)"
|
||||||
|
ctx.fillRect(0,0,canvas.width,canvas.height)
|
||||||
|
|
||||||
|
ctx.fillStyle="#00ff88"
|
||||||
|
ctx.font=font+"px monospace"
|
||||||
|
|
||||||
|
for(let i=0;i<drops.length;i++){
|
||||||
|
|
||||||
|
const text=letters.charAt(Math.floor(Math.random()*letters.length))
|
||||||
|
|
||||||
|
ctx.fillText(text,i*font,drops[i]*font)
|
||||||
|
|
||||||
|
if(drops[i]*font>canvas.height && Math.random()>0.975)
|
||||||
|
drops[i]=0
|
||||||
|
|
||||||
|
drops[i]++
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
setInterval(draw,33)
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
273
soso.html
273
soso.html
@@ -1,273 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="ru">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<title>Third Echelon Secure Node</title>
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
@import url('https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap');
|
|
||||||
|
|
||||||
body {
|
|
||||||
margin: 0;
|
|
||||||
font-family: 'Share Tech Mono', monospace;
|
|
||||||
background: #000000;
|
|
||||||
color: #00ff9c;
|
|
||||||
overflow: hidden;
|
|
||||||
cursor: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Scanlines + CRT flicker */
|
|
||||||
body::after {
|
|
||||||
content: "";
|
|
||||||
position: fixed;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
background: repeating-linear-gradient(
|
|
||||||
to bottom,
|
|
||||||
rgba(0,255,156,0.05) 1px,
|
|
||||||
transparent 3px
|
|
||||||
);
|
|
||||||
pointer-events: none;
|
|
||||||
animation: flicker 0.12s infinite;
|
|
||||||
}
|
|
||||||
@keyframes flicker {
|
|
||||||
0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {opacity: 0.03;}
|
|
||||||
20%, 22%, 24%, 55% {opacity: 0.07;}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* HUD Grid */
|
|
||||||
.hud-grid {
|
|
||||||
position: fixed;
|
|
||||||
width: 200%;
|
|
||||||
height: 200%;
|
|
||||||
background: linear-gradient(rgba(0,255,156,0.05) 1px, transparent 1px),
|
|
||||||
linear-gradient(90deg, rgba(0,255,156,0.05) 1px, transparent 1px);
|
|
||||||
background-size: 50px 50px;
|
|
||||||
animation: gridMove 12s linear infinite;
|
|
||||||
pointer-events: none;
|
|
||||||
z-index: 0;
|
|
||||||
}
|
|
||||||
@keyframes gridMove {
|
|
||||||
0% {transform: translate(0,0);}
|
|
||||||
100% {transform: translate(-50px,-50px);}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Scanning line */
|
|
||||||
.scan-line {
|
|
||||||
position: fixed;
|
|
||||||
top: -2px;
|
|
||||||
width: 100%;
|
|
||||||
height: 2px;
|
|
||||||
background: rgba(0,255,156,0.2);
|
|
||||||
box-shadow: 0 0 15px #00ff9c, 0 0 30px #00ff9c inset;
|
|
||||||
animation: scan 3s linear infinite;
|
|
||||||
pointer-events: none;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
@keyframes scan {
|
|
||||||
0% {top: -2px;}
|
|
||||||
100% {top: 100%;}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Blinking HUD indicators */
|
|
||||||
.indicator {
|
|
||||||
position: fixed;
|
|
||||||
width: 10px;
|
|
||||||
height: 10px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background: #00ff9c;
|
|
||||||
top: 10%;
|
|
||||||
left: 10%;
|
|
||||||
box-shadow: 0 0 10px #00ff9c, 0 0 20px #00ff9c inset;
|
|
||||||
animation: blink-ind 1.2s infinite;
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
@keyframes blink-ind {
|
|
||||||
0%, 50%, 100% {opacity:1;}
|
|
||||||
25%, 75% {opacity:0.2;}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Terminal container */
|
|
||||||
.container {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
width: 520px;
|
|
||||||
padding: 40px;
|
|
||||||
border: 1px solid #00ff9c;
|
|
||||||
background: rgba(0, 0, 0, 0.95);
|
|
||||||
box-shadow: 0 0 40px #00ff9c, inset 0 0 60px rgba(0,255,156,0.35);
|
|
||||||
z-index: 3;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Header / Subheader */
|
|
||||||
.header {
|
|
||||||
font-size: 28px;
|
|
||||||
margin-bottom: 5px;
|
|
||||||
text-shadow: 0 0 15px #00ff9c;
|
|
||||||
}
|
|
||||||
.sub {
|
|
||||||
font-size: 14px;
|
|
||||||
color: #00aa66;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Terminal log */
|
|
||||||
.log {
|
|
||||||
font-size: 13px;
|
|
||||||
line-height: 1.4;
|
|
||||||
height: 220px;
|
|
||||||
overflow: hidden;
|
|
||||||
background: rgba(0,0,0,0.2);
|
|
||||||
padding: 10px;
|
|
||||||
border: 1px solid #00ff9c;
|
|
||||||
box-shadow: inset 0 0 15px rgba(0,255,156,0.5);
|
|
||||||
white-space: pre-wrap;
|
|
||||||
}
|
|
||||||
.log span {
|
|
||||||
display: inline-block;
|
|
||||||
animation: shake 0.15s infinite;
|
|
||||||
}
|
|
||||||
@keyframes shake {
|
|
||||||
0% { transform: translate(0,0);}
|
|
||||||
25% { transform: translate(-1px,1px);}
|
|
||||||
50% { transform: translate(1px,-1px);}
|
|
||||||
75% { transform: translate(-1px,1px);}
|
|
||||||
100% { transform: translate(0,0);}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* blinking cursor */
|
|
||||||
.cursor {
|
|
||||||
display: inline-block;
|
|
||||||
width: 10px;
|
|
||||||
background: #00ff9c;
|
|
||||||
animation: blink 1s infinite;
|
|
||||||
}
|
|
||||||
@keyframes blink {
|
|
||||||
0%,50%,100% {opacity:1;}
|
|
||||||
25%,75% {opacity:0;}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Login button with glow */
|
|
||||||
.login-btn {
|
|
||||||
display: block;
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 25px;
|
|
||||||
padding: 12px;
|
|
||||||
border: 1px solid #00ff9c;
|
|
||||||
color: #00ff9c;
|
|
||||||
text-decoration: none;
|
|
||||||
font-weight: bold;
|
|
||||||
transition: 0.3s;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.login-btn:hover {
|
|
||||||
background: #00ff9c;
|
|
||||||
color: #000;
|
|
||||||
box-shadow: 0 0 35px #00ff9c, 0 0 70px #00ff9c;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Footer */
|
|
||||||
.footer {
|
|
||||||
margin-top: 20px;
|
|
||||||
font-size: 10px;
|
|
||||||
color: #007744;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Scroll terminal effect */
|
|
||||||
.log.scroll {
|
|
||||||
animation: scrollUp 25s linear infinite;
|
|
||||||
}
|
|
||||||
@keyframes scrollUp {
|
|
||||||
0% {transform: translateY(0);}
|
|
||||||
100% {transform: translateY(-50%);}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<div class="hud-grid"></div>
|
|
||||||
<div class="scan-line"></div>
|
|
||||||
<div class="indicator" style="top:10%; left:10%;"></div>
|
|
||||||
<div class="indicator" style="top:20%; left:85%; animation-delay:0.4s;"></div>
|
|
||||||
<div class="indicator" style="top:70%; left:30%; animation-delay:0.7s;"></div>
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<div class="header">THIRD ECHELON NODE</div>
|
|
||||||
<div class="sub">SECURE GIT ACCESS TERMINAL</div>
|
|
||||||
|
|
||||||
<div class="log" id="terminal-log"></div>
|
|
||||||
|
|
||||||
<a class="login-btn" href="https://git.grenu4.ru/user/login?redirect_to=%2f">
|
|
||||||
AUTHORIZE OPERATIVE
|
|
||||||
</a>
|
|
||||||
|
|
||||||
<div class="footer">
|
|
||||||
Third Echelon Secure System • Gitea Interface • Build 3.0.7
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<audio id="beep-sound" src="https://freesound.org/data/previews/250/250629_4486188-lq.mp3"></audio>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const log = document.getElementById('terminal-log');
|
|
||||||
const beep = document.getElementById('beep-sound');
|
|
||||||
const messages = [
|
|
||||||
'[SYSTEM] BOOT SEQUENCE INITIATED',
|
|
||||||
'[SYSTEM] ENCRYPTION MODULES LOADED',
|
|
||||||
'[SECURITY] SCANNING FOR AUTHORIZED OPERATORS',
|
|
||||||
'[SECURITY] CLEARANCE LEVEL DETECTED: 3',
|
|
||||||
'[TERMINAL] ACCESS POINT ESTABLISHED',
|
|
||||||
'[TERMINAL] LOGIN REQUIRED <span class="cursor"></span>'
|
|
||||||
];
|
|
||||||
|
|
||||||
let i = 0;
|
|
||||||
|
|
||||||
function typeLine(line, callback) {
|
|
||||||
let j = 0;
|
|
||||||
const interval = setInterval(() => {
|
|
||||||
const span = document.createElement('span');
|
|
||||||
span.textContent = line[j];
|
|
||||||
log.appendChild(span);
|
|
||||||
j++;
|
|
||||||
if (beep) beep.currentTime=0, beep.play();
|
|
||||||
if(j >= line.length) {
|
|
||||||
clearInterval(interval);
|
|
||||||
log.appendChild(document.createElement('br'));
|
|
||||||
if(callback) callback();
|
|
||||||
}
|
|
||||||
log.scrollTop = log.scrollHeight;
|
|
||||||
}, 30);
|
|
||||||
}
|
|
||||||
|
|
||||||
function nextLine() {
|
|
||||||
if(i < messages.length) {
|
|
||||||
typeLine(messages[i], () => {
|
|
||||||
i++;
|
|
||||||
nextLine();
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
const clone = log.innerHTML;
|
|
||||||
log.innerHTML += clone;
|
|
||||||
log.classList.add('scroll');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
nextLine();
|
|
||||||
|
|
||||||
// Cursor-follow glow effect
|
|
||||||
document.addEventListener('mousemove', e => {
|
|
||||||
document.querySelectorAll('.login-btn').forEach(btn => {
|
|
||||||
const rect = btn.getBoundingClientRect();
|
|
||||||
const x = e.clientX - rect.left - rect.width/2;
|
|
||||||
const y = e.clientY - rect.top - rect.height/2;
|
|
||||||
btn.style.boxShadow = `0 0 ${20+Math.abs(x/5)}px #00ff9c, 0 0 ${40+Math.abs(y/5)}px #00ff9c`;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
148
Изначальный.html
148
Изначальный.html
@@ -1,148 +0,0 @@
|
|||||||
{{template "base/head" .}}
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--bg-color: #0f1217;
|
|
||||||
--text-color: #b0ffb0;
|
|
||||||
--accent-color: #4af030;
|
|
||||||
--secondary-color: #2a3a2a;
|
|
||||||
--glow: 0 0 10px rgba(74, 240, 48, 0.5);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
background-color: var(--bg-color) !important;
|
|
||||||
color: var(--text-color) !important;
|
|
||||||
font-family: 'Courier New', monospace;
|
|
||||||
animation: fadeIn 1.5s ease-in-out; /* плавное появление всей страницы */
|
|
||||||
}
|
|
||||||
.home {
|
|
||||||
background: transparent !important;
|
|
||||||
}
|
|
||||||
.logo {
|
|
||||||
filter: drop-shadow(0 0 20px #4af030);
|
|
||||||
border-radius: 50%;
|
|
||||||
background: #0a0e12;
|
|
||||||
padding: 10px;
|
|
||||||
animation: glowPulse 3s infinite ease-in-out; /* пульсация свечения */
|
|
||||||
}
|
|
||||||
.hero h1, .hero h2 {
|
|
||||||
font-family: 'Courier New', monospace;
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 2px;
|
|
||||||
color: var(--accent-color) !important;
|
|
||||||
text-shadow: var(--glow);
|
|
||||||
}
|
|
||||||
.hero h1 {
|
|
||||||
font-size: 3rem;
|
|
||||||
animation: textFlicker 4s infinite; /* мерцание неона */
|
|
||||||
}
|
|
||||||
.page-grid {
|
|
||||||
border: 1px solid var(--secondary-color);
|
|
||||||
box-shadow: inset 0 0 50px rgba(0,255,0,0.1);
|
|
||||||
padding: 2rem;
|
|
||||||
margin: 1rem 0;
|
|
||||||
background: rgba(0,10,0,0.3);
|
|
||||||
backdrop-filter: blur(2px);
|
|
||||||
animation: slideUp 1s ease-out; /* появление снизу */
|
|
||||||
}
|
|
||||||
.column h1 {
|
|
||||||
color: var(--accent-color) !important;
|
|
||||||
font-size: 1.8rem;
|
|
||||||
border-bottom: 1px dashed var(--secondary-color);
|
|
||||||
padding-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
.column p {
|
|
||||||
color: #aaa;
|
|
||||||
line-height: 1.8;
|
|
||||||
animation: fadeIn 2s ease-in; /* текст проявляется чуть позже */
|
|
||||||
}
|
|
||||||
.column a {
|
|
||||||
color: var(--accent-color) !important;
|
|
||||||
text-decoration: none;
|
|
||||||
border-bottom: 1px dotted var(--accent-color);
|
|
||||||
transition: text-shadow 0.3s;
|
|
||||||
}
|
|
||||||
.column a:hover {
|
|
||||||
text-shadow: var(--glow);
|
|
||||||
}
|
|
||||||
.footer-cursor {
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 2rem;
|
|
||||||
color: var(--accent-color);
|
|
||||||
animation: blink 1s step-end infinite;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Ключевые кадры */
|
|
||||||
@keyframes fadeIn {
|
|
||||||
0% { opacity: 0; }
|
|
||||||
100% { opacity: 1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes glowPulse {
|
|
||||||
0% { filter: drop-shadow(0 0 15px #4af030); transform: scale(1); }
|
|
||||||
50% { filter: drop-shadow(0 0 30px #4af030); transform: scale(1.02); }
|
|
||||||
100% { filter: drop-shadow(0 0 15px #4af030); transform: scale(1); }
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes textFlicker {
|
|
||||||
0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% { opacity: 1; text-shadow: 0 0 5px #4af030, 0 0 15px #4af030; }
|
|
||||||
20%, 24%, 55% { opacity: 0.7; text-shadow: none; }
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes slideUp {
|
|
||||||
0% { opacity: 0; transform: translateY(30px); }
|
|
||||||
100% { opacity: 1; transform: translateY(0); }
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes blink {
|
|
||||||
0%,100% { opacity: 1; }
|
|
||||||
50% { opacity: 0; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<div role="main" aria-label="{{if .IsSigned}}{{ctx.Locale.Tr "dashboard"}}{{else}}{{ctx.Locale.Tr "home"}}{{end}}" class="page-content home">
|
|
||||||
<div class="tw-mb-8 tw-px-8">
|
|
||||||
<div class="center">
|
|
||||||
<img class="logo" width="220" height="220" src="{{AssetUrlPrefix}}/img/logo.png" alt="{{ctx.Locale.Tr "logo"}}">
|
|
||||||
<div class="hero">
|
|
||||||
<h1 class="ui icon header title tw-text-balance">
|
|
||||||
{{if .IsSigned}}АГЕНТ {{.SignedUser.Name}} В СЕТИ{{else}}ТРЕТИЙ ЭШЕЛОН / GIT{{end}}
|
|
||||||
</h1>
|
|
||||||
<h2 class="tw-text-balance">
|
|
||||||
{{if .IsSigned}}Журналы миссий{{else}}Частный репозиторий{{end}}
|
|
||||||
</h2>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="ui stackable middle very relaxed page grid">
|
|
||||||
<div class="eight wide center column">
|
|
||||||
<h1 class="hero ui icon header">
|
|
||||||
{{svg "octicon-flame"}} ТОЧКА ВХОДА ЗАФИКСИРОВАНА:
|
|
||||||
</h1>
|
|
||||||
<p class="large tw-text-balance">
|
|
||||||
Режим «Призрак». Только бесшумные операции.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="eight wide center column">
|
|
||||||
<h1 class="hero ui icon header">
|
|
||||||
{{svg "octicon-device-desktop"}} СРЕДА РАЗРАБОТКИ:
|
|
||||||
</h1>
|
|
||||||
<p class="large tw-text-balance">
|
|
||||||
Базовый лагерь: UBUNTU 24 LTS.
|
|
||||||
</p>
|
|
||||||
<p class="large tw-text-balance" style="margin-top: 1rem;">
|
|
||||||
<span style="opacity:0.7;">Оперативник</span> <strong style="color:var(--accent-color);"><a href="https://t.me/Y0zhyck">Yozhyck</a></strong>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="ui stackable middle very relaxed page grid">
|
|
||||||
<div class="eight wide center column">
|
|
||||||
<h1 class="hero ui icon header">
|
|
||||||
{{svg "octicon-rocket"}} СТЕЛС-РАЗРАБОТКА
|
|
||||||
</h1>
|
|
||||||
<p class="large tw-text-balance">
|
|
||||||
Коммиты без лишнего шума. Пулл-реквесты без конфликтов. Код, который не оставляет следов.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer-cursor">_</div>
|
|
||||||
</div>
|
|
||||||
{{template "base/footer" .}}
|
|
||||||
Reference in New Issue
Block a user