From f204f41b6892e894a13b0627a32d0aa724469e77 Mon Sep 17 00:00:00 2001 From: Brian Fertig Date: Tue, 29 Sep 2026 07:47:11 -0600 Subject: [PATCH] Style group session dialog with the group's accent color - Replace generic card/gray styling with the group's own tint, derived via color-mix so the dialog reads as a "window" version of the card - Add 3px colored border, tinted header/footer panels, and softened border rules on todo rows to tie the whole dialog to one hue - Give the Save button a solid accent background with theme-appropriate text color (white on light, dark on neon) for clear affordance --- components/board/group-session-dialog.tsx | 57 +++++++++++++++++++---- 1 file changed, 49 insertions(+), 8 deletions(-) diff --git a/components/board/group-session-dialog.tsx b/components/board/group-session-dialog.tsx index 1e53f5c..38bb7ae 100644 --- a/components/board/group-session-dialog.tsx +++ b/components/board/group-session-dialog.tsx @@ -102,6 +102,14 @@ export function GroupSessionDialog({ const color = useGroupColor(group.color); const accentColor = isDark ? color.dark : color.light; const todoTextColor = getBrighterColor(accentColor, isDark ? "dark" : "light"); + // The group's card treatment, scaled to a window: the same hand-picked + // tint fill the card uses (blended into the theme's card surface), plus a + // softer version of the group's stroke for the header/footer rules so + // they read as the same hue without competing with the 3px border. + const dialogBackground = `color-mix(in srgb, ${isDark ? color.softDark : color.soft} 85%, var(--card))`; + const panelBackground = `color-mix(in srgb, ${isDark ? color.softDark : color.soft} 100%, var(--card))`; + const ruleColor = `color-mix(in srgb, ${accentColor} 40%, transparent)`; + const subtleRuleColor = `color-mix(in srgb, ${accentColor} 25%, transparent)`; const [noteDraft, setNoteDraft] = useState(group.noteContent); const [todoDrafts, setTodoDrafts] = useState(() => toDrafts(group.todos)); @@ -215,10 +223,16 @@ export function GroupSessionDialog({ -
- {group.title} +
+ + {group.title} +
{savingAll || noteAutosave.isSaving ? "Saving…" : "Saved"} @@ -273,7 +287,10 @@ export function GroupSessionDialog({
{completedTodoDrafts.length > 0 && ( -
+
-
+
-
@@ -482,7 +514,13 @@ function SessionTodoRow({ ); return ( -
+
{draft.isNew ? ( @@ -545,7 +583,10 @@ function SessionTodoRow({ preview="edit" /> ) : draft.details ? ( -
+
) : null}