:root{--ink:#1e332f;--muted:#73817c;--paper:#f5f4ef;--line:#dedfd8;--green:#315e52;--lime:#dff18b;--white:#fff;--serif:ui-serif,"Noto Serif SC","Songti SC",serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,Microsoft YaHei,system-ui,sans-serif}.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.shell>aside{background:#e9ebe4;border-right:1px solid #d6d9d1;padding:28px 18px;display:flex;flex-direction:column;position:fixed;width:236px;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px}.brand>span{display:grid;place-items:center;background:var(--ink);color:#eef2c9;width:35px;height:35px;border-radius:10px;font-size:22px}.brand b,.brand>span{font-family:var(--serif)}.brand b{font-size:20px}.brand small{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted)}nav{display:flex;flex-direction:column;gap:5px}button{font:inherit;color:inherit;cursor:pointer}.aside-bottom button,nav button{border:0;background:transparent;border-radius:10px;padding:11px 13px;text-align:left;display:flex;align-items:center;gap:11px;color:#56655f;font-weight:550}.aside-bottom svg,nav svg{width:18px}nav button.active{background:#fff;color:var(--ink);box-shadow:0 2px 12px #2e473510}.aside-bottom{margin-top:auto}.profile{border-top:1px solid #d3d6ce;margin-top:13px;padding:18px 8px 0;display:flex;gap:10px;align-items:center}.profile i{font-style:normal;background:var(--green);color:white;border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.profile div{flex:1 1}.profile b,.profile small{display:block;font-size:12px}.profile small{color:var(--muted);margin-top:2px}.workspace{grid-column:2;min-width:0}header{height:90px;padding:21px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#f5f4eff0;position:-webkit-sticky;position:sticky;top:0;z-index:2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.drawer>small,.section-title small,header small{font-size:9px;letter-spacing:2px;color:#82908b;font-weight:700}header h2{margin:3px 0 0;font-family:var(--serif);font-weight:600}.head-actions{display:flex;gap:10px}.head-actions button{border:1px solid var(--line);border-radius:9px;padding:10px 14px;background:#fff;display:flex;gap:8px;align-items:center}.head-actions svg{width:16px}.head-actions .new{background:var(--ink);color:#fff;border-color:var(--ink)}.hero{max-width:900px;margin:68px auto 48px;text-align:center;padding:0 30px}.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--green);background:#e3e8d6;border:1px solid #d4ddba;border-radius:20px;padding:7px 12px}.eyebrow svg{width:14px}.hero h1{font-family:var(--serif);font-size:44px;letter-spacing:-1.4px;margin:18px 0 8px;font-weight:540}.hero h1 em{font-style:normal;color:#628071}.hero>p{color:var(--muted);margin:0 0 28px}.composer{background:#fff;border:1px solid #d8dbd3;box-shadow:0 16px 40px #334b3c14;border-radius:18px;padding:17px;text-align:left}.composer:focus-within{outline:2px solid #a2bda5}.composer textarea{border:0;outline:0;resize:none;width:100%;min-height:74px;font:16px/1.6 inherit;color:var(--ink)}.composer-foot{display:flex;justify-content:space-between;align-items:center}.composer-foot>div{display:flex;gap:6px}.composer-foot button{border:0;background:#f2f3ef;border-radius:8px;height:34px;min-width:34px}.composer-foot svg{width:17px}.composer-foot .chip{font-size:9px;padding:0 9px;color:var(--muted)}.composer-foot .chip.on{background:#dbe5d7;color:var(--green);font-weight:700}.composer-foot .send{background:var(--ink);color:#fff}.modes{display:flex;justify-content:center;gap:20px;margin-top:15px;color:#88958f;font-size:12px}.modes .chosen{color:var(--green);font-weight:700}.error{display:flex;align-items:center;gap:7px;margin:12px auto;color:#984940;font-size:12px;justify-content:center}.error svg{width:16px}.overview{padding:32px 40px 60px;border-top:1px solid var(--line)}.section-title{display:flex;justify-content:space-between;align-items:flex-end;max-width:1200px;margin:auto}.section-title h3{font-family:var(--serif);font-size:25px;margin:3px 0}.section-title button{background:transparent;border:0;color:var(--muted)}.cards{max-width:1200px;margin:18px auto;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px}.project{border:1px solid var(--line);background:#fafaf7;border-radius:13px;padding:18px;text-align:left;min-height:195px}.project:hover{transform:translateY(-2px);box-shadow:0 9px 25px #35493e12}.project-top{display:flex;justify-content:space-between}.state{display:inline-flex;align-items:center;gap:5px;font-size:9px;background:#e8eae5;padding:5px 8px;border-radius:10px;letter-spacing:.5px}.state svg{width:12px;height:12px}.state.completed{background:#e1eecf;color:#3c6548}.state.blocked,.state.failed{background:#f4dfd4;color:#985849}.project h4{font-family:var(--serif);font-size:17px;margin:20px 0 6px}.project p{font-size:12px;color:var(--muted);height:37px;overflow:hidden;margin:0}.line{height:3px;background:#e2e3de;margin:20px 0 9px;border-radius:2px}.line i{display:block;height:100%;background:#718c76}.project>small{color:#8c9792}.empty,.module-empty{grid-column:1/-1;text-align:center;padding:50px;border:1px dashed #ccd1c8;border-radius:13px;color:var(--muted)}.empty svg,.module-empty svg{width:32px}.empty h4,.module-empty h3{color:var(--ink);margin:8px}.module{padding:55px 40px;max-width:1250px;margin:auto}.module-head{display:flex;gap:18px;align-items:center;margin-bottom:35px}.module-icon{width:55px;height:55px;display:grid;place-items:center;border-radius:14px;background:var(--ink);color:#e7efbf}.module-head h1{font:32px var(--serif);margin:0}.module-head p{color:var(--muted);margin:4px 0}.table{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden}.table button{display:grid;grid-template-columns:38px 1fr 120px 120px 20px;grid-gap:12px;gap:12px;align-items:center;width:100%;border:0;border-bottom:1px solid #e8e8e3;background:white;text-align:left;padding:14px 18px}.table button:hover{background:#f8f8f4}.table button>span{font-size:12px;color:var(--muted)}.doc{width:30px;height:30px;background:#ebeee4;border-radius:8px;display:grid!important;place-items:center}.doc svg{width:15px}.shade{position:fixed;inset:0;background:#17221c55;z-index:5}.drawer{position:absolute;right:0;top:0;width:430px;height:100%;background:#fbfbf7;padding:38px;overflow:auto;box-shadow:-20px 0 50px #15241c25}.drawer .close{position:absolute;right:22px;top:18px;border:0;background:transparent;font-size:28px}.drawer h2{font:28px var(--serif);margin:8px 0 12px}.drawer h3{font:17px var(--serif);margin:32px 0 15px;border-bottom:1px solid var(--line);padding-bottom:8px}.timeline>div{display:flex;align-items:center;gap:12px;color:#9aa39f;font-size:12px;padding:7px}.timeline i{width:9px;height:9px;border:2px solid #aab2ae;border-radius:50%}.timeline .done{color:var(--green);font-weight:600}.timeline .done i{background:#65846d;border-color:#65846d}.drawer>a{display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:10px;padding:12px;margin:7px 0;text-decoration:none;color:var(--ink)}.drawer>a>svg{width:20px}.drawer>a>svg:last-child{margin-left:auto}.drawer>a div{flex:1 1}.drawer>a b,.drawer>a small{display:block}.drawer>a small,.muted{color:var(--muted);font-size:11px}.facts{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:30px}.facts>div{background:#eff1eb;border-radius:10px;padding:12px;display:flex;gap:8px}.facts svg{width:18px}.facts b,.facts small{display:block;font-size:9px}.facts b{font-size:10px;margin-top:4px}@media(max-width:900px){.shell{grid-template-columns:72px 1fr}.shell>aside{width:72px;padding:20px 10px}.brand div,nav button:not(.active){font-size:0}.brand{padding:0 7px 25px}.brand>span{width:34px}.aside-bottom,.brand b,.brand small,.profile{display:none}nav button{justify-content:center;padding:12px}nav button.active{font-size:0}.cards{grid-template-columns:1fr}.hero h1{font-size:34px}header{padding:20px}.search{display:none!important}.module,.overview{padding-left:20px;padding-right:20px}.drawer{width:min(430px,100%)}}.aside-bottom button.active{background:#fff;color:var(--ink);box-shadow:0 2px 12px #2e473510}.settings-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);grid-gap:18px;gap:18px}.settings-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.settings-card h3{font:21px var(--serif);margin:0 0 20px}.settings-card label{display:block;font-size:12px;font-weight:650;margin:14px 0}.settings-card input,.settings-card select{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #d5d9d0;border-radius:8px;background:#fbfbf8;color:var(--ink);outline:none}.settings-card input:focus,.settings-card select:focus{border-color:#789483;box-shadow:0 0 0 2px #a7bda633}.settings-card .primary{border:0;background:var(--ink);color:#fff;border-radius:8px;padding:11px 16px;margin-top:7px}.settings-card .primary:disabled{opacity:.45;cursor:not-allowed}.form-message{color:#346b4a;font-size:12px;margin:14px 0 0}.form-message.failed{color:#984940}.provider-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #ecece7}.provider-row b,.provider-row small{display:block}.provider-empty,.provider-row small{color:var(--muted);font-size:11px;margin-top:4px}.provider-empty{padding:35px 0;line-height:1.7}@media(max-width:900px){.settings-grid{grid-template-columns:1fr}}.task-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.task-toolbar>label{font-size:12px;display:flex;gap:7px}.task-search{flex:1 1;display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding-left:12px}.task-search svg{width:17px;color:var(--muted)}.task-search input{flex:1 1;border:0;outline:0;padding:12px}.batchbar button,.task-search button{border:0;background:var(--ink);color:#fff;padding:9px 14px;border-radius:8px;margin-right:4px}.batchbar{display:flex;align-items:center;gap:8px;background:#e9eee3;border-radius:10px;padding:10px 14px;margin-bottom:10px;font-size:12px}.batchbar b{margin-right:auto}.batchbar button{display:flex;align-items:center;gap:5px}.batchbar button svg{width:14px}.batchbar .danger{background:#8f463f}.task-list{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.task-row{display:grid;grid-template-columns:22px minmax(220px,1fr) 100px 130px;grid-gap:12px;gap:12px;align-items:center;padding:13px 16px;border-bottom:1px solid #e8e8e3}.task-row:last-child{border:0}.task-main{border:0;background:transparent;text-align:left;min-width:0}.task-main b,.task-main small{display:flex;align-items:center;gap:6px}.task-main b svg{width:13px;fill:#78916c}.task-main small{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.task-actions{display:flex;justify-content:flex-end;gap:5px}.task-actions button{border:1px solid var(--line);background:#fafaf7;border-radius:7px;width:32px;height:32px;display:grid;place-items:center}.task-actions svg{width:14px}.task-actions button:last-child:hover{color:#9a443b}@media(max-width:700px){.task-row{grid-template-columns:20px 1fr}.task-actions,.task-row>.state{grid-column:2}.task-actions{justify-content:flex-start}.task-toolbar{align-items:stretch;flex-direction:column}}.renamebar{display:flex;align-items:flex-end;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:10px}.renamebar label{flex:1 1;font-size:11px;color:var(--muted)}.renamebar input{display:block;width:100%;border:0;border-bottom:1px solid var(--line);outline:0;padding:7px 0;color:var(--ink)}.renamebar button{border:0;border-radius:7px;padding:8px 13px;background:#e8ebe4}.renamebar button:first-of-type{background:var(--ink);color:#fff}.modes{gap:10px}.modes button{border:0;background:transparent;border-radius:8px;padding:6px 10px;color:inherit}.modes button.chosen{background:#e6ebdd}.task-toolbar input[type=date]{border:1px solid var(--line);border-radius:6px;padding:5px;color:var(--ink);background:#fff}.project-center{max-width:1450px}.project-switcher{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 17px}.project-switcher label{font-size:11px;color:var(--muted);flex:1 1}.project-switcher select{display:block;width:min(560px,100%);margin-top:6px;border:0;background:#f5f6f1;border-radius:7px;padding:9px;color:var(--ink)}.project-tabs{display:flex;gap:5px;margin:14px 0 4px;border-bottom:1px solid var(--line)}.project-tabs button{border:0;background:transparent;padding:11px 15px;color:var(--muted);border-bottom:2px solid transparent}.project-tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:700}@media(max-width:700px){.project-tabs{overflow-x:auto}.project-tabs button{white-space:nowrap}}.deadline-field{display:block;max-width:430px;margin:14px auto 0;text-align:left;color:#66756f;font-size:11px;font-weight:650}.deadline-field input{display:block;width:100%;margin-top:6px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);outline:none}.deadline-field input:focus{border-color:#789483;box-shadow:0 0 0 2px #a7bda633}.deadline-field small{display:block;margin-top:5px;color:#8b9792;font-weight:400;line-height:1.45}.extension-settings{padding-top:0}.extension-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);grid-gap:18px;gap:18px}.extension-grid>.extension-message{grid-column:1/-1;margin:0;text-align:left}.settings-card textarea{display:block;width:100%;min-height:86px;resize:vertical;margin-top:7px;padding:11px 12px;border:1px solid #d5d9d0;border-radius:8px;background:#fbfbf8;color:var(--ink);font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.security-note,.settings-card label small{display:block;color:var(--muted);font-size:10px;line-height:1.55;margin-top:6px}.extension-facts{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:7px;gap:7px;margin:12px 0}.extension-facts>div{background:#f3f5ef;border-radius:8px;padding:9px;min-width:0}.extension-facts dt{font-size:9px;color:var(--muted)}.extension-facts dd{font-size:11px;font-weight:650;margin:4px 0 0;overflow-wrap:anywhere}.extension-actions{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.approval-button,.extension-actions button{border:1px solid var(--line);background:#eef1e9;border-radius:7px;padding:8px 11px;font-size:11px}.extension-actions .danger{color:#984940;background:#f8efeb}.approval-button:disabled,.extension-actions button:disabled{opacity:.45;cursor:not-allowed}.settings-card hr{border:0;border-top:1px solid var(--line);margin:20px 0}.settings-card h4{font:16px var(--serif);margin:0 0 10px}.approval-button{display:block;margin-top:8px;background:#fff1c9;border-color:#d8bd68;color:#665116}.connector-result{max-height:230px;overflow:auto;background:#17221c;color:#e4eddf;border-radius:8px;padding:12px;font-size:10px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:900px){.extension-grid{grid-template-columns:1fr}.extension-facts{grid-template-columns:1fr 1fr}}.skill-permission-box,.skill-quarantine,.skill-runtime{display:grid;grid-gap:5px;gap:5px;margin:12px 0;padding:11px;border:1px solid #d6dccf;border-radius:9px;background:#f6f8f2}.skill-permission-box span{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:#395c48}.skill-permission-box small,.skill-quarantine small,.skill-runtime small{color:var(--muted);font-size:10px;line-height:1.5}.skill-quarantine{border-color:#e1b8ad;background:#fff3ef;color:#913e34}.skill-runtime{border-color:#b8d1bf;background:#f1f8f2}.skill-runtime pre{max-height:190px;overflow:auto;margin:3px 0 0;padding:9px;border-radius:7px;background:#17221c;color:#e4eddf;font-size:10px;white-space:pre-wrap;overflow-wrap:anywhere}.profile>button{border:0;background:transparent;color:#315e52;padding:4px;font-size:11px;font-weight:700}.shell>aside{overflow-y:auto;scrollbar-width:thin}@media(max-width:900px){.aside-bottom{display:block;margin-top:auto}.aside-bottom>button{justify-content:center;font-size:0;padding:12px}.profile{display:flex;justify-content:center;padding:9px 0 0;margin-top:8px}.profile div,.profile i{display:none}.profile>button{display:block;font-size:11px;padding:8px 3px}}