/* 智影协标智能体面板：细边框，不发光；门户为浅色，标注器为深色。 */
.za-panel,.za-launcher{--za-bg:#ffffff;--za-soft:#f4f7f8;--za-line:#dfe7eb;--za-ink:#18343f;--za-muted:#6f8590;--za-accent:#187e76;--za-accent-ink:#ffffff;--za-accent-soft:#e5f3ee;--za-warn:#a87525;--za-warn-soft:#fbf3e4;--za-bad:#b74e54;--za-bad-soft:#f9eaeb;--za-user:#18343f;--za-user-ink:#ffffff;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
.za-panel.za-dark{--za-bg:#151e2c;--za-soft:#0f1724;--za-line:#2a374b;--za-ink:#e9f0f7;--za-muted:#92a3b8;--za-accent:#4dd8bb;--za-accent-ink:#0d1420;--za-accent-soft:#173d3b;--za-warn:#eec677;--za-warn-soft:#2f2a1c;--za-bad:#f29393;--za-bad-soft:#3a2026;--za-user:#24344a;--za-user-ink:#e9f0f7;color-scheme:dark}
.za-launcher{position:fixed;right:20px;bottom:20px;z-index:9000;display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--za-accent);border-radius:999px;background:var(--za-accent);color:var(--za-accent-ink);font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px rgba(16,40,50,.18)}
.za-launcher:hover{filter:brightness(1.05)}
.za-launcher-icon{font-size:16px;line-height:1}
.za-panel{position:fixed;top:14px;right:14px;bottom:14px;z-index:9001;width:min(440px,calc(100vw - 28px));display:flex;flex-direction:column;background:var(--za-bg);color:var(--za-ink);border:1px solid var(--za-line);border-radius:12px;box-shadow:0 10px 30px rgba(10,30,40,.16);overflow:hidden;font-size:13.5px;line-height:1.6}
.za-panel[hidden],.za-launcher[hidden],.za-history[hidden],.za-stale[hidden]{display:none}
.za-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--za-line)}
.za-title{display:flex;flex-direction:column;min-width:0}
.za-title strong{font-size:15px}
.za-model{color:var(--za-muted);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.za-head-tools{display:flex;gap:4px;flex:none}
.za-ghost,.za-primary,.za-link,.za-send,.za-chip-btn,.za-history-item{font:inherit;cursor:pointer}
.za-ghost{padding:4px 10px;border:1px solid var(--za-line);border-radius:6px;background:transparent;color:var(--za-ink);font-size:12.5px}
.za-ghost:hover{background:var(--za-soft)}
.za-close{font-size:16px;line-height:1;padding:3px 9px}
.za-primary{padding:6px 14px;border:1px solid var(--za-accent);border-radius:6px;background:var(--za-accent);color:var(--za-accent-ink);font-weight:600}
.za-primary:hover{filter:brightness(1.05)}
.za-link{padding:0;border:0;background:none;color:var(--za-accent);text-decoration:underline;text-underline-offset:2px}
.za-stale{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 14px;background:var(--za-warn-soft);color:var(--za-warn);border-bottom:1px solid var(--za-line);font-size:12.5px}
.za-history{max-height:45%;overflow:auto;border-bottom:1px solid var(--za-line);padding:8px 10px;background:var(--za-soft)}
.za-history-title{color:var(--za-muted);font-size:12px;margin:0 4px 6px}
.za-history-empty{color:var(--za-muted);padding:6px}
.za-history-item{display:flex;justify-content:space-between;gap:10px;width:100%;padding:7px 8px;border:0;border-radius:6px;background:transparent;color:var(--za-ink);text-align:left}
.za-history-item:hover{background:var(--za-bg)}
.za-history-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.za-history-item small{color:var(--za-muted);flex:none}
.za-body{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--za-soft)}
.za-welcome{background:var(--za-bg);border:1px solid var(--za-line);border-radius:10px;padding:12px 14px}
.za-welcome p{margin:0 0 8px}
.za-welcome-rule{color:var(--za-muted);font-size:12.5px}
.za-chips{display:flex;flex-direction:column;gap:6px;margin-top:4px}
.za-chip-btn{text-align:left;padding:7px 10px;border:1px solid var(--za-line);border-radius:8px;background:var(--za-soft);color:var(--za-ink);font-size:13px}
.za-chip-btn:hover{border-color:var(--za-accent);color:var(--za-accent)}
.za-msg{max-width:94%;padding:9px 12px;border-radius:10px;word-break:break-word}
.za-user{align-self:flex-end;background:var(--za-user);color:var(--za-user-ink);white-space:pre-wrap}
.za-bot{align-self:flex-start;background:var(--za-bg);border:1px solid var(--za-line)}
.za-thinking{align-self:flex-start;color:var(--za-muted);font-size:12.5px;padding:0 4px}
.za-md p{margin:0 0 6px}
.za-md p:last-child{margin-bottom:0}
.za-md .za-h{font-weight:700;margin-top:4px}
.za-md ul,.za-md ol{margin:2px 0 6px;padding-left:20px}
.za-md li{margin:1px 0}
.za-md code{padding:0 4px;border-radius:4px;background:var(--za-soft);font-family:Consolas,monospace;font-size:12px}
.za-table{border-collapse:collapse;margin:4px 0 8px;font-size:12.5px;width:100%}
.za-table th,.za-table td{border:1px solid var(--za-line);padding:3px 6px;text-align:left;vertical-align:top}
.za-table th{background:var(--za-soft)}
.za-verify{margin-top:8px;padding-top:6px;border-top:1px dashed var(--za-line);color:var(--za-accent);font-size:12px}
.za-verify-warn{color:var(--za-warn)}
.za-basis{margin-top:6px;font-size:12.5px}
.za-basis>summary{cursor:pointer;color:var(--za-muted)}
.za-tool{margin:4px 0 0 4px}
.za-tool>summary{cursor:pointer;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.za-tool small{color:var(--za-muted)}
.za-dot{width:7px;height:7px;border-radius:50%;background:var(--za-accent);flex:none}
.za-dot-bad{background:var(--za-bad)}
.za-pre{margin:4px 0 6px;max-height:220px;overflow:auto;padding:8px;border:1px solid var(--za-line);border-radius:6px;background:var(--za-soft);font-family:Consolas,monospace;font-size:11.5px;line-height:1.45;white-space:pre-wrap;word-break:break-all}
.za-card{align-self:stretch;background:var(--za-bg);border:1px solid var(--za-line);border-left:3px solid var(--za-accent);border-radius:8px;padding:10px 12px}
.za-card-done{border-left-color:var(--za-accent)}
.za-card-failed{border-left-color:var(--za-bad)}
.za-card-cancelled,.za-card-expired{border-left-color:var(--za-line);opacity:.8}
.za-card-pending{border-left-color:var(--za-warn)}
.za-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.za-card-kind{font-size:12px;color:var(--za-muted)}
.za-card-target{font-weight:700;font-size:14px;margin-top:2px}
.za-card-summary{margin-top:2px}
.za-card-effects{margin:4px 0 0;padding-left:18px;color:var(--za-muted);font-size:12.5px}
.za-card-result{margin-top:6px;font-size:12.5px}
.za-card-actions{display:flex;gap:8px;margin-top:8px}
.za-chip{font-size:11.5px;padding:1px 8px;border-radius:999px;border:1px solid var(--za-line);white-space:nowrap}
.za-chip-pending{color:var(--za-warn);border-color:var(--za-warn)}
.za-chip-done{color:var(--za-accent);border-color:var(--za-accent)}
.za-chip-failed{color:var(--za-bad);border-color:var(--za-bad)}
.za-chip-executing{color:var(--za-muted)}
.za-all{align-self:flex-start}
.za-job{margin-top:8px;padding-top:6px;border-top:1px dashed var(--za-line);font-size:12.5px;display:flex;flex-direction:column;gap:4px}
.za-job>span{display:inline}
.za-job-done{color:var(--za-accent)}
.za-job-fail{color:var(--za-bad)}
.za-event{align-self:center;max-width:96%;color:var(--za-muted);font-size:12px;text-align:center}
.za-error{padding:8px 12px;border:1px solid var(--za-bad);border-radius:8px;background:var(--za-bad-soft);color:var(--za-bad);font-size:12.5px}
.za-waiting{display:flex;align-items:center;gap:8px;color:var(--za-muted);font-size:12.5px}
.za-spin{display:inline-block;width:12px;height:12px;border:2px solid var(--za-line);border-top-color:var(--za-accent);border-radius:50%;animation:za-spin .8s linear infinite;vertical-align:-2px;margin-right:4px}
@keyframes za-spin{to{transform:rotate(360deg)}}
.za-foot{padding:10px 12px;border-top:1px solid var(--za-line);background:var(--za-bg)}
.za-foot-row{display:flex;gap:8px;align-items:flex-end}
.za-input{flex:1;resize:none;min-height:40px;max-height:120px;padding:8px 10px;border:1px solid var(--za-line);border-radius:8px;background:var(--za-soft);color:var(--za-ink);font:inherit}
.za-input:focus{outline:none;border-color:var(--za-accent)}
.za-send{padding:9px 16px;border:1px solid var(--za-accent);border-radius:8px;background:var(--za-accent);color:var(--za-accent-ink);font-weight:600}
.za-send:disabled{opacity:.5;cursor:not-allowed}
.za-foot-note{margin-top:6px;color:var(--za-muted);font-size:11.5px}
@media (max-width:520px){.za-panel{top:0;right:0;bottom:0;width:100vw;border-radius:0;border:0}.za-launcher{right:12px;bottom:12px}}
