feat(lyrics): active-line color picker, uppercase toggle, bigger L/XL

Add two persisted prefs to the lyrics sidebar display controls:

- activeColor: hex color override for the karaoke/active-line accent.
  Empty string means follow the theme's --accent-primary. Rendered via
  a new --lyrics-active-color CSS custom property set inline on the
  LyricsLines container; all four references to --accent-primary in
  the active-line gradient and glow shadows now fall back through it.
  Popover row shows a native color input plus a 'Theme' clear button
  that appears only when a custom color is set.

- uppercase: render all lines as uppercase in the sidebar. Applied via
  text-transform on .lyrics-lines.compact.uppercase. Switch toggle in
  the popover.

Bump L and XL sidebar sizes by the requested amount:
- L: 17/20 -> 18/21
- XL: 20/24 -> 22/26
(small and medium are unchanged.)

Both new prefs persist per-user in the same localStorage payload via
the existing sanitize/reload flow, and the hex validator rejects
malformed values on read.

cc
This commit is contained in:
vicrodh committed 2026-04-18 12:41:34 -06:00
1 parent 7480df9ede
commit 6b91bd3872
10 files changed
+192 -13

No files matched your search

+3
View File
@@ -628,6 +628,9 @@
"soft": "Leicht",
"strong": "Stark"
},
"activeColor": "Aktive Farbe",
"useThemeColor": "Design",
"uppercase": "Großbuchstaben",
"reset": "Zurücksetzen"
},
"noLyrics": "Keine Songtexte verfügbar",