:root{color:#1d2528;background:#f4f6f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #b9c3bd;border-radius:6px;background:#fff;color:#162024;min-height:36px;padding:0 12px;display:inline-flex;gap:6px;align-items:center;justify-content:center;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{border:1px solid #b9c3bd;border-radius:6px;background:#fff;color:#162024;min-height:36px;padding:0 10px}.shell{min-height:100vh;display:grid;grid-template-rows:auto auto auto 1fr}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #d7ddd8;background:#f9faf8}.top-actions{display:flex;gap:8px}.topbar h1{margin:0;font-size:22px}.topbar p{margin:4px 0 0;color:#556167;font-size:13px}.connection{display:grid;gap:10px;padding:14px 24px;border-bottom:1px solid #d7ddd8;background:#eef3f0}.pairing,.toolbar,.file-filters,.searchbar,.merge-controls,.pager,.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pairing input:first-of-type{min-width:min(460px,100%);flex:1}.primary-action{background:#1f6f68;color:#fff;border-color:#1f6f68}.hint,.empty{color:#556167;font-size:13px}.error{margin:0;color:#a02727;font-weight:600}.tabs{display:flex;gap:8px;padding:10px 24px;background:#fff;border-bottom:1px solid #d7ddd8}.tabs button.active{background:#1f6f68;color:#fff;border-color:#1f6f68}.workspace{min-height:0;padding:16px 24px 24px}.files-layout,.db-layout{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:16px}.sidebar{overflow:auto;border-right:1px solid #d7ddd8;padding-right:12px;min-height:0}.sidebar>button,.server-list button,.managed-files button,.tree button,.results button{width:100%;justify-content:flex-start;border-color:transparent;background:transparent;text-align:left;min-height:30px}.server-list{display:grid;gap:6px;margin-top:10px}.server-list button{align-items:flex-start;flex-direction:column;gap:2px;padding:8px 10px}.server-list small,.managed-files small{color:#69757a}.managed-files button{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(180px,.9fr) minmax(150px,auto);align-items:center;gap:14px;min-height:54px;padding:7px 10px}.file-main{min-width:0;display:grid;gap:3px}.file-name,.file-path{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name{font-weight:600;color:#162024}.file-path{font-size:12px}.file-function{min-width:0;display:grid;gap:4px;justify-items:start}.file-summary{color:#445057;font-size:12px;line-height:1.35;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{display:grid;grid-template-columns:auto;gap:4px;align-items:center;justify-content:end;min-width:max-content;font-size:12px;text-align:right}.function-badge{border:1px solid #9bc8bd;border-radius:999px;padding:2px 7px;color:#1f6f68!important;background:#edf8f4;font-weight:600;line-height:1.25;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected{background:#dfeee9!important;border-color:#9bc8bd!important}.tree,.tree ul{list-style:none;padding-left:10px;margin:4px 0}.editor{min-width:0;display:grid;grid-template-rows:auto auto minmax(90px,180px) auto auto minmax(260px,1fr) auto minmax(80px,150px);gap:10px}.server-summary{min-width:0}.managed-files{overflow:auto;display:grid;gap:4px;padding:6px;border:1px solid #d7ddd8;border-radius:8px;background:#fff}.file-filters{min-width:0}.file-filters input{flex:1;min-width:180px}.file-filters select{max-width:min(320px,100%)}.filter-count{color:#556167;font-size:13px}.function-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px;padding:9px 11px;border:1px solid #d7ddd8;border-radius:8px;background:#f8fbfa;color:#263238;font-size:13px}.function-panel strong,.function-panel span{min-width:0}.function-panel span{color:#556167;line-height:1.45}.inline-action{grid-row:1 / span 2;grid-column:2;align-self:center;min-height:30px;padding:0 10px;white-space:nowrap}.ai-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:16px;min-height:0}.ai-settings{display:grid;align-content:start;gap:10px;border-right:1px solid #d7ddd8;padding-right:14px;min-width:0}.ai-settings label{display:grid;gap:4px;color:#556167;font-size:13px}.ai-settings input{width:100%}.check-row{grid-template-columns:auto 1fr;align-items:center}.quick-prompts{display:grid;gap:6px;margin-top:4px}.quick-prompts button{justify-content:flex-start;min-height:30px}.ai-session-list{display:grid;gap:6px;min-height:0;overflow:auto}.ai-session-list button{display:grid;gap:2px;justify-content:stretch;justify-items:start;min-height:54px;padding:8px 10px;text-align:left}.ai-session-list span,.ai-session-list small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-panel{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(280px,1fr) auto;gap:10px}.ai-file-context{display:grid;gap:3px;padding:9px 11px;border:1px solid #d7ddd8;border-radius:8px;background:#f8fbfa;color:#263238;font-size:13px}.ai-file-context span{min-width:0;color:#556167;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-messages{overflow:auto;display:grid;align-content:start;gap:10px;padding:10px;border:1px solid #d7ddd8;border-radius:8px;background:#fff}.ai-message{display:grid;gap:5px;max-width:min(880px,92%);padding:10px 12px;border:1px solid #e0e6e2;border-radius:8px;background:#f8fbfa}.ai-message.user{justify-self:end;background:#eef7f4;border-color:#b9d8d0}.markdown-body{margin:0;line-height:1.55;overflow-wrap:anywhere}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body blockquote,.markdown-body pre,.markdown-body table{margin:0 0 10px}.markdown-body ul,.markdown-body ol{padding-left:22px}.markdown-body code{padding:2px 5px;border-radius:5px;background:#edf1ef;font-family:Consolas,Courier New,monospace;font-size:.92em}.markdown-body pre{max-width:100%;overflow:auto;padding:10px;border-radius:8px;background:#17201d;color:#f4f7f5}.markdown-body pre code{padding:0;background:transparent;color:inherit}.markdown-body blockquote{padding-left:10px;border-left:3px solid #9bc8bd;color:#556167}.markdown-body table{width:100%;border-collapse:collapse}.markdown-body th,.markdown-body td{border:1px solid #d7ddd8;padding:6px 8px}.markdown-body a{color:#1f6f68}.ai-message.pending{color:#556167}.typing-indicator{display:inline-flex;align-items:center;gap:6px;min-height:22px}.typing-indicator span{width:6px;height:6px;border-radius:999px;background:#3c8f7f;animation:typing-pulse 1.1s ease-in-out infinite}.typing-indicator span:nth-child(2){animation-delay:.14s}.typing-indicator span:nth-child(3){animation-delay:.28s}@keyframes typing-pulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.ai-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.ai-input textarea{min-height:72px;resize:vertical}.ai-input button{align-self:end;min-height:38px}.tag{border:1px solid #9bc8bd;border-radius:999px;padding:3px 8px;color:#1f6f68;background:#edf8f4;font-size:12px}.path-label{flex:1;min-width:160px;color:#556167;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-button{width:36px;padding:0}.danger{border-color:#d2a3a3;color:#9c2929}.danger-text{color:#9c2929}textarea{width:100%;min-height:320px;padding:12px;resize:none;font-family:Cascadia Code,Consolas,monospace}.sheet-editor{min-height:280px;min-width:0;display:grid;grid-template-rows:auto 1fr;gap:8px}.sheet-scroll{overflow:auto;border:1px solid #d7ddd8;border-radius:8px;background:#fff}.sheet-scroll th{width:52px;color:#69757a;text-align:right}.sheet-scroll td{min-width:120px;padding:4px}.sheet-scroll input{width:100%;min-height:30px;border-color:transparent;background:transparent;border-radius:4px}.sheet-scroll input:focus{outline:2px solid #9bc8bd;background:#f8fcfa}.searchbar input{flex:1}.results{overflow:auto}.table-panel{min-width:0;display:grid;gap:10px;grid-template-rows:auto 1fr auto}.table-scroll{overflow:auto;border:1px solid #d7ddd8;border-radius:8px;background:#fff}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid #e4e8e5;padding:8px 10px;text-align:left;vertical-align:top;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}th{position:sticky;top:0;background:#edf3ef;z-index:1}.merge-layout{display:grid;gap:16px;align-content:start}.merge-controls select{min-width:180px}pre{white-space:pre-wrap;padding:12px;border:1px solid #d7ddd8;border-radius:8px;background:#fff}.modal{border:1px solid #b9c3bd;border-radius:8px;padding:0;width:min(620px,calc(100vw - 32px))}.modal form{display:grid;gap:12px;padding:18px}.modal h2{margin:0;font-size:18px}.modal label{display:grid;gap:4px}.settings-modal input{width:100%}.modal-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:820px){.files-layout,.db-layout,.ai-layout{grid-template-columns:1fr}.sidebar,.ai-settings{border-right:0;border-bottom:1px solid #d7ddd8;padding-right:0;padding-bottom:12px;max-height:260px}.managed-files button{grid-template-columns:1fr;align-items:start}.file-meta{grid-template-columns:1fr;justify-content:start;gap:2px;min-width:0;text-align:left}.function-panel{grid-template-columns:1fr}.inline-action{grid-row:auto;grid-column:auto;justify-self:start}.ai-input{grid-template-columns:1fr}}
