/* Presentation owner for people, questions and their saved evidence. */
:root[data-register] :is(.conversation-library, .conversation-page, .transcript-page) { gap: 24px; }
:root[data-register] :is(.conversation-library, .conversation-page, .transcript-page, .run-page) .page-head { padding: 0; border: 0; }
:root[data-register] :is(.conversation-library, .transcript-page) .page-head__title { font-family: var(--font-sans); font-size: var(--type-page-title); font-weight: 550; letter-spacing: var(--type-title-tracking); line-height: var(--type-title-leading); max-width: 28ch; }
:root[data-register] :is(.conversation-library, .transcript-page) .page-head__sub { font-size: var(--text-md); font-weight: 400; line-height: 1.5; max-width: 55ch; }
:root[data-register] :is(.conversation-library, .conversation-page, .transcript-page, .run-page) .page-head .page-head__kicker { color: var(--on-surface-muted); font-size: var(--text-xs); font-weight: 600; text-transform: uppercase; letter-spacing: .09em; }

:root[data-register='card'] .saved-conversation-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.saved-conversation { display: grid; }
.saved-conversations .section__head h2 { font-size: var(--type-section-title); font-weight: 550; line-height: 1.3; letter-spacing: var(--type-title-tracking); text-transform: none; }
:root[data-register] .saved-conversation__link { gap: 20px; padding: 28px; }
.saved-conversation__identity { gap: 16px; }
.saved-conversation__identity .avatar { inline-size: 64px; block-size: 80px; border-radius: 12px; flex-shrink: 0; }
.saved-conversation__name { font-size: var(--text-lg); font-weight: 600; letter-spacing: -.025em; line-height: 1.2; }
.saved-conversation__role { margin-top: 6px; line-height: 1.4; }
.saved-conversation__title { font-size: var(--type-card-title); line-height: 1.4; font-weight: 550; letter-spacing: var(--type-title-tracking); }
.saved-conversation__excerpt { font-size: var(--text-md); line-height: 1.6; }
.saved-conversation__foot { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--line); }
.saved-conversation__action { min-height: 44px; display: inline-flex; align-items: center; }
:root[data-register='type'] .saved-conversation__link { grid-template-columns: minmax(180px, .7fr) minmax(0, 1.3fr); column-gap: 32px; padding-inline: 0; }
:root[data-register='type'] .saved-conversation__head { grid-column: 1; grid-row: 1 / 4; align-content: start; align-items: start; }
:root[data-register='type'] :is(.saved-conversation__title, .saved-conversation__excerpt, .saved-conversation__hint, .saved-conversation__foot) { grid-column: 2; }

