Jev 내담자 평가·표현 v2와 속마음 공개
상담자 발화 판정(A)·감정(B)·표현(C) 20문항 질문 세트, 감쇠 없는 이번 턴 반응과 비대칭 기분 전이, 개방도 게이트로 생성 지시를 만들고 ccd.coping_strategy 전달 누락을 고친다. trace v2와 고정 문구 속마음 요약(migration 24, AI 경로 차단 RLS)을 같은 트랜잭션에 저장하고 피드백 정책이 켜진 경우에만 done·TurnResponse·음성 reply·리뷰로 노출한다. 회기 화면 속마음 보기 토글, 리뷰 접힘 블록, 관리자 감정 관측 v2 표시를 추가한다.
This commit is contained in:
parent
36cb847e38
commit
29c406d89f
39 changed files with 5726 additions and 343 deletions
|
|
@ -1270,6 +1270,35 @@
|
|||
line-height: 14px;
|
||||
font-weight: 800;
|
||||
}
|
||||
/* 내담자 속마음 마크 — coach-mark와 같은 원형 배지 패턴, 클라이 계열 톤 */
|
||||
.sx-utt__inner-mark {
|
||||
flex: 0 0 auto;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
border-radius: 50%;
|
||||
border: 1px solid color-mix(in srgb, var(--clay-deep) 36%, transparent);
|
||||
background: var(--paper);
|
||||
color: var(--clay-deep);
|
||||
font-size: 11px;
|
||||
font-weight: 800;
|
||||
line-height: 1;
|
||||
display: inline-grid;
|
||||
place-items: center;
|
||||
cursor: pointer;
|
||||
box-shadow: var(--shadow-sm);
|
||||
}
|
||||
.sx-utt__inner-mark.is-warn {
|
||||
border-color: color-mix(in srgb, var(--warn-solid) 48%, transparent);
|
||||
color: var(--warn-text);
|
||||
}
|
||||
.sx-utt__inner-mark:hover {
|
||||
transform: translateY(-1px);
|
||||
box-shadow: var(--shadow-md);
|
||||
}
|
||||
.sx-utt__inner-card {
|
||||
margin-top: var(--sp-2);
|
||||
width: 100%;
|
||||
}
|
||||
/* partial(진행 중 발화) = ink-3 흐릿 + 캐럿 */
|
||||
.sx-utt.is-partial .sx-utt__line {
|
||||
color: var(--text-muted);
|
||||
|
|
@ -3037,6 +3066,95 @@
|
|||
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--text-muted) 25%, transparent);
|
||||
}
|
||||
|
||||
/* 피드백 모드 segmented + "속마음 보기" 스위치를 한 줄에 둔다 — 새 행을 만들면
|
||||
하단 컨트롤 바 높이가 늘어 축어록 스크롤 영역을 줄인다(session-layout 회귀). */
|
||||
.sx-seg-block__row {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
flex-wrap: nowrap;
|
||||
gap: var(--sp-2);
|
||||
min-width: 0;
|
||||
}
|
||||
.sx-inner-toggle-row {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
gap: var(--sp-2);
|
||||
flex: none;
|
||||
}
|
||||
.sx-inner-toggle__label {
|
||||
font-size: 10.5px;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.06em;
|
||||
color: var(--text-muted);
|
||||
font-family: var(--font-num);
|
||||
white-space: nowrap;
|
||||
}
|
||||
/* 좁은 폭에서는 segmented 옆 공간이 빠듯해 짧은 시각 라벨로 바꾼다. 접근 가능한
|
||||
이름은 버튼의 aria-label이 유지하므로 두 시각 라벨은 aria-hidden이다. */
|
||||
.sx-inner-toggle__label--short {
|
||||
display: none;
|
||||
}
|
||||
@media (max-width: 1180px) {
|
||||
.sx-inner-toggle__label {
|
||||
display: none;
|
||||
}
|
||||
.sx-inner-toggle__label--short {
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
.sx-inner-toggle {
|
||||
position: relative;
|
||||
width: 38px;
|
||||
height: 22px;
|
||||
flex: none;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border: none;
|
||||
background: transparent;
|
||||
padding: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
.sx-inner-toggle__track {
|
||||
position: relative;
|
||||
flex: none;
|
||||
width: 38px;
|
||||
height: 22px;
|
||||
background: var(--neutral-200);
|
||||
border-radius: var(--radius-pill);
|
||||
transition: background var(--dur-base) var(--ease-out);
|
||||
}
|
||||
.sx-inner-toggle__knob {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
left: 2px;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
border-radius: 50%;
|
||||
background: var(--paper);
|
||||
box-shadow: var(--shadow-sm);
|
||||
transition: transform var(--dur-base) var(--ease-out);
|
||||
}
|
||||
.sx-inner-toggle.is-on .sx-inner-toggle__track {
|
||||
background: var(--accent-deep);
|
||||
}
|
||||
.sx-inner-toggle.is-on .sx-inner-toggle__knob {
|
||||
transform: translateX(16px);
|
||||
}
|
||||
.sx-inner-toggle:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
.sx-inner-toggle:focus-visible .sx-inner-toggle__track {
|
||||
box-shadow: 0 0 0 3px var(--focus-ring);
|
||||
}
|
||||
|
||||
.sx-signal__inner-reaction {
|
||||
order: 0;
|
||||
margin-bottom: 9px;
|
||||
}
|
||||
|
||||
.sx-cb-spacer {
|
||||
flex: 1;
|
||||
}
|
||||
|
|
@ -5223,6 +5341,10 @@
|
|||
.sx-transcript__live-dot.is-live {
|
||||
animation: none !important;
|
||||
}
|
||||
.sx-inner-toggle__track,
|
||||
.sx-inner-toggle__knob {
|
||||
transition-duration: 0.01ms !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* ═══════════════════════════════════════════════════════════════════
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue