
:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#293531;background:#f7f8f5;font-synthesis:none;font-size:14px;--green:#245e47;--line:#dfe5df;--muted:#7e8982}*{box-sizing:border-box}body{margin:0;display:flex;height:100vh;overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:background .15s,transform .15s}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,textarea:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #76a78b;outline-offset:2px}button{border:1px solid var(--line);border-radius:7px;padding:9px 12px;background:#fff;color:inherit}button:hover:not(:disabled){background:#edf2ec}select,input,textarea{border:1px solid var(--line);background:#fff;border-radius:7px;color:inherit;padding:10px;min-width:0}select{cursor:pointer}textarea{resize:vertical;line-height:1.65}small{font-size:11px}.sidebar{width:248px;min-width:248px;background:#edf0e9;border-right:1px solid #dce2da;padding:29px 18px 16px;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;padding:0 6px 30px}.logo{background:#2c6249;color:#fff;font-size:28px;width:39px;height:42px;border-radius:11px;display:grid;place-items:center}.brand strong{display:block;font-size:15px;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:1.7px;margin-top:5px;color:#7e8c80}.new-button{display:flex;align-items:center;background:#fff;border-color:#cfdacf;color:var(--green);font-weight:600;padding:12px;margin-bottom:30px}.new-button kbd{margin-left:auto;font-size:9px;font-weight:400;color:#8c978e;background:#f2f5ef;padding:3px 5px;border-radius:3px}.section-label{display:flex;align-items:center;font-size:11px;color:#7b877d;font-weight:600;letter-spacing:.8px;margin:0 5px 10px}.section-label button{margin-left:auto;padding:0;border:0;background:none;font-size:21px;color:#687e6d}.sidebar select{width:100%;font-size:12px;background:#f7f9f4}.path{font-family:Consolas,monospace;font-size:10px;color:#919a91;padding:0 5px;overflow-wrap:anywhere;line-height:1.5;max-height:44px;overflow:auto;margin:9px 0 26px}.history-label span{margin-left:auto;font-size:10px}#chats{flex:1;overflow-y:auto;margin:0 -5px}.chat-link{display:block;text-align:left;background:none;border:0;padding:12px 11px;margin-bottom:3px;width:100%;border-radius:6px}.chat-link.active{background:#dfe8dc;color:#234e38}.chat-link strong{display:block;font-size:12px;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-link small{display:flex;color:#8a948c;font-size:10px;margin-top:7px;gap:5px}.no-chats{padding:15px 10px;color:#8f998f;font-size:12px}.sidebar-bottom{padding-top:16px;border-top:1px solid #dce2d8}.sidebar-bottom>button{border:0;background:none;padding:8px;font-size:16px;display:flex;gap:9px;align-items:center}.sidebar-bottom>button span{font-size:12px}.connection{display:flex;gap:7px;align-items:center;color:#859086;font-size:10px;margin:14px 7px 0}.connection i,.dot{width:6px;height:6px;background:#aaa;border-radius:50%;display:inline-block}.connection i.ok,.dot{background:#4f9774}.connection i.bad{background:#c78057}.connection button{margin-left:auto;border:0;padding:0;background:none;font-size:17px}main{flex:1;min-width:0;display:flex;flex-direction:column}header{height:95px;min-height:95px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fcfdfa;border-bottom:1px solid var(--line)}.eyebrow{font-size:9px;letter-spacing:1.7px;color:#8b968e}h1{font-weight:550;font-size:18px;letter-spacing:.2px;margin:7px 0 0}.header-right{display:flex;align-items:center;gap:18px}.local-badge{font-size:10px;color:#5b8168;background:#edf4ec;border:1px solid #dfebdc;border-radius:20px;padding:6px 10px}.subtle{border:0;background:none;font-size:12px;color:#7a887e}.workspace{display:flex;flex:1;min-height:0}.conversation{display:flex;flex-direction:column;flex:1;min-width:0;background:#fcfdfa}#messages{flex:1;overflow-y:auto;padding:28px 32px 20px;scroll-behavior:smooth}.welcome{max-width:700px;margin:7vh auto 20px;text-align:center}.welcome-symbol{font-size:47px;color:#46735a;margin-bottom:22px;display:inline-grid;place-items:center;width:78px;height:78px;border-radius:24px;background:linear-gradient(145deg,#e8eee0,#f4f6ed);border:1px solid #e3e9dd;box-shadow:0 10px 20px #234d3310;transform:rotate(-5deg)}.welcome>.eyebrow{display:block;font-size:9px;color:#78917d}.welcome h2{font-size:27px;font-weight:500;letter-spacing:-.5px;margin:15px 0}.welcome p{font-size:13px;color:#8a948e;line-height:1.9}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:36px auto 0}.suggestions button{text-align:left;background:#f9faf6;border-color:#e6eadd;padding:17px 15px}.suggestions button>span{font:10px Consolas,monospace;color:#93a28c}.suggestions strong{display:block;font-size:12px;font-weight:500;margin:17px 0 7px}.suggestions small{font-size:10px;color:#94a08e}.composer-wrap{padding:12px 28px 18px}#composer{border:1px solid #d8e1d5;border-radius:12px;background:#fff;box-shadow:0 6px 18px #2c503808;overflow:hidden}#prompt{width:100%;border:0;background:transparent;resize:none;max-height:200px;min-height:75px;font-size:13px;padding:17px;outline:none}#prompt::placeholder{color:#a0a99f}.composer-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px 11px;gap:8px}.composer-toolbar>div{display:flex;min-width:0;gap:3px}.composer-toolbar select{border:0;background:#f3f5f0;font-size:10px;padding:7px 6px;max-width:170px}.primary{background:var(--green);color:white;border-color:var(--green);font-size:12px}.primary:hover:not(:disabled){background:#1b4936}.primary span{margin-left:14px}.composer-note{display:flex;justify-content:space-between;font-size:9px;color:#9aa297;padding:10px 4px 0;gap:10px}.stop{font-size:12px;color:#a76647;border-color:#e2cdbc}.detail-panel{width:300px;min-width:270px;border-left:1px solid var(--line);display:flex;flex-direction:column;background:#f5f7f1}.detail-panel[hidden]{display:none}.panel-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:0 20px}.panel-tabs button{font-size:12px;background:none;border:0;border-radius:0;padding:19px 0;color:#929b91}.panel-tabs button.active{color:#315e43;border-bottom:2px solid #497c55}.panel-content{padding:18px;overflow:auto;flex:1}.panel-empty{text-align:center;margin:15vh auto 0;color:#95a08f}.panel-empty>span{font-size:35px;display:block;color:#a4b69c}.panel-empty strong{font-size:12px;font-weight:400;display:block;margin-top:13px}.panel-empty p{font-size:11px;line-height:1.8;color:#a1aa9c}.panel-footer{padding:15px 20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px;font-size:10px;color:#85967e}.message{max-width:900px;margin:0 auto 26px;line-height:1.8;font-size:13px;overflow-wrap:anywhere}.message .byline{display:flex;align-items:center;gap:8px;font-size:10px;color:#83917f;margin-bottom:9px}.byline .avatar{width:24px;height:24px;border-radius:7px;background:#e8eee2;display:grid;place-items:center;font-size:15px;color:#41674b}.message.user .message-text{background:#eef2e9;padding:13px 17px;border:1px solid #e4eadd;border-radius:9px}.message-text{white-space:pre-wrap}.message-text pre{background:#eff2ea;padding:13px;border:1px solid #dfe6d7;border-radius:7px;overflow-x:auto;font:12px/1.7 Consolas,monospace;white-space:pre;margin:12px 0}.message-text code{font-family:Consolas,monospace}.message-text p{margin:6px 0}.message.note{color:#8c9687;font-size:11px}.activity-card{background:#fcfdf9;border:1px solid #e1e7da;border-radius:7px;margin-bottom:12px;overflow:hidden}.activity-card summary{cursor:pointer;padding:12px;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.activity-card pre{font:10px/1.7 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;padding:10px;margin:0;border-top:1px solid #e7ebdf;max-height:300px;overflow:auto}.activity-card .done{color:#66855d}.plan-row{font-size:11px;padding:7px 0;line-height:1.6;color:#72856b}.plan-row.completed{color:#94a08c}.diff-tools{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:12px;gap:5px}.diff-tools button{font-size:9px;padding:5px}.panel-content>pre,#gitResult pre{font:10px/1.7 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.muted{color:#8c9887;font-size:11px;line-height:1.7}.error-banner{margin:0 28px;background:#fff1e8;border:1px solid #edd4c4;border-radius:7px;padding:12px;color:#986247;font-size:12px;overflow-wrap:anywhere}.requests{padding:0 28px;max-height:40vh;overflow:auto}.request-card{background:#fff9e9;border:1px solid #e8dfbe;padding:15px;border-radius:8px;font-size:12px;margin-bottom:10px}.request-card pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto;font-size:11px}.request-actions{display:flex;gap:8px;margin-top:10px}.request-card input{display:block;width:100%;margin:9px 0}.request-card label{font-size:12px}dialog{border:1px solid #d8e1d3;border-radius:16px;padding:28px;width:min(660px,92vw);max-height:90vh;color:#293531;background:#fcfdf9;box-shadow:0 24px 100px #1c382d30}dialog::backdrop{background:#172b2360;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.dialog-heading h2{font-size:20px;font-weight:500;margin:8px 0}.dialog-heading button{padding:0;border:0;background:none;font-size:25px;color:#8a9586}dialog label{display:block;font-size:12px;font-weight:600;margin:17px 0 8px}dialog input,dialog textarea{width:100%;font-size:12px}dialog textarea{font-family:inherit}dialog .muted{margin:6px 0 10px}.input-row{display:flex;gap:8px}.input-row input{flex:1}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.field-error{color:#a65c42;font-size:12px}.browser-heading{display:flex;gap:10px;align-items:center;font-size:10px;margin:15px 0}.browser-heading span{overflow-wrap:anywhere}#folders{max-height:220px;overflow:auto;border:1px solid #e0e7d9;padding:7px;border-radius:7px}#folders button{display:block;width:100%;border:0;text-align:left;background:none;font-size:12px;padding:8px}#selectFolder{margin-top:10px;font-size:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:10;background:#294e3a;color:#fff;padding:12px 24px;border-radius:8px;box-shadow:0 6px 20px #0002;font-size:12px}[hidden]{display:none!important}@media(min-width:1600px){.detail-panel{width:350px}.conversation #messages{padding:35px 6%}.composer-wrap{padding:12px 6% 22px}.welcome{margin-top:12vh}}@media(max-width:1100px){.detail-panel{width:250px;min-width:230px}.sidebar{width:210px;min-width:210px}header{padding:0 24px}.suggestions{gap:7px}.suggestions button{padding:14px 10px}.suggestions small{font-size:9px}.welcome h2{font-size:23px}.composer-toolbar select{max-width:120px}}@media(max-width:900px){.detail-panel{display:none}.detail-panel.mobile-open{display:flex;position:fixed;right:0;top:95px;bottom:0;width:320px;z-index:3;box-shadow:-8px 0 25px #243c2020}.welcome{margin-top:5vh}}@media(max-width:650px){.sidebar{width:66px;min-width:66px;padding:23px 8px 15px}.brand{padding:0 5px 23px}.brand>div,.new-button kbd,.section-label,.sidebar select,.path,#chats,.sidebar-bottom>button span,.connection span,.connection button{display:none}.new-button{font-size:0;padding:10px;margin-bottom:16px}.new-button:before{content:'＋';font-size:20px;margin:auto}.sidebar-bottom{margin-top:auto}.sidebar-bottom>button{padding:9px}.logo{width:38px;height:38px;font-size:24px}.connection{justify-content:center}.local-badge{display:none}header{padding:0 18px;height:80px;min-height:80px}h1{font-size:15px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#messages{padding:20px 16px}.welcome h2{font-size:20px}.welcome-symbol{width:60px;height:60px;font-size:34px}.suggestions{grid-template-columns:1fr;text-align:left;margin-top:23px}.suggestions button{display:flex;align-items:center;gap:12px;padding:13px}.suggestions strong{margin:0}.suggestions small{margin-left:auto}.composer-wrap{padding:8px 12px 14px}.composer-note{font-size:8px}.composer-toolbar{flex-wrap:wrap;padding:8px}.composer-toolbar select{max-width:130px}#send{margin-left:auto}.detail-panel.mobile-open{top:80px;width:calc(100vw - 66px)}.requests{padding:0 12px}.error-banner{margin:0 12px}}

