@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css";:root{--bpa-bg: #FAFBFC;--bpa-card: #FFFFFF;--bpa-card-hover: #F9FAFB;--bpa-pill-bg: #F1F5F9;--bpa-border: #E5E7EB;--bpa-border-strong: #D1D5DB;--bpa-divider: #F1F5F9;--bpa-primary: #0F172A;--bpa-primary-hover: #1E293B;--bpa-primary-soft: #F1F5F9;--bpa-accent-navy: #1E3A8A;--bpa-accent-cyan: #06B6D4;--bpa-accent-orange: #F97316;--bpa-accent-black: #0F172A;--bpa-accent-blue: #2563EB;--bpa-success: #16A34A;--bpa-success-bg: #DCFCE7;--bpa-success-soft: #F0FDF4;--bpa-danger: #DC2626;--bpa-danger-bg: #FEE2E2;--bpa-danger-soft: #FEF2F2;--bpa-warning: #F59E0B;--bpa-warning-soft: #FFFBEB;--bpa-text: #0F172A;--bpa-text-secondary: #475569;--bpa-text-tertiary: #94A3B8;--bpa-muted: #64748B;--bpa-font: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--bpa-font-mono: "Geist Mono", "JetBrains Mono", "D2Coding", "Consolas", monospace;--bpa-radius-sm: 8px;--bpa-radius: 12px;--bpa-radius-lg: 16px;--bpa-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--bpa-shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--bpa-shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -2px rgba(15, 23, 42, .04);--bpa-shadow-card: 0 1px 0 rgba(15, 23, 42, .02), 0 1px 3px rgba(15, 23, 42, .04);font-family:var(--bpa-font);line-height:1.5;font-weight:400;color:var(--bpa-text);background-color:var(--bpa-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em}a{color:var(--bpa-accent-blue);text-decoration:none;font-weight:500}a:hover{text-decoration:underline}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--bpa-font);color:var(--bpa-text);background-color:var(--bpa-bg)}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.02em;color:var(--bpa-text)}button{font-family:inherit;font-size:14px;font-weight:500;border-radius:var(--bpa-radius-sm);border:1px solid transparent;background-color:transparent;cursor:pointer;transition:all .15s ease;color:var(--bpa-text);letter-spacing:-.01em}button:focus,button:focus-visible{outline:2px solid var(--bpa-primary);outline-offset:2px}input,textarea,select{font-family:inherit;letter-spacing:-.005em}.bpa-delta-up{color:var(--bpa-success);font-weight:600}.bpa-delta-down{color:var(--bpa-danger);font-weight:600}.bpa-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;vertical-align:middle}.bpa-dot--black{background:var(--bpa-accent-black)}.bpa-dot--navy{background:var(--bpa-accent-navy)}.bpa-dot--cyan{background:var(--bpa-accent-cyan)}.bpa-dot--orange{background:var(--bpa-accent-orange)}.app-container{height:100vh;width:100vw;display:flex;background-color:var(--bpa-bg);padding:12px;gap:8px;box-sizing:border-box}.panel-content{height:100%;padding:18px 20px;box-sizing:border-box;border:1px solid var(--bpa-border);background-color:var(--bpa-card);border-radius:var(--bpa-radius);overflow-y:auto;font-family:var(--bpa-font);font-size:14px;color:var(--bpa-text);box-shadow:var(--bpa-shadow-card)}.panel-content h3{margin-top:0;font-size:16px;font-weight:700;color:var(--bpa-text);letter-spacing:-.02em;border-bottom:1px solid var(--bpa-divider);padding-bottom:12px;margin-bottom:14px}.resize-handle,.resize-handle-horizontal{background-color:transparent;transition:background-color .15s ease;position:relative}.resize-handle{width:8px;cursor:col-resize}.resize-handle-horizontal{height:8px;cursor:row-resize}.resize-handle:after,.resize-handle-horizontal:after{content:"";position:absolute;background:var(--bpa-border);border-radius:2px;transition:background .15s ease}.resize-handle:after{top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:36px}.resize-handle-horizontal:after{top:50%;left:50%;transform:translate(-50%,-50%);height:2px;width:36px}.resize-handle:hover:after,.resize-handle-horizontal:hover:after{background:var(--bpa-text-tertiary)}.panel-content::-webkit-scrollbar,*::-webkit-scrollbar{width:8px;height:8px}.panel-content::-webkit-scrollbar-track,*::-webkit-scrollbar-track{background:transparent}.panel-content::-webkit-scrollbar-thumb,*::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.panel-content::-webkit-scrollbar-thumb:hover,*::-webkit-scrollbar-thumb:hover{background:var(--bpa-text-tertiary);background-clip:padding-box;border:2px solid transparent}.agent-message-structured{font-size:14px;line-height:1.7;color:var(--bpa-text)}.toggle-expand-btn{width:100%;padding:8px 12px;margin-bottom:12px;background:var(--bpa-pill-bg);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius-sm);cursor:pointer;font-size:13px;font-weight:600;color:var(--bpa-text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px}.toggle-expand-btn:hover{background:var(--bpa-divider);border-color:var(--bpa-border-strong)}.message-content{max-height:none;overflow:visible;transition:max-height .3s ease}.message-content.collapsed{max-height:120px;overflow:hidden;position:relative}.message-content.collapsed:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(to bottom,transparent,white)}.section-title{font-size:15px;font-weight:700;color:var(--bpa-text);margin-top:16px;margin-bottom:10px;padding:8px 12px;background:var(--bpa-primary-soft);border-left:4px solid var(--bpa-accent-blue);border-radius:var(--bpa-radius-sm);display:flex;align-items:center;gap:8px}.agent-message-structured.analyst .section-title{color:var(--bpa-text);background:#ecfeff;border-left-color:var(--bpa-accent-cyan)}.agent-message-structured.domainexpert .section-title{color:var(--bpa-text);background:#eff6ff;border-left-color:var(--bpa-accent-blue)}.numbered-list{margin:12px 0;display:flex;flex-direction:column;gap:12px}.numbered-item{display:flex;gap:12px;align-items:flex-start}.item-number{background:var(--bpa-accent-blue);color:#fff;width:26px;height:26px;min-width:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;margin-top:2px}.agent-message-structured.analyst .item-number{background:var(--bpa-accent-cyan)}.agent-message-structured.domainexpert .item-number{background:var(--bpa-accent-blue)}.item-content{flex:1;padding-top:2px}.bullet-list{margin:8px 0;padding-left:24px;list-style:none}.bullet-list li{position:relative;margin:6px 0;padding-left:16px;line-height:1.6}.bullet-list li:before{content:"▪";position:absolute;left:0;color:var(--bpa-accent-blue);font-size:14px;font-weight:700}.agent-message-structured.analyst .bullet-list li:before{color:var(--bpa-accent-cyan)}.agent-message-structured.domainexpert .bullet-list li:before{color:var(--bpa-accent-blue)}.paragraph{margin:8px 0;line-height:1.7;color:var(--bpa-text)}.paragraph.highlight{padding:12px 14px;background:var(--bpa-warning-soft);border-left:3px solid var(--bpa-warning);border-radius:var(--bpa-radius-sm);font-weight:500;color:var(--bpa-text);margin:12px 0}.highlight-number{background:var(--bpa-primary-soft);color:var(--bpa-accent-blue);padding:2px 6px;border-radius:4px;font-weight:600;white-space:nowrap}.keyword-increase{color:var(--bpa-danger);font-weight:600}.keyword-decrease{color:var(--bpa-accent-blue);font-weight:600}.keyword-stable{color:var(--bpa-success);font-weight:600}.agent-message-simple{font-size:14px;line-height:1.6;color:var(--bpa-text)}.simple-line{margin:4px 0}.agent-message-image{margin-top:16px;border-radius:8px;overflow:hidden;border:1px solid var(--bpa-border)}.agent-message-image img{width:100%;display:block;cursor:pointer;transition:opacity .2s}.agent-message-image img:hover{opacity:.9}@media (max-width: 768px){.section-title{font-size:14px;padding:6px 10px}.numbered-item{gap:10px}.item-number{width:24px;height:24px;min-width:24px;font-size:12px}.bullet-list{padding-left:20px}.paragraph{font-size:13px}}.message-feed{flex:1;overflow-y:auto;padding:14px;background-color:var(--bpa-card);min-height:0}.feed-container{display:flex;flex-direction:column;gap:12px}.empty-state{text-align:center;color:var(--bpa-text-tertiary);padding:40px;font-size:14px}.message-item{display:flex;gap:12px;padding:12px 14px;background-color:var(--bpa-card);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);transition:all .15s ease}.message-item:hover{background-color:var(--bpa-card-hover);border-color:var(--bpa-border-strong)}.message-item.selected{border-color:var(--bpa-primary);background-color:var(--bpa-primary-soft)}.message-thumbnail-container{flex-shrink:0}.message-thumbnail{width:56px;height:56px;object-fit:cover;border-radius:var(--bpa-radius-sm);border:1px solid var(--bpa-border)}.file-thumbnail,.empty-thumbnail{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background-color:var(--bpa-pill-bg);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius-sm);font-size:18px}.empty-thumbnail{color:var(--bpa-text-tertiary)}.thumbnail-icon{width:18px;height:18px;color:var(--bpa-text-tertiary)}.message-content-container{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.message-text-content{flex:1;display:flex;flex-direction:column;gap:6px}.message-text{margin:0;font-size:14px;font-weight:400;line-height:1.55;color:var(--bpa-text);word-wrap:break-word}.agent-icon-inline{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:8px;color:var(--bpa-text-secondary);vertical-align:-3px}.agent-inline-svg{width:14px;height:14px}.mention-highlight{background-color:var(--bpa-pill-bg);color:var(--bpa-accent-blue);padding:1px 6px;border-radius:6px;font-weight:600;font-size:13px;display:inline-block;margin:0 1px}.message-tag{display:inline-block;margin-left:8px;padding:2px 8px;background-color:var(--bpa-pill-bg);color:var(--bpa-accent-blue);border-radius:999px;font-size:11.5px;font-weight:500}.message-filename{display:inline-block;margin-left:8px;color:var(--bpa-text-secondary);font-size:12.5px}.message-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;margin-top:4px;border-top:1px solid var(--bpa-divider)}.message-metadata{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--bpa-text-tertiary)}.message-author{font-weight:600;color:var(--bpa-text-secondary)}.message-time{color:var(--bpa-text-tertiary)}.message-actions{display:flex;gap:8px}.action-button{display:flex;align-items:center;gap:4px;padding:5px 8px;background:none;border:1px solid transparent;border-radius:6px;cursor:pointer;font-size:12px;color:var(--bpa-text-secondary);transition:all .15s}.action-button:hover{background-color:var(--bpa-pill-bg);color:var(--bpa-text)}.action-icon-svg{width:16px;height:16px;opacity:.7;transition:opacity .2s}.action-button:hover .action-icon-svg{opacity:1}.action-text{font-size:12px}.message-feed::-webkit-scrollbar{width:6px}.message-feed::-webkit-scrollbar-track{background:#f0f0f0}.message-feed::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.message-feed::-webkit-scrollbar-thumb:hover{background:#999}.reply-preview{display:flex;align-items:flex-start;margin-bottom:8px;padding:8px 10px;background-color:var(--bpa-pill-bg);border-radius:8px;font-size:12.5px}.reply-line{width:3px;min-height:30px;background-color:var(--bpa-text-tertiary);margin-right:8px;border-radius:2px}.reply-content{flex:1;overflow:hidden}.reply-author{font-weight:600;color:var(--bpa-text-secondary);margin-bottom:2px}.reply-text{color:var(--bpa-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-tags{align-self:flex-end;display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;padding-right:2px}.message-tag-chip{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;color:#fff;text-transform:uppercase;letter-spacing:.5px}.message-item{position:relative}.tag-edit-dropdown{position:absolute;top:100%;right:0;background:var(--bpa-card);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);box-shadow:var(--bpa-shadow-lg);width:220px;z-index:1000;margin-top:4px;overflow:hidden}.tag-edit-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--bpa-divider)}.tag-edit-header span{font-weight:600;font-size:13px;color:var(--bpa-text);letter-spacing:-.01em}.tag-edit-close{background:none;border:none;cursor:pointer;font-size:16px;color:var(--bpa-text-tertiary);padding:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:4px}.tag-edit-close:hover{color:var(--bpa-text);background:var(--bpa-divider)}.tag-edit-options{max-height:200px;overflow-y:auto;padding:4px 0}.tag-edit-item{display:flex;align-items:center;padding:8px 14px;cursor:pointer;font-size:13px;color:var(--bpa-text);transition:background-color .15s}.tag-edit-item:hover{background-color:var(--bpa-divider)}.tag-edit-item.selected{background-color:var(--bpa-pill-bg)}.tag-checkbox{margin-right:8px;cursor:pointer;accent-color:var(--bpa-primary)}.tag-edit-actions{padding:10px 14px;border-top:1px solid var(--bpa-divider);display:flex;justify-content:flex-end}.tag-save-btn{background-color:var(--bpa-primary);color:#fff;border:none;padding:6px 16px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:background .15s ease}.tag-save-btn:hover{background-color:var(--bpa-primary-hover)}.message-input{background-color:var(--bpa-card);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);padding:14px;flex-shrink:0;margin-top:12px;box-shadow:var(--bpa-shadow-card)}.row{display:flex;align-items:center}.row1{margin-bottom:8px}.row2{justify-content:space-between}.add-image-btn{width:32px;height:32px;border:1px solid var(--bpa-border);background-color:var(--bpa-card);border-radius:var(--bpa-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;margin-right:8px;flex-shrink:0;font-size:18px;color:var(--bpa-text-secondary);transition:all .15s ease;overflow:hidden;padding:0}.add-image-btn:hover{background-color:var(--bpa-divider);border-color:var(--bpa-border-strong)}.preview-image{width:32px;height:32px;object-fit:cover;display:block}.input-file-icon{width:14px;height:14px;color:var(--bpa-text-secondary)}.textarea-container{flex:1;position:relative}.text-area{width:100%;resize:none;border:1px solid var(--bpa-border);border-radius:var(--bpa-radius-sm);padding:8px 12px;font-size:14px;line-height:1.5;min-height:36px;max-height:120px;outline:none;font-family:var(--bpa-font);color:var(--bpa-text);box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.text-area:focus{border-color:var(--bpa-primary);box-shadow:0 0 0 3px #1a223814}.tags-dropdown{position:relative}.dropdown-btn{background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:6px 12px;font-size:13px;cursor:pointer;color:#666;transition:all .2s ease}.dropdown-btn:hover{background-color:#f5f5f5;border-color:#999}.dropdown-menu{position:absolute;bottom:100%;left:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:4px;box-shadow:0 -2px 8px #0000001a;z-index:10}.dropdown-item{padding:8px 16px;font-size:13px;cursor:pointer;color:#333;transition:background-color .2s}.dropdown-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.dropdown-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.send-btn{background-color:var(--bpa-primary);color:#fff;border:none;border-radius:var(--bpa-radius-sm);padding:8px 18px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.send-btn:hover:not(:disabled){background-color:var(--bpa-primary-hover)}.send-btn:disabled{background-color:var(--bpa-border-strong);color:var(--bpa-card);cursor:not-allowed}.send-btn.disconnected{background-color:var(--bpa-danger)}.overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.overlay-menu-wrapper{background-color:#fff;border-radius:4px;box-shadow:0 4px 16px #0000001a;max-width:500px;width:90%;max-height:80vh;overflow:auto}.overlay-menu{padding:20px;display:flex;flex-direction:column;gap:8px}.overlay-menu button{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:12px 16px;font-size:14px;cursor:pointer;transition:all .2s ease;text-align:left}.overlay-menu button:hover{background-color:#e0e0e0;border-color:#999}.overlay-content{padding:20px}.code-area{width:100%;min-height:200px;border:1px solid #ddd;border-radius:4px;padding:12px;font-family:Monaco,Consolas,monospace;font-size:13px;resize:vertical;margin-top:12px;outline:none}.code-area:focus{border-color:#999}.overlay-content button{margin-top:12px;background-color:#333;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:13px;cursor:pointer;transition:all .2s ease}.overlay-content button:hover{background-color:#000}.overlay-content input[type=file]{margin-top:12px}.reply-preview-container{background-color:var(--bpa-primary-soft);border:1px solid var(--bpa-border);border-bottom:none;border-radius:var(--bpa-radius) var(--bpa-radius) 0 0;padding:10px 12px;margin-bottom:-1px}.reply-preview-content{display:flex;flex-direction:column;gap:4px}.reply-preview-header{display:flex;justify-content:space-between;align-items:center}.reply-label{font-size:12px;color:#666;font-weight:500}.cancel-reply{background:none;border:none;cursor:pointer;color:#999;font-size:16px;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.cancel-reply:hover{background-color:#e0e0e0;color:#666}.reply-preview-message{display:flex;gap:4px;font-size:13px;padding:4px 0}.reply-author{font-weight:600;color:#333}.reply-text{color:#666;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-input.replying .row1{border-top-left-radius:0;border-top-right-radius:0}.dropdown-item{display:flex;align-items:center;padding:8px 12px;cursor:pointer;transition:background-color .2s}.dropdown-item:hover{background-color:#f5f5f5}.dropdown-item.selected{background-color:#f0f0f0}.tag-checkbox{margin-right:8px;cursor:pointer}.mention-dropdown{position:absolute;bottom:100%;left:0;right:0;background-color:var(--bpa-card);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);box-shadow:var(--bpa-shadow-lg);z-index:1000;max-height:200px;overflow-y:auto;margin-bottom:4px;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mention-item{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s ease}.mention-item:hover{background-color:#f5f5f5}.mention-item.selected{background-color:var(--bpa-primary-soft);border-left:3px solid var(--bpa-primary)}.mention-item:not(:last-child){border-bottom:1px solid #eee}.mention-icon{width:28px;height:28px;border-radius:50%;background:var(--bpa-pill-bg);color:var(--bpa-text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.mention-icon-svg{width:13px;height:13px}.mention-info{flex:1}.mention-name{font-weight:700;font-size:14px}.mention-description{font-size:12px;color:#666}.mention-tag{font-size:12px;color:#999}.timeline-panel{position:relative;height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden}.timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;border-bottom:1px solid var(--bpa-divider);padding-bottom:12px}.timeline-title{margin:0!important;font-size:16px!important;font-weight:700!important;color:var(--bpa-text)!important;letter-spacing:-.02em;border:none!important;padding:0!important}.timeline-buttons{display:flex;gap:4px;align-items:center;background:var(--bpa-pill-bg);border-radius:var(--bpa-radius-sm);padding:3px}.timeline-icon-button{display:flex;align-items:center;gap:4px;padding:6px 8px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:var(--bpa-text-secondary);transition:all .15s;position:relative}.timeline-icon-button:hover{color:var(--bpa-text)}.timeline-icon-button.active,.timeline-icon-button:has(.filter-badge){background-color:var(--bpa-card);box-shadow:var(--bpa-shadow-sm);color:var(--bpa-text)}.timeline-icon-svg{width:16px;height:16px;opacity:.65;transition:opacity .2s}.timeline-icon-button:hover .timeline-icon-svg{opacity:1}.filter-button{display:flex;align-items:center;gap:4px}.filter-badge{background-color:var(--bpa-primary);color:#fff;border-radius:999px;min-width:16px;height:16px;padding:0 5px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-left:2px}.filter-dropdown{position:absolute;top:100%;right:0;background-color:var(--bpa-card);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);box-shadow:var(--bpa-shadow-lg);z-index:1000;min-width:220px;margin-top:6px;overflow:hidden}.filter-dropdown-header{padding:10px 14px;border-bottom:1px solid var(--bpa-divider);font-size:12px;font-weight:600;color:var(--bpa-text);letter-spacing:-.01em}.filter-dropdown-options{padding:4px 0}.filter-option{padding:8px 14px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--bpa-text);transition:background-color .15s ease}.filter-option:hover{background-color:var(--bpa-divider)}.filter-option.selected{background-color:var(--bpa-pill-bg)}.filter-option input[type=checkbox]{margin:0;accent-color:var(--bpa-primary)}.filter-dropdown-actions{padding:10px 14px;border-top:1px solid var(--bpa-divider);display:flex;justify-content:flex-end}.filter-apply-button{padding:6px 14px;background-color:var(--bpa-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:background-color .15s ease}.filter-apply-button:hover{background-color:var(--bpa-primary-hover)}.timeline-content{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.data-archive-panel{display:flex;flex-direction:column;height:100%}.archive-header{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--bpa-border)}.archive-title{margin:0;font-size:15px;font-weight:600;color:var(--bpa-text);letter-spacing:-.01em;border:none!important}.archive-actions{margin-left:auto;display:flex;gap:8px}.archive-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--bpa-border);background:var(--bpa-card);color:var(--bpa-text);border-radius:var(--bpa-radius-sm);font-size:12px;cursor:pointer;transition:all .15s ease}.archive-btn-icon{width:12px;height:12px}.archive-btn:hover:not(:disabled){background:var(--bpa-divider);border-color:var(--bpa-border-strong)}.archive-btn:disabled{opacity:.5;cursor:not-allowed}.archive-list{padding:8px 12px;overflow-x:auto;overflow-y:hidden;flex:1;display:flex;gap:10px;align-items:center}.archive-empty{color:var(--bpa-text-tertiary);font-size:12px;padding:8px 0}.archive-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);background:var(--bpa-card);white-space:nowrap;cursor:pointer;transition:all .15s ease}.archive-item:hover{border-color:var(--bpa-primary);background:var(--bpa-primary-soft)}.file-emoji{width:30px;height:30px;border-radius:6px;background:#f3f4f6;border:1px solid #e5e7eb;cursor:pointer}.archive-icon-svg{width:18px;height:18px}.archive-info{display:flex;flex-direction:column;gap:2px;cursor:pointer}.archive-name{font-weight:600;font-size:13px;color:var(--bpa-text);letter-spacing:-.01em;max-width:220px;overflow:hidden;text-overflow:ellipsis}.archive-text{display:flex;flex-direction:column}.archive-desc{color:#666;font-size:11px}.archive-meta{color:#666;font-size:12px}.visual-analysis-panel{flex:1;display:flex;flex-direction:column;min-height:0;background-color:var(--bpa-card);position:relative}.visual-content{flex:1;display:flex;gap:12px;min-height:0;padding:0}.image-viewer{flex:1;display:flex;flex-direction:column;padding:0;overflow:hidden;min-width:0}.thumbnail-sidebar{width:fit-content;flex:0 0 auto;border-left:1px solid var(--bpa-border);background-color:var(--bpa-divider);padding:8px;display:flex;flex-direction:column;overflow:hidden}.thumbnail-vertical-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;overflow-x:hidden;align-items:center}.thumbnail-item{position:relative;width:64px;height:64px;cursor:pointer;border:2px solid transparent;border-radius:4px;overflow:hidden;transition:all .2s ease}.thumbnail-item:hover{border-color:var(--bpa-border-strong)}.thumbnail-item.selected{border-color:var(--bpa-primary)}.empty-state{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--bpa-text-tertiary);text-align:center;padding:20px}.empty-state p{margin:4px 0;font-size:13px}.empty-state p:first-child{font-size:14px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px;background-color:#f5f5f5;border-radius:4px;flex-shrink:0}.toolbar-left{display:flex;gap:8px;align-items:center}.tool-button{width:36px;height:36px;border:1px solid #ddd;background-color:#fff;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s ease}.tool-button:hover{background-color:#e0e0e0;border-color:#999}.tool-button.active{background-color:#333;border-color:#333}.toolbar-filters{display:flex;gap:8px;align-items:center}.filter-icon-button{display:flex;align-items:center;gap:4px;padding:4px 8px;background:none;border:1px solid transparent;border-radius:4px;cursor:pointer;color:#666;transition:all .2s;position:relative}.filter-icon-button:hover{background-color:#e0e0e0;border-color:#ccc}.filter-icon-svg{width:16px;height:16px;opacity:.7;transition:opacity .2s}.filter-icon-button:hover .filter-icon-svg{opacity:1}.filter-count-badge{background-color:#f44;color:#fff;border-radius:50%;width:16px;height:16px;font-size:10px;display:flex;align-items:center;justify-content:center;margin-left:2px}.filter-dropdown-container{position:relative}.type-filter-dropdown{position:absolute;top:100%;right:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001a;z-index:1000;min-width:180px;margin-top:2px}.type-filter-header{padding:8px 12px;border-bottom:1px solid #eee;font-size:12px;font-weight:600;color:#333}.type-filter-options{padding:4px 0}.type-filter-option{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;transition:background-color .2s ease}.type-filter-option:hover{background-color:#f8f9fa}.type-filter-option.selected{background-color:#f0f8ff}.type-filter-option input[type=checkbox]{margin:0}.type-icon{font-size:14px;width:16px;text-align:center}.type-filter-actions{padding:8px 12px;border-top:1px solid #eee;display:flex;justify-content:flex-end}.type-filter-apply-button{padding:4px 12px;background-color:#007bff;color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:11px;transition:background-color .2s ease}.type-filter-apply-button:hover{background-color:#0056b3}.image-container{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;background-color:var(--bpa-pill-bg);border:1px solid var(--bpa-border);border-radius:var(--bpa-radius-sm);overflow:hidden}.drawing-canvas{position:absolute;pointer-events:none;z-index:10}.drawing-canvas.active{pointer-events:auto;cursor:crosshair}.image-viewer{flex:1;display:flex;flex-direction:column;padding:16px;overflow:hidden;min-height:0}.scrollable-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;min-height:0;padding-right:8px}.main-image{max-width:100%;max-height:100%;object-fit:contain}.image-info{margin-top:12px;padding-top:12px;border-top:1px solid #e0e0e0;flex-shrink:0;padding-bottom:12px}.image-metadata{display:flex;gap:12px;align-items:center;margin-bottom:8px}.metadata-time{font-size:12px;color:#666}.metadata-tag{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.5px}.image-description{margin:0;font-size:14px;color:#333;line-height:1.5}.thumbnail-container{border-top:1px solid #e0e0e0;background-color:#fafafa;padding:12px;flex-shrink:0}.thumbnail-list{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}.thumbnail-item{position:relative;width:80px;height:80px;flex-shrink:0;cursor:pointer;border:2px solid transparent;border-radius:4px;overflow:hidden;transition:all .2s ease}.thumbnail-item:hover{border-color:#999}.thumbnail-item.selected{border-color:#333}.thumbnail-image{width:100%;height:100%;object-fit:cover}.thumbnail-list::-webkit-scrollbar{height:6px}.thumbnail-list::-webkit-scrollbar-track{background:#f0f0f0;border-radius:3px}.thumbnail-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.thumbnail-list::-webkit-scrollbar-thumb:hover{background:#999}.scrollable-content::-webkit-scrollbar{width:6px}.scrollable-content::-webkit-scrollbar-track{background:#f0f0f0;border-radius:3px}.scrollable-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.scrollable-content::-webkit-scrollbar-thumb:hover{background:#999}.ds-loading-overlay{position:absolute;inset:0;background:#fffc;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:20}.ds-spinner{width:36px;height:36px;border:3px solid var(--bpa-border);border-top-color:var(--bpa-primary);border-radius:50%;animation:ds-spin 1s linear infinite}.ds-loading-text{margin-top:10px;font-size:13px;color:var(--bpa-text-secondary)}@keyframes ds-spin{to{transform:rotate(360deg)}}.agent-panel{position:relative;height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden}.agent-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;border-bottom:1px solid var(--bpa-divider);padding-bottom:12px}.agent-title{margin:0;font-size:16px;font-weight:700;color:var(--bpa-text);letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:none!important}.agent-buttons{display:flex;gap:4px;align-items:center;background:var(--bpa-pill-bg);border-radius:var(--bpa-radius-sm);padding:3px}.agent-icon-button{display:flex;align-items:center;gap:4px;padding:6px 8px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:var(--bpa-text-secondary);transition:all .15s}.agent-icon-button:hover{color:var(--bpa-text)}.agent-icon-button.active{background-color:var(--bpa-card);color:var(--bpa-text);box-shadow:var(--bpa-shadow-sm)}.agent-icon-svg{width:16px;height:16px;opacity:.65;transition:opacity .2s}.agent-icon-button.active .agent-icon-svg,.agent-icon-button:hover .agent-icon-svg{opacity:1}.agent-content{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.agent-panel h3{margin:0;font-size:16px;padding:0;font-weight:700;letter-spacing:-.02em}.floating-action-btn{position:absolute;bottom:16px;right:16px;width:44px;height:44px;border-radius:50%;background:var(--bpa-primary);border:none;color:#fff;font-size:22px;font-weight:400;cursor:pointer;box-shadow:0 4px 12px #0f172a2e;transition:all .2s ease;z-index:1000;display:flex;align-items:center;justify-content:center;line-height:1}.floating-action-btn:hover{background:var(--bpa-primary-hover);transform:scale(1.04);box-shadow:0 6px 16px #0f172a38}.floating-action-btn:active{transform:scale(.96)}.modal-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:var(--bpa-card);border-radius:var(--bpa-radius-lg);padding:0;max-width:640px;width:90%;max-height:80vh;overflow:hidden;box-shadow:var(--bpa-shadow-lg);border:1px solid var(--bpa-border)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--bpa-divider)}.modal-header h3{margin:0;font-size:17px;font-weight:700;color:var(--bpa-text);letter-spacing:-.02em;text-decoration:none!important;border-bottom:none!important}.modal-close-btn{background:none;border:none;font-size:22px;cursor:pointer;color:var(--bpa-text-tertiary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .15s}.modal-close-btn:hover{background:var(--bpa-divider);color:var(--bpa-text)}.modal-body{padding:22px 24px 26px}.modal-description{margin:0 0 18px;color:var(--bpa-text-secondary);font-size:13px}.agent-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.agent-type-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);cursor:pointer;transition:all .15s ease;background:var(--bpa-card)}.agent-type-card:hover{border-color:var(--bpa-primary);background:var(--bpa-card);box-shadow:var(--bpa-shadow);transform:translateY(-1px)}.agent-type-icon{width:38px;height:38px;border-radius:50%;background:var(--bpa-pill-bg);color:var(--bpa-text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.agent-type-icon-svg{width:17px;height:17px}.agent-type-info{flex:1;min-width:0}.agent-type-name{margin:0 0 4px;font-size:14px;font-weight:700;color:var(--bpa-text);letter-spacing:-.01em;display:flex;align-items:center}.agent-type-description{margin:0 0 10px;font-size:12.5px;color:var(--bpa-text-secondary);line-height:1.5}.agent-type-count{font-size:11.5px;color:var(--bpa-text-tertiary);font-weight:500}.agent-type-card.required{border-color:var(--bpa-warning);background:var(--bpa-warning-soft)}.agent-type-card.required:hover{border-color:#d97706}.required-badge{background:var(--bpa-warning);color:#fff;font-size:10px;padding:2px 8px;border-radius:999px;margin-left:8px;font-weight:600;letter-spacing:0}.required-text{color:#d97706;font-weight:600}.agent-remove-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;font-size:13px;color:var(--bpa-text-tertiary);opacity:.5;transition:all .15s;margin-left:auto}.agent-remove-btn:hover{opacity:1;background:var(--bpa-danger-soft);color:var(--bpa-danger)}.agent-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--bpa-text-secondary);font-size:13px;flex:1}.loading-spinner{width:14px;height:14px;border:2px solid var(--bpa-border);border-top:2px solid var(--bpa-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.agent-error{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;background-color:var(--bpa-danger-soft);border:1px solid #FECACA;border-radius:var(--bpa-radius-sm);color:var(--bpa-danger);font-size:13px;flex:1;text-align:center}.error-icon{font-size:14px}.retry-btn{background-color:var(--bpa-danger);color:#fff;border:none;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease;margin-left:auto}.retry-btn:hover{background-color:#b91c1c}.agents-container{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding-right:4px;gap:8px}.no-agents{display:flex;align-items:center;justify-content:center;text-align:center;padding:32px 24px;color:var(--bpa-text-tertiary);font-size:13px;flex:1}.agent-item{border:1px solid var(--bpa-border);border-radius:var(--bpa-radius);padding:14px;cursor:pointer;transition:all .15s ease;background-color:var(--bpa-card);flex-shrink:0}.agent-item:hover{border-color:var(--bpa-border-strong);box-shadow:var(--bpa-shadow-sm)}.agent-item.selected{border-color:var(--bpa-primary);box-shadow:0 0 0 1px var(--bpa-primary)}.agent-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:8px}.agent-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.agent-icon{width:28px;height:28px;border-radius:50%;background:var(--bpa-pill-bg);color:var(--bpa-text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.agent-card-icon-svg{width:13px;height:13px}.agent-name{font-size:14px;font-weight:700;color:var(--bpa-text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-status{display:flex;align-items:center;gap:6px;flex-shrink:0}.status-dot{width:7px;height:7px;border-radius:50%}.status-text{font-size:11.5px;color:var(--bpa-text-secondary);font-weight:500}.agent-description{font-size:12.5px;color:var(--bpa-text-secondary);line-height:1.5;margin-bottom:4px}.agent-actions{margin-top:12px;padding-top:12px;border-top:1px solid var(--bpa-divider);display:flex;flex-direction:column;gap:10px}.agent-mention{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mention-label{font-size:12px;color:var(--bpa-text-secondary);font-weight:500}.mention-code{background-color:var(--bpa-divider);border:1px solid var(--bpa-border);border-radius:6px;padding:2px 8px;font-family:var(--bpa-font-mono);font-size:12px;color:var(--bpa-text)}.copy-btn{background-color:var(--bpa-card);border:1px solid var(--bpa-border);border-radius:6px;padding:4px 8px;font-size:12px;cursor:pointer;transition:all .15s ease}.copy-btn:hover{background-color:var(--bpa-divider);border-color:var(--bpa-border-strong)}.agent-capabilities{display:flex;flex-direction:column;gap:6px}.capabilities-label{font-size:12px;color:var(--bpa-text-secondary);font-weight:500}.capabilities-list{display:flex;flex-wrap:wrap;gap:4px}.capability-tag{background-color:var(--bpa-pill-bg);border:1px solid transparent;border-radius:999px;padding:3px 10px;font-size:11px;color:var(--bpa-text-secondary);font-weight:500}.status-dot.pulsing{animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.6}to{transform:scale(1);opacity:1}}.working-indicator{margin-top:10px;padding:8px 10px;background:var(--bpa-warning-soft);border-radius:8px;border-left:3px solid var(--bpa-warning)}.working-bar{width:100%;height:2px;background:var(--bpa-warning);border-radius:1px;animation:loading 2s infinite;margin-bottom:4px}@keyframes loading{0%{width:0%}50%{width:100%}to{width:0%}}.working-text{font-size:12px;color:#b45309;font-style:normal;font-weight:500}.agent-item.working{border-left:3px solid var(--bpa-warning)}.agent-item.error{border-left:3px solid var(--bpa-danger)}.agent-item.idle{border-left:3px solid var(--bpa-success)}.status-summary{margin-top:16px;padding:12px;background:var(--bpa-pill-bg);border-radius:var(--bpa-radius-sm);display:flex;justify-content:space-around;font-size:12px}.summary-item{display:flex;flex-direction:column;align-items:center;gap:2px}.summary-label{color:var(--bpa-text-secondary);font-weight:500}.summary-count{font-weight:700;font-size:14px;color:var(--bpa-text)}.agent-last-updated{margin-top:4px;font-size:11px;color:var(--bpa-text-tertiary)}.last-updated-label{margin-right:4px}.last-updated-time{font-family:var(--bpa-font-mono)}@media (max-width: 768px){.agent-panel,.agent-item{padding:12px}.agent-mention{flex-direction:column;align-items:flex-start}.capabilities-list{flex-direction:column}}
