diff --git a/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.module.css b/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.module.css index 92e3407025..9787d1c458 100644 --- a/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.module.css +++ b/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.module.css @@ -110,7 +110,9 @@ } .actionLabel { - flex: 0 0 auto; + min-inline-size: 0; + overflow: hidden; + flex: 0 1 auto; color: var(--openbitfun-color-content-primary); font-weight: var(--_tool-card-title-font-weight); white-space: nowrap; @@ -481,7 +483,8 @@ } .ambientAction { - flex: 0 0 auto; + overflow: hidden; + flex: 0 1 auto; color: inherit; font-weight: var(--_tool-card-title-font-weight); white-space: nowrap; @@ -489,7 +492,7 @@ .ambientContent { overflow: hidden; - flex: 1 1 auto; + flex: 1 1 0; color: inherit; font-weight: var(--_tool-card-content-font-weight); white-space: nowrap; @@ -513,9 +516,21 @@ } .ambientExpandedShell .ambientSurface { + /* Once enclosed, use the same header geometry as prominent cards. + Collapsed traces retain their compact, flush transcript alignment. */ + min-block-size: var(--openbitfun-control-height-sm); + gap: var(--openbitfun-space-2); + padding-block: var(--openbitfun-space-1); + padding-inline: var(--openbitfun-space-3) var(--openbitfun-space-1); + line-height: var(--openbitfun-type-heading-page-line-height); color: var(--openbitfun-color-content-primary); } + .ambientExpandedShell .ambientSurface .iconSlot { + --_tool-card-action-size: var(--openbitfun-space-6); + --_flow-chat-tool-card-icon-size: var(--openbitfun-font-size-xl); + } + .ambientRoot[data-openbitfun-state~="loading"] .ambientAction, .ambientRoot[data-openbitfun-state~="loading"] .ambientContent, .prominentRoot[data-openbitfun-state~="loading"] .actionLabel, diff --git a/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.tsx b/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.tsx index 0db70d155d..4e3fbce22e 100644 --- a/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.tsx +++ b/design-system/packages/ui/src/flow-chat/tool-cards/FlowChatToolCard.tsx @@ -699,7 +699,9 @@ export function ProminentToolCardSummary({ data-openbitfun-part="action" data-testid={actionTestId} > - {action} + {typeof action === "string" || typeof action === "number" + ? {action} + : action} )} {content !== undefined && content !== null && content !== false && ( @@ -821,7 +823,9 @@ export function AmbientToolCardHeader({ data-openbitfun-component="flow-chat-tool-card" data-openbitfun-part="action" > - {action} + {typeof action === "string" || typeof action === "number" + ? {action} + : action} )} {content !== undefined && content !== null && content !== false && ( diff --git a/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.module.css b/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.module.css index 663d561a85..d6832f96c8 100644 --- a/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.module.css +++ b/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.module.css @@ -155,7 +155,7 @@ .imageButton { display: inline-flex; inline-size: 10rem; - max-inline-size: calc(100vi - 4.75rem); + max-inline-size: 100%; aspect-ratio: 1; align-items: center; justify-content: center; diff --git a/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.tsx b/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.tsx index 46adf81397..36a228fd45 100644 --- a/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.tsx +++ b/design-system/packages/ui/src/flow-chat/tool-cards/StandardAmbientToolCards.tsx @@ -336,7 +336,7 @@ export function ViewImageToolCard({ ) : undefined} header={(