Files
2026-10-03 13:49:55 +02:00

305 lines
6.1 KiB
CSS

/* ---- Pixel-Pferd im Header ---- */
header {
text-align: left;
}
.pixel-horse-container {
width: 240px; /* Pferd + je 70px Landschaft links und rechts */
height: 100px;
position: relative;
margin: 0 auto; /* zentriert im Header */
image-rendering: pixelated;
image-rendering: -moz-crisp-edges;
image-rendering: crisp-edges;
}
.pixel-horse {
position: absolute;
top: 0;
left: 0;
width: 240px;
height: 100px;
opacity: 0;
animation: run 1s steps(1) infinite; /* 8 Frames, 125ms pro Frame */
}
.pixel-horse:nth-child(1) { animation-delay: 0s; opacity: 1; }
.pixel-horse:nth-child(2) { animation-delay: .125s; }
.pixel-horse:nth-child(3) { animation-delay: .25s; }
.pixel-horse:nth-child(4) { animation-delay: .375s; }
.pixel-horse:nth-child(5) { animation-delay: .5s; }
.pixel-horse:nth-child(6) { animation-delay: .625s; }
.pixel-horse:nth-child(7) { animation-delay: .75s; }
.pixel-horse:nth-child(8) { animation-delay: .875s; }
@keyframes run {
0%, 12.4% { opacity: 1; }
12.5%, 100% { opacity: 0; }
}
/* ================================================================
Linux-Terminal Dark Theme
Nur System-Fonts (lokal verfuegbar, keine Web-Fonts, DSGVO-konform)
================================================================ */
:root {
--bg: #1a1a1a; /* sehr dunkles Grau */
--text: #ffffff; /* normaler Text weiss */
--dim: #909090; /* gedimmter Text (Footer, Zitate) */
--heading: #00ff00; /* Ueberschriften gruen wie die erste Zeile */
--link: #66aaff; /* Links, gut lesbar auf schwarz */
--green: #00ff00; /* Prompt, Code */
--border: #333333;
}
html {
font-size: 14px; /* Basis: alle Schriften 14 px (auch 1rem) */
background: var(--bg);
}
body {
/* Terminal-/Monospace-Fonts des Systems, kein Web-Font, DSGVO-konform */
font-family: "Ubuntu Mono", "DejaVu Sans Mono", Menlo, "Liberation Mono",
"Noto Sans Mono", Inconsolata, Monaco, "Courier New", monospace;
background: var(--bg);
color: var(--text);
line-height: 1.6;
margin: 0;
padding: 2rem;
box-sizing: border-box;
}
/* ---- Header = Terminal-Titelleiste ---- */
header {
max-width: 1200px; /* gleiche Spalte wie main/footer */
margin: 0 auto 1.5rem; /* in der Seitenmitte */
text-align: left;
}
/* ---- Hauptbereich als Terminal-Fenster ---- */
main {
max-width: 1200px;
margin: 0 auto; /* in der Seitenmitte */
text-align: left;
padding: 0 1.5rem 1.5rem 0;
}
/* Shell-Prompt ganz oben auf der Seite */
.prompt {
max-width: 1200px;
margin: 0 auto 1.5rem;
color: var(--green);
}
/* Prompt als Link auf die Startseite, ohne Hover-Effekt */
a.prompt-link,
a.prompt-link:hover {
color: var(--green);
text-decoration: none;
text-shadow: none;
}
/* Blinkender Terminal-Cursor hinter dem Prompt */
.cursor {
display: inline-block;
width: .6em;
height: 1.1em;
background: var(--green);
vertical-align: text-bottom;
animation: blink 1s steps(1) infinite;
}
@keyframes blink {
0%, 49.9% { opacity: 1; }
50%, 100% { opacity: 0; }
}
/* ---- Typografie ---- */
h1, h2, h3, h4, h5, h6 {
color: var(--heading);
text-shadow: 0 0 8px rgba(0, 255, 0, 0.35);
letter-spacing: 1px;
font-size: 1rem; /* 14 px, ueberall gleiche Schriftgroesse */
font-weight: normal;
margin: 1.5rem 0 .8rem;
}
main > h1:first-of-type {
margin-top: 0;
}
p {
margin: .8rem 0;
}
/* ---- Inhalt einruecken: ein # mehr als die uebergeordnete
Ueberschrift = eine Stufe (1.5rem) tiefer ---- */
main div.sec {
margin-left: 1.5rem;
}
main div.sec0 {
margin-left: 0;
}
/* ---- Bilder ---- */
img {
display: block; /* Text startet immer unter dem Bild */
max-width: 1200px; /* Desktop: maximal 500px breit */
height: auto;
border: 1px solid #333333; /* dunkelgrauer Rand */
margin: .8rem 0;
}
/* Smartphone: Bild ueber die volle Breite */
@media (max-width: 600px) {
img {
max-width: 100%;
width: 100%;
}
}
/* ---- Anker-Navigation im Header (Links auf die Ueberschriften) ---- */
.anker-nav {
margin-top: 1rem;
}
.anker-nav ul {
list-style: none;
margin: 0;
padding-left: 0;
}
/* Unterpunkte einruecken (Ueberschrift mit einem # mehr) */
.anker-nav ul ul {
padding-left: 1.5rem;
}
.anker-nav li {
margin: .25rem 0;
}
.anker-nav a {
color: var(--link);
}
.anker-nav a:hover {
color: #ffffff;
}
/* ---- Links ---- */
a {
color: var(--link);
text-decoration: none;
}
a:hover {
color: #ffffff;
text-decoration: underline;
text-shadow: 0 0 8px rgba(102, 170, 255, 0.6);
}
/* ---- Kein Bold: alle Schrift normal ---- */
strong, b, th {
font-weight: normal;
}
/* ---- Listen, Zitate, Trennlinien ---- */
ul, ol {
margin: .8rem 0;
padding-left: 1.5rem;
}
li {
margin: .25rem 0;
}
li::marker {
color: var(--green);
}
blockquote {
border-left: 3px solid var(--green);
margin: 1rem 0;
padding: .5rem 1rem;
color: var(--dim);
background: rgba(0, 255, 0, 0.05);
}
hr {
border: none;
border-top: 1px dashed var(--border);
margin: 1.5rem 0;
}
/* ---- Tabellen ---- */
table {
border-collapse: collapse;
margin: 1rem 0;
}
th, td {
border: 1px solid var(--border);
padding: .4rem .8rem;
text-align: left;
}
th {
color: var(--heading);
background: #141414;
}
td {
color: var(--text);
}
/* ---- Code ---- */
code {
color: var(--green);
background: #242424;
padding: .1rem .3rem;
border-radius: 3px;
}
pre {
background: #141414;
border-radius: 4px;
padding: 1rem;
overflow-x: auto;
}
pre code {
background: none;
padding: 0;
}
/* ---- Footer ---- */
footer {
max-width: 1600px;
margin: 1.5rem auto 0; /* in der Seitenmitte, bündig zu main */
text-align: left;
border-top: 1px solid var(--border);
padding-top: 1rem;
color: var(--dim);
}
/* ---- Textauswahl invertiert, wie im Terminal ---- */
::selection {
background: var(--link);
color: #000000;
}