.conversation-identity { gap: 20px; }
.conversation-identity > .avatar { inline-size: 80px; block-size: 96px; border-radius: 16px; }
:root[data-register='card'] .conversation-page .conversation-header { padding: 24px 32px; border-radius: 24px; background: var(--surface-raised); }
:root[data-register] .conversation-page > .conversation-tools { padding-inline: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; }
.conversation-page > .conversation-tools > summary { padding-inline: 8px; }
.conversation-page .btn { border-radius: 999px; }
:root[data-register] .conversation-header .page-head__title { font-family: var(--font-sans); font-size: var(--type-page-title); font-weight: 550; line-height: var(--type-title-leading); letter-spacing: var(--type-title-tracking); max-width: none; margin-block: 6px; }
:root[data-register] .conversation-page .msg { grid-template-columns: 52px minmax(0, 1fr); column-gap: 16px; }
.conversation-page .msg > .avatar { inline-size: 52px; block-size: 64px; border-radius: 12px; }
:root[data-register] .conversation-page .msg__who { font-size: var(--text-md); font-weight: 600; letter-spacing: normal; }
:root[data-register] .conversation-page .msg__body { font-size: var(--text-md); line-height: 1.65; max-width: 62ch; }
:root[data-register='card'] .conversation-page .chat-message--persona { padding: 28px 32px; }
:root[data-register] .conversation-page .msg--user { grid-template-columns: minmax(0, 1fr) 32px; }
:root[data-register] .conversation-page .msg--user > .avatar { inline-size: 32px; block-size: 32px; }
:root[data-register] .conversation-page .msg--user .msg__who { font-size: var(--text-md); }
:root[data-register] .conversation-page .msg--user .msg__body { font-size: var(--text-md); max-width: 58ch; }
:root[data-register] .conversation-page .chat-composer { padding: 24px 32px; }
:root[data-register] .conversation-page .chat-composer .textarea { background: var(--surface-raised); border-color: var(--line); padding: 16px; }
.conversation-page .chat-composer > .toolbar { border-top: 1px solid var(--line); padding-top: 16px; margin-top: 4px; align-items: center; gap: 16px; }
.conversation-page .chat-composer .composer__hint { max-width: 52ch; font-size: var(--text-xs); line-height: 1.5; }
.conversation-page .chat-composer .btn { min-inline-size: 88px; flex-shrink: 0; }
.conversation-page .chat-welcome h2 { font-size: var(--type-section-title); font-weight: 550; letter-spacing: var(--type-title-tracking); line-height: 1.3; }
:root[data-register] .transcript-page .transcript-turn { grid-template-columns: 52px minmax(0, 1fr) auto; column-gap: 16px; padding: 28px 32px; }
.transcript-turn > .avatar { inline-size: 52px; block-size: 64px; border-radius: 12px; }
:root[data-register] .transcript-turn .msg__who { font-size: var(--text-md); font-weight: 600; letter-spacing: normal; }
:root[data-register] .transcript-turn .msg__body { font-size: var(--text-md); line-height: 1.65; max-width: 62ch; }
:root[data-register='type'] .transcript-page .transcript-turn { padding-inline: 0 12px; }

