/* ================================================================
   DENKNEST FARBSCHEMA
   Zentrale Farbdefinitionen für alle Komponenten
================================================================ */

:root {
    /* ===== FARBPALETTE ===== */
    --color-background: #111827;
    --color-text: #D1D5DB;
    --color-heading: #EADDCA;
    --color-muted-text: #9CA3AF;
		--color-header-footer-bg: #1F2937; /* Header/Footer background */

    /* ===== LINKS ===== */
    --color-link: #60A5FA;
    --color-link-hover: #93C5FD;
    --color-link-visited: #C4B5FD;
    --color-link-active: #3B82F6;
		--color-primary-hover: #93C5FD; /* Gleicher Wert wie --color-link-hover */

    /* ===== UI-ELEMENTE ===== */
    --color-nav-background: #1F2937;
    --color-footer-background: #1F2937;
    --color-card-bg: #1E293B;
    --color-secondary-bg: #1F2937;
    --color-border: #374151;
    --color-focus: #60A5FA;

    /* ===== SPEZIELLE BOXEN ===== */
    --color-tipp-bg: rgba(76, 175, 80, 0.1);
    --color-tipp-border: #4caf50;
    --color-warnung-bg: rgba(255, 152, 0, 0.1);
    --color-warnung-border: #ff9800;

    /* ===== LAYOUT-VARIABLEN ===== */
    --max-width: 800px;
    --content-max-width: 1200px;
    --border-radius: 5px;
    --base-font-family: sans-serif;
    --base-line-height: 1.6;
    --font-base: 1rem;

    /* ===== ABSTÄNDE (konsolidiert) ===== */
    --space-xs: 0.25rem;
    --space-sm: 0.5rem;
    --space-md: 1rem;   /* Ersetzt --spacing-small */
    --space-lg: 1.5rem;
    --space-xl: 2rem;   /* Ersetzt --spacing-medium */
    --space-xxl: 3rem;  /* Ersetzt --spacing-large */
}

/* ===== HELLER MODUS ===== */
body:has(#light-mode-toggle:checked) {
    --color-background: #ffffff;
    --color-text: #1F2937;
    --color-heading: #92400E;
    --color-muted-text: #6B7280;
    --color-link: #2563EB;
    --color-link-hover: #1D4ED8;
    --color-link-visited: #7C3AED;
    --color-link-active: #1E40AF;
    --color-nav-background: #F9FAFB;
    --color-footer-background: #F9FAFB;
    --color-card-bg: #F3F4F6;
    --color-secondary-bg: #F9FAFB;
    --color-border: #D1D5DB;
    --color-focus: #2563EB;
    --color-tipp-bg: rgba(76, 175, 80, 0.15);
    --color-warnung-bg: rgba(255, 152, 0, 0.15);
}

/* ===== HOHER KONTRAST ===== */
body:has(#high-contrast-toggle:checked) {
    --color-background: #000000;
    --color-text: #ffffff;
    --color-heading: #FFD700;
    --color-muted-text: #ffffff;
    --color-link: #FFFF00;
    --color-link-hover: #FFFF99;
    --color-link-visited: #FF66FF;
    --color-nav-background: #000000;
    --color-footer-background: #000000;
    --color-card-bg: #000000;
    --color-secondary-bg: #000000;
    --color-border: #ffffff;
    --color-focus: #FFFF00;
}

@media (prefers-contrast: more) {
    :root {
        --color-background: #000000;
        --color-text: #ffffff;
        --color-heading: #FFD700;
        --color-link: #FFFF00;
        --color-link-hover: #FFFF99;
        --color-link-visited: #FF66FF;
        --color-focus: #FFFF00;
        --color-border: #ffffff;
        --color-card-bg: #000000;
    }
}
/* ===== DRUCK-OPTIMIERUNG ===== */
/* Erzwingt Papier-freundliche Farben für ALLE Projekte */
@media print {
    :root {
        --color-background: #ffffff;
        --color-text: #000000;
        --color-heading: #000000;
        --color-muted-text: #555555;
        --color-link: #000000; /* Links schwarz im Druck */
        --color-card-bg: #ffffff;
        --color-border: #cccccc;
        --color-nav-background: #ffffff;
        --color-footer-background: #ffffff;
    }

    /* Versteckt Navigation und Toggles im Druck */
    .light-mode-wrapper,
    .high-contrast-wrapper,
    .skip-link,
    nav,
    .az-nav,
    .image-toggle,
    .image-label {
        display: none !important;
    }

    /* Optional: Links ausschreiben, damit man sie auf Papier lesen kann */
    main a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 0.8em;
    }
}