2b02168747
- Add MedievalSharp + Crimson Pro fonts (woff2) - Implement OKLCH color theme: forest green primary, gold accent, warm stone neutrals, parchment/vellum surfaces, brick red danger - Add dark/light mode with system preference detection and user toggle (ThemeToggle component cycling system/light/dark) - Prevent FOUC with inline script in app.html - Replace native <select> with custom accessible dropdown (combobox/ listbox pattern, keyboard nav, type-ahead, app-themed styling) - Add IP geolocation fallback via geojs.io when native geolocation fails, with visual location badge showing resolved city name - Shared form control styles via @layer base - WCAG/a11y: skip-to-content link, aria-invalid, aria-describedby, aria-live, focus-visible, role="search", color-scheme:dark - Update all 23 component/page files with new color system and dark: variants