diff --git a/CLAUDE.md b/CLAUDE.md index 96a3e3f..6a7d8df 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -11,15 +11,19 @@ lost-satellite.html - Lost Satellite Studios breakdown (1 project + screensh css/ shared.css - All shared styles (variables, nav, layout, components) project.css - Project page-specific styles (hero, sections, gallery) + cards.css - Card and hand container styles (base card 220x320, theme overrides) js/ shared.js - Scroll reveal + theme switcher with localStorage persistence destruction.js - Text destruction system (plane mode shatter + sequential reform) card-hand.js - Card hand system (fan layout, drag, proximity detection, play zone) page-transition.js - Card play animation + SPA page transitions (fly clones, page fade-in) -css/ - cards.css - Card and hand container styles (base card 220×320, theme overrides) ``` +## Detailed Documentation +- **CSS** (themes, line ranges, selectors): See [css/CLAUDE.md](css/CLAUDE.md) +- **JS** (functions, constants, APIs): See [js/CLAUDE.md](js/CLAUDE.md) +- **Tests** (scenarios, thresholds, setup): See [tests/CLAUDE.md](tests/CLAUDE.md) + ## Key Details - **Fonts**: Google Fonts `` tags in every page's `` load all theme fonts: - Bold: Archivo Black, Archivo, IBM Plex Mono @@ -28,48 +32,24 @@ css/ - Retro: Shrikhand, Bitter, IBM Plex Mono - Neon: Sora, Space Mono - Font CSS variables (`--font-serif`, `--font-body`, `--font-mono`) are redefined per theme in `shared.css` -- **Theme system**: Five themes cycle via button: `bold → cinematic → brutalist → retro → neon → bold` +- **Theme system**: Five themes cycle via button: `bold -> cinematic -> brutalist -> retro -> neon -> bold` - `data-theme` attribute on `` controls the active theme (`bold` default) - Each theme defines its own CSS variable block in `shared.css` (`:root` for bold, `[data-theme="cinematic"]`, etc.) - Theme-specific overrides (hardcoded colours, border-radius, font weights, etc.) go in `[data-theme=""]` selector blocks after the variable blocks - `js/shared.js` has `const themes = ['bold', 'cinematic', 'brutalist', 'retro', 'neon']` — the switcher button cycles through and persists to `localStorage` - **Persistence**: inline `