*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--ant-color-border);border-radius:var(--ant-border-radius-lg)}::-webkit-scrollbar-track{background:0 0}a{color:var(--ant-color-primary);text-decoration:none}.sider-scroll{scrollbar-width:thin;scrollbar-color:var(--ant-color-fill) transparent}.sider-scroll::-webkit-scrollbar{width:6px}.sider-scroll::-webkit-scrollbar-thumb{background:var(--ant-color-fill);border-radius:var(--ant-border-radius)}.card{background:var(--ant-color-bg-container);border:1px solid var(--ant-color-border-secondary);border-radius:var(--ant-border-radius-lg);box-shadow:none}.card-pad{padding:var(--ant-padding-lg)}.card-head{align-items:center;gap:var(--ant-margin-xs);padding:var(--ant-padding) var(--ant-padding-lg);border-bottom:1px solid var(--ant-color-split);display:flex}.card-head h3{font-size:var(--ant-font-size-lg);font-weight:var(--ant-font-weight-strong);margin:0}.card-head .sub{font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary)}.card-head .right{font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);gap:var(--ant-margin-xs);align-items:center;margin-left:auto;display:flex}.grid{gap:var(--ant-margin);display:grid}.up{color:var(--ant-color-success)}.down{color:var(--ant-color-error)}.dot{background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.row{align-items:center;gap:var(--ant-margin-sm);display:flex}.ant-tree .ant-tree-node-content-wrapper{min-width:0;overflow:hidden}.col{gap:var(--ant-margin-sm);flex-direction:column;display:flex}.spacer{flex:1}.muted{color:var(--ant-color-text-tertiary)}.small{font-size:var(--ant-font-size-sm)}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:var(--ant-font-size-sm)}.strong{font-weight:var(--ant-font-weight-strong)}.kv{gap:var(--ant-margin-xs) var(--ant-margin-sm);font-size:var(--ant-font-size-sm);grid-template-columns:92px 1fr;display:grid}.kv dt{color:var(--ant-color-text-tertiary)}.kv dd{color:var(--ant-color-text);margin:0}.divider{background:var(--ant-color-split);height:1px;margin:var(--ant-margin-sm) 0}.ant-table-cell .link{color:var(--ant-color-primary);cursor:pointer}.pager-note{padding:var(--ant-padding-sm) var(--ant-padding);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);border-top:1px solid var(--ant-color-split);align-items:center;display:flex}.chat-shell{background:var(--ant-color-fill-secondary);flex-direction:column;height:100%;min-height:0;display:flex}.chat-body{flex:1;min-height:0;display:flex}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex}.chat-head{align-items:center;gap:var(--ant-margin-xs);height:44px;padding:0 var(--ant-padding);background:var(--ant-color-bg-container);border-bottom:1px solid var(--ant-color-border-secondary);flex:0 0 44px;display:flex}.guide-grid{gap:var(--ant-margin-sm);margin-top:var(--ant-margin-xxs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.guide-card{border:1px solid var(--ant-color-border-secondary);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-bg-container);padding:var(--ant-padding-sm) var(--ant-padding-sm);cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.guide-card:hover{border-color:var(--ant-color-primary-bg);box-shadow:none;transform:translateY(-1px)}.guide-card b{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text);margin-bottom:var(--ant-margin-xxs);display:flex}.guide-card span{font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);line-height:var(--ant-line-height)}.chat-scroll{padding:var(--ant-padding-lg) 0 var(--ant-padding-sm);flex:1;overflow:auto}.chat-inner{max-width:760px;padding:0 var(--ant-padding-md);gap:var(--ant-margin);flex-direction:column;margin:0 auto;display:flex}.bubble-user{background:var(--ant-color-primary);max-width:78%;color:var(--ant-color-bg-container);padding:var(--ant-padding-sm) var(--ant-padding);border-radius:var(--ant-border-radius-lg) var(--ant-border-radius-lg) var(--ant-border-radius-xs) var(--ant-border-radius-lg);font-size:var(--ant-font-size);line-height:var(--ant-line-height);align-self:flex-end}.msg-block{align-self:stretch}.msg-title{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-secondary);margin-bottom:var(--ant-margin-xs);font-weight:var(--ant-font-weight-strong);display:flex}.steps{border:1px solid var(--ant-color-border-secondary);background:var(--ant-color-bg-container);border-radius:var(--ant-border-radius-lg);padding:var(--ant-padding-sm) var(--ant-padding-sm)}.step{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-secondary);padding:var(--ant-padding-xxs) 0;display:flex}.step .idx{background:var(--ant-color-primary-bg);width:16px;height:16px;color:var(--ant-color-primary);font-size:var(--ant-font-size-sm);border-radius:50%;flex:0 0 16px;justify-content:center;align-items:center;display:flex}.code-block{background:var(--ant-color-bg-spotlight);border-radius:var(--ant-border-radius-lg);font-family:SFMono-Regular,Consolas,monospace;font-size:var(--ant-font-size-sm);overflow:hidden}.code-head{align-items:center;gap:var(--ant-margin-xs);padding:var(--ant-padding-xs) var(--ant-padding-sm);background:var(--ant-color-bg-spotlight);color:color-mix(in srgb, var(--ant-color-text-light-solid) 65%, transparent);font-size:var(--ant-font-size-sm);border-bottom:1px solid color-mix(in srgb, var(--ant-color-text-light-solid) 6%, transparent);display:flex}.code-body{padding:var(--ant-padding-sm) var(--ant-padding-sm);color:color-mix(in srgb, var(--ant-color-text-light-solid) 85%, transparent);line-height:var(--ant-line-height);max-height:260px;overflow:auto}.code-body .k{color:var(--ant-blue-3)}.code-body .s{color:var(--ant-color-success-border)}.code-body .c{color:color-mix(in srgb, var(--ant-color-text-light-solid) 45%, transparent)}.artifact{align-items:center;gap:var(--ant-margin-sm);border:1px solid var(--ant-color-border-secondary);background:var(--ant-color-bg-container);border-radius:var(--ant-border-radius-lg);padding:var(--ant-padding-sm) var(--ant-padding-sm);display:flex}.composer{border-top:1px solid var(--ant-color-border-secondary);background:var(--ant-color-bg-container);padding:var(--ant-padding-sm) var(--ant-padding-md) var(--ant-padding)}.composer-inner{border:1px solid var(--ant-color-border-secondary);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-bg-container);max-width:760px;padding:var(--ant-padding-xs) var(--ant-padding-sm);box-shadow:none;margin:0 auto}.composer textarea{resize:none;width:100%;font-size:var(--ant-font-size);line-height:var(--ant-line-height);padding:var(--ant-padding-xxs) var(--ant-padding-xxs) var(--ant-padding-xs);border:0;outline:0;font-family:inherit}.composer-tools{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);display:flex}.chip{align-items:center;gap:var(--ant-margin-xs);height:24px;padding:0 var(--ant-padding-xs);border-radius:var(--ant-border-radius);background:var(--ant-color-fill-secondary);color:var(--ant-color-text-secondary);font-size:var(--ant-font-size-sm);cursor:pointer;display:inline-flex}.chip.on{background:var(--ant-color-primary-bg);color:var(--ant-color-primary)}.chat-side{border-left:1px solid var(--ant-color-border-secondary);background:var(--ant-color-bg-container);width:268px;padding:var(--ant-padding);flex:0 0 268px;overflow:auto}.side-block{border:1px solid var(--ant-color-border-secondary);border-radius:var(--ant-border-radius-lg);padding:var(--ant-padding-sm);margin-bottom:var(--ant-margin-sm)}.side-block h4{margin:0 0 var(--ant-margin-sm);font-size:var(--ant-font-size-sm);align-items:center;gap:var(--ant-margin-xs);display:flex}.file-row{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-secondary);padding:var(--ant-padding-xs) 0;display:flex}.sess-item{padding:var(--ant-padding-xs) var(--ant-padding-sm);border-radius:var(--ant-border-radius-lg);cursor:pointer;margin-bottom:var(--ant-margin-xxs)}.sess-item:hover{background:var(--ant-color-fill-secondary)}.sess-item.on{background:var(--ant-color-primary-bg)}.sess-item b{font-size:var(--ant-font-size-sm);font-weight:var(--ant-font-weight-strong);margin-bottom:var(--ant-margin-xxs);color:var(--ant-color-text);display:block}.sess-item span{font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary)}.app-card{background:var(--ant-color-bg-container);border:1px solid var(--ant-color-border-secondary);border-radius:var(--ant-border-radius-lg);padding:var(--ant-padding);cursor:pointer;transition:box-shadow .18s,transform .18s,border-color .18s;position:relative}.app-card:hover{box-shadow:none;border-color:var(--ant-color-primary-bg);transform:translateY(-2px)}.app-icon{border-radius:var(--ant-border-radius-lg);width:38px;height:38px;color:var(--ant-color-bg-container);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size);margin-bottom:var(--ant-margin-sm);justify-content:center;align-items:center;display:flex}.app-card h3{margin:0 0 var(--ant-margin-xs);font-size:var(--ant-font-size);font-weight:var(--ant-font-weight-strong)}.app-card p{margin:0 0 var(--ant-margin-sm);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);line-height:var(--ant-line-height);min-height:38px}.app-meta{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);display:flex}.star{color:var(--ant-color-border);margin-left:auto}.star.on{color:var(--ant-color-warning)}.empty{padding:var(--ant-padding-xxl) 0;text-align:center;color:var(--ant-color-text-tertiary);font-size:var(--ant-font-size-sm)}.tl{padding-left:var(--ant-padding-md);position:relative}.tl:before{content:"";background:var(--ant-color-border-secondary);width:1px;position:absolute;top:6px;bottom:6px;left:5px}.tl-item{padding-bottom:var(--ant-padding);position:relative}.tl-item:before{content:"";background:var(--ant-color-bg-container);border:2px solid var(--ant-color-primary);border-radius:50%;width:7px;height:7px;position:absolute;top:4px;left:-17px}.tl-item b{font-size:var(--ant-font-size-sm);font-weight:var(--ant-font-weight-strong)}.tl-item p{margin:var(--ant-margin-xxs) 0 0;font-size:var(--ant-font-size-sm);color:var(--ant-color-text-tertiary);line-height:var(--ant-line-height)}.matrix{gap:var(--ant-margin-xxs);display:grid}.matrix i{border-radius:var(--ant-border-radius-xs);background:var(--ant-color-fill-secondary);height:13px;display:block}.traj{border:1px solid var(--ant-color-border-secondary);background:var(--ant-color-bg-container);border-radius:var(--ant-border-radius-lg);padding:var(--ant-padding-xs) var(--ant-padding-sm);margin-bottom:var(--ant-margin-sm)}.traj-row{align-items:flex-start;gap:var(--ant-margin-xs);padding:var(--ant-padding-xs) 0;border-bottom:1px dashed var(--ant-color-fill-secondary);font-size:var(--ant-font-size-sm);display:flex}.traj-row:last-child{border-bottom:0}.traj-row.on .traj-main b{color:var(--ant-color-primary)}.traj-dot{background:var(--ant-color-fill-secondary);width:16px;height:16px;color:var(--ant-color-text-tertiary);margin-top:var(--ant-margin-xxs);border-radius:50%;flex:0 0 16px;justify-content:center;align-items:center;display:flex}.traj-dot.ok{background:var(--ant-color-success-bg);color:var(--ant-color-success)}.traj-dot.err{background:var(--ant-color-error-bg);color:var(--ant-color-error)}.traj-main{gap:var(--ant-margin-xxs);flex-direction:column;flex:1;min-width:0;display:flex}.traj-main b{font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-sm);color:var(--ant-color-text)}.traj-detail{color:var(--ant-color-text-tertiary);font-size:var(--ant-font-size-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.traj-cursor{color:var(--ant-color-primary);font-size:var(--ant-font-size-sm);padding-left:var(--ant-padding-lg);animation:1s step-end infinite blink}.think{border:1px solid var(--ant-color-border-secondary);background:var(--ant-color-fill-secondary);border-radius:var(--ant-border-radius-lg);padding:var(--ant-padding-xs) var(--ant-padding-sm);margin-bottom:var(--ant-margin-sm)}.think-head{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.think-body{margin-top:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);line-height:var(--ant-line-height);color:var(--ant-color-text-secondary);white-space:pre-wrap;max-height:220px;overflow:auto}.stream-text{font-size:var(--ant-font-size);line-height:var(--ant-line-height);white-space:pre-wrap;word-break:break-word}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:0}}.intake-form{gap:var(--ant-margin-sm);max-height:52vh;padding-right:var(--ant-padding-xxs);flex-direction:column;display:flex;overflow:auto}.intake-field label{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);color:var(--ant-color-text-secondary);margin-bottom:var(--ant-margin-xxs);display:flex}.intake-field .req{color:var(--ant-color-error);font-style:normal}.intake-field .missing{color:var(--ant-color-error);margin-left:auto}.intent-card{margin:var(--ant-margin-sm) 0;padding:var(--ant-padding-sm) var(--ant-padding-sm);border:1px solid var(--ant-color-primary-border-hover);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-primary-bg);font-size:var(--ant-font-size-sm);line-height:var(--ant-line-height)}.intent-head{align-items:center;gap:var(--ant-margin-xs);color:var(--ant-color-primary);display:flex}.intent-goal{margin:var(--ant-margin-xxs) 0 var(--ant-margin-xs);font-weight:var(--ant-font-weight-strong);color:var(--ant-color-text)}.intent-row{align-items:center;gap:var(--ant-margin-xs);margin-top:var(--ant-margin-xxs);flex-wrap:wrap;display:flex}.intent-chip{padding:var(--ant-padding-xxs) var(--ant-padding-xs);background:var(--ant-color-primary-bg-hover);color:var(--ant-color-primary-active);font-size:var(--ant-font-size-sm);white-space:nowrap;border-radius:999px}.intent-sin{margin-top:var(--ant-margin-xs);color:var(--ant-color-text-secondary)}.intent-missing{margin-top:var(--ant-margin-xs);color:var(--ant-color-warning)}@keyframes kthFadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes kthBlink{50%{opacity:0}}.intent-card,.traj-row{animation:.18s ease-out both kthFadeUp}.stream-text .caret{width:7px;height:14px;margin-left:var(--ant-margin-xxs);vertical-align:-2px;opacity:.55;background:currentColor;animation:1s steps(2,start) infinite kthBlink;display:inline-block}.msg-block.live .traj-dot.on{box-shadow:0 0 0 3px var(--ant-color-primary-border);transition:box-shadow .2s}.rounds{margin:var(--ant-margin-xs) 0;gap:var(--ant-margin-xxs);flex-direction:column;display:flex}.round-row{align-items:center;gap:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);padding:var(--ant-padding-xxs) var(--ant-padding-xs);border-radius:var(--ant-border-radius-lg);background:var(--ant-color-primary-bg);animation:.18s ease-out both kthFadeUp;display:flex}.round-row.on{background:var(--ant-color-primary-bg-hover)}.round-no{color:var(--ant-color-text-secondary);white-space:nowrap}.round-score{color:var(--ant-color-primary)}.round-issue{color:var(--ant-color-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}
