# PROJECT: Aether App — Comprehensive Style Review **Status:** Phase 1 & 2 Complete — Phase 3 Deferred (post-April 2026 conference) **Priority:** Medium **Created:** 2026-03-13 **Updated:** 2026-03-16 **Related:** `src/app.css`, `src/routes/+layout.svelte`, `documentation/AE__UI_Component_Patterns.md` --- ## 1. Objective Audit and unify the visual design system across all Aether modules. The goal is consistent: - Color token usage (Skeleton `preset-*` / `surface-*` / semantic tokens) - Button and interactive element styling - Dark mode handling - Typography hierarchy - Layout patterns (cards, lists, tables, modals, banners) - Icon system (Lucide only) This review covers all modules and their distinct use cases. Changes must be sequenced to avoid breaking live-production systems (Events Launcher, IDAA). ### Scope of Modules | Module | Routes | Primary Users | Notes | |---|---|---|---| | Core / App Shell | `+layout.svelte`, `e_app_sys_bar.svelte` | All users | Foundation — impacts everything | | Core Admin | `/core/` | OSIT staff / managers | Manager-only section | | Journals | `/journals/` | Authenticated users | Canonical/frontier model | | Events — General | `/events/`, `/events/[id]/` | Event staff, attendees | Hub page | | Events — Pres Mgmt | `/events/[id]/(pres_mgmt)/` | Event coordinators | Operations tool | | Events — Launcher | `/events/[id]/(launcher)/` | AV/tech staff (Electron kiosk) | ⚠️ Live production — April 2026 conference | | Events — Badges | `/events/[id]/(badges)/` | Registration desk staff | On-site kiosk use | | Events — Leads | `/events/[id]/(leads)/` | Exhibitor booth staff | On-site kiosk use | | IDAA | `/idaa/` | IDAA members (iframe) | ⚠️ Privacy-critical, iframe context | --- ## 2. Current State: Dual-Generation Problem The codebase has two parallel style generations that co-exist: | Era | Pattern | Where Used | |---|---|---| | **Modern** | `preset-tonal-*`, `preset-filled-*`, Lucide icons, Svelte 5 runes | `sys_bar`, Journals, IDAA dashboard | | **Legacy** | `variant-soft-*`, `variant-filled-*`, FontAwesome `fas fa-*` icons | Events routes (most), some Core | The Journals module is the canonical reference for modern patterns — when in doubt, match it. --- ## 3. Color Token Architecture Three overlapping systems are in use. The goal is to consolidate to two: ### ✅ System 1: Skeleton Semantic Tokens (keep, expand usage) Used for colored/semantic elements. ``` primary, secondary, tertiary, success, warning, error, surface ``` Usage: `preset-tonal-primary`, `bg-primary-500/10`, `text-error-500`, `border-warning-500` ### ✅ System 2: Plain Tailwind Grayscale (keep for neutrals) Used for neutral backgrounds, borders, and text. Predictable across all Skeleton themes. ``` gray-50/100/200/300/400/500/600/700/800/900 ``` Usage: `bg-gray-50 dark:bg-gray-900`, `border-gray-200 dark:border-gray-700` ### ❌ System 3: Hardcoded RGB/HSL (eliminate) ``` bg-orange-600/90 — root layout banner hsla(0, 100%, 50%, .5) — journal entry eye icon rgb(243 244 246) — form dark mode hacks in