diff --git a/heatmap_visualization/css/base.css b/heatmap_visualization/css/base.css new file mode 100644 index 0000000..e0b711b --- /dev/null +++ b/heatmap_visualization/css/base.css @@ -0,0 +1,124 @@ +/* =============================== + Global Base + =============================== */ +html, body { + margin: 0; + padding: 0; + width: 100%; + height: 100%; + box-sizing: border-box; + font-family: var(--font-base); + background-color: var(--color-bg); + color: var(--color-text); +} + +*, *::before, *::after { + box-sizing: inherit; +} + +body { + display: flex; + flex-direction: column; + min-height: 100vh; +} + +/* =============================== + Variables + =============================== */ +:root { + --color-bg: #f6f7fb; + --color-surface: #ffffff; + --color-text: #1b1b1b; + --color-accent: #0055cc; + --color-border: #d0d7de; + --color-legend-low: #e0efff; + --color-legend-high: #002b80; + + --font-base: system-ui, sans-serif; + --font-size-base: 1rem; + --line-height-base: 1.5; + + --spacing-xs: 0.25rem; + --spacing-sm: 0.5rem; + --spacing-md: 1rem; + --spacing-lg: 2rem; + + --radius-sm: 4px; + --radius-md: 8px; + --shadow-sm: 0 1px 2px rgba(0,0,0,0.1); + + --transition-fast: 0.2s ease; + --transition-normal: 0.3s ease; + + --breakpoint-sm: 640px; + --breakpoint-md: 1024px; +} + +/* =============================== + Layout Containers + =============================== */ +.app-header { + background-color: var(--color-surface); + border-bottom: 1px solid var(--color-border); + padding: var(--spacing-md); + display: flex; + align-items: center; + justify-content: space-between; +} + +.app-controls { + background-color: var(--color-surface); + padding: var(--spacing-md); + border-bottom: 1px solid var(--color-border); + display: flex; + flex-wrap: wrap; + gap: var(--spacing-sm); +} + +.heatmap-area { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + background-color: var(--color-bg); + padding: var(--spacing-md); + overflow: auto; +} + +.heatmap-legend { + background-color: var(--color-surface); + border-top: 1px solid var(--color-border); + padding: var(--spacing-md); + display: flex; + align-items: center; + justify-content: center; +} + +.app-footer { + background-color: var(--color-surface); + border-top: 1px solid var(--color-border); + padding: var(--spacing-sm) var(--spacing-md); + text-align: center; + font-size: 0.875rem; + color: var(--color-text); +} + +@media (min-width: 640px) { + .app-controls { + justify-content: flex-start; + } +} + +@media (min-width: 1024px) { + .heatmap-area { + padding: var(--spacing-lg); + } +} + +.app-footer::after { + content: "© 2026 Donau2Space.de"; + display: block; + margin-top: var(--spacing-xs); + font-size: 0.75rem; + color: var(--color-text); +} \ No newline at end of file