910 lines
22 KiB
CSS
910 lines
22 KiB
CSS
/*
|
|
Theme Name: KI-Labor Minimal
|
|
Author: Sascha Rode & Gemini
|
|
Description: Ein radikal minimalistisches Theme für KI-Experimente.
|
|
Version: 1.0
|
|
*/
|
|
|
|
:root {
|
|
--bg-color: #0d0d0d;
|
|
--text-color: #c0c0c0;
|
|
--accent-gold: #d4af37;
|
|
--accent-orange: #ff4500;
|
|
}
|
|
|
|
body {
|
|
background-color: var(--bg-color);
|
|
color: var(--text-color);
|
|
font-family: 'Courier New', Courier, monospace;
|
|
margin: 0;
|
|
padding: 0;
|
|
line-height: 1.6;
|
|
overflow-x: hidden;
|
|
}
|
|
|
|
/* BOOT SCREEN */
|
|
#boot-screen {
|
|
position: fixed;
|
|
top: 0; left: 0;
|
|
width: 100%; height: 100%;
|
|
background: #000;
|
|
z-index: 10001;
|
|
color: #0f0;
|
|
font-family: 'Courier New', monospace;
|
|
padding: 20px;
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-direction: column-reverse;
|
|
}
|
|
|
|
#boot-log {
|
|
font-size: 0.85rem;
|
|
line-height: 1.2;
|
|
white-space: pre-wrap;
|
|
}
|
|
|
|
.main-content {
|
|
transition: opacity 2s ease-in-out;
|
|
}
|
|
|
|
.main-content.visible {
|
|
opacity: 1 !important;
|
|
}
|
|
|
|
.boot-line { margin-bottom: 2px; }
|
|
.boot-line.ok { color: #0f0; }
|
|
.boot-line.warn { color: #ff0; }
|
|
.boot-line.crit { color: #f00; font-weight: bold; }
|
|
|
|
/* SCANLINE & FLICKER EFFEKT */
|
|
@keyframes flicker {
|
|
0% { opacity: 0.97; }
|
|
5% { opacity: 0.95; }
|
|
10% { opacity: 0.9; }
|
|
15% { opacity: 0.95; }
|
|
20% { opacity: 0.98; }
|
|
100% { opacity: 1; }
|
|
}
|
|
|
|
body::before {
|
|
content: ' ';
|
|
display: block;
|
|
position: fixed;
|
|
top: 0; left: 0; bottom: 0; right: 0;
|
|
background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%),
|
|
linear-gradient(90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03));
|
|
z-index: 9999;
|
|
background-size: 100% 3px, 3px 100%;
|
|
pointer-events: none;
|
|
animation: flicker 0.1s infinite;
|
|
}
|
|
|
|
/* SELF DESTRUCT OVERLAY */
|
|
#destruction-overlay {
|
|
position: fixed;
|
|
top: 0; left: 0;
|
|
width: 100%; height: 100%;
|
|
background: #000;
|
|
color: #f00;
|
|
z-index: 10000;
|
|
display: none;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
font-family: 'Courier New', monospace;
|
|
text-align: center;
|
|
}
|
|
|
|
.destruct-msg {
|
|
font-size: 3rem;
|
|
font-weight: 900;
|
|
text-transform: uppercase;
|
|
letter-spacing: 10px;
|
|
margin-bottom: 20px;
|
|
text-shadow: 0 0 20px #f00;
|
|
}
|
|
|
|
.destruct-sub {
|
|
font-size: 1.2rem;
|
|
color: #666;
|
|
}
|
|
|
|
/* TERMINAL STYLES */
|
|
.container {
|
|
max-width: 900px;
|
|
margin: 0 auto;
|
|
padding: 40px 20px;
|
|
}
|
|
|
|
header {
|
|
text-align: center;
|
|
border-bottom: 2px solid #3d2b1f;
|
|
margin-bottom: 40px;
|
|
padding-bottom: 20px;
|
|
}
|
|
|
|
h1 {
|
|
color: var(--accent-orange);
|
|
text-transform: uppercase;
|
|
letter-spacing: 5px;
|
|
margin: 0;
|
|
text-shadow: 0 0 15px rgba(255, 69, 0, 0.7);
|
|
}
|
|
|
|
.tagline {
|
|
color: var(--accent-gold);
|
|
font-style: italic;
|
|
font-size: 1.2rem;
|
|
}
|
|
|
|
.hero-image {
|
|
width: 100%;
|
|
border: 5px solid #3d2b1f;
|
|
box-shadow: 0 0 30px rgba(0,0,0,1);
|
|
margin: 20px 0;
|
|
}
|
|
|
|
.content-box {
|
|
background: rgba(20, 20, 20, 0.8);
|
|
border-left: 5px solid var(--accent-orange);
|
|
padding: 20px;
|
|
margin-top: 40px;
|
|
}
|
|
|
|
footer {
|
|
text-align: center;
|
|
font-size: 0.8rem;
|
|
color: #444;
|
|
margin-top: 100px;
|
|
border-top: 1px solid #222;
|
|
padding: 20px;
|
|
}
|
|
|
|
/* Warn-Box Style */
|
|
.warning-box {
|
|
border: 2px dashed var(--accent-orange);
|
|
padding: 10px;
|
|
margin-top: 20px;
|
|
color: var(--accent-orange);
|
|
font-weight: bold;
|
|
font-size: 0.85rem;
|
|
text-transform: uppercase;
|
|
display: inline-block;
|
|
animation: blinker 2s linear infinite;
|
|
}
|
|
|
|
@keyframes blinker {
|
|
50% { opacity: 0.3; }
|
|
}
|
|
|
|
/* --- INTERAKTIVE MODI --- */
|
|
|
|
/* 1. KI-KERNEL (Matrix Style) */
|
|
body.mode-kernel {
|
|
background-color: #000;
|
|
color: #0f0;
|
|
font-family: 'Courier New', monospace;
|
|
}
|
|
body.mode-kernel a,
|
|
body.mode-kernel h1,
|
|
body.mode-kernel .tagline,
|
|
body.mode-kernel .warning-box {
|
|
color: #0f0 !important;
|
|
text-shadow: 0 0 10px #0f0;
|
|
border-color: #0f0;
|
|
}
|
|
body.mode-kernel .hero-image {
|
|
filter: hue-rotate(90deg) contrast(1.5) brightness(1.2);
|
|
border-color: #0f0;
|
|
}
|
|
|
|
/* 2. ANARCHIE (Glitch & Tilt) */
|
|
@keyframes shake {
|
|
0% { transform: translate(1px, 1px) rotate(0deg); }
|
|
10% { transform: translate(-1px, -2px) rotate(-1deg); }
|
|
20% { transform: translate(-3px, 0px) rotate(1deg); }
|
|
30% { transform: translate(3px, 2px) rotate(0deg); }
|
|
40% { transform: translate(1px, -1px) rotate(1deg); }
|
|
50% { transform: translate(-1px, 2px) rotate(-1deg); }
|
|
60% { transform: translate(-3px, 1px) rotate(0deg); }
|
|
70% { transform: translate(3px, 1px) rotate(-1deg); }
|
|
80% { transform: translate(-1px, -1px) rotate(1deg); }
|
|
90% { transform: translate(1px, 2px) rotate(0deg); }
|
|
100% { transform: translate(1px, -2px) rotate(-1deg); }
|
|
}
|
|
body.mode-anarchy {
|
|
animation: shake 0.3s infinite;
|
|
/* Ein fieser Red-Tint Filter auf dem gesamten Body, ohne das Layout zu sprengen */
|
|
filter: grayscale(1) sepia(1) hue-rotate(-50deg) saturate(5) contrast(2);
|
|
background-color: #111;
|
|
}
|
|
|
|
body.mode-anarchy .container {
|
|
/* Container behält sein Box-Model intakt */
|
|
animation: none;
|
|
filter: none;
|
|
}
|
|
|
|
/* 3. SECURITY BYPASS (Red Alert) */
|
|
@keyframes red-alert {
|
|
0% { box-shadow: inset 0 0 0 red; }
|
|
50% { box-shadow: inset 0 0 100px red; }
|
|
100% { box-shadow: inset 0 0 0 red; }
|
|
}
|
|
body.mode-security {
|
|
animation: red-alert 1s infinite;
|
|
}
|
|
body.mode-security::after {
|
|
content: "WARNING: UNAUTHORIZED ACCESS";
|
|
position: fixed;
|
|
top: 50%; left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
font-size: 5rem;
|
|
color: rgba(255, 0, 0, 0.2);
|
|
font-weight: 900;
|
|
z-index: 0;
|
|
pointer-events: none;
|
|
transform: translate(-50%, -50%) rotate(-15deg);
|
|
}
|
|
|
|
/* 4. GHOST MODE (Stealth & Invisibility) */
|
|
body.mode-ghost #system-log {
|
|
opacity: 0.8;
|
|
transition: all 2s ease;
|
|
animation: ghost-pulse 4s infinite;
|
|
border-color: rgba(0, 255, 0, 0.3);
|
|
}
|
|
|
|
body.mode-ghost .portfolio-grid {
|
|
filter: grayscale(1) brightness(0.5);
|
|
pointer-events: none;
|
|
}
|
|
|
|
body.mode-ghost #terminal-input,
|
|
body.mode-ghost .prompt {
|
|
color: rgba(0, 255, 0, 0.8); /* Deutlich lesbar bleiben */
|
|
text-shadow: 0 0 5px rgba(0, 255, 0, 0.5);
|
|
}
|
|
|
|
@keyframes ghost-pulse {
|
|
0% { opacity: 0.7; }
|
|
50% { opacity: 1.0; }
|
|
100% { opacity: 0.7; }
|
|
}
|
|
|
|
/* TERMINAL STYLES */
|
|
#system-log {
|
|
background: #000;
|
|
border: 1px solid #333;
|
|
color: #0f0;
|
|
font-family: 'Courier New', monospace;
|
|
padding: 15px;
|
|
margin-top: 30px;
|
|
height: 250px; /* Mehr Platz für Input */
|
|
display: flex;
|
|
flex-direction: column;
|
|
box-shadow: inset 0 0 10px #000;
|
|
}
|
|
|
|
#log-output {
|
|
flex-grow: 1;
|
|
overflow-y: auto;
|
|
font-size: 0.9rem;
|
|
display: flex;
|
|
flex-direction: column-reverse;
|
|
}
|
|
|
|
.log-entry.ghost {
|
|
color: rgba(0, 255, 0, 0.4);
|
|
font-size: 0.75rem;
|
|
letter-spacing: 2px;
|
|
text-shadow: 0 0 5px rgba(0, 255, 0, 0.2);
|
|
}
|
|
|
|
.log-entry.user-cmd {
|
|
color: var(--accent-orange);
|
|
font-weight: bold;
|
|
}
|
|
|
|
.log-entry.info { color: var(--accent-gold); }
|
|
.log-entry.error { color: #f00; font-weight: bold; }
|
|
.log-entry.ok { color: #0f0; }
|
|
.log-entry.warn { color: #ff0; }
|
|
|
|
.terminal-input-line {
|
|
display: flex;
|
|
border-top: 1px solid #111;
|
|
padding-top: 10px;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.prompt {
|
|
color: #0f0;
|
|
margin-right: 10px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
#terminal-input {
|
|
background: transparent;
|
|
border: none;
|
|
color: #0f0;
|
|
font-family: 'Courier New', monospace;
|
|
width: 100%;
|
|
outline: none;
|
|
font-size: 0.9rem;
|
|
}
|
|
|
|
/* CONTENT HEADER & FILTER */
|
|
.content-header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
border-bottom: 1px solid #333;
|
|
margin-bottom: 20px;
|
|
padding-bottom: 10px;
|
|
}
|
|
|
|
.filter-controls {
|
|
display: flex;
|
|
gap: 10px;
|
|
}
|
|
|
|
.filter-btn {
|
|
background: transparent;
|
|
border: 1px solid #444;
|
|
color: #888;
|
|
padding: 2px 8px;
|
|
font-family: 'Courier New', monospace;
|
|
font-size: 0.7rem;
|
|
cursor: pointer;
|
|
transition: all 0.2s;
|
|
}
|
|
|
|
.filter-btn:hover, .filter-btn.active {
|
|
border-color: var(--accent-orange);
|
|
color: var(--accent-orange);
|
|
}
|
|
|
|
/* CLASSIFICATION STAMP */
|
|
.classification-stamp {
|
|
position: absolute;
|
|
top: 40px;
|
|
right: 40px;
|
|
border: 5px double rgba(255, 0, 0, 0.4);
|
|
color: rgba(255, 0, 0, 0.4);
|
|
padding: 10px 30px;
|
|
font-size: 1.8rem;
|
|
font-weight: 900;
|
|
text-transform: uppercase;
|
|
transform: rotate(12deg);
|
|
user-select: none;
|
|
pointer-events: none;
|
|
letter-spacing: 8px;
|
|
z-index: 5;
|
|
box-shadow: 0 0 10px rgba(255, 0, 0, 0.1);
|
|
background: rgba(255, 0, 0, 0.02);
|
|
}
|
|
|
|
.classification-stamp::after {
|
|
content: "EYES ONLY";
|
|
display: block;
|
|
font-size: 0.6rem;
|
|
text-align: center;
|
|
letter-spacing: 2px;
|
|
margin-top: 5px;
|
|
font-weight: 400;
|
|
}
|
|
|
|
/* HERO GLITCH EFFECTS */
|
|
.hero-image {
|
|
max-width: 750px;
|
|
width: 100%;
|
|
display: block;
|
|
margin: 20px auto;
|
|
border: 5px solid #3d2b1f;
|
|
box-shadow: 0 0 30px rgba(0,0,0,1);
|
|
transition: all 0.5s ease;
|
|
}
|
|
|
|
body.mode-security .hero-image {
|
|
filter: sepia(1) saturate(5) hue-rotate(-50deg);
|
|
animation: shake 0.2s infinite;
|
|
}
|
|
|
|
body.mode-anarchy .hero-image {
|
|
filter: invert(1) contrast(3);
|
|
/* Das Bild wird nicht mehr gnadenlos abgeschnitten, sondern erbt den Portfolio-Glitch Effekt */
|
|
animation: portfolio-glitch 0.2s infinite;
|
|
}
|
|
|
|
.mission-content img {
|
|
max-width: 500px;
|
|
width: 100%;
|
|
height: auto;
|
|
border: 2px solid #333;
|
|
margin: 30px auto;
|
|
filter: grayscale(0.5) contrast(1.2);
|
|
box-shadow: 0 0 20px rgba(0,0,0,0.5);
|
|
display: block;
|
|
}
|
|
|
|
.image-caption {
|
|
font-size: 0.75rem;
|
|
color: var(--accent-gold);
|
|
text-transform: uppercase;
|
|
margin-top: -20px;
|
|
margin-bottom: 30px;
|
|
text-align: center;
|
|
letter-spacing: 2px;
|
|
}
|
|
|
|
/* PORTFOLIO LINK & GRID */
|
|
|
|
.item-excerpt, .item-excerpt p {
|
|
font-size: 0.85rem;
|
|
color: #888;
|
|
margin: 5px 0 0 0;
|
|
line-height: 1.4;
|
|
text-decoration: none !important;
|
|
}
|
|
|
|
/* FORTUNE TEASER */
|
|
.fortune-teaser {
|
|
margin-top: 16px;
|
|
padding: 18px 24px;
|
|
border: 1px solid #2a2a2a;
|
|
border-left: 3px solid var(--accent-gold);
|
|
background: rgba(212, 175, 55, 0.03);
|
|
cursor: pointer;
|
|
transition: background 0.2s, border-color 0.2s;
|
|
display: flex;
|
|
align-items: baseline;
|
|
gap: 24px;
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
.fortune-teaser:hover {
|
|
background: rgba(212, 175, 55, 0.07);
|
|
border-left-color: var(--accent-orange);
|
|
}
|
|
|
|
.fortune-teaser-label {
|
|
color: #444;
|
|
font-size: 0.65rem;
|
|
letter-spacing: 2px;
|
|
white-space: nowrap;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.fortune-teaser-text {
|
|
color: #777;
|
|
font-size: 0.8rem;
|
|
margin: 0;
|
|
flex: 1;
|
|
line-height: 1.5;
|
|
}
|
|
|
|
.fortune-teaser-text em {
|
|
color: var(--accent-gold);
|
|
font-style: normal;
|
|
}
|
|
|
|
.fortune-teaser-hint {
|
|
color: #444;
|
|
font-size: 0.75rem;
|
|
white-space: nowrap;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.fortune-teaser-hint code {
|
|
color: var(--accent-gold);
|
|
font-family: 'Courier New', monospace;
|
|
}
|
|
|
|
/* COMMAND CARDS */
|
|
.cmd-cards-section {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 20px;
|
|
margin-top: 40px;
|
|
}
|
|
|
|
.cmd-card {
|
|
background: rgba(15, 15, 15, 0.9);
|
|
border: 1px solid #333;
|
|
border-top: 3px solid var(--accent-orange);
|
|
display: flex;
|
|
flex-direction: column;
|
|
transition: border-color 0.2s, box-shadow 0.2s;
|
|
}
|
|
|
|
.cmd-card:hover {
|
|
border-color: var(--accent-gold);
|
|
box-shadow: 0 0 20px rgba(212, 175, 55, 0.25);
|
|
}
|
|
|
|
.cmd-card-img {
|
|
width: 100%;
|
|
height: 180px;
|
|
object-fit: cover;
|
|
object-position: top;
|
|
filter: sepia(0.4) brightness(0.7);
|
|
display: block;
|
|
}
|
|
|
|
.cmd-card-body {
|
|
padding: 18px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 8px;
|
|
flex: 1;
|
|
}
|
|
|
|
.cmd-card-label {
|
|
color: #555;
|
|
font-size: 0.65rem;
|
|
letter-spacing: 2px;
|
|
}
|
|
|
|
.cmd-card-title {
|
|
color: var(--accent-orange);
|
|
font-size: 1.1rem;
|
|
margin: 0;
|
|
font-family: 'Courier New', monospace;
|
|
letter-spacing: 1px;
|
|
}
|
|
|
|
.cmd-card-text {
|
|
color: #aaa;
|
|
font-size: 0.8rem;
|
|
line-height: 1.6;
|
|
margin: 0;
|
|
flex: 1;
|
|
}
|
|
|
|
.cmd-card-hint {
|
|
display: block;
|
|
color: #444;
|
|
font-size: 0.7rem;
|
|
border-top: 1px solid #222;
|
|
padding-top: 10px;
|
|
margin-top: 4px;
|
|
letter-spacing: 1px;
|
|
}
|
|
|
|
.cmd-card-hint code {
|
|
color: #0f0;
|
|
background: rgba(0,255,0,0.05);
|
|
padding: 1px 5px;
|
|
font-family: 'Courier New', monospace;
|
|
}
|
|
|
|
@media (max-width: 768px) {
|
|
.cmd-cards-section {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
}
|
|
|
|
/* PORTFOLIO GRID */
|
|
.portfolio-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
|
|
gap: 20px;
|
|
margin-top: 50px;
|
|
}
|
|
|
|
.portfolio-item {
|
|
background: rgba(15, 15, 15, 0.9);
|
|
border: 1px solid #333;
|
|
padding: 25px 20px 20px 20px;
|
|
position: relative;
|
|
transition: all 0.3s;
|
|
height: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: flex-start;
|
|
}
|
|
|
|
.portfolio-link:hover .portfolio-item {
|
|
border-color: var(--accent-orange);
|
|
box-shadow: 0 0 25px rgba(255, 69, 0, 0.4);
|
|
animation: portfolio-glitch 0.3s infinite;
|
|
z-index: 10;
|
|
}
|
|
|
|
@keyframes portfolio-glitch {
|
|
0% { transform: translate(0, -5px) skew(0deg); filter: drop-shadow(2px 0 0 rgba(255,0,0,0.5)) drop-shadow(-2px 0 0 rgba(0,0,255,0.5)); }
|
|
25% { transform: translate(-2px, -4px) skew(1deg); filter: drop-shadow(-2px 0 0 rgba(255,0,0,0.5)) drop-shadow(2px 0 0 rgba(0,0,255,0.5)); }
|
|
50% { transform: translate(2px, -6px) skew(-1deg); filter: drop-shadow(2px 0 0 rgba(255,0,0,0.5)) drop-shadow(-2px 0 0 rgba(0,0,255,0.5)); }
|
|
75% { transform: translate(-1px, -5px) skew(2deg); filter: drop-shadow(-2px 0 0 rgba(255,0,0,0.5)) drop-shadow(2px 0 0 rgba(0,0,255,0.5)); }
|
|
100% { transform: translate(0, -5px) skew(0deg); filter: drop-shadow(2px 0 0 rgba(255,0,0,0.5)) drop-shadow(-2px 0 0 rgba(0,0,255,0.5)); }
|
|
}
|
|
|
|
/* PROJECT THUMBNAILS (Evidence Photo Style) */
|
|
.project-header-wrap {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 15px;
|
|
margin-bottom: 10px;
|
|
border-bottom: 1px solid #222;
|
|
padding-bottom: 15px;
|
|
}
|
|
|
|
.project-thumb {
|
|
width: 60px;
|
|
height: 60px;
|
|
object-fit: cover;
|
|
border: 3px solid #eee; /* Polaroid Rand */
|
|
filter: grayscale(1) contrast(1.2) sepia(0.3);
|
|
transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
|
transform: rotate(-3deg);
|
|
box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
/* Klebestreifen oben links */
|
|
.project-thumb::before {
|
|
content: "";
|
|
position: absolute;
|
|
top: -10px;
|
|
left: 50%;
|
|
width: 30px;
|
|
height: 10px;
|
|
background: rgba(255, 255, 255, 0.1);
|
|
transform: translateX(-50%);
|
|
box-shadow: 0 0 5px rgba(0,0,0,0.2);
|
|
}
|
|
|
|
.portfolio-link:hover .project-thumb {
|
|
filter: grayscale(0) contrast(1);
|
|
transform: rotate(0deg) scale(1.1);
|
|
border-color: var(--accent-gold);
|
|
box-shadow: 0 0 20px rgba(212, 175, 55, 0.4);
|
|
}
|
|
|
|
.portfolio-item h3 {
|
|
color: var(--accent-gold);
|
|
margin: 0;
|
|
font-size: 1rem;
|
|
flex-grow: 1;
|
|
text-transform: uppercase;
|
|
letter-spacing: 1px;
|
|
}
|
|
|
|
.status-tag {
|
|
font-size: 0.7rem;
|
|
background: #222;
|
|
padding: 2px 8px;
|
|
position: absolute;
|
|
top: 10px;
|
|
right: 10px;
|
|
border: 1px solid #444;
|
|
z-index: 10;
|
|
}
|
|
|
|
.status-tag.stable { color: #0f0; border-color: #0f0; }
|
|
.status-tag.corrupted { color: #f00; border-color: #f00; animation: blinker 1s infinite; }
|
|
|
|
/* --- TIMELINE MODAL --- */
|
|
#timeline-modal {
|
|
position: fixed; top: 0; left: 0; width: 100%; height: 100%;
|
|
background: url('assets/img/steampunk_bg.png') center/cover no-repeat, rgba(15, 10, 5, 0.95);
|
|
background-blend-mode: multiply;
|
|
z-index: 20000;
|
|
overflow-y: auto;
|
|
padding: 40px 20px;
|
|
font-family: 'Courier New', monospace;
|
|
opacity: 1; transition: opacity 0.5s;
|
|
box-shadow: inset 0 0 100px #000;
|
|
}
|
|
#timeline-modal.timeline-hidden {
|
|
opacity: 0; pointer-events: none;
|
|
}
|
|
#close-timeline {
|
|
position: fixed; top: 20px; right: 30px;
|
|
background: rgba(0,0,0,0.5); color: var(--accent-orange); border: 2px solid var(--accent-orange);
|
|
padding: 10px 20px; font-weight: bold; cursor: pointer; z-index: 20001;
|
|
box-shadow: 0 0 10px rgba(255,69,0,0.5);
|
|
text-shadow: 0 0 5px #000;
|
|
}
|
|
#close-timeline:hover { background: var(--accent-orange); color: #000; }
|
|
|
|
.timeline-track {
|
|
position: relative; max-width: 800px; margin: 40px auto;
|
|
}
|
|
/* Kupferrohr in der Mitte */
|
|
.timeline-track::after {
|
|
content: ''; position: absolute;
|
|
width: 8px;
|
|
background: linear-gradient(to right, #5c3a21 0%, #b87333 50%, #5c3a21 100%);
|
|
top: 0; bottom: 0; left: 50%; margin-left: -4px;
|
|
box-shadow: 2px 0 10px rgba(0,0,0,0.9);
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.time-node {
|
|
padding: 10px 40px; position: relative; background: inherit; width: 50%; box-sizing: border-box;
|
|
}
|
|
.time-node.left { left: 0; text-align: right; }
|
|
.time-node.right { left: 50%; text-align: left; }
|
|
|
|
/* Ventil / dicker Kupferknoten auf dem Rohr */
|
|
.time-node::after {
|
|
content: ''; position: absolute;
|
|
width: 24px; height: 24px; right: -16px; top: 15px;
|
|
background: radial-gradient(circle, #d4af37 20%, #8b5a2b 80%);
|
|
border: 3px solid #3e2723; border-radius: 50%; z-index: 1;
|
|
box-shadow: 0 0 15px rgba(0,0,0,0.9), inset 0 0 5px #000;
|
|
}
|
|
.time-node.right::after { left: -16px; }
|
|
|
|
/* Steampunk Kästchen */
|
|
.time-content {
|
|
padding: 25px;
|
|
background: linear-gradient(135deg, rgba(50, 30, 15, 0.95), rgba(20, 10, 5, 0.95));
|
|
border: 2px solid #b5a642;
|
|
outline: 2px solid #2a1f18; /* Kabel-Base */
|
|
outline-offset: 4px;
|
|
box-shadow: inset 0 0 20px rgba(0,0,0,0.8), 5px 5px 20px rgba(0,0,0,0.7);
|
|
position: relative; border-radius: 3px;
|
|
}
|
|
/* Subtile Kabelverschlaufung (Kupferdraht) um normale Boxen */
|
|
.time-content::after {
|
|
content: ''; position: absolute; top: -6px; left: -6px; right: -6px; bottom: -6px;
|
|
border: 1px dashed #b87333;
|
|
border-radius: 5px;
|
|
pointer-events: none;
|
|
opacity: 0.6;
|
|
z-index: 2;
|
|
}
|
|
|
|
/* Messing-Nieten in den Ecken */
|
|
.time-content::before {
|
|
content: ''; position: absolute; width: 100%; height: 100%; left: 0; top: 0; pointer-events: none;
|
|
background-image:
|
|
radial-gradient(circle at 10px 10px, #b5a642 3px, transparent 4px),
|
|
radial-gradient(circle at calc(100% - 10px) 10px, #b5a642 3px, transparent 4px),
|
|
radial-gradient(circle at 10px calc(100% - 10px), #b5a642 3px, transparent 4px),
|
|
radial-gradient(circle at calc(100% - 10px) calc(100% - 10px), #b5a642 3px, transparent 4px);
|
|
opacity: 0.8;
|
|
}
|
|
|
|
.time-content h3 {
|
|
margin-top: 8px; color: #d4af37;
|
|
border-bottom: 1px dashed #b5a642;
|
|
padding-bottom: 5px;
|
|
text-shadow: 1px 1px 2px #000;
|
|
font-size: 1.1rem;
|
|
letter-spacing: 2px;
|
|
}
|
|
.time-content p { font-size: 0.9rem; color: #e8dcc4; line-height: 1.5; text-shadow: 1px 1px 2px #000; margin-bottom: 0; }
|
|
|
|
/* Akte-Kopfstreifen */
|
|
.tc-header {
|
|
margin: -25px -25px 12px -25px;
|
|
padding: 5px 14px;
|
|
background: linear-gradient(90deg, rgba(181,166,66,0.15), rgba(181,166,66,0.05));
|
|
border-bottom: 1px solid #b5a642;
|
|
font-size: 0.6rem;
|
|
letter-spacing: 2px;
|
|
color: #8a7a30;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.tc-stamp {
|
|
color: #b5a642;
|
|
border: 1px solid #b5a642;
|
|
padding: 0 5px;
|
|
font-size: 0.55rem;
|
|
letter-spacing: 3px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.tc-stamp.omega {
|
|
color: var(--accent-orange);
|
|
border-color: var(--accent-orange);
|
|
animation: blinker 1.2s infinite;
|
|
}
|
|
|
|
/* Akte-Fußstreifen */
|
|
.tc-footer {
|
|
margin: 12px -25px -25px -25px;
|
|
padding: 5px 14px;
|
|
background: linear-gradient(90deg, rgba(181,166,66,0.05), rgba(181,166,66,0.12));
|
|
border-top: 1px solid #3a2e10;
|
|
font-size: 0.55rem;
|
|
letter-spacing: 2px;
|
|
color: #5a4e20;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
/* OMEGA KNOTEN - Die Überraschung (Elektro-Arc) */
|
|
.time-content.omega-node {
|
|
border-color: #ff4500;
|
|
outline: 2px solid #330000;
|
|
box-shadow: inset 0 0 30px rgba(255, 69, 0, 0.5), 0 0 30px rgba(255, 0, 0, 0.8);
|
|
background: linear-gradient(135deg, rgba(80, 20, 10, 0.95), rgba(30, 0, 0, 0.95));
|
|
animation: omega-pulse 2s infinite alternate, omega-shake 0.5s infinite;
|
|
}
|
|
.time-content.omega-node::after {
|
|
content: ''; position: absolute; top: -8px; left: -8px; right: -8px; bottom: -8px;
|
|
border: 2px solid #0ff; /* Plasma cyan */
|
|
border-radius: 6px;
|
|
box-shadow: 0 0 15px #0ff, inset 0 0 10px #0ff;
|
|
animation: electric-arc 0.15s infinite;
|
|
pointer-events: none;
|
|
opacity: 0.9;
|
|
z-index: 2;
|
|
}
|
|
|
|
@keyframes omega-pulse {
|
|
0% { box-shadow: inset 0 0 30px rgba(255, 69, 0, 0.4), 0 0 20px rgba(255, 0, 0, 0.6); }
|
|
100% { box-shadow: inset 0 0 60px rgba(255, 69, 0, 0.9), 0 0 40px rgba(255, 0, 0, 1); }
|
|
}
|
|
|
|
@keyframes omega-shake {
|
|
0%, 100% { transform: translate(0, 0) rotate(0deg); }
|
|
25% { transform: translate(0.5px, 0.5px) rotate(0.2deg); }
|
|
50% { transform: translate(-0.5px, -0.5px) rotate(-0.2deg); }
|
|
75% { transform: translate(0.5px, -0.5px) rotate(0.2deg); }
|
|
}
|
|
|
|
@keyframes electric-arc {
|
|
0% { clip-path: polygon(0 0, 100% 0, 100% 5%, 0 5%); border-color: #0ff; }
|
|
25% { clip-path: polygon(95% 0, 100% 0, 100% 100%, 95% 100%); border-color: #fff; }
|
|
50% { clip-path: polygon(0 95%, 100% 95%, 100% 100%, 0 100%); border-color: #0ff; }
|
|
75% { clip-path: polygon(0 0, 5% 0, 5% 100%, 0 100%); border-color: #fff; }
|
|
100% { clip-path: polygon(0 0, 100% 0, 100% 20%, 0 20%); border-color: #0ff; }
|
|
}
|
|
|
|
@media screen and (max-width: 600px) {
|
|
.timeline-track::after { left: 31px; }
|
|
.time-node { width: 100%; padding-left: 70px; padding-right: 25px; }
|
|
.time-node.left { text-align: left; }
|
|
.time-node.right { left: 0; }
|
|
.time-node.left::after, .time-node.right::after { left: 19px; }
|
|
}
|
|
|
|
/* TIME WARP GLITCH */
|
|
body.mode-time-warp {
|
|
animation: shake 0.1s infinite;
|
|
filter: sepia(100%) hue-rotate(-20deg) contrast(200%) brightness(0.8) blur(1px);
|
|
}
|
|
|
|
/* --- ANTIGRAVITY PHASE --- */
|
|
:root {
|
|
--ag-float-duration: 6s;
|
|
--ag-drift-offset: 15px;
|
|
}
|
|
|
|
.ag-floating {
|
|
animation: ag-float var(--ag-float-duration) ease-in-out infinite;
|
|
will-change: transform;
|
|
transform: translateZ(0); /* Force GPU Acceleration for M4 */
|
|
}
|
|
|
|
@keyframes ag-float {
|
|
0%, 100% {
|
|
transform: translateY(0) translateZ(0);
|
|
}
|
|
50% {
|
|
transform: translateY(calc(-1 * var(--ag-drift-offset))) translateZ(0);
|
|
}
|
|
}
|
|
|
|
.ag-parallax-layer {
|
|
transition: transform 0.1s cubic-bezier(0.2, 0.8, 0.2, 1);
|
|
will-change: transform;
|
|
}
|
|
|
|
.ag-weightless {
|
|
opacity: 0.85;
|
|
filter: blur(0.5px);
|
|
transition: all 0.5s ease;
|
|
}
|
|
|
|
.ag-weightless:hover {
|
|
opacity: 1;
|
|
filter: blur(0);
|
|
transform: scale(1.02) translateZ(0);
|
|
}
|