Files
singular-particular-space/DumperCan/UI Style References/soviet-cyberpunk_style_reference.html
JL Kruger 5422131782 Initial commit — Singular Particular Space v1
Homepage (site/index.html): integration-v14 promoted, Writings section
integrated with 33 pieces clustered by type (stories/essays/miscellany),
Writings welcome lightbox, content frame at 98% opacity.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-27 12:09:22 +02:00

638 lines
22 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Soviet Cyberpunk Style Reference | Красный Неон</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Russo+One&family=Share+Tech+Mono&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet">
<style>
/* ============================================
SOVIET CYBERPUNK STYLE REFERENCE
Красный Неон | Brutalist Future | Constructivist Code
UNIQUE FEATURE: Animated CRT Scan Lines
============================================ */
/* ===== 1. CSS RESET ===== */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
/* ===== 2. CSS VARIABLES ===== */
:root {
/* --- BACKGROUND GRADIENT ---
Concrete to steel - Soviet brutalism */
--bg-gradient-1: #1a1a1a; /* Iron dark */
--bg-gradient-2: #242424; /* Concrete gray */
--bg-gradient-3: #2a2424; /* Rust shadow */
--bg-gradient-4: #2a2a2a; /* Steel dark */
/* --- SURFACE BACKGROUNDS --- */
--bg-elevated: rgba(255,60,60,0.05);
--bg-card: rgba(255,60,60,0.08);
--bg-darker: rgba(0,0,0,0.50);
--bg-solid-dark: #1a1a1a;
--bg-solid-light: #e8e8e8;
/* --- BORDERS ---
Brutalist thickness, constructivist precision */
--border-color: #cc0000;
--border-width: 2px;
--border-width-thick: 5px;
/* --- GLOW SYSTEM ---
Red: Communist power, revolution
Cyan: Cold neon, digital future
Yellow: Warning, construction */
--red-1: #ff3c3c; /* Neon red */
--red-2: #cc0000; /* Deep Soviet red */
--red-3: #990000; /* Dark crimson */
--cyan-1: #00ffff; /* Cold neon cyan */
--cyan-2: #00cccc; /* Deep cyan */
--cyan-3: #008b8b; /* Dark teal */
--yellow-1: #ffff00; /* Warning yellow */
--yellow-2: #cccc00; /* Construction gold */
/* --- TYPOGRAPHY COLORS --- */
--text-primary: #e8e8e8;
--text-secondary: #b8b8b8;
--text-white: #ffffff;
--text-h1-gradient: linear-gradient(90deg, #ff3c3c 0%, #00ffff 50%, #ffff00 100%);
--text-h2: #ff3c3c; /* Neon red */
--text-h3: #00ffff; /* Cyan */
--text-h4: #ffff00; /* Yellow */
--text-h5: #b8b8b8; /* Gray */
--text-h6: #e8e8e8; /* Primary */
/* --- BUTTON GRADIENTS --- */
--btn-red-gradient: linear-gradient(45deg, #ff3c3c 0%, #cc0000 100%);
--btn-cyan-gradient: linear-gradient(45deg, #00ffff 0%, #008b8b 100%);
--btn-yellow-gradient: linear-gradient(45deg, #ffff00 0%, #cccc00 100%);
/* --- FONTS --- */
--font-header: 'Russo One', sans-serif;
--font-body: 'Share Tech Mono', monospace;
--font-mono: 'JetBrains Mono', monospace;
}
/* ===== UNIQUE FEATURE: CRT SCAN LINES ===== */
@keyframes scan-lines {
0% { transform: translateY(-100%); }
100% { transform: translateY(100vh); }
}
body::before {
content: '';
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: repeating-linear-gradient(
0deg,
rgba(255, 60, 60, 0.03) 0px,
transparent 1px,
transparent 2px,
rgba(0, 255, 255, 0.03) 3px,
transparent 4px
);
animation: scan-lines 8s linear infinite;
pointer-events: none;
z-index: 9999;
opacity: 0.7;
}
/* Static scan line overlay */
body::after {
content: '';
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: repeating-linear-gradient(
0deg,
rgba(0, 0, 0, 0.15) 0px,
transparent 1px,
transparent 2px
);
pointer-events: none;
z-index: 9998;
}
/* ===== 3. BASE STYLES ===== */
body {
font-family: var(--font-body);
background: linear-gradient(135deg,
var(--bg-gradient-1) 0%,
var(--bg-gradient-2) 33%,
var(--bg-gradient-3) 66%,
var(--bg-gradient-4) 100%);
background-attachment: fixed;
color: var(--text-primary);
line-height: 1.6;
min-height: 100vh;
padding: 20px;
position: relative;
}
/* ===== 4. LAYOUT ===== */
.container {
max-width: 1200px;
margin: 0 auto;
position: relative;
z-index: 1;
}
.grid {
display: grid;
gap: 1.5rem;
margin-bottom: 1.5rem;
}
.grid-2 { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.grid-3 { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.grid-4 { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
/* ===== 5. TYPOGRAPHY ===== */
h1 {
font-size: clamp(2rem, 5vw, 3rem);
font-weight: 700;
margin-bottom: 1rem;
background: var(--text-h1-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-transform: uppercase;
letter-spacing: 0.1em;
font-family: var(--font-header);
position: relative;
}
/* Cyrillic-inspired decorative element */
h1::after {
content: '█';
position: absolute;
right: -1rem;
top: 0;
color: var(--red-1);
animation: blink 1.5s infinite;
}
@keyframes blink {
0%, 49% { opacity: 1; }
50%, 100% { opacity: 0; }
}
h2 {
font-size: clamp(1.5rem, 4vw, 2rem);
font-weight: 700;
color: var(--text-h2);
margin-bottom: 1rem;
text-transform: uppercase;
letter-spacing: 0.08em;
font-family: var(--font-header);
text-shadow: 0 0 20px rgba(255, 60, 60, 0.6),
0 0 40px rgba(255, 60, 60, 0.3);
}
h3 {
font-size: clamp(1.25rem, 3vw, 1.5rem);
font-weight: 600;
color: var(--text-h3);
margin-bottom: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.05em;
font-family: var(--font-header);
text-shadow: 0 0 15px rgba(0, 255, 255, 0.5);
}
h4 {
font-size: clamp(1.1rem, 2.5vw, 1.25rem);
font-weight: 600;
color: var(--text-h4);
margin-bottom: 0.75rem;
font-family: var(--font-header);
text-shadow: 0 0 15px rgba(255, 255, 0, 0.5);
}
h5 {
font-size: 1.1rem;
font-weight: 600;
color: var(--text-h5);
margin-bottom: 0.5rem;
font-family: var(--font-header);
}
h6 {
font-size: 1rem;
font-weight: 600;
color: var(--text-h6);
margin-bottom: 0.5rem;
text-transform: uppercase;
letter-spacing: 0.05em;
font-family: var(--font-header);
}
p {
margin-bottom: 1rem;
line-height: 1.7;
}
strong {
color: var(--red-1);
font-weight: 600;
text-shadow: 0 0 10px rgba(255, 60, 60, 0.4);
}
em {
color: var(--cyan-1);
font-style: italic;
text-shadow: 0 0 10px rgba(0, 255, 255, 0.4);
}
code {
font-family: var(--font-mono);
background: var(--bg-elevated);
padding: 0.2rem 0.4rem;
border: 1px solid var(--cyan-2);
border-radius: 0;
font-size: 0.9em;
color: var(--cyan-1);
}
pre {
font-family: var(--font-mono);
background: var(--bg-elevated);
padding: 1rem;
border: var(--border-width) solid var(--red-2);
border-left: var(--border-width-thick) solid var(--red-1);
border-radius: 0;
overflow-x: auto;
margin-bottom: 1.5rem;
}
pre code {
background: transparent;
border: none;
padding: 0;
}
/* ===== BUTTONS ===== */
.btn {
display: inline-block;
padding: 0.875rem 2rem;
text-decoration: none;
font-weight: 600;
font-size: 1rem;
transition: transform 0.3s, box-shadow 0.3s;
cursor: pointer;
border: var(--border-width) solid;
font-family: var(--font-body);
border-radius: 0;
text-transform: uppercase;
letter-spacing: 0.1em;
position: relative;
overflow: hidden;
}
.btn::before {
content: '▶';
position: absolute;
left: 10px;
transition: transform 0.3s;
}
.btn:hover::before {
transform: translateX(5px);
}
.btn-red {
background: var(--btn-red-gradient);
color: white;
border-color: var(--red-1);
box-shadow: 0 0 20px rgba(255, 60, 60, 0.5), 0 0 40px rgba(255, 60, 60, 0.3);
}
.btn-red:hover {
transform: scale(1.04);
box-shadow: 0 0 30px rgba(255, 60, 60, 0.7), 0 0 60px rgba(255, 60, 60, 0.4);
}
.btn-cyan {
background: var(--btn-cyan-gradient);
color: #000;
border-color: var(--cyan-1);
box-shadow: 0 0 20px rgba(0, 255, 255, 0.5), 0 0 40px rgba(0, 255, 255, 0.3);
}
.btn-cyan:hover {
transform: scale(1.04);
box-shadow: 0 0 30px rgba(0, 255, 255, 0.7), 0 0 60px rgba(0, 255, 255, 0.4);
}
.btn-yellow {
background: var(--btn-yellow-gradient);
color: #000;
border-color: var(--yellow-1);
box-shadow: 0 0 20px rgba(255, 255, 0, 0.5), 0 0 40px rgba(255, 255, 0, 0.3);
}
.btn-yellow:hover {
transform: scale(1.04);
box-shadow: 0 0 30px rgba(255, 255, 0, 0.7), 0 0 60px rgba(255, 255, 0, 0.4);
}
/* ===== CARDS & PANELS ===== */
.card {
background: var(--bg-card);
backdrop-filter: blur(10px);
border: var(--border-width) solid var(--border-color);
border-left: var(--border-width-thick) solid var(--red-1);
border-radius: 0;
padding: 1.5rem;
margin-bottom: 1.5rem;
position: relative;
}
.card::before {
content: '■';
position: absolute;
top: 1rem;
right: 1rem;
color: var(--red-1);
font-size: 1.5rem;
opacity: 0.3;
}
.card-elevated {
background: var(--bg-elevated);
backdrop-filter: blur(10px);
border: var(--border-width) solid var(--cyan-2);
border-radius: 0;
padding: 1.5rem;
margin-bottom: 1.5rem;
}
.card-glow-red {
box-shadow: 0 0 30px rgba(255, 60, 60, 0.4),
inset 0 0 20px rgba(255, 60, 60, 0.1);
}
.card-glow-cyan {
box-shadow: 0 0 30px rgba(0, 255, 255, 0.4),
inset 0 0 20px rgba(0, 255, 255, 0.1);
}
.card-propaganda {
background: rgba(232, 232, 232, 0.95);
border: var(--border-width-thick) solid var(--red-2);
color: #1a1a1a;
padding: 2rem;
margin-bottom: 1.5rem;
box-shadow: 0 0 40px rgba(204, 0, 0, 0.4);
position: relative;
}
.card-propaganda::after {
content: '☭';
position: absolute;
bottom: 1rem;
right: 1rem;
font-size: 4rem;
opacity: 0.1;
color: var(--red-2);
}
.card-propaganda h1,
.card-propaganda h2,
.card-propaganda h3,
.card-propaganda h4,
.card-propaganda h5,
.card-propaganda h6 {
color: var(--red-3);
background: none;
-webkit-text-fill-color: var(--red-3);
}
.card-propaganda p,
.card-propaganda li {
color: #1a1a1a;
}
.card-propaganda strong {
color: var(--red-2);
text-shadow: none;
}
/* ===== BADGES ===== */
.badge {
display: inline-block;
padding: 0.375rem 0.875rem;
border-radius: 0;
font-size: 0.875rem;
font-weight: 600;
border: var(--border-width) solid;
text-transform: uppercase;
letter-spacing: 0.08em;
}
.badge-red {
background: rgba(255, 60, 60, 0.15);
color: var(--red-1);
border-color: var(--red-1);
box-shadow: 0 0 15px rgba(255, 60, 60, 0.3);
}
.badge-cyan {
background: rgba(0, 255, 255, 0.15);
color: var(--cyan-1);
border-color: var(--cyan-1);
box-shadow: 0 0 15px rgba(0, 255, 255, 0.3);
}
.badge-yellow {
background: rgba(255, 255, 0, 0.15);
color: var(--yellow-1);
border-color: var(--yellow-1);
box-shadow: 0 0 15px rgba(255, 255, 0, 0.3);
}
/* ===== ALERTS ===== */
.alert {
padding: 1rem 1.5rem;
border-radius: 0;
border: var(--border-width) solid;
border-left: var(--border-width-thick) solid;
margin-bottom: 1.5rem;
}
.alert-red {
background: rgba(255, 60, 60, 0.1);
border-color: var(--red-1);
border-left-color: var(--red-1);
color: var(--text-primary);
box-shadow: 0 0 20px rgba(255, 60, 60, 0.2);
}
.alert-cyan {
background: rgba(0, 255, 255, 0.1);
border-color: var(--cyan-1);
border-left-color: var(--cyan-1);
color: var(--text-primary);
box-shadow: 0 0 20px rgba(0, 255, 255, 0.2);
}
.alert-yellow {
background: rgba(255, 255, 0, 0.1);
border-color: var(--yellow-1);
border-left-color: var(--yellow-1);
color: var(--text-primary);
box-shadow: 0 0 20px rgba(255, 255, 0, 0.2);
}
/* ===== UTILITY CLASSES ===== */
.text-center { text-align: center; }
.mt-2 { margin-top: 1rem; }
.mb-3 { margin-bottom: 1.5rem; }
/* ===== HORIZONTAL RULE ===== */
hr {
border: none;
height: var(--border-width-thick);
background: linear-gradient(to right,
var(--red-1),
var(--cyan-1),
var(--yellow-1));
margin: 2.5rem 0;
box-shadow: 0 0 20px rgba(255, 60, 60, 0.3);
}
</style>
</head>
<body>
<div class="container">
<!-- HEADER -->
<header class="text-center mb-3">
<h1>SOVIET CYBERPUNK</h1>
<p style="font-size: 1.25rem; color: var(--cyan-1); text-shadow: 0 0 15px rgba(0,255,255,0.5);">КРАСНЫЙ НЕОН | BRUTALIST FUTURE | CONSTRUCTIVIST CODE</p>
</header>
<hr>
<!-- UNIQUE FEATURE SHOWCASE -->
<section class="mb-3">
<div class="card-propaganda">
<h2>⚡ UNIQUE FEATURE: CRT SCAN LINES</h2>
<p>This design system features <strong>animated CRT scan lines</strong> that continuously sweep across the entire screen, simulating old Soviet-era monitors and Cold War terminals.</p>
<p>The scan lines use a dual-layer approach: one layer animates vertically, while a static layer provides the baseline CRT texture. This creates an <em>authentic retro-futuristic experience</em>.</p>
<p>Notice the blinking cursor (█) after H1 headings and the arrow (▶) decorators on buttons—small details that enhance the terminal aesthetic.</p>
</div>
</section>
<!-- COLOR PALETTE -->
<section class="mb-3">
<h2>NEON SPECTRUM</h2>
<div class="grid grid-3">
<div class="card" style="background: var(--red-1); color: #000;">
<h4 style="color: #000;">NEON RED</h4>
<code style="background: rgba(0,0,0,0.3); color: #000; border-color: #000;">#ff3c3c</code>
</div>
<div class="card" style="background: var(--cyan-1); color: #000;">
<h4 style="color: #000;">COLD CYAN</h4>
<code style="background: rgba(0,0,0,0.3); color: #000; border-color: #000;">#00ffff</code>
</div>
<div class="card" style="background: var(--yellow-1); color: #000;">
<h4 style="color: #000;">WARNING YELLOW</h4>
<code style="background: rgba(0,0,0,0.3); color: #000; border-color: #000;">#ffff00</code>
</div>
<div class="card" style="background: var(--red-2); color: white;">
<h4 style="color: white;">SOVIET RED</h4>
<code style="background: rgba(255,255,255,0.2); color: white; border-color: white;">#cc0000</code>
</div>
<div class="card" style="background: var(--cyan-3); color: white;">
<h4 style="color: white;">DARK TEAL</h4>
<code style="background: rgba(255,255,255,0.2); color: white; border-color: white;">#008b8b</code>
</div>
<div class="card" style="background: var(--red-3); color: white;">
<h4 style="color: white;">DARK CRIMSON</h4>
<code style="background: rgba(255,255,255,0.2); color: white; border-color: white;">#990000</code>
</div>
</div>
</section>
<hr>
<!-- BUTTONS -->
<section class="mb-3">
<h2>COMMAND BUTTONS</h2>
<div class="grid grid-3">
<div class="card card-glow-red">
<h3>RED</h3>
<button class="btn btn-red">EXECUTE</button>
</div>
<div class="card card-glow-cyan">
<h3>CYAN</h3>
<button class="btn btn-cyan">ACCESS</button>
</div>
<div class="card">
<h3>YELLOW</h3>
<button class="btn btn-yellow">WARNING</button>
</div>
</div>
</section>
<!-- BADGES -->
<section class="mb-3">
<h2>STATUS BADGES</h2>
<div class="card">
<span class="badge badge-red">ACTIVE</span>
<span class="badge badge-cyan">ONLINE</span>
<span class="badge badge-yellow">ALERT</span>
</div>
</section>
<hr>
<!-- ALERTS -->
<section class="mb-3">
<h2>SYSTEM MESSAGES</h2>
<div class="alert alert-red">
<strong>PRIORITY ALERT:</strong> Central processing unit operating at maximum capacity.
</div>
<div class="alert alert-cyan">
<strong>SYSTEM INFO:</strong> Network connection established to collective mainframe.
</div>
<div class="alert alert-yellow">
<strong>CAUTION:</strong> Memory buffer approaching critical threshold.
</div>
</section>
<!-- PHILOSOPHY -->
<section class="mb-3">
<h2>DESIGN PRINCIPLES</h2>
<div class="card-propaganda">
<h3>CONSTRUCTIVIST CODE MANIFESTO</h3>
<ul>
<li><strong>BRUTALIST GEOMETRY:</strong> Sharp angles, thick borders, constructivist precision</li>
<li><strong>CRT AESTHETICS:</strong> Animated scan lines simulate Soviet-era terminals</li>
<li><strong>NEON TRINITY:</strong> Red (revolution), Cyan (cold future), Yellow (warning)</li>
<li><strong>MONOSPACE EVERYWHERE:</strong> Terminal-style typography throughout</li>
<li><strong>UPPERCASE POWER:</strong> Command-line authority in every heading</li>
<li><strong>SOVIET SYMBOLS:</strong> Hammer and sickle (☭), geometric blocks (■)</li>
<li><strong>PROPAGANDA CARDS:</strong> Light backgrounds with heavy red borders</li>
</ul>
</div>
</section>
<!-- FOOTER -->
<footer class="card card-glow-red text-center" style="padding: 2rem;">
<h2>SOVIET CYBERPUNK COMPLETE</h2>
<p style="margin-top: 1rem;">THE FUTURE WAS BUILT IN CONCRETE AND NEON ☭⚡</p>
</footer>
</div>
</body>
</html>