/** One look for sidebar conversation rows: the main conversation entry and the bot roster. */ export function rosterRowClass(selected: boolean): string { return `flex w-full items-center gap-3 rounded-2xl border px-3 py-3 mb-[2px] text-start transition-all duration-150 cursor-pointer min-h-[52px] ${ selected ? "border-sidebar-border bg-sidebar-accent shadow-[inset_0_1px_0_rgba(255,255,255,0.14),0_4px_16px_rgba(0,0,0,0.4)]" : "border-transparent hover:bg-sidebar-accent/50" }`; } export function rosterNameClass(unread: boolean): string { return unread ? "font-bold text-sidebar-foreground" : "font-semibold text-sidebar-foreground"; } export const rosterTimeClass = "text-ui-body-sm rk-sidebar-muted tabular-nums font-medium"; export const rosterUnreadDotClass = "inline-block h-2 w-2 rounded-full bg-sidebar-foreground"; export function rosterPreviewClass(unread: boolean): string { return unread ? "font-medium text-sidebar-foreground" : "text-sidebar-foreground/85"; }