body {
    font-family: sans-serif;
    line-height: 1.6;
    margin: 0;
    padding: 20px;
    background-color: #f0f2f5; 
    color: #0d2b40; 
}

header {
    text-align: center;
    margin-bottom: 40px;
}

nav {
    margin-top: 10px;
    font-size: 0.9em;
}

.container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;    
}




.box {
	height: 85%;  
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}


.box-link {
    text-decoration: none;
    color: inherit;
    display: block;
    flex: 1 1 450px; 
	margin-bottom: 5px;
    transition: transform 0.2s ease;
}

.box-link:hover .box {
    background-color: #f9f9f9;
    border-color: #aaa;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}




h1, h2 {
    color: #051926; /* Einheitlich dunkles Preußischblau */
}

/* --- BOX-ÜBERSCHRIFTEN (Ohne Unterstrich) --- */
.box h2 a {
    text-decoration: none;
    color: #051926;
    transition: all 0.3s ease; /* Transition für Farbe UND Schriftstärke */
}

.box h2 a:hover {
    color: #2a7ab0;      /* Das kräftige leuchtende Blau */
    font-weight: bold;   /* Minimale Fettschrift beim Hover */
}

.box h2 a:visited {
    color: #051926;
}

/* --- NAVIGATION (Mit Unterstrich) --- */
nav a {
    color: #051926;
    text-decoration: underline;
    transition: all 0.3s ease;
}

nav a:hover {
    color: #2a7ab0;      /* Das kräftige leuchtende Blau */
    font-weight: bold;   /* Minimale Fettschrift beim Hover */
}

nav a:visited {
    color: #051926;
}

/* Damit die nicht verlinkten Texte genau wie die anderen aussehen */
.aktuell {
    color: #051926;
    text-decoration: none;
    font-weight: normal;
}

html {
    scroll-behavior: smooth; /* Lässt die Seite sanft zum Anker gleiten */
}

h3 {
    /* Dein bestehender Wert für die Sprungmarke */
    scroll-margin-top: 20px; 
    
    /* Die neuen Werte für die Optik */
    font-size: 1.5em;       
    margin-top: 50px;       /* Mehr Abstand zum vorherigen Kapitel */
    margin-bottom: 25px;    /* Abstand zum Text */
    color: #051926;         /* Deine gewählte dunkle Farbe */
    line-height: 1.2;       /* Verhindert, dass Zeilen bei langen Überschriften zu eng stehen */
}

.back-to-top {
    text-decoration: none;   
    font-size: 1.4em;        /* Von 0.8em auf 1.4em vergrößert */
    margin-left: 15px;       /* Etwas mehr Abstand zum Text */
    color: #a0b0c0;          
    transition: color 0.3s ease, transform 0.2s ease; /* Ein kleiner Bonus-Effekt */
    display: inline-block;   /* Wichtig, damit transform funktioniert */
    vertical-align: middle;  /* Richtet es mittig zur Überschrift aus */
}

.back-to-top:hover {
    color: #2a7ab0;          
    font-weight: bold;       
    transform: scale(1.2);   /* Das Dreieck wächst beim Drüberfahren leicht mit */
}

.wichtig {
    border-left: 4px solid #2a7ab0;
    background-color: #f8f9fa;
    padding: 15px;
    font-style: italic;
    color: #051926;
    margin: 20px 0;
}

/* Neue Regel: Macht den Anfang der Sätze farblich hervorstechend */
.wichtig li strong {
    color: #2a7ab0; /* Dein leuchtendes Blau */
    font-weight: bold; /* Damit es sich vom Rest abhebt */
}

/* Hebt <code>-Elemente im Fließtext deutlicher hervor */
.wichtig code {
    background-color: #e2e8f0;
    padding: 2px 5px;
    border-radius: 4px;
    font-family: 'Courier New', Courier, monospace;
    font-size: 1em; /* Passt die Größe an den umgebenden Text an */
    font-weight: bold;
    color: #2d3748;
}

.content-wrapper {
    max-width: 900px; /* Oder die Breite, die zu deinen zwei Startseiten-Boxen passt */
    margin: 20px auto;
    background: #ffffff; /* Weißer Hintergrund für den Inhalt */
    padding: 30px;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

@media (max-width: 600px) {
    .content-wrapper {
        padding: 15px; /* Etwas weniger Innenabstand für schmale Displays */
    }
}


.brand-icon {
    display: block;
    margin: 60px auto 20px auto; /* Etwas mehr Abstand zum Text darüber */
    width: 60px; 
    opacity: 0.05; /* Dein gewählter Wert für den Wasserzeichen-Effekt */
    pointer-events: none; /* Verhindert, dass man das Logo aus Versehen anklicken kann */
}


.long-code {
    word-break: break-all;
    font-family: 'Courier New', Courier, monospace; /* Klassisch technische Schrift */
    background: #e2e8f0;    /* Deutlich dunkler als f8f9fa für mehr Kontrast */
    color: #1a365d;         /* Ein sehr dunkles Blau, wirkt professioneller als reines Schwarz */
    padding: 12px;
    border-radius: 6px;
    font-size: 0.9em;       /* Deine gewünschte Erhöhung */
    line-height: 1.8;
    border: 1px solid #cbd5e0; /* Ein ganz feiner Rahmen verstärkt den "Box"-Charakter */
    margin: 20px 0;         /* Mehr Luft zum umliegenden Text */
}

.info-box {
    background: #fdfdf0;             /* Helles Papier-Beige */
    border: 2px solid #d4af37;       /* Hier: Goldener Rahmen auf ALLEN Seiten gleich stark */
    padding: 20px;
    margin: 30px 0;
    border-radius: 8px;              /* Gleichmäßige Abrundung an allen Ecken */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.info-box h4 {
    margin-top: 0;
    color: #5d4037;                  /* Warmes Braun */
    text-transform: uppercase;
    font-size: 0.9em;
    letter-spacing: 1px;
    margin-bottom: 15px;
    border-bottom: 1px solid #d4af37; /* Trennstrich weiterhin gold */
    padding-bottom: 10px;
}

.source-num {
    font-size: 0.75em;
    vertical-align: super;
    color: #5d4037;
    font-weight: bold;
    line-height: 0; /* Verhindert das Aufblasen des Zeilenabstands */
}

.box-footer {
    margin-top: 25px;
    padding-top: 10px;
    border-top: 1px solid #e0d8b0;   /* Dezentere Trennlinie am Kastenende */
    font-size: 0.8em;
    color: #666666;
}

.url-text {
    user-select: all;                /* Nur die reine URL ist mit einem Klick markierbar */
    word-break: break-all;
}

.wordlist-pre {
    font-family: 'Courier New', Courier, monospace;
    white-space: pre;
    background-color: #edf2f7;
    padding: 10px;
    overflow-x: auto;
    font-size: 14px;
    line-height: 1.5;
    border: 1px solid #cbd5e0;      /* Optional: Rahmen für das Code-Feld */
    border-radius: 4px;
}

.logic-box {
    border: 1px solid #cbd5e0 !important;
    padding: 15px !important;
    background: #edf2f7 !important; /* Das ist die entscheidende Zeile */
    border-radius: 8px !important;
    margin: 20px 0 !important;
    font-family: 'Courier New', Courier, monospace !important;
}


.dice-demo { 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    gap: 20px; 
    padding: 20px; 
    border: 1px solid #e2e8f0; 
    border-radius: 12px; 
    background: #f8fafc; 
}

.würfel-display { 
    width: 60px; 
    height: 60px; 
    background: #4a5568; 
    color: white; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-size: 50px; 
    line-height: 60px; 
    border-radius: 8px; 
    cursor: pointer; 
    transition: transform 0.5s; 
    user-select: none; 
}


pre {
    background-color: #f7fafc; 
    border: 1px solid #e2e8f0;
    padding: 10px;
    border-radius: 5px;
    display: block; /* Auf block geändert, damit es den Binärcode schön untereinander hält */
    font-family: 'Courier New', Courier, monospace;
    font-size: 14px;
    margin: 20px 0;
}

.kapitel-bild {
    max-width: 100%;       /* Das Bild wird nie breiter als sein Container */
    height: auto;          /* Seitenverhältnis bleibt erhalten */
    border: 1px solid #cbd5e0;
    border-radius: 8px;
    margin: 20px 0;
    display: block;        /* Sorgt für sauberes Layout */
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.bild-galerie {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 30px 0;
}

.galerie-item {
    flex: 1 1 300px;
    margin: 0; /* Standard-Margin von figure entfernen */
}

figcaption {
    text-align: center;
    font-size: 0.9em;
    color: #4a5568;
    margin-top: 10px;
    font-style: italic;
    line-height: 1.4;
}

.laser-video-wrapper {
    width: 100%;
    max-width: 600px; /* Deine gewünschte Breite */
    margin: 20px auto;
}

.laser-video-wrapper video {
    width: 100%;
    height: auto;
    /* Erzwingt das 16:9 Format, auch bevor das Video geladen ist */
    aspect-ratio: 16 / 9; 
    display: block;
    background-color: #000; /* Schwarzer Hintergrund, falls das Poster-Bild nicht passt */
    border-radius: 8px;
}

.fallback-images img {
    width: 100%;
    max-width: 600px;
    height: auto;
    margin-top: 10px;
    display: block;
}


/* --- FOOTER-LINK (Neutrales Aussehen) --- */
.footer-link {
    text-decoration: none; /* Entfernt Unterstrich */
    color: inherit;        /* Übernimmt die Farbe vom Elternelement (dunkles Blau) */
    display: block;        /* Macht den gesamten Bereich klickbar */
}

/* Optional: Damit sich beim Drüberfahren nichts ändert */
.footer-link:hover {
    color: inherit;
    text-decoration: none;
}

/* Verhindert den blauen Auswahl-Highlight-Effekt beim Antippen */
* {
    -webkit-tap-highlight-color: transparent;
}

.themen-liste ol {
    list-style-position: outside; /* Lässt die Zahlen links vom Textblock stehen */
    padding-left: 25px;          /* Schafft Platz für die Zahlen */
    line-height: 1.6;            /* Etwas mehr Luft zwischen den Zeilen */
}

.themen-liste a {
    text-decoration: none;
    color: #051926; /* Dein dunkles Blau */
}


.wichtiger_hinweis {
    background-color: #fff3cd; 
	border-left: 5px solid #ffc107;
	padding: 15px; 
	margin: 20px 0; 
	color: #856404;
	border-radius: 4px;
}


.code-block {
    background-color: #f4f4f4;
    padding: 15px;
    border-radius: 5px;
    font-family: 'Courier New', Courier, monospace;
    margin: 10px 0;
    border-left: 4px solid #051926;
    overflow-x: auto; /* WICHTIG: Erlaubt Scrollen, falls Code zu lang ist */
    white-space: pre-wrap; /* Bricht lange Wörter/Zeilen automatisch um */
}

ul {
    list-style-type: disc; /* Erzeugt die runden Punkte */
    padding-left: 25px;    /* Sorgt für den richtigen Abstand zum Rand */
    line-height: 1.6;      /* Mehr Luft für bessere Lesbarkeit */
    margin-bottom: 20px;
}

ul li {
    margin-bottom: 5px;    /* Etwas Abstand zwischen den Punkten */
}

.image-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 20px 0;
    align-items: flex-start; /* Hält die Bilder an der Oberkante fest */
}

.image-item {
    flex: 1 1 300px;
    max-width: 100%;
    display: flex;       /* Macht das Item selbst zum Flex-Container */
    flex-direction: column; /* Stapelt Bild und Text untereinander */
}

.image-item img {
    width: 100%;
    height: auto;
    display: block;
    border: 1px solid #ddd;
    border-radius: 8px;
    /* Optional: Damit Bilder immer gleich groß wirken */
    aspect-ratio: 1 / 1; 
    object-fit: cover;
}

.chatgpt-quote {
    font-family: sans-serif;
    color: #333;
    line-height: 1.6;
}

.chatgpt-quote h2 {
    font-size: 1.5em;
    margin-bottom: 1em;
}

.quote-highlight {
    border-left: 4px solid #8e8e8e; /* Die graue Linie links */
    padding-left: 15px;
    margin: 20px 0;
    font-weight: 600;
}

.chatgpt-quote ul {
    padding-left: 20px;
    margin-bottom: 20px;
}

.chatgpt-quote li {
    margin-bottom: 8px;
}

.danke-box, .thanks-box {
    display: block;
    margin: 20px auto;
    padding: 10px;
    border: 1px solid #333;
    text-align: center;
    width: 170px;
    font-family: Arial, sans-serif;
    font-weight: 900;
}

.danke-box {
    font-size: 42px;
}

.thanks-box {
    font-size: 37px;
}



.danke-punkt {
    display: inline-block;
    width:10px;
    height: 10px;
    background-color: #b00;
    border-radius: 50%;
    margin-left: 8px;
    position: relative; /* Ermöglicht die Verschiebung */
    top: 0.2px;          /* Verschiebt den Punkt um 3 Pixel nach unten */
}