*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0f0f0f;color:#e0e0e0;height:100vh;display:flex;flex-direction:column}header{padding:12px 20px;background:#1a1a1a;border-bottom:1px solid #2a2a2a;display:flex;align-items:center;gap:12px;flex-shrink:0}header h1{font-size:16px;font-weight:600;color:#fff}header .status{font-size:12px;color:#888;margin-left:auto}header .status.connected{color:#4ade80}header .status.streaming{color:#a78bfa}#main{flex:1;display:flex;overflow:hidden}#chat-col{flex:1;display:flex;flex-direction:column;min-width:0}#chat{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}#mcp-panel{width:0;overflow:hidden;transition:width .3s ease;background:#141414;border-left:1px solid #2a2a2a;display:flex;flex-direction:column}#mcp-panel.open{width:55%}#mcp-panel-header{padding:10px 16px;background:#7c3aed22;border-bottom:1px solid #7c3aed44;display:flex;align-items:center;gap:8px;flex-shrink:0}#mcp-panel-header .title{font-size:13px;color:#a78bfa;font-weight:600}#mcp-panel-header .close-btn{margin-left:auto;background:none;border:none;color:#888;cursor:pointer;font-size:18px}#mcp-panel-header .close-btn:hover{color:#fff}#mcp-panel iframe{flex:1;width:100%;border:none;background:#fff}.msg{max-width:85%;padding:12px 16px;border-radius:12px;line-height:1.5;font-size:14px;white-space:pre-wrap;word-break:break-word}.msg.user{align-self:flex-end;background:#2563eb;color:#fff;border-bottom-right-radius:4px}.msg.assistant{align-self:flex-start;background:#1e1e1e;border:1px solid #2a2a2a;border-bottom-left-radius:4px}.msg .intent-badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:4px;background:#7c3aed22;color:#a78bfa;border:1px solid #7c3aed44;margin-bottom:8px}.msg .token-info{font-size:11px;color:#555;margin-top:8px}#input-area{padding:12px 20px;background:#1a1a1a;border-top:1px solid #2a2a2a;display:flex;gap:12px;flex-shrink:0}#input-area input{flex:1;padding:10px 16px;background:#0f0f0f;border:1px solid #333;border-radius:8px;color:#e0e0e0;font-size:14px;outline:none}#input-area input:focus{border-color:#2563eb}#input-area input:disabled{opacity:.5}#input-area button{padding:10px 20px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;font-weight:500}#input-area button:hover{background:#1d4ed8}#input-area button:disabled{opacity:.5;cursor:not-allowed}
