/* YOUR AI — the one chat box (public/process/ai-panel.js). The process canvas's panel,
   made shared: same header mark, empty state, bubbles, composer and footer line. Colours
   come from the page's own tokens (theme.css sets the brand per tenant). */
.conform-ai{display:flex;flex-direction:column;min-height:0;height:100%;background:#fff}
.conform-ai-head{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--line,#e4e7ec)}
.conform-ai-head h2{margin:0;font-size:14px;color:var(--ink,#171b26)}
.conform-ai-mark{color:var(--brand,#007b77);font-size:15px}
.conform-ai-status{margin-left:auto;color:var(--muted,#667085);font-size:11px}
.conform-ai-log{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:14px}
.conform-ai-empty{margin:auto 0;text-align:center;color:var(--muted,#667085)}
.conform-ai-empty>span{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 10px;border-radius:13px;background:color-mix(in srgb,var(--brand,#007b77) 10%,#fff);color:var(--brand,#007b77);font-size:20px}
.conform-ai-empty h3{margin:0 0 6px;color:var(--ink,#171b26);font-size:15px}
.conform-ai-empty p{margin:0 auto 16px;max-width:250px;font-size:12px;line-height:1.5}
.conform-ai-starters{display:grid;gap:7px}
.conform-ai-starters button{border:1px solid var(--line,#e4e7ec);border-radius:9px;background:#fff;color:#344054;padding:9px 10px;font:inherit;font-size:12px;text-align:left;cursor:pointer}
.conform-ai-starters button:hover{border-color:color-mix(in srgb,var(--brand,#007b77) 45%,#fff);background:color-mix(in srgb,var(--brand,#007b77) 5%,#fff)}
.conform-ai-message{max-width:92%;padding:9px 11px;border-radius:12px;font-size:12.5px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.conform-ai-message.user{align-self:flex-end;border-bottom-right-radius:4px;background:var(--brand,#007b77);color:#fff}
.conform-ai-message.assistant{align-self:flex-start;border-bottom-left-radius:4px;background:#f2f4f7;color:#273044;white-space:normal}
.conform-ai-message.assistant p{margin:0 0 7px}.conform-ai-message.assistant p:last-child{margin-bottom:0}
.conform-ai-message.assistant ul{margin:3px 0 3px 18px;padding:0}
.conform-ai-message.system{align-self:center;padding:5px 8px;background:transparent;color:var(--muted,#667085);font-size:11px;text-align:center}
.conform-ai-thinking{animation:conform-ai-pulse 1.4s ease-in-out infinite}
@keyframes conform-ai-pulse{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.conform-ai-thinking{animation:none}}
.conform-ai-form{padding:12px;border-top:1px solid var(--line,#e4e7ec);background:#fff}
.conform-ai-form textarea{box-sizing:border-box;width:100%;min-height:74px;resize:vertical;border:1px solid #d0d5dd;border-radius:11px;padding:10px 11px;color:var(--ink,#171b26);font:inherit;font-size:12.5px;line-height:1.45;outline:none}
.conform-ai-form textarea:focus{border-color:var(--brand,#007b77);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand,#007b77) 14%,transparent)}
.conform-ai-foot{display:flex;align-items:center;gap:8px;margin-top:8px}
.conform-ai-context{flex:1;min-width:0;color:var(--muted,#667085);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conform-ai-send{min-width:66px;height:34px;border:0;border-radius:9px;background:var(--brand,#007b77);color:#fff;font:inherit;font-size:12px;font-weight:650;cursor:pointer}
.conform-ai-send:disabled{opacity:.55;cursor:default}
