/* Base CSS - Regel 034: VERPFLICHTEND: Dark Mode Überschreibung für Entwickler-Testing */
/* Diese Regel ist eine Ausnahme zu Regel 033 und erlaubt explizit CSS-Definitionen für html und body */
/* VERPFLICHTEND: Horizontal Overflow verhindern (Regel 011-ui-css-mobile.mdc Regel 002, 003, 005) */
html {
    background-color: var(--color-background);
    color-scheme: light;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    min-height: 0 !important;
    max-height: none !important;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*, *::before, *::after {
    box-sizing: border-box;
}

/* Mobile: Lange Wörter/URLs umbrechen lassen */
body {
    margin: 0;
    background-color: var(--color-background);
    color: var(--color-text);
    color-scheme: light;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0;
    font-family: var(--font-family-primary);
    font-size: var(--font-size-base);
    line-height: 1.5;
    overflow-wrap: break-word;
    word-break: break-word;
}

/* Apple.com-Niveau: Verlinkungen wie apple.com */
.base-link-standard {
    font-family: var(--font-family-primary);
    font-size: inherit;
    line-height: var(--line-height-base);
    color: var(--color-link);
    text-decoration: none;
    transition: var(--transition-fast);
    font-weight: 400;
}

.link-standard:hover {
    text-decoration: underline;
    text-underline-offset: var(--link-underline-offset);
    color: var(--color-link-hover);
}

/* Apple.com-Niveau: Sekundäre Links (z.B. "Bereits registriert?") - Hochwertig */
.base-link-secondary,
.base-link-text {
    font-family: var(--font-family-primary);
    font-size: inherit;
    line-height: var(--line-height-base);
    color: var(--color-link);
    text-decoration: none;
    transition: var(--transition-fast);
    font-weight: 400;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.base-link-secondary:hover,
.base-link-text:hover {
    text-decoration: underline;
    text-underline-offset: var(--link-underline-offset);
    color: var(--color-link-hover);
    /* translateX nur wenn genug Platz vorhanden (verhindert Overflow) */
    transform: translateX(2px);
    max-width: calc(100% - 2px);
}

/* Apple.com-Niveau: Links in Formularen - Automatisch hochwertig */
form a,
.base-form-group a,
.contact-form-field a {
    font-family: var(--font-family-primary);
    font-size: inherit;
    line-height: var(--line-height-base);
    color: var(--color-link);
    text-decoration: none;
    transition: var(--transition-fast);
    font-weight: 400;
}

form a:hover,
.base-form-group a:hover,
.contact-form-field a:hover {
    text-decoration: underline;
    text-underline-offset: var(--link-underline-offset);
    color: var(--color-link-hover);
}
