Commit Graph

40 Commits

Author SHA1 Message Date
m038 326f28e4ac feat(story): sticky nav title + floating back-to-top pill
Nav title: absolutely centered in the site-header, fades in via
IntersectionObserver when .story-hero__content scrolls above the fold.
Hidden on mobile (< 640px) where there is no room.

Back-to-top: fixed bottom-right pill, appears after 80% of the hero
viewport is scrolled past, smooth-scrolls to top on click.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Vgmzx8VTTTmCskSpQtsLTr
2026-06-20 11:15:06 +02:00
m038 6e5caf33ad fix(story): soft pill for scrolly caption — rounded edges with faded halo
border-radius: 9999px for a true pill shape.
box-shadow matching the background alpha creates the feathered edge fade
all the way around without any extra elements.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Vgmzx8VTTTmCskSpQtsLTr
2026-06-20 11:09:37 +02:00
m038 49c4ab0341 fix(story): smooth hero overlay fade-out and add scrolly caption background
Overlay previously hard-hid with display:none when scrollY = 100vh, while
the title was still visible (it exits at ~115vh). Now fades in 0→0.65 over
the first 70vh then fades back out to 0 by 140vh (full hero height).

Scrolly caption changed from full-width to centered pill with
rgba(0,0,0,0.45) background — readable against any image regardless of tone.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Vgmzx8VTTTmCskSpQtsLTr
2026-06-20 10:32:22 +02:00
m038 c123a035ce feat: expand trip inline stats to 6 stats + add cycling panel with GPX parsing
- Expanded stats block from 4 to 6 stats (days, entries, countries, cities, distance, temp range)
- Added date_end-aware days calculation (uses header.date_end when available)
- Added cities dedup logic (seen_city_lower) matching Task 1 pattern
- Added temperature range computation (temp_min / temp_max)
- Added has_gpx boolean flag
- Distance label is conditional: km cycled (GPX) vs km roamed (no GPX)
- Stats note text is conditional to match distance mode
- Cycling button added to filter bar (only rendered when has_gpx)
- Cycling panel (7 stat blocks) added after stats block (hidden by default, toggled independently)
- Replaced old haversine IIFE with unified haversineKm + parseGpxFiles + IIFE
- GPX Mode A: fetches GPX files, sums trackpoint distances, populates cycling panel
- GPX Mode B: haversine between entry GPS points (no GPX)
- Updated .trip-stats-grid from repeat(4) to repeat(3) columns
- Added .trip-cycling-block, .trip-cycling-header, .trip-cycling-icon, .trip-cycling-title, .trip-cycling-grid CSS

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WPJztrVGbwic2xTG7G9fjM
2026-06-19 23:01:42 +02:00
m038 dfd1c38396 feat: add stories listing page and all story/shortcode CSS 2026-06-19 22:59:17 +02:00
m038 3b5dc18ec6 feat: expand stats page to 6 stats — cities, temp range, distance mode detection 2026-06-19 22:50:12 +02:00
m038 456fc94c8e fix: bump MapLibre CSS specificity to 020 — CDN loads after style.css so same-specificity rules lost 2026-06-19 22:11:21 +02:00
m038 044e74f5d3 feat: hover-only title tooltip on map markers; click navigates to entry 2026-06-19 22:05:52 +02:00
m038 0d1688c6c4 Revert "revert: remove out-of-scope stats block (belongs in separate task)"
This reverts commit a9043f711e.
2026-06-19 21:40:09 +02:00
m038 a9043f711e revert: remove out-of-scope stats block (belongs in separate task) 2026-06-19 21:39:42 +02:00
m038 93005bd7cd fix: replace raw rgba with color-mix token in MapLibre attribution style 2026-06-19 21:39:21 +02:00
m038 fe0aa669bc style: swap Leaflet CSS override for MapLibre design-token styles 2026-06-19 21:36:35 +02:00
m038 897da36a21 feat: add inline stats block with toggle to trip page
Adds Twig computation for days on road, countries visited, and GPS
points; an expandable stats panel (hidden by default) with haversine
distance calculation; and toggle JS that activates the Stats button.
2026-06-19 21:35:54 +02:00
m038 0478a18fa8 feat: add filter bar markup and pill button styles to trip page
Replace the old trip-nav links with a new filter bar component featuring:
- Three pill buttons for filtering (All content, Journal, Stories)
- "All content" button active by default with teal accent styling
- Separate Stats button with matching pill styling
- CSS for buttons with hover and active states
- Responsive flexbox layout that wraps on narrow screens

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RB86BaJBG3eGiMdfhmHRrQ
2026-06-19 21:29:33 +02:00
m038 2508936928 feat: add data-type attributes to feed cards; restyle story card with full border 2026-06-19 21:26:50 +02:00
m038 2eef8fbf9a fix: Leaflet void background corrected to actual CartoDB ocean color (#282828)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RB86BaJBG3eGiMdfhmHRrQ
2026-06-19 20:54:22 +02:00
m038 11224289de fix: Leaflet void background matches CartoDB ocean color (#0d0d17)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RB86BaJBG3eGiMdfhmHRrQ
2026-06-19 20:50:58 +02:00
m038 49d10f4816 fix: home map visible on mobile, invalidateSize on both maps
- Explicit height: 40vh on .home-map (not just 100% of parent) so Leaflet
  can measure the container reliably before CSS inheritance is resolved
- align-self: stretch on .home-map-col so it spans full width in flex column
- setTimeout invalidateSize(100ms) on home and dailies maps as safety net

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RB86BaJBG3eGiMdfhmHRrQ
2026-06-19 17:29:52 +02:00
m038 a9eda558c0 fix: nav slash, back button context, home page max-width
- Past Trips nav link: add missing / (base_url_absolute has no trailing slash)
- Entry back link: history.back() with journal fallback, label → "← Back"
- Home page: max-width 1400px instead of none — narrows layout on wide screens

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RB86BaJBG3eGiMdfhmHRrQ
2026-06-19 17:01:45 +02:00
m038 5c98bf239a fix: add missing .trip-feed and .trip-sidebar-section CSS classes 2026-06-19 15:37:58 +02:00
m038 86b2778a47 feat: CSS for home layout, story cards, trip sidebar, escape link 2026-06-19 15:36:38 +02:00
m038 5c02432ce0 fix: use !important to override Leaflet default grey background 2026-06-19 13:22:53 +02:00
m038 d3ef42f04f fix: set leaflet-container background to match dark tile color, prevent grey flash 2026-06-19 13:21:50 +02:00
m038 3d5e29e26c feat: add paper grain texture, fix hardcoded colors, improve typography 2026-06-19 13:11:36 +02:00
m038 ba3a2ea9e7 feat: switch to warm-dark color tokens 2026-06-19 13:11:32 +02:00
m038 4558f94c3f fix: button color, replace native validation with custom inline errors 2026-06-18 20:10:05 +02:00
m038 682ba00bea fix: make Post Daily button full-width and mobile-friendly 2026-06-18 20:02:20 +02:00
m038 1addbc294f feat: add reduced-motion support and :focus-visible ring 2026-06-18 14:24:37 +02:00
m038 5a3f2bc0c5 feat: apply design tokens to stats, map, mini-map; teal markers 2026-06-18 14:24:16 +02:00
m038 c60f6726df feat: redesign post form — hide GPS fields via :has(), teal CTA, status feedback 2026-06-18 14:23:08 +02:00
m038 c5d9c92968 feat: redesign single entry page — hero image, display typography, rule separator 2026-06-18 14:22:05 +02:00
m038 521c678f1c feat: redesign entry feed cards with full-bleed photo + gradient overlay 2026-06-18 14:21:00 +02:00
m038 c33dc2ca56 feat: redesign site header — accent bar, DM Serif title, sticky, active nav 2026-06-18 14:19:58 +02:00
m038 49f60a873a feat: update global styles and login form to use design tokens 2026-06-18 14:19:23 +02:00
m038 573ac00a8d feat: add design tokens and DM font loading 2026-06-18 14:18:42 +02:00
m038 d3fcde9b0b Phase 4 M1: Entry enrichment — location, weather, gallery, hero image 2026-06-18 01:10:41 +02:00
m038 fd6afe00e0 Post form: limit photos to 4, add GPS fields with geolocation button 2026-06-18 00:48:03 +02:00
m038 7faf758a2e Mobile-friendly login form styles 2026-06-18 00:42:02 +02:00
m038 74805083e0 Fix theme: CSS specificity, hero_image URL, form include safety 2026-06-17 23:51:52 +02:00
m038 9f4aea9671 Add intotheeast theme: blueprints, 4 templates, CSS 2026-06-17 23:49:07 +02:00