/* ============================== Variables ============================== */ :root { --color-background: #f8f9fa; --color-surface: #ffffff; --color-text-primary: #1a1a1a; --color-text-secondary: #555555; --color-accent: #006d77; --color-highlight: #ffb703; --font-base: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --font-size-base: 1rem; --spacing-xs: 0.25rem; --spacing-sm: 0.5rem; --spacing-md: 1rem; --spacing-lg: 1.5rem; --spacing-xl: 2rem; --radius-sm: 4px; --radius-md: 8px; --transition-fast: 150ms ease-in-out; --max-width-content: 1200px; } /* ============================== Base Reset ============================== */ html, body { margin: 0; padding: 0; height: 100%; font-family: var(--font-base); font-size: var(--font-size-base); background-color: var(--color-background); color: var(--color-text-primary); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } *, *::before, *::after { box-sizing: border-box; } a { color: var(--color-accent); text-decoration: none; transition: color var(--transition-fast); } a:hover, a:focus { color: var(--color-highlight); } /* ============================== App Structure ============================== */ .app-header { background-color: var(--color-surface); padding: var(--spacing-md); border-bottom: 1px solid #ddd; } .app-main { max-width: var(--max-width-content); margin: 0 auto; padding: var(--spacing-md); } .app-footer { text-align: center; padding: var(--spacing-sm); font-size: 0.85rem; color: var(--color-text-secondary); border-top: 1px solid #ddd; background-color: var(--color-surface); } .app-footer::after { content: "© 2026 Donau2Space.de"; display: block; margin-top: var(--spacing-xs); } @media (min-width: 640px) { .app-header, .app-footer { padding: var(--spacing-lg); } .app-main { padding: var(--spacing-lg); } }