This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch fix/CAMEL-23934
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7013e5309b3895f9e2d3cd1533c537ceed3ab681
Author: Claus Ibsen <[email protected]>
AuthorDate: Wed Jul 8 13:07:15 2026 +0200

    CAMEL-23934: Replace remaining hardcoded colors with Theme semantic tokens
    
    Replace Color.CYAN, Color.RED, Color.MAGENTA, Color.LIGHT_MAGENTA,
    Color.GRAY, and Color.BLUE with Theme.accent(), Theme.error(),
    Theme.notice(), Theme.muted(), and other semantic tokens. Consolidate
    MetricsTab metric type palette to use existing Theme tokens. Update
    SearchHighlighter to use Theme.searchMatch(). Clean up unused Color
    imports across 47 files.
    
    Co-Authored-By: Claude Opus 4.6 <[email protected]>
    Signed-off-by: Claus Ibsen <[email protected]>
---
 .../dsl/jbang/core/commands/tui/AiLogPopup.java    |  7 +++---
 .../camel/dsl/jbang/core/commands/tui/AiPanel.java |  9 ++++----
 .../dsl/jbang/core/commands/tui/BeansTab.java      |  5 ++---
 .../dsl/jbang/core/commands/tui/BrowseTab.java     |  7 +++---
 .../jbang/core/commands/tui/CamelCatalogTui.java   | 20 ++++++++---------
 .../dsl/jbang/core/commands/tui/CamelMonitor.java  |  2 +-
 .../jbang/core/commands/tui/CircuitBreakerTab.java |  3 +--
 .../jbang/core/commands/tui/ConfigurationTab.java  |  3 +--
 .../dsl/jbang/core/commands/tui/ConsumersTab.java  |  3 +--
 .../dsl/jbang/core/commands/tui/CveAuditTab.java   |  3 +--
 .../dsl/jbang/core/commands/tui/DataSourceTab.java |  5 ++---
 .../dsl/jbang/core/commands/tui/DiagramTab.java    |  4 ++--
 .../dsl/jbang/core/commands/tui/EndpointsTab.java  | 21 +++++++++---------
 .../dsl/jbang/core/commands/tui/ErrorsTab.java     | 11 +++++-----
 .../dsl/jbang/core/commands/tui/FilesBrowser.java  |  3 +--
 .../dsl/jbang/core/commands/tui/FolderBrowser.java |  3 +--
 .../dsl/jbang/core/commands/tui/HealthTab.java     |  3 +--
 .../jbang/core/commands/tui/HeapHistogramTab.java  |  5 ++---
 .../dsl/jbang/core/commands/tui/HistoryTab.java    | 15 ++++++-------
 .../camel/dsl/jbang/core/commands/tui/HttpTab.java | 14 ++++++------
 .../dsl/jbang/core/commands/tui/InflightTab.java   |  3 +--
 .../camel/dsl/jbang/core/commands/tui/LogTab.java  | 11 +++++-----
 .../dsl/jbang/core/commands/tui/McpLogPopup.java   |  3 +--
 .../dsl/jbang/core/commands/tui/MemoryLeakTab.java | 25 +++++++++++-----------
 .../dsl/jbang/core/commands/tui/MemoryTab.java     |  7 +++---
 .../dsl/jbang/core/commands/tui/MetricsTab.java    | 21 +++++++++---------
 .../dsl/jbang/core/commands/tui/OverviewTab.java   | 10 ++++-----
 .../dsl/jbang/core/commands/tui/PopupManager.java  |  3 +--
 .../dsl/jbang/core/commands/tui/ProcessTab.java    |  3 +--
 .../jbang/core/commands/tui/RouteTreePreview.java  |  3 +--
 .../dsl/jbang/core/commands/tui/RoutesTab.java     | 16 +++++++-------
 .../jbang/core/commands/tui/SearchHighlighter.java |  3 +--
 .../dsl/jbang/core/commands/tui/SpansTab.java      | 11 +++++-----
 .../dsl/jbang/core/commands/tui/SqlQueryTab.java   | 12 +++++------
 .../dsl/jbang/core/commands/tui/SqlTraceTab.java   |  9 ++++----
 .../dsl/jbang/core/commands/tui/ThreadsTab.java    |  5 ++---
 .../commands/tui/diagram/RouteDiagramWidget.java   |  2 +-
 .../commands/tui/CircuitBreakerTabRenderTest.java  |  2 +-
 .../commands/tui/ConfigurationTabRenderTest.java   |  2 +-
 .../core/commands/tui/ConsumersTabRenderTest.java  |  2 +-
 .../core/commands/tui/DataSourceTabRenderTest.java |  2 +-
 .../core/commands/tui/EndpointsTabRenderTest.java  |  4 ++--
 .../core/commands/tui/ErrorsTabRenderTest.java     |  2 +-
 .../core/commands/tui/HistoryTabRenderTest.java    |  2 +-
 .../core/commands/tui/InflightTabRenderTest.java   |  2 +-
 .../core/commands/tui/MetricsTabRenderTest.java    |  3 +--
 .../core/commands/tui/RoutesTabRenderTest.java     |  2 +-
 47 files changed, 143 insertions(+), 173 deletions(-)

diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiLogPopup.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiLogPopup.java
index f7f37200c20d..f2fb1e532ca9 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiLogPopup.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiLogPopup.java
@@ -21,7 +21,6 @@ import java.util.List;
 import java.util.function.Supplier;
 
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -132,10 +131,10 @@ class AiLogPopup {
         List<ListItem> items = new ArrayList<>();
         for (AiPanel.LogEntry entry : entries) {
             Style levelStyle = switch (entry.level()) {
-                case QUESTION -> Style.EMPTY.fg(Color.CYAN);
+                case QUESTION -> Style.EMPTY.fg(Theme.accent());
                 case TOOL -> Theme.warning();
                 case RESULT -> Theme.success();
-                case RESPONSE -> Style.EMPTY.fg(Color.MAGENTA);
+                case RESPONSE -> Theme.notice();
                 case ERROR -> Theme.error();
             };
             String levelTag = switch (entry.level()) {
@@ -181,7 +180,7 @@ class AiLogPopup {
                 addJsonLines(lines, detail);
             } else {
                 lines.add(Line.from(Span.styled(TuiIcons.ARROW_RIGHT + " 
Content",
-                        Style.EMPTY.fg(Color.CYAN).bold())));
+                        Style.EMPTY.fg(Theme.accent()).bold())));
                 for (String line : detail.split("\n", -1)) {
                     lines.add(Line.from(Span.styled("  " + line, 
Style.EMPTY.dim())));
                 }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiPanel.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiPanel.java
index 447032b5701e..132451ad25b2 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiPanel.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/AiPanel.java
@@ -29,7 +29,6 @@ import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
 import dev.tamboui.markdown.MarkdownView;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -606,7 +605,7 @@ class AiPanel {
         String text = inputBuffer.toString();
 
         List<Span> spans = new ArrayList<>();
-        spans.add(Span.styled(prompt, Style.EMPTY.fg(Color.CYAN).bold()));
+        spans.add(Span.styled(prompt, Style.EMPTY.fg(Theme.accent()).bold()));
 
         if (thinking.get()) {
             spans.add(Span.styled(text, Style.EMPTY.dim()));
@@ -734,7 +733,7 @@ class AiPanel {
         // --- Summary ---
         Rect summaryArea = sections.get(0);
         Style dimStyle = Style.EMPTY.dim();
-        Style cyanStyle = Style.EMPTY.fg(Color.CYAN);
+        Style cyanStyle = Style.EMPTY.fg(Theme.accent());
         List<Line> summaryLines = new ArrayList<>();
         summaryLines.add(Line.from(
                 Span.styled("Requests: ", dimStyle),
@@ -808,7 +807,7 @@ class AiPanel {
                         Bar.builder()
                                 .value(turnTokens.get(i))
                                 .textValue("")
-                                .style(Style.EMPTY.fg(Color.CYAN))
+                                .style(Style.EMPTY.fg(Theme.accent()))
                                 .build()));
             }
 
@@ -831,7 +830,7 @@ class AiPanel {
         List<Line> lines = new ArrayList<>();
         for (int i = 0; i < area.height(); i++) {
             if (i >= thumbPos && i < thumbPos + thumbSize) {
-                lines.add(Line.from(Span.styled("▐", 
Style.EMPTY.fg(Color.CYAN))));
+                lines.add(Line.from(Span.styled("▐", 
Style.EMPTY.fg(Theme.accent()))));
             } else {
                 lines.add(Line.from(Span.styled("│", Style.EMPTY.dim())));
             }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BeansTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BeansTab.java
index cfc2d36801d4..c50bdf569248 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BeansTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BeansTab.java
@@ -25,7 +25,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -201,7 +200,7 @@ class BeansTab extends AbstractTableTab {
             String shortType = dot >= 0 ? type.substring(dot + 1) : type;
 
             rows.add(Row.from(
-                    Cell.from(Span.styled(b.name != null ? b.name : "", 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(b.name != null ? b.name : "", 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(shortType, Style.EMPTY))));
         }
 
@@ -277,7 +276,7 @@ class BeansTab extends AbstractTableTab {
                 String value = prop.value != null ? prop.value : "null";
 
                 lines.add(Line.from(
-                        Span.styled("  " + String.format("%-" + nameWidth + 
"s", prop.name), Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled("  " + String.format("%-" + nameWidth + 
"s", prop.name), Style.EMPTY.fg(Theme.accent())),
                         Span.styled(String.format("%-15s", shortPropType), 
Style.EMPTY.dim()),
                         Span.styled(" = ", Style.EMPTY.dim()),
                         Span.styled(value, "null".equals(value) ? 
Style.EMPTY.dim() : Style.EMPTY.fg(Theme.baseFg()))));
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BrowseTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BrowseTab.java
index 013a931f2cf1..e6f43061767d 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BrowseTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/BrowseTab.java
@@ -31,7 +31,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -289,7 +288,7 @@ class BrowseTab extends AbstractTab {
             String first = ep.firstTimestamp > 0 ? 
formatTimestamp(ep.firstTimestamp) : "";
             String last = ep.lastTimestamp > 0 ? 
formatTimestamp(ep.lastTimestamp) : "";
             rows.add(Row.from(
-                    Cell.from(Span.styled(ep.uri != null ? ep.uri : "", 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(ep.uri != null ? ep.uri : "", 
Style.EMPTY.fg(Theme.accent()))),
                     rightCell(String.valueOf(ep.queueSize), 8),
                     Cell.from(first),
                     Cell.from(last)));
@@ -344,7 +343,7 @@ class BrowseTab extends AbstractTab {
             String ts = msg.timestamp > 0 ? formatTimestamp(msg.timestamp) : 
"";
             rows.add(Row.from(
                     rightCell(String.valueOf(msg.position), 5),
-                    Cell.from(Span.styled(msg.exchangeId != null ? 
msg.exchangeId : "", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(msg.exchangeId != null ? 
msg.exchangeId : "", Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(ts),
                     Cell.from(Span.styled(bodyPreview, Style.EMPTY.dim()))));
         }
@@ -421,7 +420,7 @@ class BrowseTab extends AbstractTab {
             lines.add(Line.from(Span.styled("  Headers:", 
Theme.label().bold())));
             for (Map.Entry<String, String> entry : msg.headers.entrySet()) {
                 lines.add(Line.from(
-                        Span.styled("    " + entry.getKey(), 
Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled("    " + entry.getKey(), 
Style.EMPTY.fg(Theme.accent())),
                         Span.styled(" = ", Style.EMPTY.dim()),
                         Span.styled(entry.getValue(), 
Style.EMPTY.fg(Theme.baseFg()))));
             }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelCatalogTui.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelCatalogTui.java
index 7c2df76c4516..c90e8e7e46ab 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelCatalogTui.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelCatalogTui.java
@@ -414,7 +414,7 @@ public class CamelCatalogTui extends CamelCommand {
                 Span.styled(" Camel Catalog", Style.EMPTY.fg(Color.rgb(0xF6, 
0x91, 0x23)).bold()),
                 Span.raw("  "),
                 Span.styled(filteredComponents.size() + "/" + 
allComponents.size() + " components",
-                        Style.EMPTY.fg(Color.CYAN)));
+                        Style.EMPTY.fg(Theme.accent())));
 
         Block headerBlock = Block.builder()
                 .borderType(BorderType.ROUNDED).borders(Borders.ALL)
@@ -440,8 +440,8 @@ public class CamelCatalogTui extends CamelCommand {
         List<Row> rows = new ArrayList<>();
         for (ComponentInfo comp : filteredComponents) {
             Style nameStyle = comp.deprecated
-                    ? Style.EMPTY.fg(Color.RED).dim()
-                    : Style.EMPTY.fg(Color.CYAN);
+                    ? Theme.error().dim()
+                    : Style.EMPTY.fg(Theme.accent());
             String label = comp.name;
             if (comp.deprecated) {
                 label = label + " (deprecated)";
@@ -626,14 +626,14 @@ public class CamelCatalogTui extends CamelCommand {
 
     private Row optionToRow(OptionInfo opt) {
         Style nameStyle = opt.required
-                ? Style.EMPTY.fg(Color.CYAN).bold()
-                : Style.EMPTY.fg(Color.CYAN);
+                ? Style.EMPTY.fg(Theme.accent()).bold()
+                : Style.EMPTY.fg(Theme.accent());
 
         return Row.from(
                 Cell.from(Span.styled(opt.name, nameStyle)),
                 Cell.from(Span.styled(opt.type, Style.EMPTY.dim())),
                 Cell.from(opt.required
-                        ? Span.styled("*", Style.EMPTY.fg(Color.RED).bold())
+                        ? Span.styled("*", Theme.error().bold())
                         : Span.raw("")),
                 Cell.from(Span.styled(opt.defaultValue, Style.EMPTY.dim())),
                 Cell.from(Span.styled(opt.kind != null ? opt.kind : "", 
Style.EMPTY.dim())));
@@ -690,13 +690,13 @@ public class CamelCatalogTui extends CamelCommand {
             // Apply special styling for certain values
             Style valueStyle;
             if ("DEPRECATED".equals(value)) {
-                valueStyle = Style.EMPTY.fg(Color.RED).bold();
+                valueStyle = Theme.error().bold();
             } else if (opt != null && "Required".equals(field[0]) && 
opt.required) {
-                valueStyle = Style.EMPTY.fg(Color.RED).bold();
+                valueStyle = Theme.error().bold();
             } else if (opt != null && "Name".equals(field[0])) {
-                valueStyle = Style.EMPTY.fg(Color.CYAN).bold();
+                valueStyle = Style.EMPTY.fg(Theme.accent()).bold();
             } else if ("Label".equals(field[0]) || "Values".equals(field[0])) {
-                valueStyle = Style.EMPTY.fg(Color.CYAN);
+                valueStyle = Style.EMPTY.fg(Theme.accent());
             } else {
                 valueStyle = Style.EMPTY;
             }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelMonitor.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelMonitor.java
index 97091088e072..3567c9bb5cd0 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelMonitor.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CamelMonitor.java
@@ -1394,7 +1394,7 @@ public class CamelMonitor extends CamelCommand {
 
     private void computeTabBadges(String[] badgeTexts, Style[] badgeStyles) {
         Style yellow = Theme.label();
-        Style cyan = Style.EMPTY.fg(Color.CYAN).bold();
+        Style cyan = Style.EMPTY.fg(Theme.accent()).bold();
         Style red = Theme.error().bold();
         for (int j = 0; j < badgeStyles.length; j++) {
             badgeTexts[j] = "";
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTab.java
index 8abe6e2a7c0a..7206216cea0b 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTab.java
@@ -24,7 +24,6 @@ import java.util.Map;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -93,7 +92,7 @@ class CircuitBreakerTab extends AbstractTableTab {
             String sinceLast = formatSinceLast(cb.sinceLastStarted, 
cb.sinceLastSuccess, cb.sinceLastFail);
 
             rows.add(Row.from(
-                    Cell.from(Span.styled(cb.routeId != null ? cb.routeId : 
"", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(cb.routeId != null ? cb.routeId : 
"", Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(cb.id != null ? cb.id : ""),
                     Cell.from(cb.component != null ? cb.component : ""),
                     Cell.from(Span.styled(state, stateStyle)),
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTab.java
index f7deef4be673..25d85eebbbfd 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTab.java
@@ -24,7 +24,6 @@ import java.util.Map;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -156,7 +155,7 @@ class ConfigurationTab extends AbstractTableTab {
             }
 
             rows.add(Row.from(
-                    Cell.from(Span.styled(p.key, Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(p.key, 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(value, valStyle)),
                     Cell.from(Span.styled(source, Style.EMPTY.dim()))));
         }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTab.java
index 236d4442b4c9..c6e326a69a70 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTab.java
@@ -23,7 +23,6 @@ import java.util.List;
 
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Span;
@@ -100,7 +99,7 @@ class ConsumersTab extends AbstractTableTab {
                     : (ci.uri != null ? ci.uri : "");
 
             rows.add(Row.from(
-                    Cell.from(Span.styled(" " + (ci.id != null ? ci.id : ""), 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(" " + (ci.id != null ? ci.id : ""), 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(statusText, statusStyle)),
                     Cell.from(type),
                     rightCell(String.valueOf(ci.inflight), 8),
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CveAuditTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CveAuditTab.java
index 9d321f4d632f..5da22a93da9c 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CveAuditTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/CveAuditTab.java
@@ -29,7 +29,6 @@ import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
 import dev.tamboui.markdown.MarkdownView;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -220,7 +219,7 @@ class CveAuditTab extends AbstractTableTab {
             rows.add(Row.from(
                     Cell.from(Span.styled(group.severity != null ? 
group.severity : "", severityStyle(group.severity))),
                     Cell.from(Span.styled(group.canonicalId != null ? 
group.canonicalId : "", Style.EMPTY.bold())),
-                    Cell.from(Span.styled(artDisplay, 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(artDisplay, 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(group.summary != null ? 
group.summary : "", Style.EMPTY.dim()))));
         }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTab.java
index c654b25087d1..fc5df616c742 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTab.java
@@ -21,7 +21,6 @@ import java.util.List;
 
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Span;
@@ -86,7 +85,7 @@ class DataSourceTab extends AbstractTableTab {
 
             Style activeStyle = exhausted
                     ? Theme.error()
-                    : Style.EMPTY.fg(Color.CYAN);
+                    : Style.EMPTY.fg(Theme.accent());
             Style waitingStyle = waiters
                     ? Theme.warning()
                     : Style.EMPTY;
@@ -94,7 +93,7 @@ class DataSourceTab extends AbstractTableTab {
             String poolLabel = di.poolName != null ? di.poolName : 
(di.poolType != null ? di.poolType : "");
 
             rows.add(Row.from(
-                    Cell.from(Span.styled(" " + (di.name != null ? di.name : 
""), Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(" " + (di.name != null ? di.name : 
""), Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(poolLabel),
                     rightCell(String.valueOf(di.active), 8, activeStyle),
                     rightCell(String.valueOf(di.idle), 8),
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DiagramTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DiagramTab.java
index 66a13602d3a4..347b4be52769 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DiagramTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/DiagramTab.java
@@ -502,7 +502,7 @@ class DiagramTab extends AbstractTab {
                 boolean isBridge = "external".equals(topoNode.nodeType);
                 String label = isBridge ? " External" : isInbound ? " Inbound" 
: " Outbound";
                 lines.add(Line.from(
-                        Span.styled(label, 
Style.EMPTY.fg(Color.CYAN).bold())));
+                        Span.styled(label, 
Style.EMPTY.fg(Theme.accent()).bold())));
                 lines.add(Line.from(Span.raw("")));
                 lines.add(Line.from(
                         Span.styled(" URI: ", Style.EMPTY.dim()),
@@ -535,7 +535,7 @@ class DiagramTab extends AbstractTab {
                 }
             } else {
                 lines.add(Line.from(
-                        Span.styled(" " + routeId, 
Style.EMPTY.fg(Color.CYAN).bold())));
+                        Span.styled(" " + routeId, 
Style.EMPTY.fg(Theme.accent()).bold())));
                 lines.add(Line.from(
                         Span.styled(" (external endpoint)", 
Style.EMPTY.dim())));
             }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTab.java
index 647d144bd2fe..63f8125da84c 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTab.java
@@ -29,7 +29,6 @@ import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
 import dev.tamboui.markdown.MarkdownView;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.CharWidth;
@@ -219,7 +218,7 @@ class EndpointsTab extends AbstractTableTab {
             String dir = ep.direction != null ? ep.direction : "";
             Style dirStyle = switch (dir) {
                 case "in" -> Theme.success();
-                case "out" -> Style.EMPTY.fg(Color.CYAN);
+                case "out" -> Style.EMPTY.fg(Theme.accent());
                 default -> Theme.label();
             };
             String arrow = switch (dir) {
@@ -229,7 +228,7 @@ class EndpointsTab extends AbstractTableTab {
             };
 
             List<Cell> cells = new ArrayList<>();
-            cells.add(Cell.from(Span.styled(ep.component != null ? 
ep.component : "", Style.EMPTY.fg(Color.CYAN))));
+            cells.add(Cell.from(Span.styled(ep.component != null ? 
ep.component : "", Style.EMPTY.fg(Theme.accent()))));
             cells.add(Cell.from(ep.routeId != null ? ep.routeId : ""));
             cells.add(Cell.from(Span.styled(arrow + dir, dirStyle)));
             cells.add(rightCell(ep.hits > 0 ? String.valueOf(ep.hits) : "", 
8));
@@ -466,7 +465,7 @@ class EndpointsTab extends AbstractTableTab {
         String outLabelStr = " ".repeat(outLabelPad) + "out";
 
         Style inStyle = Theme.success();
-        Style outStyle = Style.EMPTY.fg(Color.CYAN);
+        Style outStyle = Style.EMPTY.fg(Theme.accent());
         Style dimStyle = Style.EMPTY.dim();
 
         List<Line> flowLines = new ArrayList<>();
@@ -524,7 +523,7 @@ class EndpointsTab extends AbstractTableTab {
         Line chartTitle = Line.from(
                 Span.styled("▬", Theme.success()),
                 Span.raw(String.format(" in:%-4s ", 
MetricsCollector.formatThroughput(curIn))),
-                Span.styled("▬", Style.EMPTY.fg(Color.CYAN)),
+                Span.styled("▬", Style.EMPTY.fg(Theme.accent())),
                 Span.raw(String.format(" out:%-4s msg/s", 
MetricsCollector.formatThroughput(curOut))));
 
         Rect rightArea = hParts.get(1);
@@ -532,7 +531,7 @@ class EndpointsTab extends AbstractTableTab {
                 .topData(inArr)
                 .bottomData(outArr)
                 .topStyle(Theme.success())
-                .bottomStyle(Style.EMPTY.fg(Color.CYAN))
+                .bottomStyle(Style.EMPTY.fg(Theme.accent()))
                 .showYAxis(true)
                 .xLabels("-" + renderPoints + "s", "-" + (renderPoints * 3 / 
4) + "s",
                         "-" + (renderPoints / 2) + "s", "-" + (renderPoints / 
4) + "s", "now")
@@ -579,7 +578,7 @@ class EndpointsTab extends AbstractTableTab {
         String outLabelStr = " ".repeat(outLabelPad) + "out";
 
         Style inStyle = Theme.success();
-        Style outStyle = Style.EMPTY.fg(Color.CYAN);
+        Style outStyle = Style.EMPTY.fg(Theme.accent());
         Style dimStyle = Style.EMPTY.dim();
 
         List<Line> flowLines = new ArrayList<>();
@@ -637,14 +636,14 @@ class EndpointsTab extends AbstractTableTab {
                 Span.raw("] "),
                 Span.styled("▬", Theme.success()),
                 Span.raw(String.format(" in:%-4s ", 
MetricsCollector.formatThroughput(curIn))),
-                Span.styled("▬", Style.EMPTY.fg(Color.CYAN)),
+                Span.styled("▬", Style.EMPTY.fg(Theme.accent())),
                 Span.raw(String.format(" out:%-4s msg/s", 
MetricsCollector.formatThroughput(curOut))));
 
         frame.renderWidget(DualSparkline.builder()
                 .topData(inArr)
                 .bottomData(outArr)
                 .topStyle(Theme.success())
-                .bottomStyle(Style.EMPTY.fg(Color.CYAN))
+                .bottomStyle(Style.EMPTY.fg(Theme.accent()))
                 .showYAxis(true)
                 .xLabels("-" + renderPoints + "s", "-" + (renderPoints * 3 / 
4) + "s",
                         "-" + (renderPoints / 2) + "s", "-" + (renderPoints / 
4) + "s", "now")
@@ -676,14 +675,14 @@ class EndpointsTab extends AbstractTableTab {
         Line chartTitle = Line.from(
                 Span.styled("▬", Theme.label()),
                 Span.raw(String.format(" in:%-8s ", sizeToString(curIn))),
-                Span.styled("▬", Style.EMPTY.fg(Color.MAGENTA)),
+                Span.styled("▬", Theme.notice()),
                 Span.raw(String.format(" out:%-8s avg body", 
sizeToString(curOut))));
 
         frame.renderWidget(DualSparkline.builder()
                 .topData(inArr)
                 .bottomData(outArr)
                 .topStyle(Theme.label())
-                .bottomStyle(Style.EMPTY.fg(Color.MAGENTA))
+                .bottomStyle(Theme.notice())
                 .showYAxis(true)
                 .xLabels("-" + renderPoints + "s", "-" + (renderPoints * 3 / 
4) + "s",
                         "-" + (renderPoints / 2) + "s", "-" + (renderPoints / 
4) + "s", "now")
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTab.java
index d49796fcc1fd..9e3a9a50f5d9 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTab.java
@@ -23,7 +23,6 @@ import java.util.Map;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Overflow;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
@@ -341,7 +340,7 @@ class ErrorsTab extends AbstractTableTab {
             rows.add(Row.from(
                     Cell.from(ei.exchangeId != null ? ei.exchangeId : ""),
                     Cell.from(ago),
-                    Cell.from(Span.styled(ei.routeId != null ? ei.routeId : 
"", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(ei.routeId != null ? ei.routeId : 
"", Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(ei.nodeId != null ? ei.nodeId : ""),
                     Cell.from(Span.styled(handledStr, handledStyle)),
                     Cell.from(shortException),
@@ -480,7 +479,7 @@ class ErrorsTab extends AbstractTableTab {
 
         // message history
         if (ei.messageHistory != null && ei.messageHistory.length > 0) {
-            lines.add(Line.from(Span.styled(" Message History:", 
Style.EMPTY.fg(Color.MAGENTA).bold())));
+            lines.add(Line.from(Span.styled(" Message History:", 
Theme.notice().bold())));
             for (String step : ei.messageHistory) {
                 lines.add(Line.from(Span.raw("   " + 
TuiHelper.fixControlChars(step))));
             }
@@ -576,7 +575,7 @@ class ErrorsTab extends AbstractTableTab {
         } else {
             for (var it = stack.descendingIterator(); it.hasNext();) {
                 spans.add(Span.styled(it.next(), nameStyle));
-                spans.add(Span.styled(" → ", Style.EMPTY.fg(Color.GRAY)));
+                spans.add(Span.styled(" → ", Theme.muted()));
             }
             spans.add(Span.styled(diagram.getHistoryDrillDownRouteId(), 
nameStyle));
         }
@@ -610,7 +609,7 @@ class ErrorsTab extends AbstractTableTab {
                 Span.raw(ei.exchangeId != null ? ei.exchangeId : "")));
         lines.add(Line.from(
                 Span.styled(" Route:    ", Theme.label().bold()),
-                Span.styled(ei.routeId != null ? ei.routeId : "", 
Style.EMPTY.fg(Color.CYAN))));
+                Span.styled(ei.routeId != null ? ei.routeId : "", 
Style.EMPTY.fg(Theme.accent()))));
         lines.add(Line.from(
                 Span.styled(" Node:     ", Theme.label().bold()),
                 Span.raw(ei.nodeId != null ? ei.nodeId : "")));
@@ -679,7 +678,7 @@ class ErrorsTab extends AbstractTableTab {
         for (var entry : map.entrySet()) {
             String val = entry.getValue() != null ? 
entry.getValue().toString() : "null";
             lines.add(Line.from(
-                    Span.styled(" " + entry.getKey(), 
Style.EMPTY.fg(Color.CYAN)),
+                    Span.styled(" " + entry.getKey(), 
Style.EMPTY.fg(Theme.accent())),
                     Span.raw(" = " + val)));
         }
     }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FilesBrowser.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FilesBrowser.java
index 3051004367c6..ed840bc15a58 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FilesBrowser.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FilesBrowser.java
@@ -25,7 +25,6 @@ import java.util.Comparator;
 import java.util.List;
 
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.CharWidth;
@@ -263,7 +262,7 @@ class FilesBrowser {
             if (entry.directory()) {
                 String label = String.format("  %s %-" + nameWidth + "s", 
entry.emoji(), entry.name());
                 boolean dimDir = entry.name().startsWith(".") || 
"target".equals(entry.name());
-                Style dirStyle = dimDir ? Style.EMPTY.fg(Color.CYAN).dim() : 
Style.EMPTY.fg(Color.CYAN);
+                Style dirStyle = dimDir ? Style.EMPTY.fg(Theme.accent()).dim() 
: Style.EMPTY.fg(Theme.accent());
                 items[i] = ListItem.from(Line.from(Span.styled(label, 
dirStyle)));
             } else {
                 String sizeStr = formatFileSize(entry.size());
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FolderBrowser.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FolderBrowser.java
index 22d74bbdabb8..cb9980b8cb1a 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FolderBrowser.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/FolderBrowser.java
@@ -28,7 +28,6 @@ import java.util.List;
 import java.util.function.Consumer;
 
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -342,7 +341,7 @@ class FolderBrowser {
         for (int i = 0; i < entries.size(); i++) {
             DirEntry entry = entries.get(i);
             String label = "  " + entry.emoji() + " " + entry.name();
-            Style style = entry.directory() ? Style.EMPTY.fg(Color.CYAN) : 
Style.EMPTY;
+            Style style = entry.directory() ? Style.EMPTY.fg(Theme.accent()) : 
Style.EMPTY;
             items[i] = ListItem.from(Line.from(Span.styled(label, style)));
         }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HealthTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HealthTab.java
index 1fada0b8eba9..4b6a0dcf5b89 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HealthTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HealthTab.java
@@ -21,7 +21,6 @@ import java.util.List;
 
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Span;
@@ -117,7 +116,7 @@ class HealthTab extends AbstractTableTab {
 
             rows.add(Row.from(
                     Cell.from(Span.styled(" " + (hc.group != null ? hc.group : 
""), Style.EMPTY.dim())),
-                    Cell.from(Span.styled(hc.name != null ? hc.name : "", 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(hc.name != null ? hc.name : "", 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(icon + hc.state, stateStyle)),
                     Cell.from(kind),
                     Cell.from(hc.message != null ? hc.message : "")));
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HeapHistogramTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HeapHistogramTab.java
index b514cc96ec8c..1ac486bb0b15 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HeapHistogramTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HeapHistogramTab.java
@@ -25,7 +25,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -132,7 +131,7 @@ class HeapHistogramTab extends AbstractTableTab {
         for (HeapEntry e : visible) {
             rows.add(Row.from(
                     rightCell(String.valueOf(e.num), 6),
-                    Cell.from(Span.styled(e.className != null ? e.className : 
"", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(e.className != null ? e.className : 
"", Style.EMPTY.fg(Theme.accent()))),
                     rightCell(formatNumber(e.instances), 14),
                     rightCell(formatBytes(e.bytes), 14)));
         }
@@ -194,7 +193,7 @@ class HeapHistogramTab extends AbstractTableTab {
         // Class info
         lines.add(Line.from(
                 Span.styled("  Class:      ", Theme.label().bold()),
-                Span.styled(className, Style.EMPTY.fg(Color.CYAN))));
+                Span.styled(className, Style.EMPTY.fg(Theme.accent()))));
         lines.add(Line.from(
                 Span.styled("  Package:    ", Theme.label().bold()),
                 Span.styled(pkg.isEmpty() ? "(none)" : pkg,
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTab.java
index 1e472be41bc4..325777f9513d 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTab.java
@@ -33,7 +33,6 @@ import dev.tamboui.layout.Alignment;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Overflow;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
@@ -819,7 +818,7 @@ class HistoryTab extends AbstractTab {
         } else {
             for (var it = stack.descendingIterator(); it.hasNext();) {
                 spans.add(Span.styled(it.next(), nameStyle));
-                spans.add(Span.styled(" → ", Style.EMPTY.fg(Color.GRAY)));
+                spans.add(Span.styled(" → ", Theme.muted()));
             }
             spans.add(Span.styled(diagram.getHistoryDrillDownRouteId(), 
nameStyle));
         }
@@ -924,7 +923,7 @@ class HistoryTab extends AbstractTab {
                 Span.raw(exchangeId)));
         lines.add(Line.from(
                 Span.styled(" Route:    ", Theme.label().bold()),
-                Span.styled(routeId != null ? routeId : "", 
Style.EMPTY.fg(Color.CYAN))));
+                Span.styled(routeId != null ? routeId : "", 
Style.EMPTY.fg(Theme.accent()))));
         lines.add(Line.from(
                 Span.styled(" Node:     ", Theme.label().bold()),
                 Span.raw(nodeId != null ? nodeId : "")));
@@ -1035,7 +1034,7 @@ class HistoryTab extends AbstractTab {
             boolean keyChanged = sectionChanged && prevMap != null
                     && (!prevMap.containsKey(entry.getKey())
                             || !Objects.equals(prevMap.get(entry.getKey()), 
entry.getValue()));
-            Style keyStyle = keyChanged ? Theme.change() : 
Style.EMPTY.fg(Color.CYAN);
+            Style keyStyle = keyChanged ? Theme.change() : 
Style.EMPTY.fg(Theme.accent());
             Style valStyle = keyChanged ? Theme.change() : Style.EMPTY;
             lines.add(Line.from(
                     Span.styled(" " + entry.getKey(), keyStyle),
@@ -1203,7 +1202,7 @@ class HistoryTab extends AbstractTab {
                     Cell.from(s.timestamp != null ? 
TuiHelper.truncate(s.timestamp, 12) : ""),
                     Cell.from(Span.styled(
                             s.routeId != null ? TuiHelper.truncate(s.routeId, 
25) : "",
-                            Style.EMPTY.fg(Color.CYAN))),
+                            Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(s.status, statusStyle)),
                     rightCell(s.elapsed + "ms", 10),
                     rightCell(String.valueOf(s.steps), 6),
@@ -1496,7 +1495,7 @@ class HistoryTab extends AbstractTab {
         String durationStr = entry.elapsed + "ms";
         int pad = Math.max(1, 8 - durationStr.length());
 
-        Style labelStyle = selected ? Style.EMPTY.fg(Color.CYAN).bold() : 
Style.EMPTY.fg(Color.CYAN);
+        Style labelStyle = selected ? Style.EMPTY.fg(Theme.accent()).bold() : 
Style.EMPTY.fg(Theme.accent());
 
         return Line.from(
                 Span.styled(indicator, Theme.label().bold()),
@@ -1917,7 +1916,7 @@ class HistoryTab extends AbstractTab {
                 rightCell(String.valueOf(stepNumber), 3),
                 Cell.from(Span.styled(direction, dirStyle)),
                 Cell.from(timestamp != null ? TuiHelper.truncate(timestamp, 
12) : ""),
-                Cell.from(Span.styled(routeId != null ? 
TuiHelper.truncate(routeId, 25) : "", Style.EMPTY.fg(Color.CYAN))),
+                Cell.from(Span.styled(routeId != null ? 
TuiHelper.truncate(routeId, 25) : "", Style.EMPTY.fg(Theme.accent()))),
                 Cell.from(indent + (nodeId != null ? 
TuiHelper.truncate(nodeId, 25) : "")),
                 Cell.from(indent + display),
                 Cell.from(Line.from(changeSpans)),
@@ -2084,7 +2083,7 @@ class HistoryTab extends AbstractTab {
             boolean keyChanged = changed && prevMap != null
                     && (!prevMap.containsKey(entry.getKey())
                             || !Objects.equals(prevMap.get(entry.getKey()), 
entry.getValue()));
-            Style keyStyle = keyChanged ? Theme.change() : 
Style.EMPTY.fg(Color.CYAN);
+            Style keyStyle = keyChanged ? Theme.change() : 
Style.EMPTY.fg(Theme.accent());
             Style valStyle = keyChanged ? Theme.change() : Style.EMPTY;
             lines.add(Line.from(
                     Span.styled("   " + typeLabel, Style.EMPTY.dim()),
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HttpTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HttpTab.java
index 64087e6263fa..5522f02172c3 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HttpTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/HttpTab.java
@@ -1155,7 +1155,7 @@ class HttpTab extends AbstractTableTab {
                 return Theme.success().bold();
             }
             if (code >= 300 && code < 400) {
-                return Style.EMPTY.fg(Color.CYAN).bold();
+                return Style.EMPTY.fg(Theme.accent()).bold();
             }
             if (code >= 400 && code < 500) {
                 return Theme.warning().bold();
@@ -1215,7 +1215,7 @@ class HttpTab extends AbstractTableTab {
         return switch (m) {
             case "GET" -> Theme.success();
             case "POST" -> Theme.label();
-            case "PUT" -> Style.EMPTY.fg(Color.CYAN);
+            case "PUT" -> Style.EMPTY.fg(Theme.accent());
             case "DELETE" -> Theme.error();
             case "PATCH" -> Style.EMPTY.fg(Color.rgb(0xFF, 0x80, 0x00));
             default -> Style.EMPTY.dim();
@@ -1228,7 +1228,7 @@ class HttpTab extends AbstractTableTab {
         if (info.httpServer != null) {
             spans.add(Span.raw("  "));
             spans.add(Span.styled("Server: ", Theme.label().bold()));
-            spans.add(Span.styled(info.httpServer, 
Style.EMPTY.fg(Color.CYAN)));
+            spans.add(Span.styled(info.httpServer, 
Style.EMPTY.fg(Theme.accent())));
         }
         long restCount = info.httpEndpoints.stream().filter(e -> e.fromRest && 
!e.specification).count();
         long specCount = info.httpEndpoints.stream().filter(e -> 
e.specification).count();
@@ -1241,12 +1241,12 @@ class HttpTab extends AbstractTableTab {
         }
         if (specCount > 0) {
             spans.add(Span.raw("  "));
-            spans.add(Span.styled("Spec: ", Style.EMPTY.fg(Color.MAGENTA)));
+            spans.add(Span.styled("Spec: ", Theme.notice()));
             spans.add(Span.raw(specCount + ""));
         }
         if (httpCount > 0) {
             spans.add(Span.raw("  "));
-            spans.add(Span.styled("HTTP: ", Style.EMPTY.fg(Color.CYAN)));
+            spans.add(Span.styled("HTTP: ", Style.EMPTY.fg(Theme.accent())));
             spans.add(Span.raw(httpCount + ""));
         }
         if (mgmtCount > 0) {
@@ -1284,9 +1284,9 @@ class HttpTab extends AbstractTableTab {
                     Cell.from(consumes),
                     Cell.from(produces),
                     Cell.from(Span.styled(source,
-                            ep.specification ? Style.EMPTY.fg(Color.MAGENTA)
+                            ep.specification ? Theme.notice()
                                     : ep.fromRest ? Theme.success()
-                                    : Style.EMPTY.fg(Color.CYAN))),
+                                    : Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(state,
                             "Stopped".equals(state) ? Theme.error() : 
Style.EMPTY))));
         }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTab.java
index 98673ed959c5..6d5b49859dae 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTab.java
@@ -21,7 +21,6 @@ import java.util.List;
 
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -117,7 +116,7 @@ class InflightTab extends AbstractTableTab {
 
             rows.add(Row.from(
                     Cell.from(Span.styled(" " + status, statusStyle)),
-                    Cell.from(Span.styled(ii.exchangeId != null ? 
ii.exchangeId : "", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(ii.exchangeId != null ? 
ii.exchangeId : "", Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(routeNode),
                     rightCell(duration, 14, durationStyle),
                     Cell.from(barSpan)));
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/LogTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/LogTab.java
index 4afe91f96c8c..cf166ab645fe 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/LogTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/LogTab.java
@@ -30,7 +30,6 @@ import java.util.regex.Pattern;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Overflow;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
@@ -441,7 +440,7 @@ class LogTab extends AbstractTab {
                         ListItem.from("  ERROR  ").style(Theme.error()),
                         ListItem.from("  WARN   ").style(Theme.warning()),
                         ListItem.from("  INFO   ").style(Style.EMPTY),
-                        ListItem.from("  DEBUG  
").style(Style.EMPTY.fg(Color.CYAN)),
+                        ListItem.from("  DEBUG  
").style(Style.EMPTY.fg(Theme.accent())),
                         ListItem.from("  TRACE  ").style(Style.EMPTY.dim()))
                 .highlightStyle(Theme.selectionBg())
                 .highlightSymbol("")
@@ -620,8 +619,8 @@ class LogTab extends AbstractTab {
     }
 
     private static final Style DIM = Style.EMPTY.dim();
-    private static final Style CYAN = Style.EMPTY.fg(Color.CYAN);
-    private static final Style MAGENTA = Style.EMPTY.fg(Color.MAGENTA);
+    private static final Style CYAN = Style.EMPTY.fg(Theme.accent());
+    private static final Style MAGENTA = Theme.notice();
 
     private static final Pattern PID_PATTERN = Pattern.compile(
             "^(\\d{4}-\\d{2}-\\d{2})[T ](\\d{2}:\\d{2}:\\d{2}\\.\\d+)\\S*\\s+"
@@ -643,10 +642,10 @@ class LogTab extends AbstractTab {
         String logger = m.group(6);
         String message = m.group(7);
         Style levelStyle = switch (level) {
-            case "ERROR", "FATAL" -> Style.EMPTY.fg(Color.RED);
+            case "ERROR", "FATAL" -> Theme.error();
             case "WARN" -> Theme.warning();
             case "INFO" -> Theme.success();
-            case "DEBUG" -> Style.EMPTY.fg(Color.CYAN);
+            case "DEBUG" -> Style.EMPTY.fg(Theme.accent());
             case "TRACE" -> Style.EMPTY.dim();
             default -> Style.EMPTY;
         };
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/McpLogPopup.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/McpLogPopup.java
index 43c771414259..3924ea077e37 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/McpLogPopup.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/McpLogPopup.java
@@ -21,7 +21,6 @@ import java.util.List;
 import java.util.function.Supplier;
 
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -137,7 +136,7 @@ class McpLogPopup {
         for (TuiMcpServer.LogEntry entry : entries) {
             Style levelStyle = switch (entry.level()) {
                 case CONNECT -> Theme.success();
-                case TOOL -> Style.EMPTY.fg(Color.CYAN);
+                case TOOL -> Style.EMPTY.fg(Theme.accent());
                 case ERROR -> Theme.error();
                 default -> Theme.success();
             };
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryLeakTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryLeakTab.java
index f0b3100f98b6..efb4e37803f0 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryLeakTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryLeakTab.java
@@ -26,7 +26,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -266,11 +265,11 @@ class MemoryLeakTab extends AbstractTab {
                 lines.add(Line.from(
                         Span.styled("  Runs two sequential JFR recordings:", 
Style.EMPTY.dim())));
                 lines.add(Line.from(
-                        Span.styled("    Run 1: ", Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled("    Run 1: ", 
Style.EMPTY.fg(Theme.accent())),
                         Span.styled(duration + "s", 
Style.EMPTY.fg(Theme.baseFg())),
                         Span.styled(" baseline recording", 
Style.EMPTY.dim())));
                 lines.add(Line.from(
-                        Span.styled("    Run 2: ", Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled("    Run 2: ", 
Style.EMPTY.fg(Theme.accent())),
                         Span.styled((duration * 2) + "s", 
Style.EMPTY.fg(Theme.baseFg())),
                         Span.styled(" comparison recording (2x duration)", 
Style.EMPTY.dim())));
                 lines.add(Line.from(
@@ -393,7 +392,7 @@ class MemoryLeakTab extends AbstractTab {
             String totalStr = e.sampledSize > 0 ? formatBytes(e.sampledSize) : 
"-";
             rows.add(Row.from(
                     rightCell(String.valueOf(e.num), 6),
-                    Cell.from(Span.styled(e.className != null ? e.className : 
"", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(e.className != null ? e.className : 
"", Style.EMPTY.fg(Theme.accent()))),
                     rightCell(String.valueOf(e.count), 8),
                     rightCell(totalStr, 12),
                     rightCell(formatDuration(e.objectAge), 12)));
@@ -466,7 +465,7 @@ class MemoryLeakTab extends AbstractTab {
         // Sample info
         lines.add(Line.from(
                 Span.styled("  Class:  ", Theme.label().bold()),
-                Span.styled(entry.className != null ? entry.className : 
"unknown", Style.EMPTY.fg(Color.CYAN))));
+                Span.styled(entry.className != null ? entry.className : 
"unknown", Style.EMPTY.fg(Theme.accent()))));
 
         List<Span> infoSpans = new ArrayList<>();
         if (entry.count > 1) {
@@ -499,8 +498,8 @@ class MemoryLeakTab extends AbstractTab {
                 String descInfo = link.description != null ? " [" + 
link.description + "]" : "";
 
                 lines.add(Line.from(
-                        Span.styled(prefix, Style.EMPTY.fg(Color.BLUE)),
-                        Span.styled(typeName, Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled(prefix, Style.EMPTY.fg(Theme.accent())),
+                        Span.styled(typeName, Style.EMPTY.fg(Theme.accent())),
                         Span.styled(fieldInfo, Theme.success()),
                         Span.styled(descInfo, Style.EMPTY.dim())));
             }
@@ -555,7 +554,7 @@ class MemoryLeakTab extends AbstractTab {
 
             rows.add(Row.from(
                     rightCell(String.valueOf(i + 1), 4),
-                    Cell.from(Span.styled(e.className != null ? e.className : 
"", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(e.className != null ? e.className : 
"", Style.EMPTY.fg(Theme.accent()))),
                     rightCell(run1, 10),
                     rightCell(run2, 10),
                     rightCell(growth, 8),
@@ -619,7 +618,7 @@ class MemoryLeakTab extends AbstractTab {
 
         lines.add(Line.from(
                 Span.styled("  Class:   ", Theme.label().bold()),
-                Span.styled(entry.className != null ? entry.className : 
"unknown", Style.EMPTY.fg(Color.CYAN))));
+                Span.styled(entry.className != null ? entry.className : 
"unknown", Style.EMPTY.fg(Theme.accent()))));
         lines.add(Line.from(
                 Span.styled("  Trend:   ", Theme.label().bold()),
                 trendSpan(entry.trend)));
@@ -638,7 +637,7 @@ class MemoryLeakTab extends AbstractTab {
             lines.add(Line.from(
                     Span.styled("  Growth:  ", Theme.label().bold()),
                     Span.styled(growthLabel,
-                            entry.growthRatio > 1.3 ? 
Style.EMPTY.fg(Color.RED).bold() : Style.EMPTY.fg(Theme.baseFg()))));
+                            entry.growthRatio > 1.3 ? Theme.error().bold() : 
Style.EMPTY.fg(Theme.baseFg()))));
         }
         if (entry.lowConfidence) {
             lines.add(Line.from(
@@ -662,8 +661,8 @@ class MemoryLeakTab extends AbstractTab {
                 String fieldInfo = link.field != null ? " (field: " + 
link.field + ")" : "";
                 String descInfo = link.description != null ? " [" + 
link.description + "]" : "";
                 lines.add(Line.from(
-                        Span.styled(prefix, Style.EMPTY.fg(Color.BLUE)),
-                        Span.styled(typeName, Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled(prefix, Style.EMPTY.fg(Theme.accent())),
+                        Span.styled(typeName, Style.EMPTY.fg(Theme.accent())),
                         Span.styled(fieldInfo, Theme.success()),
                         Span.styled(descInfo, Style.EMPTY.dim())));
             }
@@ -707,7 +706,7 @@ class MemoryLeakTab extends AbstractTab {
             return Span.styled("-", Style.EMPTY.dim());
         }
         return switch (trend) {
-            case "growing" -> Span.styled(TuiIcons.ARROW_UP + " leak!", 
Style.EMPTY.fg(Color.RED).bold());
+            case "growing" -> Span.styled(TuiIcons.ARROW_UP + " leak!", 
Theme.error().bold());
             case "suspicious" -> Span.styled(TuiIcons.ARROW_UP + " leak?", 
Theme.warning());
             case "stable" -> Span.styled(TuiIcons.ARROW_STABLE + " stable", 
Theme.success());
             case "shrinking" -> Span.styled(TuiIcons.ARROW_DOWN, 
Style.EMPTY.dim());
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryTab.java
index 60bb1991e7ef..1084cb02ff6d 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MemoryTab.java
@@ -26,7 +26,6 @@ import dev.tamboui.buffer.Buffer;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -127,7 +126,7 @@ class MemoryTab extends AbstractTab {
         // Heap memory with two gauge bars (used/committed and used/max)
         if (info.heapMemUsed > 0) {
             lines.add(Line.from(
-                    Span.styled("  Heap Memory", 
Style.EMPTY.fg(Color.CYAN).bold())));
+                    Span.styled("  Heap Memory", 
Style.EMPTY.fg(Theme.accent()).bold())));
 
             // Compute heap trend from history
             LinkedList<Long> hist = heapMemHistory.get(info.pid);
@@ -194,7 +193,7 @@ class MemoryTab extends AbstractTab {
         if (info.nonHeapMemUsed > 0) {
             lines.add(Line.from(Span.raw("")));
             lines.add(Line.from(
-                    Span.styled("  Non-Heap Memory", 
Style.EMPTY.fg(Color.CYAN).bold())));
+                    Span.styled("  Non-Heap Memory", 
Style.EMPTY.fg(Theme.accent()).bold())));
             lines.add(Line.from(
                     Span.styled("  used:      ", Style.EMPTY.dim()),
                     Span.styled(String.format("%-10s", 
formatBytes(info.nonHeapMemUsed)),
@@ -217,7 +216,7 @@ class MemoryTab extends AbstractTab {
         if (info.threadCount > 0) {
             lines.add(Line.from(Span.raw("")));
             List<Span> threadSpans = new ArrayList<>();
-            threadSpans.add(Span.styled("  Threads", 
Style.EMPTY.fg(Color.CYAN).bold()));
+            threadSpans.add(Span.styled("  Threads", 
Style.EMPTY.fg(Theme.accent()).bold()));
             threadSpans.add(Span.styled("  current: ", Style.EMPTY.dim()));
             threadSpans.add(Span.styled(String.valueOf(info.threadCount), 
Style.EMPTY.fg(Theme.baseFg()).bold()));
             threadSpans.add(Span.styled("  peak: ", Style.EMPTY.dim()));
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTab.java
index ef45636357f0..67286c1dcc7f 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTab.java
@@ -30,7 +30,6 @@ import java.util.stream.Collectors;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -256,7 +255,7 @@ class MetricsTab extends AbstractTableTab {
                     .split(area);
             frame.renderWidget(Paragraph.from(Line.from(
                     Span.styled("  Endpoint: ", LABEL),
-                    Span.styled(metricsUrl, Style.EMPTY.fg(Color.CYAN)))), 
vParts.get(0));
+                    Span.styled(metricsUrl, Style.EMPTY.fg(Theme.accent())))), 
vParts.get(0));
             panelArea = vParts.get(1);
         }
 
@@ -320,7 +319,7 @@ class MetricsTab extends AbstractTableTab {
                         rt.max != null ? rt.max : 0);
                 int pad = Math.max(1, 30 - routeId.length());
                 lines.add(Line.from(
-                        Span.styled("    " + routeId, 
Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled("    " + routeId, 
Style.EMPTY.fg(Theme.accent())),
                         Span.styled(" ".repeat(pad), Style.EMPTY),
                         Span.styled(timing, VALUE)));
             }
@@ -341,7 +340,7 @@ class MetricsTab extends AbstractTableTab {
                         et.max != null ? et.max : 0);
                 int pad = Math.max(1, 30 - shortName.length());
                 lines.add(Line.from(
-                        Span.styled("    " + shortName, 
Style.EMPTY.fg(Color.CYAN)),
+                        Span.styled("    " + shortName, 
Style.EMPTY.fg(Theme.accent())),
                         Span.styled(" ".repeat(pad), Style.EMPTY),
                         Span.styled(timing, VALUE)));
             }
@@ -474,7 +473,7 @@ class MetricsTab extends AbstractTableTab {
 
             rows.add(Row.from(
                     Cell.from(Span.styled(typeLabel, typeStyle)),
-                    Cell.from(Span.styled(m.name != null ? m.name : "", 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(m.name != null ? m.name : "", 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(value),
                     Cell.from(Span.styled(tags, Style.EMPTY.dim()))));
         }
@@ -642,7 +641,7 @@ class MetricsTab extends AbstractTableTab {
     // ---- Prometheus syntax coloring ----
 
     private static final Style PROM_COMMENT = Style.EMPTY.dim();
-    private static final Style PROM_NAME = Style.EMPTY.fg(Color.CYAN);
+    private static final Style PROM_NAME = Style.EMPTY.fg(Theme.accent());
     private static final Style PROM_VALUE = 
Style.EMPTY.fg(Theme.baseFg()).bold();
 
     private static Line colorPrometheusLine(String line) {
@@ -833,11 +832,11 @@ class MetricsTab extends AbstractTableTab {
             return Style.EMPTY;
         }
         return switch (type) {
-            case "counter" -> Style.EMPTY.fg(Color.LIGHT_BLUE);
-            case "gauge" -> Style.EMPTY.fg(Color.LIGHT_GREEN);
-            case "timer" -> Style.EMPTY.fg(Color.LIGHT_YELLOW);
-            case "longTaskTimer" -> Style.EMPTY.fg(Color.LIGHT_MAGENTA);
-            case "distribution" -> Style.EMPTY.fg(Color.LIGHT_CYAN);
+            case "counter" -> Style.EMPTY.fg(Theme.accent());
+            case "gauge" -> Theme.success();
+            case "timer" -> Theme.warning();
+            case "longTaskTimer" -> Theme.notice();
+            case "distribution" -> Theme.info();
             default -> Style.EMPTY;
         };
     }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/OverviewTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/OverviewTab.java
index 1e5f54d6a8c8..4dc53da305e5 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/OverviewTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/OverviewTab.java
@@ -414,7 +414,7 @@ class OverviewTab extends AbstractTab {
                 String version = info.serviceVersion != null ? 
info.serviceVersion : "";
                 rows.add(Row.from(
                         Cell.from(info.pid),
-                        Cell.from(Span.styled(infraAlias, 
Style.EMPTY.fg(Color.MAGENTA))),
+                        Cell.from(Span.styled(infraAlias, Theme.notice())),
                         Cell.from(version),
                         Cell.from(""),
                         Cell.from(Span.styled(statusText, statusStyle)),
@@ -526,14 +526,14 @@ class OverviewTab extends AbstractTab {
                         Span.raw(String.format("] Throughput: %s msg/s  ", 
curTpFmt)),
                         Span.styled("■", Theme.success()),
                         Span.raw(String.format(" ok:%s  ", curOkFmt)),
-                        Span.styled("■", Style.EMPTY.fg(Color.RED)),
+                        Span.styled("■", Theme.error()),
                         Span.raw(String.format(" fail:%s ", curFailFmt)));
             } else {
                 titleLine = Line.from(
                         Span.raw(String.format(" [All] Throughput: %s msg/s  
", curTpFmt)),
                         Span.styled("■", Theme.success()),
                         Span.raw(String.format(" ok:%s  ", curOkFmt)),
-                        Span.styled("■", Style.EMPTY.fg(Color.RED)),
+                        Span.styled("■", Theme.error()),
                         Span.raw(String.format(" fail:%s ", curFailFmt)));
             }
 
@@ -548,7 +548,7 @@ class OverviewTab extends AbstractTab {
                 groups.add(BarGroup.of(
                         
Bar.builder().value(ok).textValue("").style(Theme.success())
                                 .build(),
-                        
Bar.builder().value(failed).textValue("").style(Style.EMPTY.fg(Color.RED)).build()));
+                        
Bar.builder().value(failed).textValue("").style(Theme.error()).build()));
             }
 
             BarChart barChart = BarChart.builder()
@@ -752,7 +752,7 @@ class OverviewTab extends AbstractTab {
         Style dim = Style.EMPTY.dim();
         lines.add(Line.from(
                 Span.styled("Service: ", dim),
-                Span.styled(infra.alias, Style.EMPTY.fg(Color.MAGENTA))));
+                Span.styled(infra.alias, Theme.notice())));
         lines.add(Line.from(Span.raw("")));
         for (Map.Entry<String, Object> e : infra.properties.entrySet()) {
             String key = e.getKey();
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/PopupManager.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/PopupManager.java
index 0419fbcb3cff..c65df93f072e 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/PopupManager.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/PopupManager.java
@@ -20,7 +20,6 @@ import java.util.List;
 import java.util.function.Supplier;
 
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.CharWidth;
@@ -478,7 +477,7 @@ class PopupManager {
             String label = String.format("  %s %s (pid:%s)%s", TuiIcons.CAMEL, 
name, info.pid,
                     current ? " " + TuiIcons.SELECTED : "");
             if (current) {
-                items[i] = ListItem.from(Line.from(Span.styled(label, 
Style.EMPTY.fg(Color.CYAN))));
+                items[i] = ListItem.from(Line.from(Span.styled(label, 
Style.EMPTY.fg(Theme.accent()))));
             } else {
                 items[i] = ListItem.from(label);
             }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ProcessTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ProcessTab.java
index df5714bd4580..c143d66b58ed 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ProcessTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ProcessTab.java
@@ -22,7 +22,6 @@ import java.util.List;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Overflow;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
@@ -143,7 +142,7 @@ class ProcessTab extends AbstractTab {
         String cmdLine = getCommandLine(info.pid);
         if (cmdLine != null) {
             lines.add(Line.from(
-                    Span.styled("  Command Line", 
Style.EMPTY.fg(Color.CYAN).bold())));
+                    Span.styled("  Command Line", 
Style.EMPTY.fg(Theme.accent()).bold())));
             lines.add(Line.from(Span.raw("")));
             if (wrap) {
                 lines.add(Line.from(Span.raw("  " + cmdLine)));
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteTreePreview.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteTreePreview.java
index 0ee4dd84c3f9..05b848f1c120 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteTreePreview.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RouteTreePreview.java
@@ -20,7 +20,6 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
 
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.text.Line;
 import dev.tamboui.text.Span;
@@ -113,7 +112,7 @@ class RouteTreePreview {
         if ("from".equals(type)) {
             style = Theme.label();
         } else if (STRUCTURAL_TYPES.contains(type)) {
-            style = Style.EMPTY.fg(Color.CYAN);
+            style = Style.EMPTY.fg(Theme.accent());
         } else {
             style = Style.EMPTY;
         }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTab.java
index 2563be2f2ac0..69334348a038 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTab.java
@@ -569,7 +569,7 @@ class RoutesTab extends AbstractTab {
                         : Style.EMPTY;
 
                 routeRows.add(Row.from(
-                        Cell.from(Span.styled(route.routeId != null ? 
route.routeId : "", Style.EMPTY.fg(Color.CYAN))),
+                        Cell.from(Span.styled(route.routeId != null ? 
route.routeId : "", Style.EMPTY.fg(Theme.accent()))),
                         Cell.from(routeFromLabel(route)),
                         rightCell(route.total > 0 ? 
String.valueOf(route.meanTime) : "", 6, topTimeStyle(route.meanTime)),
                         rightCell(route.total > 0 ? 
String.valueOf(route.maxTime) : "", 6, topTimeStyle(route.maxTime)),
@@ -631,7 +631,7 @@ class RoutesTab extends AbstractTab {
                 String sinceLastRoute = formatSinceLastRoute(route);
 
                 routeRows.add(Row.from(
-                        Cell.from(Span.styled(route.routeId != null ? 
route.routeId : "", Style.EMPTY.fg(Color.CYAN))),
+                        Cell.from(Span.styled(route.routeId != null ? 
route.routeId : "", Style.EMPTY.fg(Theme.accent()))),
                         Cell.from(routeFromLabel(route)),
                         Cell.from(Span.styled(route.state != null ? 
route.state : "", stateStyle)),
                         Cell.from(route.uptime != null ? route.uptime : ""),
@@ -910,7 +910,7 @@ class RoutesTab extends AbstractTab {
                 boolean isInbound = "external-in".equals(topoNode.nodeType);
                 lines.add(Line.from(
                         Span.styled(isInbound ? " Inbound" : " Outbound",
-                                Style.EMPTY.fg(Color.CYAN).bold())));
+                                Style.EMPTY.fg(Theme.accent()).bold())));
                 lines.add(Line.from(Span.raw("")));
                 lines.add(Line.from(
                         Span.styled(" URI: ", Style.EMPTY.dim()),
@@ -941,7 +941,7 @@ class RoutesTab extends AbstractTab {
                 }
             } else {
                 lines.add(Line.from(
-                        Span.styled(" " + routeId, 
Style.EMPTY.fg(Color.CYAN).bold())));
+                        Span.styled(" " + routeId, 
Style.EMPTY.fg(Theme.accent()).bold())));
                 lines.add(Line.from(
                         Span.styled(" (external endpoint)", 
Style.EMPTY.dim())));
             }
@@ -1093,7 +1093,7 @@ class RoutesTab extends AbstractTab {
             }
 
             for (ProcessorInfo proc : sorted) {
-                Style nameStyle = proc.failed > 0 ? Theme.error() : 
Style.EMPTY.fg(Color.CYAN);
+                Style nameStyle = proc.failed > 0 ? Theme.error() : 
Style.EMPTY.fg(Theme.accent());
                 long chartVal = procChartValue(proc);
                 String bar;
                 if (chartVal > 0) {
@@ -1105,7 +1105,7 @@ class RoutesTab extends AbstractTab {
                 }
                 Style barStyle = topTimeStyle(chartVal);
                 if (barStyle == Style.EMPTY) {
-                    barStyle = Style.EMPTY.fg(Color.CYAN);
+                    barStyle = Style.EMPTY.fg(Theme.accent());
                 }
 
                 rows.add(Row.from(
@@ -1157,7 +1157,7 @@ class RoutesTab extends AbstractTab {
             List<Row> rows = new ArrayList<>();
 
             // Synthetic top row representing the route itself
-            Style routeStyle = route.failed > 0 ? Theme.error() : 
Style.EMPTY.fg(Color.CYAN);
+            Style routeStyle = route.failed > 0 ? Theme.error() : 
Style.EMPTY.fg(Theme.accent());
             rows.add(Row.from(
                     Cell.from("   route"),
                     Cell.from(Span.styled(route.from != null ? route.from : 
route.routeId, routeStyle)),
@@ -1173,7 +1173,7 @@ class RoutesTab extends AbstractTab {
 
             for (ProcessorInfo proc : route.processors) {
                 String indent = "  ".repeat(proc.level);
-                Style nameStyle = proc.failed > 0 ? Theme.error() : 
Style.EMPTY.fg(Color.CYAN);
+                Style nameStyle = proc.failed > 0 ? Theme.error() : 
Style.EMPTY.fg(Theme.accent());
 
                 rows.add(Row.from(
                         Cell.from("   " + (proc.processor != null ? 
proc.processor : "")),
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SearchHighlighter.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SearchHighlighter.java
index bedadda2ee50..29419447cffd 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SearchHighlighter.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SearchHighlighter.java
@@ -22,7 +22,6 @@ import java.util.List;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.text.Line;
 import dev.tamboui.text.Span;
@@ -39,7 +38,7 @@ import static 
org.apache.camel.dsl.jbang.core.commands.tui.TuiHelper.hintLast;
  */
 class SearchHighlighter {
 
-    static final Style FIND_CURRENT_STYLE = 
Style.EMPTY.fg(Color.BLACK).bg(Color.LIGHT_GREEN);
+    static final Style FIND_CURRENT_STYLE = Theme.searchMatch();
 
     private boolean findInputActive;
     private boolean highlightInputActive;
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SpansTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SpansTab.java
index ea0211e7f1b5..a7a678886215 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SpansTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SpansTab.java
@@ -30,7 +30,6 @@ import java.util.concurrent.atomic.AtomicReference;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -554,10 +553,10 @@ class SpansTab extends AbstractTab {
             labelStyle = selected ? Theme.error().bold() : Theme.error();
             bandStyle = Theme.error();
         } else if (!camelSpan) {
-            labelStyle = selected ? Style.EMPTY.fg(Color.LIGHT_MAGENTA).bold() 
: Style.EMPTY.fg(Color.LIGHT_MAGENTA);
-            bandStyle = Style.EMPTY.fg(Color.LIGHT_MAGENTA);
+            labelStyle = selected ? Theme.notice().bold() : Theme.notice();
+            bandStyle = Theme.notice();
         } else {
-            labelStyle = selected ? Style.EMPTY.fg(Color.CYAN).bold() : 
Style.EMPTY.fg(Color.CYAN);
+            labelStyle = selected ? Style.EMPTY.fg(Theme.accent()).bold() : 
Style.EMPTY.fg(Theme.accent());
             bandStyle = TuiHelper.colorForDuration(node.span.durationMs(), 
minDuration, maxDuration);
         }
 
@@ -613,7 +612,7 @@ class SpansTab extends AbstractTab {
             }
             if (!span.isCamelSpan()) {
                 ctx.add(Span.styled("  Source: ", Style.EMPTY.dim()));
-                ctx.add(Span.styled(span.scopeName(), 
Style.EMPTY.fg(Color.LIGHT_MAGENTA)));
+                ctx.add(Span.styled(span.scopeName(), Theme.notice()));
             }
             lines.add(Line.from(ctx));
         }
@@ -628,7 +627,7 @@ class SpansTab extends AbstractTab {
             }
         }
 
-        Style titleStyle = span.isError() ? Theme.error() : 
Style.EMPTY.fg(Color.CYAN);
+        Style titleStyle = span.isError() ? Theme.error() : 
Style.EMPTY.fg(Theme.accent());
         frame.renderWidget(
                 Paragraph.builder()
                         .text(Text.from(lines))
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlQueryTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlQueryTab.java
index 0792e677601e..6170df79ff84 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlQueryTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlQueryTab.java
@@ -378,7 +378,7 @@ class SqlQueryTab extends AbstractTab {
                     sb.append("  ");
                 }
             }
-            Style style = focusOnInput ? Style.EMPTY.fg(Color.CYAN) : 
Theme.muted();
+            Style style = focusOnInput ? Style.EMPTY.fg(Theme.accent()) : 
Theme.muted();
             Paragraph dsLabel = Paragraph.builder()
                     .text(Text.from(Line.from(Span.styled(sb.toString(), 
style))))
                     .build();
@@ -399,7 +399,7 @@ class SqlQueryTab extends AbstractTab {
         } else {
             title = " SQL Query (F5 to execute) ";
         }
-        Style borderStyle = focusOnInput ? Style.EMPTY.fg(Color.CYAN) : 
Theme.muted();
+        Style borderStyle = focusOnInput ? Style.EMPTY.fg(Theme.accent()) : 
Theme.muted();
         Block inputBlock = Block.builder()
                 .title(Title.from(title))
                 .borders(Borders.ALL)
@@ -426,12 +426,12 @@ class SqlQueryTab extends AbstractTab {
                     .title(Title.from(" Error "))
                     .borders(Borders.ALL)
                     .borderType(BorderType.ROUNDED)
-                    .borderStyle(Style.EMPTY.fg(Color.RED))
+                    .borderStyle(Theme.error())
                     .build();
             Rect inner = errBlock.inner(area);
             frame.renderWidget(errBlock, area);
             Paragraph errText = Paragraph.builder()
-                    .text(Text.from(Line.from(Span.styled(errorMessage, 
Style.EMPTY.fg(Color.RED)))))
+                    .text(Text.from(Line.from(Span.styled(errorMessage, 
Theme.error()))))
                     .build();
             frame.renderWidget(errText, inner);
             return;
@@ -477,7 +477,7 @@ class SqlQueryTab extends AbstractTab {
         // build result table
         String resultTitle = String.format(" %d row(s)%s  %dms ",
                 rowCount, truncated ? " (truncated)" : "", elapsed);
-        Style tableBorderStyle = !focusOnInput ? Style.EMPTY.fg(Color.CYAN) : 
Theme.muted();
+        Style tableBorderStyle = !focusOnInput ? 
Style.EMPTY.fg(Theme.accent()) : Theme.muted();
         Block tableBlock = Block.builder()
                 .title(Title.from(resultTitle))
                 .borders(Borders.ALL)
@@ -772,7 +772,7 @@ class SqlQueryTab extends AbstractTab {
             if (isPk) {
                 labelStyle = Theme.muted();
             } else if (isFocused) {
-                labelStyle = Style.EMPTY.fg(Color.CYAN).bold();
+                labelStyle = Style.EMPTY.fg(Theme.accent()).bold();
             } else {
                 labelStyle = Style.EMPTY;
             }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlTraceTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlTraceTab.java
index e04f92c3bebf..32c2dd2c2bfd 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlTraceTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/SqlTraceTab.java
@@ -27,7 +27,6 @@ import java.util.function.Consumer;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -145,7 +144,7 @@ class SqlTraceTab extends AbstractTableTab {
 
     private void renderKpiStrip(Frame frame, Rect area, IntegrationInfo info) {
         Style labelStyle = Style.EMPTY.dim();
-        Style valueStyle = Style.EMPTY.fg(Color.CYAN).bold();
+        Style valueStyle = Style.EMPTY.fg(Theme.accent()).bold();
         Style warnStyle = Theme.warning().bold();
         Style errorStyle = Theme.error().bold();
 
@@ -254,7 +253,7 @@ class SqlTraceTab extends AbstractTableTab {
                     Cell.from(Span.styled(time, Style.EMPTY.dim())),
                     Cell.from(Span.styled(si.category != null ? si.category : 
"", categoryStyle(si.category))),
                     Cell.from(si.query != null ? si.query : ""),
-                    Cell.from(Span.styled(si.routeId != null ? si.routeId : 
"", Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(si.routeId != null ? si.routeId : 
"", Style.EMPTY.fg(Theme.accent()))),
                     rightCell(String.valueOf(si.duration), 10, durStyle),
                     rightCell(rowsStr, 8),
                     Cell.from(Span.styled(status, statusStyle))));
@@ -311,7 +310,7 @@ class SqlTraceTab extends AbstractTableTab {
 
     private void renderDetail(Frame frame, Rect area, SqlTraceInfo si) {
         List<Line> lines = new ArrayList<>();
-        Style labelStyle = Style.EMPTY.fg(Color.CYAN).bold();
+        Style labelStyle = Style.EMPTY.fg(Theme.accent()).bold();
         Style valueStyle = Style.EMPTY;
 
         lines.add(Line.from(
@@ -376,7 +375,7 @@ class SqlTraceTab extends AbstractTableTab {
             return Style.EMPTY;
         }
         return switch (category) {
-            case "SELECT" -> Style.EMPTY.fg(Color.CYAN);
+            case "SELECT" -> Style.EMPTY.fg(Theme.accent());
             case "INSERT" -> Theme.success();
             case "UPDATE" -> Theme.label();
             case "DELETE" -> Theme.error();
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ThreadsTab.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ThreadsTab.java
index efb7edb16f53..68f087f0d01d 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ThreadsTab.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ThreadsTab.java
@@ -25,7 +25,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import dev.tamboui.layout.Constraint;
 import dev.tamboui.layout.Layout;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.style.Style;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Line;
@@ -174,7 +173,7 @@ class ThreadsTab extends AbstractTableTab {
 
             rows.add(Row.from(
                     rightCell(String.valueOf(t.id), 8),
-                    Cell.from(Span.styled(t.name != null ? t.name : "", 
Style.EMPTY.fg(Color.CYAN))),
+                    Cell.from(Span.styled(t.name != null ? t.name : "", 
Style.EMPTY.fg(Theme.accent()))),
                     Cell.from(Span.styled(state, stateStyle(state))),
                     rightCell(blocked, 14),
                     rightCell(waited, 14)));
@@ -319,7 +318,7 @@ class ThreadsTab extends AbstractTableTab {
             case "RUNNABLE" -> Theme.success();
             case "BLOCKED" -> Theme.error();
             case "WAITING" -> Theme.warning();
-            case "TIMED_WAITING" -> Style.EMPTY.fg(Color.CYAN);
+            case "TIMED_WAITING" -> Style.EMPTY.fg(Theme.accent());
             default -> Style.EMPTY;
         };
     }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDiagramWidget.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDiagramWidget.java
index 90cb5c4f031c..af78189b9d2e 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDiagramWidget.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/diagram/RouteDiagramWidget.java
@@ -303,7 +303,7 @@ public class RouteDiagramWidget implements Widget {
         } else if (dashed) {
             edgeStyle = Theme.muted();
         } else {
-            edgeStyle = Style.EMPTY.fg(Color.GRAY);
+            edgeStyle = Theme.muted();
         }
 
         if (fromCx == toCx) {
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTabRenderTest.java
index 8968120fbfe1..402dafea9a67 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/CircuitBreakerTabRenderTest.java
@@ -90,7 +90,7 @@ class CircuitBreakerTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "m", 
Color.CYAN);
+        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "m", 
Theme.accent());
         assertTrue(foundCyan, "Route ID should use CYAN color");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTabRenderTest.java
index 3fb2f8514242..9e0a05b98c66 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConfigurationTabRenderTest.java
@@ -72,7 +72,7 @@ class ConfigurationTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        assertTrue(TuiTestHelper.findCellWithColor(buffer, "c", Color.CYAN),
+        assertTrue(TuiTestHelper.findCellWithColor(buffer, "c", 
Theme.accent()),
                 "Property key should be rendered in CYAN");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTabRenderTest.java
index 7c88142ffb0f..38940bac9973 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ConsumersTabRenderTest.java
@@ -91,7 +91,7 @@ class ConsumersTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        assertTrue(TuiTestHelper.findCellWithColor(buffer, "m", Color.CYAN),
+        assertTrue(TuiTestHelper.findCellWithColor(buffer, "m", 
Theme.accent()),
                 "Route id should be rendered in CYAN");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTabRenderTest.java
index cef3a9ae4193..e869f2c07519 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/DataSourceTabRenderTest.java
@@ -90,7 +90,7 @@ class DataSourceTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "m", 
Color.CYAN);
+        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "m", 
Theme.accent());
         assertTrue(foundCyan, "DataSource name should be rendered in CYAN");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTabRenderTest.java
index f2bdd995a18f..8c766dabe5b1 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/EndpointsTabRenderTest.java
@@ -91,7 +91,7 @@ class EndpointsTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "h", 
Color.CYAN);
+        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "h", 
Theme.accent());
         assertTrue(foundCyan, "Component name should be rendered in CYAN");
     }
 
@@ -122,7 +122,7 @@ class EndpointsTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyanArrow = TuiTestHelper.findCellWithColor(buffer, 
TuiIcons.KEY_LEFT, Color.CYAN);
+        boolean foundCyanArrow = TuiTestHelper.findCellWithColor(buffer, 
TuiIcons.KEY_LEFT, Theme.accent());
         assertTrue(foundCyanArrow, "Out-direction arrow should be rendered in 
CYAN");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTabRenderTest.java
index 6735257c5f59..6edc6c666508 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/ErrorsTabRenderTest.java
@@ -101,7 +101,7 @@ class ErrorsTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyan = findCellWithColor(buffer, "m", Color.CYAN);
+        boolean foundCyan = findCellWithColor(buffer, "m", Theme.accent());
         assertTrue(foundCyan, "Route ID should use CYAN color");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTabRenderTest.java
index 34a4ab861b62..cba420b3f7c6 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/HistoryTabRenderTest.java
@@ -133,7 +133,7 @@ class HistoryTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        assertTrue(TuiTestHelper.findCellWithColor(buffer, "m", Color.CYAN),
+        assertTrue(TuiTestHelper.findCellWithColor(buffer, "m", 
Theme.accent()),
                 "Route ID should contain a cell rendered in CYAN");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTabRenderTest.java
index 99fcd4d0a1d1..f5e00779325b 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/InflightTabRenderTest.java
@@ -119,7 +119,7 @@ class InflightTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "I", 
Color.CYAN);
+        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, "I", 
Theme.accent());
         assertTrue(foundCyan, "Exchange ID should use CYAN color");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTabRenderTest.java
index 8d557ceb2a17..069c92547083 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/MetricsTabRenderTest.java
@@ -22,7 +22,6 @@ import java.util.concurrent.atomic.AtomicReference;
 
 import dev.tamboui.buffer.Buffer;
 import dev.tamboui.layout.Rect;
-import dev.tamboui.style.Color;
 import dev.tamboui.terminal.Frame;
 import dev.tamboui.text.Span;
 import dev.tamboui.tui.event.KeyEvent;
@@ -118,7 +117,7 @@ class MetricsTabRenderTest {
 
         // Use "." which only appears in the metric name (e.g., 
"camel.exchanges.total"),
         // not in the type label "counter".
-        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, ".", 
Color.CYAN);
+        boolean foundCyan = TuiTestHelper.findCellWithColor(buffer, ".", 
Theme.accent());
         assertTrue(foundCyan, "Metric name should use CYAN color");
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTabRenderTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTabRenderTest.java
index 46ae81677d9f..5883842921f0 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTabRenderTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-tui/src/test/java/org/apache/camel/dsl/jbang/core/commands/tui/RoutesTabRenderTest.java
@@ -120,7 +120,7 @@ class RoutesTabRenderTest {
         Frame frame = Frame.forTesting(buffer);
         tab.render(frame, area);
 
-        boolean foundCyanRouteId = findCellWithColorContaining(buffer, "m", 
Color.CYAN);
+        boolean foundCyanRouteId = findCellWithColorContaining(buffer, "m", 
Theme.accent());
         assertTrue(foundCyanRouteId, "Route ID should be rendered in CYAN");
     }
 

Reply via email to