304 lines
5.9 KiB
CSS
304 lines
5.9 KiB
CSS
/* ---- Pixel-Pferd im Header ---- */
|
|
|
|
header {
|
|
text-align: left;
|
|
}
|
|
|
|
.pixel-horse-container {
|
|
width: 100px;
|
|
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: 100px;
|
|
height: 100px;
|
|
opacity: 0;
|
|
animation: run 0.5s steps(1) infinite;
|
|
}
|
|
|
|
.pixel-horse:nth-child(1) { animation-delay: 0s; opacity: 1; }
|
|
.pixel-horse:nth-child(2) { animation-delay: 0.125s; }
|
|
.pixel-horse:nth-child(3) { animation-delay: 0.25s; }
|
|
.pixel-horse:nth-child(4) { animation-delay: 0.375s; }
|
|
|
|
@keyframes run {
|
|
0%, 24.9% { opacity: 1; }
|
|
25%, 49.9% { opacity: 0; }
|
|
50%, 74.9% { opacity: 1; }
|
|
75%, 99.9% { opacity: 0; }
|
|
100% { opacity: 1; }
|
|
}
|
|
|
|
/* ================================================================
|
|
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;
|
|
}
|