Skip to content

fix(snd): mobile UX — how-it-works close button + notFound alignment#27

Merged
jaschadub merged 2 commits into
masterfrom
fix/snd-howitworks-mobile-close
May 25, 2026
Merged

fix(snd): mobile UX — how-it-works close button + notFound alignment#27
jaschadub merged 2 commits into
masterfrom
fix/snd-howitworks-mobile-close

Conversation

@jaschadub
Copy link
Copy Markdown
Member

@jaschadub jaschadub commented May 25, 2026

Summary

Two related mobile-UX fixes for screens that landed in the same release window:

1. How-it-works modal close button

The X was absolutely positioned with negative top / right offsets and a muted color — on small viewports it could end up outside the visible modal-card or get visually lost. Moved into a flex header row alongside the title as a proper 44×44 SVG button with --snd-text contrast and a 1px border that highlights on hover / :focus-visible.

2. notFound / 404 page alignment

.snd-complete had gap: 20px without display: flex, so children fell back to default block alignment and inherited a mix of text-center / no-align rules. Visible on mobile as misalignment between the hero (left), tag (left), title (centered), caption (left, wrapping awkwardly across "from server"), and button (left).

  • Make .snd-complete a centered flex column with text-align: center, zero-out child margins, add small-viewport overrides.
  • Drop redundant text-center / paragraph-wrapped-button markup in notFound.js.
  • Replace the hand-typed > share no longer... caption with a translated string and remove the leading > glyph that forced a bad wrap on narrow screens.
  • Broaden the copy (expiredTitle / new expiredTag, expiredCaption) so the same page reads honestly for both expired share links and literal mistyped URLs.

Test plan

  • Open the How it works modal on desktop → X sits to the right of the title.
  • Open on a mobile-width viewport (≤480px) → X is clearly visible and easy to tap.
  • Visit /404 on mobile → hero, tag, title, caption, body, and button are all centered on the same axis.
  • Visit an expired share link → same page renders with the broadened copy.

jaschadub added 2 commits May 24, 2026 21:56
The X was absolutely-positioned with negative top/right offsets and
muted color, which on small viewports could land outside the visible
modal-card or get visually lost. Move it into a flex header row next
to the title as a proper 44x44 SVG button with text-color contrast
and a visible 1px border on hover/focus.
.snd-complete was using gap: 20px without display: flex, so children
fell back to default block alignment and inherited a mix of
text-center / no-align rules, which on mobile produced the visible
misalignment between the hero (left), tag (left), title (centered),
caption (left and wrapping awkwardly across "from server"), and
button (left).

- Make .snd-complete a centered flex column with text-align: center,
  zero-out child margins so the gap is consistent, and add
  small-viewport overrides (gap, padding, heading size).
- Drop the redundant text-center / paragraph-wrapped-button markup
  in notFound.js.
- Replace the hand-typed "> share no longer..." caption with a
  translated string and remove the leading > glyph that was forcing
  a bad wrap on narrow screens.
- Broaden the copy (expiredTitle/expiredTag/expiredCaption) so the
  same page reads honestly both for expired share links and for
  literal mistyped URLs (the SPA's catch-all route).
@jaschadub jaschadub changed the title fix(snd): how-it-works modal close button visible on mobile fix(snd): mobile UX — how-it-works close button + notFound alignment May 25, 2026
@jaschadub jaschadub merged commit f919c7f into master May 25, 2026
2 checks passed
@jaschadub jaschadub deleted the fix/snd-howitworks-mobile-close branch May 25, 2026 22:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant