summaryrefslogtreecommitdiffhomepage
path: root/packages/ui/src/components/tool-error-card.css
diff options
context:
space:
mode:
authorDavid Hill <[email protected]>2026-03-10 18:52:32 +0000
committerGitHub <[email protected]>2026-03-10 13:52:32 -0500
commitf77e5cf8fb9d9babcfc1b3ba046c0ba571489647 (patch)
treed4424aac3e3bb6438e2af61050daefbdc2e7702b /packages/ui/src/components/tool-error-card.css
parente6cdc21f2ddd7264a75eb389693d4d62367ae38c (diff)
downloadopencode-f77e5cf8fb9d9babcfc1b3ba046c0ba571489647.tar.gz
opencode-f77e5cf8fb9d9babcfc1b3ba046c0ba571489647.zip
feat(ui): restyle Card and improve tool error cards (#16888)
Co-authored-by: Adam <[email protected]>
Diffstat (limited to 'packages/ui/src/components/tool-error-card.css')
-rw-r--r--packages/ui/src/components/tool-error-card.css54
1 files changed, 54 insertions, 0 deletions
diff --git a/packages/ui/src/components/tool-error-card.css b/packages/ui/src/components/tool-error-card.css
new file mode 100644
index 000000000..e93484f23
--- /dev/null
+++ b/packages/ui/src/components/tool-error-card.css
@@ -0,0 +1,54 @@
+[data-component="card"][data-kind="tool-error-card"] {
+ --card-pad-y: 8px;
+ --card-line-pad: 12px;
+
+ > [data-component="collapsible"].tool-collapsible {
+ gap: 0px;
+ }
+
+ > [data-component="collapsible"].tool-collapsible[data-open="true"] {
+ gap: 4px;
+ }
+
+ [data-component="tool-error-card-icon"] [data-component="icon"] {
+ color: var(--card-accent);
+ }
+
+ [data-slot="tool-error-card-content"] {
+ position: relative;
+ padding-left: 24px;
+ margin-bottom: 8px;
+ -webkit-user-select: text;
+ user-select: text;
+ }
+
+ > [data-component="collapsible"].tool-collapsible[data-open="true"] [data-slot="tool-error-card-content"] {
+ padding-right: 40px;
+ }
+
+ [data-slot="tool-error-card-copy"] {
+ position: absolute;
+ top: 0;
+ right: 0;
+ opacity: 0;
+ pointer-events: none;
+ transition: opacity 0.15s ease;
+ will-change: opacity;
+ }
+
+ &:hover [data-slot="tool-error-card-copy"],
+ &:focus-within [data-slot="tool-error-card-copy"] {
+ opacity: 1;
+ pointer-events: auto;
+ }
+
+ [data-slot="tool-error-card-content"] :where(*)::selection {
+ background: var(--surface-critical-base);
+ color: var(--text-on-critical-base);
+ }
+
+ [data-slot="tool-error-card-content"] :where(*)::-moz-selection {
+ background: var(--surface-critical-base);
+ color: var(--text-on-critical-base);
+ }
+}