:root{--text: #102a43;--muted: #587084;--blue: #075ea8;--blue-dark: #063d70;--blue-deep: #052f56;--blue-soft: #eaf3fa;--line: #d7e2ec;--bg: #f2f6f9;--paper: #fff;--success: #18875b;--danger: #b42318;--shadow-sm: 0 3px 12px rgba(16, 42, 67, .07);--shadow-md: 0 16px 42px rgba(16, 42, 67, .14)}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;color:var(--text);background:var(--bg);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,textarea{font:inherit}::selection{color:#fff;background:var(--blue)}button,input,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(7,94,168,.25);outline-offset:2px}.button{border:1px solid var(--line);border-radius:6px;cursor:pointer;min-height:38px;padding:0 16px;background:#fff;color:var(--text);font-weight:650;transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}.button.primary{border-color:var(--blue);background:var(--blue);color:#fff}.button.secondary{background:#fff}.button:hover:not(:disabled){border-color:#8eb9da;color:var(--blue-dark)}.button.primary:hover:not(:disabled){border-color:var(--blue-dark);background:var(--blue-dark);color:#fff}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.6;cursor:default}.login-page{min-height:100%;display:grid;place-items:center;padding:24px;background:var(--bg)}.login-card{width:min(400px,100%);display:grid;gap:14px;padding:36px 32px 32px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-md)}.login-card h1{margin:0;color:#0d2b47;font-size:22px;font-weight:750;letter-spacing:-.01em}.login-card p{margin:-4px 0 4px;color:var(--muted)}.login-card label{display:grid;gap:7px;color:#29445b;font-weight:600}.login-card input{min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:6px;color:var(--text);background:#fbfdfe;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.login-card input:hover{border-color:#a9bfd1}.login-card input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #075ea817}.login-card .button.primary{margin-top:2px;min-height:42px}.login-hint{color:var(--danger)!important}.workbench{height:100%;display:grid;grid-template-columns:300px 1fr;grid-template-rows:56px 1fr;background:#edf3f7}.workbench-top{grid-column:1 / -1;display:flex;align-items:center;gap:10px;padding:0 18px;color:#fff;background:var(--blue-deep);border-bottom:1px solid #0c4777;box-shadow:0 3px 14px #052f5629}.workbench-top>strong{font-size:15px;font-weight:700}.brand-logo{width:32px;height:32px;display:block;object-fit:contain;padding:3px;background:#fff;border-radius:6px}.chat-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--blue);color:#fff;font-size:13px;font-weight:650}.workbench-status{margin-left:auto;color:#c7dbea;font-size:13px;font-variant-numeric:tabular-nums}.workbench-top .button.secondary{min-height:32px;color:#fff;background:#ffffff14;border-color:#ffffff3d}.workbench-top .button.secondary:hover{color:#fff;background:#ffffff24;border-color:#fff6}.conversation-list{overflow:auto;background:#f8fafc;border-right:1px solid var(--line)}.conversation-list h2,.chat-pane header h2{margin:0;padding:16px 18px;color:#173a57;font-size:14px;font-weight:750}.list-more{display:block;min-height:40px;margin:12px auto;padding:0 16px;border:1px solid var(--line);border-radius:6px;color:var(--blue-dark);background:#fff;cursor:pointer;font-weight:650}.list-more:hover:not(:disabled){border-color:#8eb9da;background:var(--blue-soft)}.list-more:disabled{opacity:.55;cursor:default}.message-more{margin-top:0}.conversation-item{width:100%;display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:13px 16px;border:0;border-bottom:1px solid #e7edf2;background:transparent;text-align:left;cursor:pointer;transition:background-color .16s ease}.conversation-item:hover{background:#edf4f9}.conversation-item.active{background:#dfeef9;box-shadow:inset 1px 0 0 var(--blue)}.conversation-item strong,.conversation-item span{display:block}.conversation-item span{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item em{min-width:18px;padding:0 6px;border-radius:9px;color:#fff;background:var(--danger);font-style:normal;font-size:12px;text-align:center}.chat-pane{display:grid;grid-template-rows:56px 1fr auto;min-width:0;background:#edf3f7}.chat-pane header{display:flex;justify-content:space-between;align-items:center;background:#fffffff5;border-bottom:1px solid var(--line)}.chat-pane header span{padding-right:16px;color:var(--muted);font-size:12px}.message-list{overflow:auto;padding:22px 24px;scrollbar-color:#a2b8c9 transparent}.bubble-row{display:flex;gap:8px;margin:0 0 14px}.bubble-row.agent{flex-direction:row-reverse}.bubble{max-width:62%;padding:9px 12px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 8px #102a430b}.bubble-row.agent .bubble{background:#deedf8;border-color:#c6dceb}.bubble-row.system .bubble{color:var(--muted)}.bubble strong,.bubble time{display:block;font-size:12px;color:var(--muted);font-weight:400}.bubble p{margin:4px 0}.composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 18px;background:#fff;border-top:1px solid var(--line)}.composer textarea{resize:none;min-height:68px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;color:var(--text);transition:border-color .18s ease,box-shadow .18s ease}.composer textarea:hover{border-color:#a9bfd1}.composer textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #075ea817}.composer .button{align-self:end;min-width:76px}.empty-tip{padding:26px 18px;color:var(--muted)}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#051f378f}.error-dialog{width:min(560px,100%);max-height:90vh;overflow:auto;padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-md)}.error-dialog h2{margin:0 0 8px;font-size:18px}.error-dialog>p{margin:0 0 14px;color:#555}.error-dialog dl{margin:0;border-top:1px solid var(--line)}.error-dialog dl div{display:grid;grid-template-columns:80px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.error-dialog dt{color:#777}.error-dialog dd{margin:0;word-break:break-all}.privacy-note{color:#888;font-size:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}@media(max-width:800px){.workbench{grid-template-columns:1fr;grid-template-rows:56px 200px 1fr}.workbench-top{padding:0 12px}.workbench-top>strong{font-size:14px}.workbench-status{font-size:12px}.conversation-list{border-right:0;border-bottom:1px solid var(--line)}.conversation-list h2,.conversation-item{padding:10px 14px}.message-list{padding:16px 12px}.bubble{max-width:78%}.composer{padding:10px 12px}}@media(max-width:480px){.login-page{padding:18px}.login-card{padding:30px 24px 26px}.login-card h1{font-size:20px}.workbench-top .brand-logo{width:28px;height:28px}.workbench-status{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
