/**
 * Rechtstexte (Impressum, Datenschutz, AGB, AVV, Privacy-Center): ruhiger blauer Nebel
 * im Hintergrund (statisch – nichts lenkt beim Lesen ab), Karte bleibt undurchsichtig.
 * Wird nach den Seitenstilen geladen.
 */

html body {
    background: #05060f !important;
}
html body::before {
    content: '' !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background:
        radial-gradient(60% 50% at 12% 18%, rgba(47, 107, 255, 0.28) 0%, rgba(47, 107, 255, 0) 70%),
        radial-gradient(55% 45% at 88% 30%, rgba(88, 101, 242, 0.22) 0%, rgba(88, 101, 242, 0) 70%),
        radial-gradient(70% 60% at 50% 110%, rgba(0, 160, 255, 0.18) 0%, rgba(0, 160, 255, 0) 70%),
        linear-gradient(180deg, #070a1a 0%, #05060f 60%) !important;
}
html body::after {
    /* feine Sterne */
    content: '';
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image:
        radial-gradient(1px 1px at 12% 22%, rgba(255, 255, 255, 0.5), transparent),
        radial-gradient(1px 1px at 72% 12%, rgba(255, 255, 255, 0.4), transparent),
        radial-gradient(1px 1px at 38% 68%, rgba(255, 255, 255, 0.35), transparent),
        radial-gradient(1px 1px at 86% 76%, rgba(255, 255, 255, 0.45), transparent),
        radial-gradient(1.5px 1.5px at 56% 38%, rgba(160, 180, 255, 0.5), transparent),
        radial-gradient(1px 1px at 24% 88%, rgba(255, 255, 255, 0.3), transparent);
    opacity: 0.7;
}

html body .legal-page {
    position: relative;
    z-index: 1;
    border: 1px solid rgba(130, 150, 255, 0.16) !important;
    background: linear-gradient(180deg, rgba(18, 20, 36, 0.98) 0%, rgba(13, 14, 26, 0.99) 100%) !important;
    box-shadow:
        0 30px 80px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(255, 255, 255, 0.02),
        0 0 60px rgba(47, 107, 255, 0.08) !important;
}
html body .legal-page h1 {
    background: linear-gradient(135deg, #ffffff 0%, #d4daff 60%, #9aa6ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
    border-bottom: 0 !important;
    position: relative;
}
html body .legal-page h1::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(88, 101, 242, 0.7), rgba(88, 101, 242, 0.1) 70%, transparent);
}

/* Schnellnavigation (Impressum · AGB · Datenschutz …) wie die Filter-Pills der Website */
html body .legal-quicklinks a {
    border-radius: 999px !important;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}
html body .legal-quicklinks a:hover {
    transform: translateY(-1px);
}
html body .legal-quicklinks a[aria-current='page'],
html body .legal-quicklinks a.active {
    background: linear-gradient(135deg, #5865f2, #2f6bff) !important;
    border-color: transparent !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(64, 96, 255, 0.35);
}

@media (prefers-reduced-motion: reduce) {
    html body .legal-quicklinks a:hover { transform: none; }
}

/* Handy: Schnelllinks kompakter, damit der Text schneller beginnt */
@media (max-width: 560px) {
    html body .legal-quicklinks {
        gap: 0.4rem !important;
    }
    html body .legal-quicklinks a {
        padding: 0.4rem 0.75rem !important;
        font-size: 0.8rem !important;
    }
}
@media (max-width: 560px) {
    html body .legal-page {
        margin-left: 10px !important;
        margin-right: 10px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
}

/* Mehrzeilige Zwischenüberschriften kompakter */
html body .legal-page h2, html body .legal-page h3, html body .legal-page h4 { line-height: 1.3; }
