feat(fuselage): Restyle the sidebar collapse group header

Merged
DO
18d ago
+86-31

Proposed changes (including videos or screenshots)

Brings over the collapse group header visuals from #2229, without its spacing changes.

  • Chevron after the title: SidebarGroupTitle wraps the title and chevron in a new __heading element, so a collapsed group's badge sits at the far end of the bar.
  • Title: c1 (regular) in font(secondary-info).
  • empty prop: SidebarCollapseGroup accepts empty. A collapsed empty group renders in font(disabled).
  • Unread: a collapsed group with a badge uses $sidebar-item-color-highlighted and bumps its title to c2 (bold).
  • Menu reveal: the hidden menu wrapper takes margin-inline-end: -4, so the bar keeps the same width before and after the menu appears.
  • Hover: the bar hover goes from surface(tint) to $sidebar-color-surface-hover, the same themeable token the rows use.
  • Semantics: SidebarCollapseGroup renders <div role='group' aria-labelledby> instead of <section>.

The shared &-collapse-group, &-accordion-item block held the __bar[tabindex] and __bar--disabled rules, but only the accordion item uses them. They now live on the accordion bar, along with its font(default) color. The accordion item looks the same as before.

Not included from #2229: new bar margins, radius, padding and min-height, the inset box-shadow focus ring, and the accordion bar rework.

Issue(s)

Subset of #2229.

Further comments

The visual regression snapshots for navigation-sidebar--* have not been regenerated.

SCC-55

šŸ¤– Generated with Claude Code