ui: fix chat pending class, invented CSS vars, .pf-secondary scope

- chat.js: pending indicator class was wrong (.pending instead of
  chat-msg--pending) so the … waiting message never got italic/dim
- settings.html + cassandra.css: three invented CSS vars (--panel-bg,
  --ok, --surface-1) had hardcoded fallbacks that broke dark mode;
  replaced with real tokens (--surface, --positive)
- cassandra.css: .pf-secondary was scoped to .pf-actions but used
  standalone in 4 places (sync modal, disable-sync, import cancel,
  forget-pie button) — hoisted to a top-level selector

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Giorgio Gilestro 2026-05-27 19:19:42 +02:00
parent fb71854238
commit e807e58629
3 changed files with 7 additions and 6 deletions

View file

@ -593,8 +593,8 @@ table.dense tr.row-stale td { color: var(--dim); }
}
.pf-actions button:hover { border-color: var(--accent); }
.pf-actions button:disabled { opacity: 0.5; cursor: not-allowed; }
.pf-actions .pf-secondary { color: var(--muted); }
.pf-actions .pf-secondary:hover { color: var(--negative); border-color: var(--negative); }
.pf-secondary { color: var(--muted); }
.pf-secondary:hover { color: var(--negative); border-color: var(--negative); }
/* Settings-page action button same visual language as .pf-actions
button so buttons across /settings (Manage subscription, future
@ -1265,7 +1265,7 @@ details[open] .pf-analysis__head-left::before { content: "▾ "; }
top: calc(100% + 6px);
right: 0;
min-width: 160px;
background: var(--surface-1, var(--surface-2));
background: var(--surface);
border: 1px solid var(--border);
border-radius: 6px;
box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);

View file

@ -37,7 +37,8 @@
append('user', text);
input.value = '';
send.disabled = true;
const thinking = append('assistant pending', '…');
const thinking = append('assistant', '…');
thinking.classList.add('chat-msg--pending');
try {
const r = await fetch('/api/chat', {
method: 'POST',