From f9b8499bf6472189750b738fe1db0c43e670df10 Mon Sep 17 00:00:00 2001 From: bottenbenny Date: Fri, 27 Mar 2026 15:12:19 +0100 Subject: [PATCH] fix(chat): send button should use system theme variables (#55075) Merged via squash. Prepared head SHA: eb3e197874b1c9ff82f176bb8436855405625e6b Co-authored-by: bottenbenny <270688955+bottenbenny@users.noreply.github.com> Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com> Reviewed-by: @velvet-shark --- CHANGELOG.md | 1 + ui/src/styles/chat/layout.css | 11 ++++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a344f963ba5..55f203c069c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -48,6 +48,7 @@ Docs: https://docs.openclaw.ai - Claude CLI: switch the bundled Claude CLI backend to `stream-json` output so watchdogs see progress on long runs, and keep session/usage metadata even when Claude finishes with an empty result line. (#49698) Thanks @felear2022. - Claude CLI/MCP: always pass a strict generated `--mcp-config` overlay for background Claude CLI runs, including the empty-server case, so Claude does not inherit ambient user/global MCP servers. (#54961) Thanks @markojak. - Agents/embedded replies: surface mid-turn 429 and overload failures when embedded runs end without a user-visible reply, while preserving successful media-only replies that still use legacy `mediaUrl`. (#50930) Thanks @infichen. +- Chat/UI: move the chat send button onto the shared ghost-button theme styling, while keeping the stop button icon readable on the danger state. (#55075) Thanks @bottenbenny. - WhatsApp/allowFrom: show a specific allowFrom policy error for valid blocked targets instead of the misleading `` format hint. Thanks @mcaxtr. - Agents/cooldowns: scope rate-limit cooldowns per model so one 429 no longer blocks every model on the same auth profile, replace the exponential 1 min -> 1 h escalation with a stepped 30 s / 1 min / 5 min ladder, and surface a user-facing countdown message when all models are rate-limited. (#49834) Thanks @kiranvk-2011. - Agents/embedded transport errors: distinguish common network failures like connection refused, DNS lookup failure, and interrupted sockets from true timeouts in embedded-run user messaging and lifecycle diagnostics. (#51419) Thanks @scoootscooob. diff --git a/ui/src/styles/chat/layout.css b/ui/src/styles/chat/layout.css index 26b833b77f5..99bf65644bb 100644 --- a/ui/src/styles/chat/layout.css +++ b/ui/src/styles/chat/layout.css @@ -497,13 +497,13 @@ height: 30px; border-radius: var(--radius-md); border: none; - background: var(--muted-strong); - color: var(--text-strong); + background: transparent; + color: var(--muted); cursor: pointer; flex-shrink: 0; transition: background var(--duration-fast) ease, - box-shadow var(--duration-fast) ease; + color var(--duration-fast) ease; padding: 0; } @@ -518,8 +518,8 @@ } .chat-send-btn:hover:not(:disabled) { - background: var(--muted); - box-shadow: none; + color: var(--text); + background: var(--bg-hover); } .chat-send-btn:disabled { @@ -529,6 +529,7 @@ .chat-send-btn--stop { background: var(--danger); + color: var(--destructive-foreground); } .chat-send-btn--stop:hover:not(:disabled) {