Summary
Redesign `Bibliotek.jsx` with a Condensed hero, custom pill tab strip replacing Carbon Tabs, a live search field, a horizontally scrollable "Snarvei" shortcut carousel, and styled exercise list rows with left accent strips and muscle chip caps.
Part of #96. Depends on phase 2 (PageShell exports: AccentChip, PageHeading Cond update).
Priority
Medium
UI spec (Carbon g100)
- Hero: "Dine byggklosser." (inherits Plex Cond from Phase 2 PageHeading update)
- Pill tab strip: custom two-button pill container replacing Carbon `Tabs`; active → `background: var(--accent)`; `onKeyDown` ArrowLeft/ArrowRight for keyboard nav; preserves `initialTab` prop
- Search: ``, `borderRadius: 8px`, `Search` icon, live filter
- "Snarvei" carousel: horizontally scrollable, bleeds to screen edges (`margin: 0 -16px`, `padding: 0 16px`), `scrollbarWidth: none`
- Exercise rows: 3px left strip, 10px AccentChip muscle caps, mono reps right-aligned
- Template cards: `borderRadius: var(--r-card)`, `border: 1px solid var(--border-subtle-wl)`
Acceptance criteria
Out of scope
- Usage analytics for shortcut carousel ordering
Summary
Redesign `Bibliotek.jsx` with a Condensed hero, custom pill tab strip replacing Carbon Tabs, a live search field, a horizontally scrollable "Snarvei" shortcut carousel, and styled exercise list rows with left accent strips and muscle chip caps.
Part of #96. Depends on phase 2 (PageShell exports: AccentChip, PageHeading Cond update).
Priority
Medium
UI spec (Carbon g100)
Acceptance criteria
Out of scope