diff --git a/ui/desktop/src/components/settings/app/ThemeColorEditor/Preview/ColorPreview.tsx b/ui/desktop/src/components/settings/app/ThemeColorEditor/Preview/ColorPreview.tsx
new file mode 100644
index 0000000000..f5f2020865
--- /dev/null
+++ b/ui/desktop/src/components/settings/app/ThemeColorEditor/Preview/ColorPreview.tsx
@@ -0,0 +1,391 @@
+/**
+ * ColorPreview Component
+ *
+ * Shows live preview of how a selected color variable is used in the UI.
+ * Displays real component examples with the color applied.
+ */
+
+import { ColorVariable } from '../types';
+
+interface ColorPreviewProps {
+ variable: ColorVariable;
+ lightColor: string;
+ darkColor: string;
+ currentMode: 'light' | 'dark';
+}
+
+export function ColorPreview({ variable, lightColor, darkColor, currentMode }: ColorPreviewProps) {
+ const currentColor = currentMode === 'light' ? lightColor : darkColor;
+
+ // Render different previews based on color category
+ const renderPreview = () => {
+ switch (variable.category) {
+ case 'background':
+ return
+ {variable.description} +
++ This is the primary background color used throughout the app. +
++ It appears in the main chat area, settings panels, and most content areas. +
++ This is how AI messages appear on the primary background. +
++ Cards and panels use the secondary background for visual hierarchy. +
++ Tertiary background for nested panels and hover states. +
+⚠️ Error
++ This background is used for error messages and dangerous actions. +
+ℹ️ Information
++ This background is used for informational messages and tips. +
+Background color preview
++ This is the main text color used for body content, headings, and primary information. +
+Main heading
++ Secondary text is used for labels, captions, and less important information. +
+⚠️ Error Message
++ This color is used for error messages, warnings, and destructive actions. +
+ +✓ Success
++ Used for success messages, confirmations, and positive feedback. +
+⚡ Warning
++ Used for warnings and caution messages. +
+ℹ️ Information
++ Used for informational messages and tips. +
+Sample text in this color
+Card with primary border
+Section 1
+ +Section 2
+Error state border
+Element with this border color
++ The ring color appears when elements receive keyboard focus for accessibility. +
+- {variable.description} -
- )} -Select a color to preview
++ Click any color on the left to see where it's used in the UI +
+