.project-tools{display:grid;gap:3px;margin:-12px 0 25px}.project-tools button{border:0;background:transparent;display:flex;align-items:center;gap:9px;font-size:15px;padding:10px;color:#52745e}.project-tools button span{font-size:12px}.project-tools small{margin-left:auto;background:#dfe8db;color:#67805c;padding:2px 6px;border-radius:4px;font-size:9px}.resource-strip{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 1px 9px}.resource-strip>button{background:none;border:0;padding:3px 0;font-size:10px;color:#6e846d}.resource-strip #selectedResources{display:flex;gap:4px;flex-wrap:wrap}.resource-strip #selectedResources button{font-size:10px;padding:4px 7px;background:#e9f0e4;border-color:#d9e4d1;color:#4d704c;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-dialog{width:min(1060px,95vw);height:min(840px,94vh);padding:25px;overflow:hidden}.library-dialog[open]{display:flex;flex-direction:column}.library-dialog .dialog-heading{margin-bottom:12px}.library-dialog .dialog-heading h2{margin-bottom:4px}.library-dialog .dialog-heading p{margin:0}.library-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe6d8}.library-tabs{display:flex;gap:24px}.library-tabs button{background:none;border:0;border-radius:0;font-size:13px;padding:14px 0;color:#88977e}.library-tabs button.active{border-bottom:2px solid #3d724d;color:#315f3e}.library-top>.primary{padding:8px 13px}.library-hint{font-size:10px;color:#8a967f;line-height:1.7;margin:12px 0}.library-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;min-height:0;flex:1}.resource-list-pane{display:flex;flex-direction:column;min-height:0;border-right:1px solid #e2e8dc;padding-right:19px}#resourceSearch{width:100%;margin-bottom:12px;background:#f5f8f0;font-size:11px}#resourceList{overflow-y:auto;flex:1}.resource-card{border:1px solid #e1e8da;background:white;border-radius:9px;margin-bottom:10px;overflow:hidden}.resource-card.selected{border-color:#8cab7b;box-shadow:0 0 0 1px #8cab7b30}.resource-open{display:block;text-align:left;width:100%;border:0;border-radius:0;padding:14px}.resource-open strong{font-size:12px;font-weight:600}.resource-open p{font-size:11px;color:#88937f;line-height:1.6;margin:7px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.resource-open small{font-size:9px;color:#a1aa96}.resource-card-footer{display:flex;align-items:center;justify-content:space-between;padding:6px 12px 10px;gap:5px}.resource-card-footer label{margin:0;font-weight:400;font-size:10px;display:flex;align-items:center;gap:4px;color:#7c8b71}.resource-card-footer input{width:auto;accent-color:#3e724c}.status-pill{border:0;background:#f0f1ed;color:#98a18e;font-size:9px;padding:4px 7px;border-radius:20px}.status-pill.enabled{background:#eaf2e3;color:#567e4b}.resource-editor-pane{min-height:0;overflow:auto;padding:1px 3px 5px}.resource-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:350px;color:#8b9b80;text-align:center}.resource-empty>span{font-size:40px}.resource-empty h3{font-size:16px;font-weight:500;margin:18px 0 8px}.resource-empty p{font-size:12px;line-height:1.9;color:#9da88f}.list-empty{padding:35px 8px;text-align:center;font-size:12px;color:#9ca68f;line-height:1.8}.resource-form-heading{display:flex;align-items:center;justify-content:space-between}.resource-form-heading strong{font-size:13px}.resource-form-heading span{font-size:10px;color:#8f9d82}#resourceForm label{font-size:11px;margin:13px 0 6px}#resourceForm input,#resourceForm textarea{font-size:12px;padding:9px}#skillNameField small{font-size:9px;color:#98a38c;display:block;margin-top:5px}.content-label{display:flex;align-items:center;justify-content:space-between}.content-label button{padding:3px 7px;font-size:10px;margin:8px 0 4px;color:#6b865b}#resourceContent{font-family:Consolas,"Microsoft YaHei",monospace;line-height:1.8;min-height:190px}.check-row{display:flex!important;align-items:center;gap:7px;font-weight:400!important;color:#75896a}.check-row input{width:auto;accent-color:#3e724c}.resource-storage{font:9px/1.7 Consolas,monospace;color:#a0aa95;overflow-wrap:anywhere;margin-top:10px}.resource-actions{display:flex;gap:7px;align-items:center;justify-content:flex-end;margin-top:16px;padding-bottom:5px}.resource-actions button,.button-link{font-size:10px;padding:7px 9px;white-space:nowrap}.danger-text{color:#b77b69;margin-right:auto;background:none;border:0}.button-link{display:inline-block;text-decoration:none;color:#6c855b;border:1px solid #dfe6d9;border-radius:6px;background:white}.library-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #e0e7d9;margin-top:18px;padding-top:14px}.library-bottom>span{font-size:10px;color:#8a9a7a}.message-attachments{display:flex;flex-direction:column;gap:4px;margin-top:8px}.message-attachments details{border:1px solid #dce6d3;border-radius:6px;background:#f3f7ee;font-size:10px;padding:6px 9px;color:#6e8661}.message-attachments summary{cursor:pointer}.message-attachments pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:250px;overflow:auto;font:11px/1.7 Consolas,"Microsoft YaHei",monospace;color:#637358}@media(max-width:800px){.library-layout{grid-template-columns:220px minmax(0,1fr);gap:14px}.library-dialog{padding:18px}.resource-actions{flex-wrap:wrap}.library-tabs{gap:15px}}@media(max-width:650px){.project-tools{margin:0 0 12px}.project-tools button{justify-content:center;padding:10px}.project-tools button span,.project-tools small{display:none}.sidebar select{display:block;font-size:9px;padding:5px 0;margin:6px 0 12px}.library-dialog{height:94vh;padding:16px}.library-layout{display:flex;flex-direction:column;gap:12px;overflow:auto}.resource-list-pane{min-height:150px;max-height:210px;border-right:0;border-bottom:1px solid #e2e8dc;padding:0 0 8px;flex-shrink:0}.resource-editor-pane{overflow:visible;flex-shrink:0}.resource-empty{min-height:150px}.resource-empty h3{margin:8px 0}.resource-empty p{margin:0}.library-hint{font-size:9px}.library-tabs{gap:12px}.library-tabs button{font-size:12px}.library-top>.primary{font-size:10px;padding:7px}.library-bottom{margin-top:10px}.library-bottom>span{font-size:9px}.resource-strip #selectedResources button{max-width:160px}.resource-actions{justify-content:flex-start}}

.resource-actions{position:sticky;bottom:0;background:#fcfdf9;padding:10px 0;border-top:1px solid #e4eadf;z-index:1}

#imageDraft:not([hidden]){display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:12px}#imagePreview{max-width:100px;max-height:60px;object-fit:contain}#imageName{overflow-wrap:anywhere}.sent-image{display:block;max-width:min(100%,320px);max-height:180px;margin-top:8px;object-fit:contain}
.server-notice{margin:0;padding:9px 28px;background:#edf3e8;color:#526849;font-size:12px;line-height:1.6;border-bottom:1px solid #dce6d5}.login-page{display:grid;place-items:center;min-height:100vh;min-height:100dvh;height:auto;overflow:auto;padding:24px;background:#f3f6ee}.login-page .login-card{display:block;width:min(100%,440px);height:auto;min-height:0;flex:none;margin:0;padding:40px;border:1px solid #dfe7d7;border-radius:18px;background:#fcfdf9;box-shadow:0 14px 55px #304b2010}.login-symbol{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:14px;background:#e9f0e1;color:#315e43;font-size:35px}.login-card .eyebrow{margin-top:28px}.login-card h1{font-size:26px;font-weight:600;line-height:1.4;margin:12px 0}.login-description{color:#77866c;font-size:14px;line-height:1.8}.login-card form{margin-top:28px}.login-card input{width:100%;font-size:16px}.login-card .primary{width:100%;padding:12px}.login-footnote{margin-top:25px;color:#849278;font-size:12px;line-height:1.8}.login-card .field-error{min-height:20px;overflow-wrap:anywhere}@media(max-width:650px){.login-page{padding:18px}.login-page .login-card{padding:28px 22px}.login-card h1{font-size:23px}.server-notice{padding:8px 16px;font-size:11px}.header-right{gap:5px;flex-wrap:wrap}.header-right button{font-size:11px}}
