fix(consult): blank-line paragraphs, drop the H2 contract line, remove the assistant avatar
Acceptance fix for28113fa0(TASK-consult-conversational-answer-fix-20261006): - F1: chat-answer-detail no longer pins 'Every H2 must start its own line' (first turns carry no H2), assertion change noted in three columns. - F2: Good examples separate paragraphs with a blank line and the shape says so; .message p is pre-wrap, so a single newline only wraps. - Product request: remove the assistant avatar on every surface (consult, rectification, onboarding); --assistant-content-inset back to 0px. Full suite 4941 / fail 24, identical to baseline86cafe68minus a timing flake; build keeps / Static; first-load gzip -0.1%. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
5a589a9058
commit
da226db1d4
@@ -483,7 +483,7 @@ section[popover]:has(> [data-sonner-toaster]), section[popover][aria-label^="页
|
||||
.birth-time-assessment-progress strong { margin-top: var(--space-2); color: var(--color-ink); font-family: var(--font-display); font-size: var(--type-title-md); font-weight: 500; }
|
||||
.birth-time-assessment-progress > span { font-size: var(--type-body-sm); line-height: 1.55; text-wrap: pretty; word-break: auto-phrase; }
|
||||
|
||||
.message-assistant { align-items: flex-start; justify-content: flex-start; gap: var(--space-3); }
|
||||
.message-assistant { align-items: flex-start; justify-content: flex-start; }
|
||||
.message-user { justify-content: flex-end; }
|
||||
.message-user .message-content { display: flex; flex-direction: column; align-items: flex-end; }
|
||||
.message-assistant .message-content { width: auto; max-width: none; flex: 1; }
|
||||
@@ -1243,9 +1243,10 @@ section[popover]:has(> [data-sonner-toaster]), section[popover][aria-label^="页
|
||||
|
||||
|
||||
.message-list {
|
||||
/* Follow-up chips and the run timeline line up with the assistant's text,
|
||||
which starts past the avatar and its gap. */
|
||||
--assistant-content-inset: calc(32px + var(--space-3));
|
||||
/* The assistant reply starts at the column edge (no avatar since
|
||||
2026-10-06), so follow-up chips and the run timeline line up with the
|
||||
text itself. */
|
||||
--assistant-content-inset: 0px;
|
||||
margin: 0 auto;
|
||||
width: min(900px, 100%);
|
||||
padding: var(--space-8) var(--space-8) var(--space-16);
|
||||
@@ -1258,8 +1259,6 @@ section[popover]:has(> [data-sonner-toaster]), section[popover][aria-label^="页
|
||||
color: var(--color-ink-secondary);
|
||||
}
|
||||
.message { display: flex; padding: var(--space-2) 0; }
|
||||
/* Restored after real-device review; see chat-message-row.tsx for why. */
|
||||
.agent-avatar { width: 32px; height: 32px; display: block; flex: 0 0 32px; margin-top: var(--space-2); border-radius: 50%; background: var(--color-canvas) url("/jyotish-logo.png") center / contain no-repeat; box-shadow: 0 0 0 1px var(--ring-hairline); }
|
||||
.message-content { min-width: 0; max-width: min(80%, 680px); }
|
||||
.message-bubble { overflow: hidden; border: 0; padding: var(--space-3) var(--space-4); border-radius: var(--radius-lg); background: var(--color-canvas-muted); }
|
||||
.message-assistant .message-bubble { border-radius: 0; background: transparent; padding: var(--space-3) 0; }
|
||||
@@ -2581,18 +2580,6 @@ input:not([type="radio"]):not([type="checkbox"]):not([class^="ant-"]):not([class
|
||||
margin-top: var(--space-8);
|
||||
}
|
||||
|
||||
.conversation:not(.is-empty):not(.is-rectification) .message-assistant {
|
||||
gap: var(--space-4);
|
||||
}
|
||||
|
||||
.conversation:not(.is-empty):not(.is-rectification) .message-assistant .agent-avatar {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
flex-basis: 30px;
|
||||
margin-top: 2px;
|
||||
box-shadow: 0 0 0 1px color-mix(in srgb, var(--color-border) 82%, transparent);
|
||||
}
|
||||
|
||||
|
||||
.conversation:not(.is-empty):not(.is-rectification) .message-assistant .message-bubble {
|
||||
padding: 0 0 var(--space-2);
|
||||
@@ -2676,10 +2663,6 @@ input:not([type="radio"]):not([type="checkbox"]):not([class^="ant-"]):not([class
|
||||
margin-top: var(--space-6);
|
||||
}
|
||||
|
||||
.conversation:not(.is-empty):not(.is-rectification) .message-assistant {
|
||||
gap: var(--space-3);
|
||||
}
|
||||
|
||||
|
||||
.conversation:not(.is-empty):not(.is-rectification) .message-user .message-content {
|
||||
max-width: 88%;
|
||||
@@ -2888,9 +2871,9 @@ input:not([type="radio"]):not([type="checkbox"]):not([class^="ant-"]):not([class
|
||||
The pending state keeps the same box for the same reason. */
|
||||
.rectification-workspace__chat {
|
||||
--rectification-timeline-height: 64px;
|
||||
/* Same token as `.message-list`: avatar 32px + gap. The bar sits outside the
|
||||
transcript, so it cannot inherit that custom property from there. */
|
||||
--assistant-content-inset: calc(32px + var(--space-3));
|
||||
/* Same token as `.message-list`. The bar sits outside the transcript, so it
|
||||
cannot inherit that custom property from there. */
|
||||
--assistant-content-inset: 0px;
|
||||
}
|
||||
.rectification-timeline {
|
||||
height: var(--rectification-timeline-height);
|
||||
|
||||
Reference in New Issue
Block a user