Konsistentes Spacing-System: Mathematische Skala basierend auf --space-unit (0.25rem) Logische Abstufungen von xxs bis xxxl Responsive Anpassungen über Container-Padding und Section-Spacing Erweiterte Typografie-Kontrolle: Skalierbare Schriftgrößen basierend auf --font-size-base Definierte Schriftgewichte und Zeilenhöhen Responsive Anpassungen der Basis-Schriftgröße Verbesserte Responsive-Struktur: Breakpoint-Referenzen in Variablen Automatische Anpassungen durch CSS-Variablen Safe-Area-Insets für moderne Geräte Layout-System: Definierte Content-Breiten Z-Index-Skala Einheitliche Border-Radius-Werte Performance-Optimierungen: Hardware-beschleunigte Transitionen Optimierte Animation-Timings Konsistente Transition-Eigenschaften Die Migration wurde schrittweise durchgeführt: variables.css: Neue Basis-Variablen definiert base.css: Grundlegende Typografie und Layout angepasst header.css & header-line.css: Navigation und Header-Elemente optimiert components.css: Alle Komponenten auf neue Variablen umgestellt responsive.css: Breakpoint-spezifische Anpassungen implementiert animations.css: Animationen vereinheitlicht footer.css: Footer-Styles optimiert Das neue System bietet: Bessere Wartbarkeit durch zentrale Steuerung Konsistente Skalierung über alle Breakpoints Flexibilität für zukünftige Anpassungen Volle Kompatibilität mit dem Theme-System
106 lines
2.2 KiB
CSS
106 lines
2.2 KiB
CSS
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
html {
|
|
height: 100%;
|
|
font-size: var(--font-size-base);
|
|
transition: var(--theme-transition);
|
|
}
|
|
|
|
body {
|
|
font-family: 'Montserrat', 'Open Sans', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
|
|
background: var(--bg-main);
|
|
color: var(--text);
|
|
line-height: var(--line-height-base);
|
|
min-height: 100vh;
|
|
transition: var(--theme-transition);
|
|
will-change: background-color, color;
|
|
}
|
|
|
|
h1, h2, h3 {
|
|
scroll-margin-top: var(--header-height);
|
|
}
|
|
|
|
h1 {
|
|
font-size: var(--font-size-xxl);
|
|
margin-bottom: var(--space-lg);
|
|
color: var(--text);
|
|
opacity: 0.85;
|
|
font-weight: var(--font-weight-semibold);
|
|
transition: var(--theme-transition);
|
|
}
|
|
|
|
h2 {
|
|
font-size: var(--font-size-xl);
|
|
margin-bottom: var(--space-lg);
|
|
color: var(--text);
|
|
font-weight: var(--font-weight-medium);
|
|
transition: var(--theme-transition);
|
|
}
|
|
|
|
h3 {
|
|
font-size: var(--font-size-lg);
|
|
color: var(--text);
|
|
margin-bottom: var(--space-md);
|
|
font-weight: var(--font-weight-medium);
|
|
transition: var(--theme-transition);
|
|
}
|
|
|
|
h1.h1-hero {
|
|
font-size: var(--font-size-xxxl);
|
|
margin: var(--space-xl);
|
|
padding: var(--space-xl);
|
|
color: var(--text);
|
|
opacity: 0.85;
|
|
font-weight: var(--font-weight-light);
|
|
text-align: center;
|
|
}
|
|
|
|
p {
|
|
margin-bottom: var(--space-md);
|
|
font-size: var(--font-size-md);
|
|
transition: var(--theme-transition);
|
|
}
|
|
|
|
a {
|
|
color: var(--primary);
|
|
text-decoration: none;
|
|
transition: var(--theme-transition), opacity var(--transition-speed) var(--transition-timing);
|
|
}
|
|
|
|
a:hover {
|
|
opacity: 0.8;
|
|
}
|
|
|
|
main {
|
|
padding-top: var(--header-height);
|
|
}
|
|
|
|
.container {
|
|
max-width: var(--content-width-xl);
|
|
margin: 0 auto;
|
|
padding: 0 var(--container-padding);
|
|
}
|
|
|
|
section {
|
|
padding: var(--section-spacing) 0;
|
|
}
|
|
|
|
/* Utility classes */
|
|
.text-center {
|
|
text-align: center;
|
|
}
|
|
|
|
.mb-1 { margin-bottom: var(--space-xs); }
|
|
.mb-2 { margin-bottom: var(--space-md); }
|
|
.mb-3 { margin-bottom: var(--space-lg); }
|
|
.mb-4 { margin-bottom: var(--space-xl); }
|
|
|
|
.mt-1 { margin-top: var(--space-xs); }
|
|
.mt-2 { margin-top: var(--space-md); }
|
|
.mt-3 { margin-top: var(--space-lg); }
|
|
.mt-4 { margin-top: var(--space-xl); }
|