/* Shared service layout/type in profiles.css, integration.css and automation.css.
   The conversation uses the same restrained native-scroll zoom controller. */
.ai-visual { padding:32px 24px; }
.ai-conversation { display:grid; gap:24px; transform:scale(var(--profile-zoom,1)); transform-origin:center; }
.ai-question { justify-self:end; max-width:24ch; background:#203050; border:1px solid #3c527a; border-radius:20px 20px 4px 20px; padding:24px; color:#fff; font-size:var(--type-card); line-height:1.3; letter-spacing:-.025em; }
.ai-answer { border-radius:4px 20px 20px 20px; padding:28px; background:#edf3fc; color:var(--ink); }
.ai-sources { display:flex; align-items:center; gap:16px; padding-bottom:20px; border-bottom:1px solid #b6c8e3; color:#1748af; font-size:1rem; line-height:1.5; }
.ai-sources svg { width:32px; height:32px; flex-shrink:0; }
.ai-answer>p { margin-top:20px; max-width:24ch; font-size:var(--type-card); line-height:1.3; letter-spacing:-.025em; }
.ai-review { display:flex; align-items:center; gap:16px; color:#c8d9ff; font-size:var(--type-copy); line-height:1.5; padding-inline:8px; }
.ai-review svg { width:40px; height:32px; flex-shrink:0; }
.ai-related-links { display:grid; gap:16px; }
.ai-related-links .profile-text-link { margin:0; justify-self:start; }
@media(max-width:900px) {
 .ai-visual { width:100%; max-width:500px; padding:16px 12px; margin:auto; }
}
@media(max-width:760px) {
 .ai-conversation { gap:20px; }
 .ai-question,.ai-answer { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { .ai-conversation { transform:none; } }
@media print { .ai-visual { display:none; } }
