From 8c492c160f8e0adf03c8b8777a944d464fe3fcbf Mon Sep 17 00:00:00 2001 From: qer Date: Wed, 17 Jun 2026 01:53:05 +0800 Subject: [PATCH] fix(web): tighten dark color contrast --- apps/kimi-web/src/App.vue | 2 +- .../src/components/ConversationPane.vue | 2 +- apps/kimi-web/src/components/FilePreview.vue | 21 ++++++++++++------- .../kimi-web/src/components/SideChatPanel.vue | 2 +- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/apps/kimi-web/src/App.vue b/apps/kimi-web/src/App.vue index cfd503f22..821952ca2 100644 --- a/apps/kimi-web/src/App.vue +++ b/apps/kimi-web/src/App.vue @@ -1341,7 +1341,7 @@ function openPr(url: string): void { font-family: var(--mono); font-size: var(--ui-font-size-xs); padding: 4px 14px; - color: #fff; + color: var(--bg); cursor: pointer; flex: none; } diff --git a/apps/kimi-web/src/components/ConversationPane.vue b/apps/kimi-web/src/components/ConversationPane.vue index 0b8fbde22..7a998ab6e 100644 --- a/apps/kimi-web/src/components/ConversationPane.vue +++ b/apps/kimi-web/src/components/ConversationPane.vue @@ -1428,7 +1428,7 @@ defineExpose({ loadComposerForEdit }); padding: 8px 14px; border-radius: 6px; background: var(--ink); - color: #fff; + color: var(--bg); font-size: var(--ui-font-size-sm); z-index: 20; box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18); diff --git a/apps/kimi-web/src/components/FilePreview.vue b/apps/kimi-web/src/components/FilePreview.vue index cce5bf68e..8d3f04af1 100644 --- a/apps/kimi-web/src/components/FilePreview.vue +++ b/apps/kimi-web/src/components/FilePreview.vue @@ -858,6 +858,13 @@ function truncatePath(path: string, maxLen = 55): string { /* ---- Body ---- */ .fp-body { + --fp-search-hit-bg: color-mix(in srgb, var(--star) 22%, var(--bg)); + --fp-search-active-bg: color-mix(in srgb, var(--star) 36%, var(--bg)); + --fp-token-keyword: color-mix(in srgb, var(--blue) 68%, var(--err)); + --fp-token-string: var(--ok); + --fp-token-literal: var(--blue2); + --fp-token-tag: var(--warn); + flex: 1; min-height: 0; overflow: auto; @@ -886,11 +893,11 @@ function truncatePath(path: string, maxLen = 55): string { } .fp-line-row.hit .fp-line-text, .fp-table tr.hit td { - background: #fff7d6; + background: var(--fp-search-hit-bg); } .fp-line-row.active .fp-line-text, .fp-table tr.active td { - background: #ffe8a3; + background: var(--fp-search-active-bg); } .fp-line-row.target .fp-gutter, .fp-line-row.target .fp-line-text, @@ -921,15 +928,15 @@ function truncatePath(path: string, maxLen = 55): string { } .fp-line-text :deep(.tok-key), .fp-line-text :deep(.tok-keyword) { - color: #8f3f9f; + color: var(--fp-token-keyword); font-weight: 600; } -.fp-line-text :deep(.tok-string) { color: #116329; } +.fp-line-text :deep(.tok-string) { color: var(--fp-token-string); } .fp-line-text :deep(.tok-number), -.fp-line-text :deep(.tok-literal) { color: #0550ae; } +.fp-line-text :deep(.tok-literal) { color: var(--fp-token-literal); } .fp-line-text :deep(.tok-comment) { color: var(--muted); font-style: italic; } -.fp-line-text :deep(.tok-tag) { color: #953800; font-weight: 600; } -.fp-line-text :deep(.tok-attr) { color: #0550ae; } +.fp-line-text :deep(.tok-tag) { color: var(--fp-token-tag); font-weight: 600; } +.fp-line-text :deep(.tok-attr) { color: var(--fp-token-literal); } /* ---- HTML / PDF ---- */ .fp-html-frame, diff --git a/apps/kimi-web/src/components/SideChatPanel.vue b/apps/kimi-web/src/components/SideChatPanel.vue index 6718ce05a..e0f7b6e11 100644 --- a/apps/kimi-web/src/components/SideChatPanel.vue +++ b/apps/kimi-web/src/components/SideChatPanel.vue @@ -247,7 +247,7 @@ function autosize(): void { border: none; border-radius: var(--r-sm, 8px); background: var(--blue); - color: #fff; + color: var(--bg); cursor: pointer; } .sc-send:disabled { opacity: 0.4; cursor: default; }