feat: UI refactor - unified navigation, design tokens, dashboard integration

- Add centralized design tokens in static/css/core/variables.css
- Create reusable base templates (base.html, base_dashboard.html)
- Add unified navigation partial (partials/nav.html) with all modules
- Create reusable UI components (card, loading, empty_state, status_badge, stats_strip)
- Integrate navigation into ADSB, AIS, and Satellite dashboards
- Consolidate CSS by importing shared variables in dashboard stylesheets
- Add comprehensive UI_GUIDE.md documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Smittix
2026-01-30 09:27:39 +00:00
parent 3a6bd3711e
commit a58e2f0d21
21 changed files with 3294 additions and 123 deletions
+15 -16
View File
@@ -1,3 +1,9 @@
/**
* Satellite Dashboard Styles
* Imports design tokens for consistency, with dashboard-specific overrides
*/
@import url('./core/variables.css');
* {
margin: 0;
padding: 0;
@@ -5,20 +11,11 @@
}
:root {
--bg-dark: #0a0c10;
--bg-panel: #0f1218;
--bg-card: #151a23;
--border-color: #1f2937;
--border-glow: #4a9eff;
--text-primary: #e8eaed;
--text-secondary: #9ca3af;
--text-dim: #4b5563;
--accent-cyan: #4a9eff;
--accent-green: #22c55e;
--accent-orange: #f59e0b;
--accent-red: #ef4444;
--accent-purple: #a855f7;
--accent-amber: #d4a853;
/* Dashboard-specific aliases (for backward compatibility) */
--bg-dark: var(--bg-primary);
--bg-panel: var(--bg-secondary);
--bg-card: var(--bg-tertiary);
/* Use tokens for shared values, keep custom values for dashboard-specific */
--grid-line: rgba(74, 158, 255, 0.08);
}
@@ -211,6 +208,7 @@ body {
}
/* Main dashboard grid */
/* Header ~60px + Controls bar ~55px = ~115px */
.dashboard {
position: relative;
z-index: 10;
@@ -218,7 +216,8 @@ body {
grid-template-columns: 1fr 1fr 340px;
grid-template-rows: 1fr auto;
gap: 0;
height: calc(100vh - 60px);
height: calc(100dvh - 115px);
height: calc(100vh - 115px); /* Fallback */
min-height: 500px;
}
@@ -696,7 +695,7 @@ body {
display: flex;
flex-direction: column;
height: auto;
min-height: calc(100vh - 60px);
min-height: calc(100dvh - 115px);
}
.polar-container,