:root[data-register] .run-page .page-head__title { font-family: var(--font-sans); font-size: var(--type-page-title); font-weight: 550; line-height: var(--type-title-leading); letter-spacing: var(--type-title-tracking); max-width: 36ch; }
:root[data-register] .run-page .page-head__sub { font-size: var(--text-md); margin-top: 0; }
.analysis-results { gap: 6px; }
.analysis-heading h2 { font-size: var(--text-lg); font-weight: 600; letter-spacing: -.02em; }
.run-page :is(.research-limit, .evidence-scope) { font-size: var(--text-sm); color: var(--on-surface-muted); }
.tested-concept { display: grid; grid-template-columns: minmax(100px, .2fr) minmax(0, 1fr); align-items: baseline; gap: 16px; padding: 16px 28px; margin-bottom: 0; }
.tested-concept > :first-child { font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; color: var(--on-emphasis-muted); }
.tested-concept > :last-child { font-size: var(--text-md); line-height: 1.4; max-width: 60ch; }
.analysis-filters { margin-block: 0; }
.outcome-counts { gap: 16px; margin-block: 8px; }
:root[data-register] .outcome-count { padding: 8px 20px; background: var(--surface-raised); border-radius: 0 0 16px 16px; }
:root[data-register] .outcome-count__value { font-size: var(--type-section-title); line-height: 1.4; font-weight: 550; letter-spacing: var(--type-title-tracking); font-variant-numeric: tabular-nums; }
.outcome-count__total { display: inline; }
.findings-list { gap: 32px; }
:root[data-register='card'] .finding { padding: 24px 32px 32px; border: 0; border-radius: 24px; background: var(--surface-raised); }
:root[data-register] .finding-heading { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.finding-label { letter-spacing: .08em; text-transform: uppercase; }
:root[data-register] .finding-title { font-family: var(--font-sans); font-size: var(--type-section-title); font-weight: 550; letter-spacing: var(--type-title-tracking); line-height: 1.3; max-width: 42ch; }
.finding-explanation { font-size: var(--text-md); line-height: 1.6; max-width: 62ch; }
.finding-context { padding-block: 20px; gap: 24px; }
.finding-context dt { font-size: var(--text-sm); font-weight: 600; color: var(--on-surface); margin-bottom: 8px; }
.finding-contribution { margin-block: 20px 28px; }
.finding-contribution__heading { align-items: center; gap: 12px; margin-bottom: 12px; }
.finding-contribution__identity { display: flex; align-items: center; gap: 12px; min-width: 0; }
.finding-contribution__identity .avatar { inline-size: 40px; block-size: 48px; border-radius: 8px; flex-shrink: 0; }
.finding-contribution__identity strong { font-size: var(--text-md); font-weight: 600; letter-spacing: normal; overflow-wrap: anywhere; }
.analysis-quote { padding: 4px 0 4px 20px; background: transparent; }
.analysis-quote p { font-size: var(--text-md); line-height: 1.65; max-width: 62ch; }
.analysis-quote a { display: inline-flex; align-items: center; min-height: 44px; font-size: var(--text-sm); }
:root[data-register='type'] .finding { padding-block: 28px; }

@media (max-width: 48rem) {
  :root[data-register='card'] .saved-conversation-list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 40rem) {
  :root[data-register] :is(.conversation-library, .transcript-page) .page-head__sub { font-size: var(--text-md); }
  :root[data-register] .saved-conversation__link { padding: 24px; gap: 16px; }
  :root[data-register='type'] .saved-conversation__link { grid-template-columns: minmax(0, 1fr); padding-inline: 0; }
  :root[data-register='type'] .saved-conversation__head { grid-row: auto; }
  :root[data-register='type'] :is(.saved-conversation__title, .saved-conversation__excerpt, .saved-conversation__hint, .saved-conversation__foot) { grid-column: 1; }
  .saved-conversation__head .status { margin-inline-start: 80px; }
  .conversation-identity { gap: 12px; }
  .conversation-identity > .avatar { inline-size: 56px; block-size: 68px; border-radius: 12px; }
  :root[data-register] .conversation-header { grid-template-columns: minmax(0, 1fr); gap: 0; }
  :root[data-register='card'] .conversation-page .conversation-header { padding: 24px; gap: 4px; }
  .conversation-header .page-head__actions { justify-self: start; margin-inline-start: 68px; }
  .conversation-header .btn { inline-size: auto; padding-inline: 0; white-space: nowrap; }
  :root[data-register] .conversation-page .page-head .page-head__kicker { font-size: var(--text-xs); letter-spacing: .04em; }
  :root[data-register] .conversation-page, :root[data-register] .transcript-page { gap: 16px; }
  :root[data-register] .conversation-page .msg { grid-template-columns: 44px minmax(0, 1fr); column-gap: 12px; }
  .conversation-page .msg > .avatar { inline-size: 44px; block-size: 52px; border-radius: 8px; }
  :root[data-register] .conversation-page .msg--user { grid-template-columns: minmax(0, 1fr) 32px; }
  :root[data-register] .conversation-page .msg__body { grid-column: 1 / -1; font-size: var(--text-md); }
  :root[data-register] .conversation-page :is(.chat-message--persona, .chat-composer) { padding: 24px; }
  :root[data-register] .transcript-page .transcript-turn { grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; padding: 24px; }
  .transcript-turn > .avatar { inline-size: 44px; block-size: 52px; border-radius: 8px; }
  :root[data-register] .transcript-turn .msg__body { grid-column: 1 / -1; font-size: var(--text-md); }
  :root[data-register='type'] .transcript-page .transcript-turn { padding-inline: 0 12px; }
  .tested-concept { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 20px 24px; }
  .tested-concept > :last-child { font-size: var(--text-md); }
  .outcome-counts { gap: 12px; }
  :root[data-register] .outcome-count { padding: 12px 16px; }
  :root[data-register='card'] .finding { padding: 24px; }
  .finding-explanation, .analysis-quote p { font-size: var(--text-md); }
  .finding-context { gap: 16px; }
  .finding-contribution__heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
  .finding-contribution__heading > .evidence-role { margin-inline-start: 0; }
}
