/* M17 AI agents page: additions on top of external-agents.css */
.tools{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;padding:12px 16px;display:flex;flex-wrap:wrap;gap:10px 26px;margin:0}
.tools legend{font-size:13px;color:var(--muted);padding:0 6px}
.tools .check{flex-direction:row;align-items:center;gap:8px;color:var(--ink);font-size:14px}
.tools input{width:auto}
.agent-actions{display:flex;gap:10px;flex-wrap:wrap}
.agent-actions button:first-child{background:#7464e7}
.level{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:99px;background:#1f3b34;color:var(--good);font-size:11px;font-weight:800;letter-spacing:.6px}
.chat-log{display:flex;flex-direction:column;gap:12px;max-height:480px;overflow-y:auto;padding:14px;margin-top:14px;background:#0d1425;border:1px solid var(--line);border-radius:14px}
.bubble{max-width:82%;padding:11px 14px;border-radius:14px;line-height:1.5;overflow-wrap:anywhere}
.bubble.owner{align-self:flex-end;background:#3a2f7a}
.bubble.agent{align-self:flex-start;background:#1b2440;border:1px solid var(--line)}
.bubble small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.bubble a{color:#9fc1ff;text-decoration:underline;text-underline-offset:2px}
.bubble a:hover{color:#c7dbff}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chip{font-size:12px;padding:3px 9px;border-radius:99px;background:#26304d;color:var(--ink)}
.chip.executed,.chip.already_executed{background:#1f3b34;color:var(--good)}
.chip.awaiting_approval{background:#4a3b1c;color:#ffd58a}
.chip.blocked,.chip.refused,.chip.rejected,.chip.invalid,.chip.expired{background:#4a2330;color:#ffadb9}
.approval{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.approval button{padding:7px 13px;font-size:13px}
.approval button.reject{background:#68465b}
.chat-form{display:flex;gap:10px;margin-top:14px;grid-template-columns:none}
.chat-form input{flex:1}
.chat-form button{justify-self:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
code{font-family:ui-monospace,Consolas,monospace;font-size:.92em}
/* M18 business information */
textarea{width:100%;background:#0d1425;color:var(--ink);border:1px solid #53607e;border-radius:8px;padding:12px 11px;font:inherit;resize:vertical}
form label.wide{grid-column:1/-1}
.knowledge-editor{margin:14px 0;border:1px solid var(--line);border-radius:12px;padding:12px 16px;background:#111a2e}
.knowledge-editor summary{cursor:pointer;font-weight:700}
.knowledge-editor .hint{margin:8px 0 10px}
.knowledge-editor .agent-actions{margin-top:10px;align-items:center}
button.secondary{background:#334064}
form .wide{grid-column:1/-1}
.knowledge-editor summary .hint{font-weight:400;font-size:13px;margin-left:4px}
.owner-tip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:8px 10px;border-radius:10px;background:#2a2a14;border:1px solid #6b5d2a;color:#ffe3a3;font-size:13px}
.owner-tip button{padding:6px 11px;font-size:13px}
@media(max-width:700px){.bubble{max-width:100%}.chat-form{flex-direction:column}}
/* M18D chat like a modern assistant: Markdown replies, typing dots, copy, growing message box */
.chat-log{height:clamp(320px,62vh,640px);max-height:none}
.bubble .plain{white-space:pre-wrap}
.md p{margin:0 0 8px}
.md>:last-child{margin-bottom:0}
.md ul,.md ol{margin:4px 0 8px;padding-left:22px}
.md li{margin:3px 0}
.md h4,.md h5,.md h6{margin:12px 0 6px;line-height:1.3}
.md>h4:first-child,.md>h5:first-child,.md>h6:first-child{margin-top:0}
.md h4{font-size:17px}
.md h5{font-size:15.5px}
.md h6{font-size:14.5px;color:var(--muted)}
.md strong{color:#fff}
.md code{background:#0d1425;border:1px solid var(--line);padding:1px 6px;border-radius:6px}
.md pre{margin:8px 0;padding:12px;font-size:13px}
.md pre code{background:none;border:0;padding:0}
.md hr{border:0;border-top:1px solid var(--line);margin:10px 0}
.bubble-foot{display:flex;align-items:center;gap:10px;margin-top:8px}
.bubble-foot small{margin-top:0}
.bubble .copy{background:transparent;border:1px solid var(--line);color:var(--muted);padding:3px 10px;font-size:12px;font-weight:600;border-radius:8px}
.bubble .copy:hover{color:var(--ink);border-color:#53607e}
.typing{display:flex;gap:5px;align-items:center;padding:15px 16px}
.typing .dot,.dots .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--muted);animation:typing-dot 1.2s infinite ease-in-out}
.typing .dot:nth-child(2),.dots .dot:nth-child(2){animation-delay:.15s}
.typing .dot:nth-child(3),.dots .dot:nth-child(3){animation-delay:.3s}
@keyframes typing-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.dots{display:flex;gap:5px;align-items:center;padding:6px 0}
@media(prefers-reduced-motion:reduce){.typing .dot,.dots .dot{animation:none;opacity:.7}}
.chat-form textarea{flex:1;resize:none;min-height:48px;max-height:180px;line-height:1.45;overflow-y:auto}
.chat-form button{align-self:flex-end;min-height:48px}
.suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.suggestions button{padding:6px 12px;font-size:13px;font-weight:600;border-radius:99px;border:1px solid var(--line)}
.chat-hint{margin-top:8px!important}
@media(max-width:700px){.chat-log{height:clamp(300px,58vh,560px)}.chat-form button{align-self:stretch}}
