html, body { margin: 0; } .app-layout { height: 100vh; overflow: hidden; } .app-header { display: flex; align-items: center; justify-content: space-between; padding: 0 var(--ant-padding-lg); background: var(--ant-color-bg-container); border-bottom: 1px solid var(--ant-color-border-secondary); } .app-header-left { display: inline-flex; align-items: center; gap: var(--ant-margin-lg); } .app-header-right { display: inline-flex; align-items: center; gap: var(--ant-margin-sm); } .app-brand-group { display: inline-flex; align-items: baseline; gap: var(--ant-margin-sm); } .app-brand { margin: 0; color: var(--ant-color-text); font-size: calc(var(--ant-font-size-heading-1) - 6px); font-weight: 700; line-height: 1; } .app-version { color: var(--ant-color-text-quaternary); font-size: var(--ant-font-size-sm); font-weight: 400; line-height: 1; } .app-content { overflow: auto; padding: var(--ant-padding-xl) var(--ant-padding-xl); } .app-chat-page { height: 100%; overflow: hidden; } .app-console-title { color: var(--ant-color-text-secondary); font-size: var(--ant-font-size); font-weight: 400; } .app-unavailable { display: flex; align-items: center; justify-content: center; min-height: 60vh; } .app-loading { display: flex; align-items: center; justify-content: center; min-height: 60vh; } .app-chat-sidebar { display: flex; width: 260px; flex-direction: column; border-right: 1px solid var(--ant-color-border-secondary); background: var(--ant-color-bg-container); } .app-chat-sidebar-header { padding: var(--ant-padding-sm); border-bottom: 1px solid var(--ant-color-border-secondary); } .app-chat-sidebar-list { flex: 1; min-height: 0; overflow: auto; } .app-chat-sidebar-loading { display: flex; align-items: center; justify-content: center; padding: var(--ant-padding-xl); } .app-chat-sidebar-item { cursor: pointer; padding: var(--ant-padding-xs) var(--ant-padding-sm); border-bottom: 1px solid var(--ant-color-border-secondary); } .app-chat-sidebar-item:hover { background: var(--ant-color-bg-text-hover); } .app-chat-sidebar-item-active { background: var(--ant-color-bg-text-hover); } .app-chat-sidebar-item-title { flex: 1; min-width: 0; } .app-chat-sidebar-item-action { opacity: 0; transition: opacity 0.2s; } .app-chat-sidebar-item:hover .app-chat-sidebar-item-action, .app-chat-sidebar-item-active .app-chat-sidebar-item-action { opacity: 1; } .app-chat-panel { display: flex; flex: 1; flex-direction: column; min-height: 0; min-width: 0; } .app-chat-panel-empty { align-items: center; justify-content: center; } .app-chat-panel-loading { display: flex; align-items: center; justify-content: center; flex: 1; } .chat-input-area { flex-shrink: 0; display: flex; flex-direction: column; gap: 8px; padding: 8px 16px; border-top: 1px solid var(--ant-color-border-secondary); } .message-body { margin-top: 8px; } .message-body pre { background: var(--ant-color-bg-layout); padding: 8px 12px; border-radius: 6px; overflow-x: auto; font-size: 13px; } .chat-scroll-area { flex: 1; min-height: 0; overflow: auto; padding-left: var(--ant-padding-lg); } .chat-loading-indicator { padding: 8px; } .chat-textarea { flex: 1; } .message-body-text { margin-bottom: 0; } .step-divider { margin: 4px 0; } .tool-result-pre { font-size: 12px; margin: 0; } .msg-title-ai { color: var(--ant-color-primary); } .part-body { padding: 0 var(--ant-padding-sm); } .icon-primary { color: var(--ant-color-primary); } .icon-success { color: var(--ant-color-success); } .icon-error { color: var(--ant-color-error); } .chat-model-select { width: 180px; }