Writing & reading polish: remove 280-char limit, serif reader font, progress bar

- ComposeBox: remove hard 280-char post limit (Nostr has none); show counter
  only after 3000 chars with yellow/red warnings at 3500/4000
- Article reader: switch from monospace to serif font (Georgia stack) at 17px
  for comfortable long-form reading; article preview gets serif at 15px
- ArticleView: add 2px accent-colored reading progress bar (sticky top,
  scroll-driven, smooth transition)
- Connection indicator: data-aware checking (wraps fetchEvents), 30s recent-
  fetch grace period, 25s offline grace (5 checks) before marking disconnected
This commit is contained in:
Jure
2026-03-20 10:50:33 +01:00
parent 7ed478eb0e
commit d62cf73510
4 changed files with 63 additions and 14 deletions

View File

@@ -16,6 +16,7 @@
--color-warning: #f59e0b;
--color-success: #22c55e;
--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", monospace;
--font-reading: Georgia, "Times New Roman", "Noto Serif", serif;
}
* {
@@ -50,6 +51,8 @@ body {
.article-preview {
-webkit-user-select: text;
user-select: text;
font-family: var(--font-reading);
font-size: 15px;
}
.article-preview h1 { font-size: 1.6em; font-weight: bold; margin: 1.2em 0 0.5em; }
.article-preview h2 { font-size: 1.3em; font-weight: bold; margin: 1.2em 0 0.5em; }
@@ -68,7 +71,7 @@ body {
.article-preview img { max-width: 100%; border-radius: 2px; margin: 0.5em 0; }
/* Article reader — slightly larger type than the editor preview */
.prose-article { -webkit-user-select: text; user-select: text; color: var(--color-text); font-size: 15px; line-height: 1.8; }
.prose-article { -webkit-user-select: text; user-select: text; color: var(--color-text); font-family: var(--font-reading); font-size: 17px; line-height: 1.8; }
.prose-article h1 { font-size: 1.7em; font-weight: bold; margin: 1.4em 0 0.5em; }
.prose-article h2 { font-size: 1.35em; font-weight: bold; margin: 1.4em 0 0.5em; border-bottom: 1px solid var(--color-border); padding-bottom: 0.3em; }
.prose-article h3 { font-size: 1.15em; font-weight: bold; margin: 1.2em 0 0.4em; }