retire the last light-theme branches and fix three latent color bugs

Dark is now the only theme, so every `.dark` selector matched
unconditionally while each non-dark branch was unreachable. That left
fourteen `.dark &` blocks sitting on top of token-based base rules and
silently overriding them with hardcoded grays from the previous palette
(#333333, #999999, #cccccc, #f2f2f2, #1f1f1f, #2a2a2a). Merged each value
down into its base rule and deleted the wrapper, then replaced fifteen
more legacy grays with the CYBER tokens.

Three bugs surfaced along the way:

- FileEditor read `documentElement.classList.contains('dark')`, but the
  `dark` class is bound on `.app-root`, so Monaco always loaded the
  light `vs` theme inside the dark editor surface.
- CodexLoginModal, CopilotLoginModal and NousLoginModal wrote
  `border-color: var(--arcoblue-6, #165dff)` and VoiceApiFormModal wrote
  `color: var(--primary-6, #18a058)`. Those Arco variables hold bare
  RGB triplets, not colors, so each declaration was invalid and
  discarded — the hover border and link color stayed stock Arco
  blue/green instead of the cyan accent.
- JourneyView drew the pinned-node ring in amber, a leftover from the
  old palette.

Rendering-layer only: no store logic, no /chat-run payload, no message
rendering path.
This commit is contained in:
2026-10-19 14:56:23 +08:00
parent f4f45304a6
commit 3debe903f7
26 changed files with 136 additions and 216 deletions
@@ -150,12 +150,12 @@ function saveExclude(value: string[]) {
margin: 0 0 6px;
font-size: 15px;
font-weight: 600;
color: var(--text-color);
color: var(--text-primary);
}
.section-hint {
margin: 0 0 12px;
color: var(--text-color-secondary);
color: var(--text-secondary);
font-size: 13px;
}
@@ -520,7 +520,7 @@ async function handleSave() {
.form-section + .form-section {
padding-top: 12px;
border-top: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
border-top: 1px solid var(--border-color);
}
.section-heading {
@@ -545,7 +545,7 @@ async function handleSave() {
.inline-error {
display: grid;
gap: 6px;
color: var(--danger-6, #d03050);
color: var(--error);
font-size: 12px;
line-height: 1.4;
}
@@ -557,13 +557,13 @@ async function handleSave() {
overflow: auto;
white-space: pre-wrap;
color: inherit;
background: rgba(208, 48, 80, 0.06);
background: rgba(var(--error-rgb), 0.06);
border-radius: 6px;
}
.link-button {
padding: 0;
color: var(--primary-6, #18a058);
color: var(--accent-primary);
background: transparent;
border: 0;
cursor: pointer;