:root{color:#263c44;font-synthesis:none;--nav:#142b35;--green:#247b65;--muted:#859298;--border:#e8edef;background:#f5f7f8;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #80b5a4}button{background:0 0;border:0}h1,h2,h3,h4,p{margin:0}svg{flex-shrink:0}input,select{outline:none}input:focus,select:focus{box-shadow:0 0 0 3px #247b6512;border-color:#247b65!important}button,a,input,select{transition:background .15s,color .15s,border-color .15s}button:hover:not(:disabled),a:hover{filter:brightness(.96)}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--nav);color:#b5c3c8;flex-direction:column;flex-shrink:0;width:224px;padding:29px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;letter-spacing:.4px;align-items:center;gap:11px;margin:0 7px 45px;font-size:17px;font-weight:650;display:flex}.brand img{width:35px;height:35px}.brand small{color:#8ba1aa;letter-spacing:1px;margin-top:5px;font-size:11px;font-weight:400;display:block}.nav-caption{color:#8196a0;letter-spacing:1px;margin:0 16px 12px;font-size:11px}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button{text-align:left;border-radius:7px;align-items:center;gap:13px;height:47px;padding:0 16px;font-size:14px;display:flex;position:relative}.sidebar nav button.active{color:#fff;background:#29454f}.nav-indicator{background:#7ddab7;border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-projects{border-top:1px solid #fff1;margin-top:39px;padding-top:25px}.sidebar-projects button{align-items:center;gap:11px;width:100%;padding:12px 16px;font-size:12px;display:flex}.sidebar-projects button svg{color:#7e929b;margin-left:auto}.sidebar-bottom{border-top:1px solid #ffffff14;align-items:center;gap:11px;margin-top:auto;padding:18px 7px 0;display:flex}.avatar{color:#e1ece8;background:#314b55;border-radius:50%;place-items:center;width:36px;height:36px;font-size:14px;display:grid}.sidebar-bottom strong{color:#e5ebed;font-size:13px;font-weight:500}.sidebar-bottom small{color:#90a2aa;margin-top:2px;font-size:10px;display:block}.sidebar-bottom button{color:#9bafb6;margin-left:auto;padding:6px}.workspace{flex:1;min-width:0;margin-left:224px}.topbar{border-bottom:1px solid var(--border);color:#7c8d93;background:#fff;justify-content:space-between;align-items:center;height:70px;padding:0 36px;font-size:12px;display:flex}.topbar>span,.topbar>div,.personal-mark{align-items:center;gap:10px;display:flex}.topbar-divider{background:#dfe5e8;width:1px;height:14px;margin:0 8px}.personal-mark{color:#455a63}main{max-width:1660px;margin:auto;padding:34px 36px 20px}.page-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:29px;display:flex}.page-heading h1{letter-spacing:1px;color:#21383f;font-size:28px;font-weight:650}.page-heading p{color:#7f8d94;margin-top:8px;font-size:13px}.heading-actions{gap:10px;display:flex}.primary,.secondary{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:39px;padding:10px 17px;font-size:12px;font-weight:500;display:inline-flex}.primary{background:var(--green);color:#fff;border:1px solid var(--green)}.secondary{color:#5f7078;background:#fff;border:1px solid #dce4e7}.metrics{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px;display:grid}.metric{text-align:left;border:1px solid var(--border);background:#fff;border-radius:8px;padding:19px 22px 17px}.metric>div{color:#687b83;justify-content:space-between;align-items:center;font-size:12px;display:flex}.metric svg{color:#91a4ac}.metric strong{font-variant-numeric:tabular-nums;letter-spacing:-.8px;margin:11px 0 7px;font-size:34px;font-weight:600;line-height:1.2;display:block}.metric small{color:#98a4aa;font-size:10px}.metric.danger strong{color:#bd6c5b}.content-grid{grid-template-columns:minmax(0,1fr) 238px;align-items:start;gap:23px;display:grid}.task-panel,.connections{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.task-panel-top{justify-content:space-between;align-items:center;gap:12px;padding:22px 23px 17px;display:flex}.task-panel-top>div{align-items:center;gap:13px;display:flex}.task-panel h2,.connections h2{font-size:15px;font-weight:600}.task-panel-top>div>span{color:#99a6ad;font-size:10px}.live-label{color:#82928f;white-space:nowrap;align-items:center;gap:6px;font-size:10px;display:flex}.project-tabs{border-bottom:1px solid var(--border);white-space:nowrap;gap:23px;margin:0 23px;display:flex;overflow-x:auto}.project-tabs button{color:#7b8c94;border-bottom:2px solid #0000;flex-shrink:0;padding:10px 0 12px;font-size:12px;position:relative}.project-tabs button.selected{color:var(--green);border-bottom-color:var(--green);font-weight:600}.filters{align-items:center;gap:13px;padding:18px 23px;display:flex}.search{color:#8b9aa2;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.search input{color:#334d57;background:0 0;border:0;border-radius:5px;width:100%;min-width:0;padding:8px 3px;font-size:11px}.search input::placeholder{color:#9ba8af}.search button{place-items:center;padding:4px;display:grid}.status-select{color:#74868f;border-left:1px solid #e3e9eb;align-items:center;gap:7px;padding-left:14px;display:flex}.status-select select{color:#61767f;background:#fff;border:0;max-width:140px;padding:5px 0;font-size:11px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;table-layout:auto;white-space:nowrap;width:100%}thead{color:#8b999f;background:#f8fafb}th{border-top:1px solid #f0f3f4;border-bottom:1px solid #edf1f3;padding:12px;font-size:10px;font-weight:450}th:first-child,td:first-child{padding-left:23px}th:last-child,td:last-child{padding-right:18px}td{color:#60737d;border-bottom:1px solid #f0f3f4;padding:17px 12px;font-size:11px}td:first-child{white-space:normal;width:40%;min-width:195px;max-width:420px}.task-title{color:#304952;text-align:left;word-break:break-word;padding:0;font-size:12px;font-weight:500;line-height:1.7}.task-title:hover{color:var(--green);text-decoration:underline}.task-code{color:#9aabb3;margin-top:5px;font-size:10px}.priority{color:#b48a58;margin-left:11px;font-size:9px}.project-cell{align-items:center;gap:6px;font-size:10px;display:flex}.project-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.task-status{color:#84939b;background:#f0f3f5;border-radius:4px;padding:3px 7px;font-size:10px;display:inline-block}.task-status.progress{color:#6387ad;background:#edf5ff}.task-status.done{color:#5f9176;background:#edf6f1}.role-cell{color:#6b8189;font-size:10px}td small{color:#9aa9b0;margin-top:3px;font-size:9px;display:block}.due-overdue,.due-overdue small{color:#b67561}.icon-button{color:#8fa0a9;border-radius:5px;place-items:center;padding:6px;display:grid}.row-open{background:#f8fafb}.empty,.loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:315px;padding:65px 24px 77px;display:flex}.empty-icon{color:#86a99b;background:#f1f7f4;border-radius:50%;place-items:center;width:62px;height:62px;margin-bottom:20px;display:grid}.empty h3{color:#55716e;font-size:14px;font-weight:500}.empty p{color:#99a6ab;max-width:340px;margin-top:10px;font-size:11px;line-height:1.9}.empty .text-button{margin-top:14px}.loading{color:#8d9e9c;gap:12px;font-size:12px}.table-footer{color:#95a3aa;justify-content:space-between;align-items:center;gap:10px;padding:16px 23px;font-size:10px;display:flex}.table-footer>div{align-items:center;gap:9px;display:flex}.page-button{border:1px solid #e3e9eb;border-radius:4px;padding:4px 7px;font-size:10px}.connections{padding:21px 19px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.section-heading>span{color:#93a5ab;font-size:11px}.connection{border-bottom:1px solid var(--border);padding:20px 0}.connection-top{align-items:center;gap:11px;display:flex}.project-symbol{border-radius:7px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:600;display:grid}.connection h3{color:#405a64;font-size:12px;font-weight:500}.connection-status{color:#96a4aa;align-items:center;gap:5px;margin-top:3px;font-size:10px;display:flex}.status-dot{background:#b8c3c8;border-radius:50%;width:5px;height:5px;display:inline-block}.status-dot.connected{background:#5da88c}.status-dot.expired,.status-dot.error{background:#c88a63}.connection-bottom{color:#8b9da4;justify-content:space-between;align-items:center;margin-top:14px;padding-left:45px;font-size:10px;display:flex}.connection-bottom a{color:#94a7ae;place-items:center;display:grid}.text-button{color:#347c68;align-items:center;gap:3px;padding:0;font-size:11px;display:inline-flex}.connection-error{color:#ad8269;margin-top:9px;font-size:10px;line-height:1.8}.connection-note{color:#8c9e9c;gap:10px;padding-top:22px;display:flex}.connection-note svg{color:#9aafa8}.connection-note p{font-size:10px;line-height:1.9}.workspace-footer{color:#9aa8af;justify-content:space-between;align-items:center;gap:12px;margin:21px 1px 0;font-size:10px;display:flex}.workspace-footer>span{align-items:center;gap:5px;display:flex}.footer-help{color:#82978f;padding:0;font-size:10px}.alert{color:#a18753;background:#fff8eb;border:1px solid #efe4cb;border-radius:6px;align-items:center;gap:9px;margin-bottom:20px;padding:11px 15px;font-size:12px;display:flex}.alert.error{color:#af725d;background:#fff2ee;border-color:#f0ded7}.modal{color:#304952;border:none;border-radius:12px;width:430px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 40px);padding:27px;box-shadow:0 18px 90px #142b3533}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10232b80}.modal-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.modal-heading h2{font-size:20px;font-weight:600}.dialog-intro{color:#81959d;margin-bottom:22px;font-size:12px;line-height:1.9}.modal form>label{color:#6b8089;margin:15px 0;font-size:12px;display:block}.modal form input,.modal form select{color:#3c525c;background:#fff;border:1px solid #dfe7e8;border-radius:6px;width:100%;min-height:42px;margin-top:7px;padding:10px 12px;font-size:13px;display:block}.modal input[readonly]{color:#80939d;background:#f6f8f9}.form-hint{color:#96a5ac;font-size:10px;line-height:1.9}.full{width:100%;margin-top:20px;font-size:13px}.bottom-hint{margin-top:16px}.form-message{color:#ad8760;background:#f8f5ef;border-radius:5px;margin-top:15px;padding:10px 12px;font-size:11px;line-height:1.9}.login-results{margin:10px 0;padding:0;font-size:10px;list-style:none}.login-results li{justify-content:space-between;gap:14px;margin:8px 0;display:flex}.green{color:#4f9179}.red{color:#b67561}.detail{width:750px}.detail-origin{color:#8c9da5;align-items:center;gap:7px;margin-top:15px;font-size:11px;display:flex}.detail-origin>span:last-child{margin-left:auto}.detail-title{color:#2a444d;overflow-wrap:anywhere;margin:15px 0 24px;font-size:22px;line-height:1.7}.detail-grid{background:#f7f9fa;border-radius:8px;grid-template-columns:1fr 1fr;gap:20px 30px;padding:22px;display:grid}.detail-grid>div>span{color:#90a0a8;margin-bottom:6px;font-size:11px;display:block}.detail-grid strong{overflow-wrap:anywhere;white-space:pre-wrap;font-size:12px;font-weight:500;display:block}.detail-section{padding-top:23px}.detail-section h4{margin-bottom:10px;font-size:13px;font-weight:600}.detail-section p{color:#6b8089;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:2}.detail-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;margin-top:27px;padding-top:20px;display:flex}.detail-actions p{color:#97a6ac;max-width:300px;font-size:10px;line-height:1.9}.attachments{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.attachments a{border:1px solid var(--border);border-radius:6px;font-size:10px;overflow:hidden}.attachments img{object-fit:contain;background:#f6f8f9;width:100%;height:135px;display:block}.attachments span{padding:8px;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=1600px){td:first-child{min-width:300px}.content-grid{grid-template-columns:minmax(0,1fr) 260px}.task-title{font-size:13px}}@media (width<=1200px){.sidebar{width:192px;padding-left:13px;padding-right:13px}.brand{gap:8px;font-size:15px}.workspace{margin-left:192px}.topbar{padding:0 25px}main{padding:27px 25px 18px}.content-grid{grid-template-columns:minmax(0,1fr) 215px;gap:17px}.metrics{gap:13px}.metric{padding:17px}.filters{padding:14px 17px}.task-panel-top{padding:19px 17px 14px}.project-tabs{gap:18px;margin:0 17px}.connections{padding:19px 15px}.task-panel-top>div>span{display:none}.live-label{font-size:9px}.page-heading h1{font-size:25px}}@media (width<=1000px){.content-grid{grid-template-columns:minmax(0,1fr)}.connections{grid-template-columns:repeat(3,1fr);gap:0 25px;display:grid}.section-heading{grid-column:1/-1}.connection{border:0;padding:13px 0 5px}.connection-note{display:none}.metric{padding:15px}.metric strong{font-size:30px}.workspace-footer{align-items:start}.workspace-footer>span{line-height:1.9}.today-date{display:none}}@media (width<=700px){.app-shell{display:block}.sidebar{width:100%;padding:16px 17px 0;position:static}.brand{margin:0 0 17px;font-size:16px}.brand img{width:31px;height:31px}.brand small{margin-top:2px;font-size:9px}.sidebar>.nav-caption,.sidebar-projects,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row;gap:5px;padding-bottom:10px;overflow-x:auto}.sidebar nav button{flex-shrink:0;gap:6px;height:35px;padding:0 11px;font-size:11px}.sidebar nav button svg{width:14px}.nav-indicator{display:none}.workspace{margin-left:0}.topbar{height:45px;padding:0 18px;font-size:10px}.personal-mark{font-size:10px}.topbar-divider{display:none}main{padding:24px 16px 20px}.page-heading{align-items:start;gap:10px;margin-bottom:23px}.page-heading h1{font-size:24px}.page-heading p{max-width:200px;margin-top:5px;font-size:10px;line-height:1.9}.heading-actions{gap:6px;padding-top:3px}.primary,.secondary{gap:4px;min-height:34px;padding:8px 9px;font-size:10px}.heading-actions svg{width:13px}.metrics{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:19px}.metric{padding:14px 16px}.metric>div{font-size:11px}.metric strong{margin:7px 0 4px;font-size:29px}.metric small{font-size:9px}.metric svg{width:16px}.content-grid{gap:17px}.task-panel-top{padding:18px 16px 14px}.task-panel-top h2{font-size:14px}.project-tabs{gap:21px;margin:0 16px}.project-tabs button{font-size:11px}.filters{gap:7px;padding:12px 16px}.search input{font-size:10px}.status-select{gap:4px;padding-left:8px}.status-select select{width:97px;font-size:10px}.status-select svg{display:none}.table-scroll table{min-width:720px}.empty{min-height:300px;padding:52px 20px}.empty h3{font-size:13px}.empty p{font-size:10px}.empty-icon{width:54px;height:54px}.connections{padding:17px;display:block}.connection{border-bottom:1px solid var(--border);padding:16px 0}.connection-top{float:left}.connection-bottom{justify-content:flex-end;gap:22px;margin-top:10px;padding:0}.connection:after{content:"";clear:both;display:block}.connection-error{clear:both;padding-top:9px}.connection-note{padding-top:17px;display:flex}.connection-note p br{display:none}.connection-note p{font-size:9px}.connection-note svg{width:15px}.workspace-footer{flex-direction:column;gap:7px;margin-top:17px;font-size:9px}.table-footer{flex-direction:column;align-items:flex-start;padding:14px 16px}.modal{padding:21px}.modal-heading h2,.detail-title{font-size:19px}.detail-origin{flex-wrap:wrap;font-size:9px}.detail-grid{gap:17px;padding:16px}.detail-actions{flex-direction:column;align-items:flex-start}.detail-actions .primary{padding:10px 14px;font-size:12px}.attachments{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.table-scroll{position:relative}.mobile-table-hint{display:none}@media (width<=700px){.sidebar nav,.project-tabs{scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.project-tabs::-webkit-scrollbar{display:none}.mobile-table-hint{color:#a0adb3;padding:0 16px 10px;font-size:9px;display:block}}.task-form label{color:#6b8089;font-size:12px;display:block}.task-form input:not([type=checkbox]):not([type=file]),.task-form select,.task-form textarea{color:#3c525c;resize:vertical;background:#fff;border:1px solid #dfe7e8;border-radius:6px;width:100%;min-height:42px;margin-top:7px;padding:10px 12px;font-size:13px;display:block}.task-form input:disabled,.task-form select:disabled,.task-form textarea:disabled{color:#91a0a6;background:#f5f7f8}.task-form input[type=checkbox]{accent-color:#247b65}.form-grid{grid-template-columns:1fr 1fr;gap:17px 22px;display:grid}.form-wide{grid-column:1/-1}.task-form form>label{margin:0}.task-form>label{margin-bottom:18px}.task-form .form-grid>label{margin:0}.task-form label small{color:#99a7ac;font-size:10px}.task-form em{color:#ba8268;font-style:normal}.task-form .latest-value{color:#a28b60;white-space:pre-wrap;margin-top:7px;display:block}.edit-intro{margin-top:13px}.readonly-people{color:#93a1a8;background:#f6f8f9;border-radius:6px;margin-top:18px;padding:13px 16px;font-size:11px;line-height:2}.form-actions{border-top:1px solid #e8edef;justify-content:flex-end;gap:11px;margin-top:22px;padding-top:22px;display:flex}.save-notice{color:#53806f;background:#f0f8f3;border:1px solid #dcece2;border-radius:6px;margin-top:16px;padding:12px 15px;font-size:12px;line-height:1.9}.page-notice{align-items:center;gap:9px;margin:0 0 20px;display:flex}.page-notice .icon-button{margin-left:auto}.leave-draft{background:#faf7ef;border-radius:6px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:15px;padding:12px 14px;font-size:11px;display:flex}.leave-draft>span{flex:1;min-width:120px}.collaborators{border:1px solid #e4e9eb;border-radius:6px;margin:0;padding:10px 14px}.collaborators legend{color:#6b8089;padding:0 5px;font-size:12px}.collaborators>label{align-items:center;gap:6px;font-size:12px;display:inline-flex;margin:7px 17px 7px 0!important}.upload-field>label{align-items:center;gap:7px;display:flex}.upload-field input{max-width:100%;margin-top:11px;font-size:11px}.upload-field small{color:#96a5ac;margin-top:9px;font-size:10px;display:block}.selected-file{background:#f7f9fa;border-radius:5px;align-items:center;gap:10px;margin-top:8px;padding:7px 10px;font-size:11px;display:flex}.selected-file span{overflow-wrap:anywhere;flex:1}.form-loading{color:#96a5ac;justify-content:center;align-items:center;gap:9px;padding:40px 15px;font-size:12px;display:flex}.pending-receipt{color:#8599a0;overflow-wrap:anywhere;background:#f7f8f9;border-radius:6px;margin-top:13px;padding:13px;font-size:11px}.pending-receipt strong,.pending-receipt span{margin:5px 0;display:block}.create-success{text-align:center;color:#5c9d83;padding:33px 15px 20px}.create-success>svg{margin-bottom:17px}.create-success h3{font-size:22px;font-weight:600}.create-success p{color:#546d78;margin-top:17px;font-size:13px;line-height:1.9}.create-success>span{color:#96a5ac;margin-top:10px;font-size:11px;display:block}.create-success button{min-width:120px;margin-top:26px}.detail-actions>p{flex:1;min-width:180px}@media (width<=700px){.page-heading{flex-wrap:wrap}.page-heading>div:first-child{width:100%}.page-heading p{max-width:none}.heading-actions{justify-content:flex-end;width:100%}.heading-actions .primary,.heading-actions .secondary{padding:8px 12px;font-size:11px}.form-grid{grid-template-columns:1fr;gap:16px}.form-wide{grid-column:auto}.task-form input,.task-form select,.task-form textarea{font-size:14px!important}.form-actions{z-index:1;background:#fff;margin-bottom:-6px;padding-bottom:16px;position:sticky;bottom:-21px}.form-actions .primary,.form-actions .secondary{padding:10px 14px;font-size:12px}.detail-actions{gap:14px}.detail-actions>p{width:100%;max-width:none}.task-form .leave-draft .secondary{font-size:11px}}.task-form input[type=checkbox]{width:14px;height:14px;min-height:0;box-shadow:none;border:0;flex-shrink:0;margin:0;padding:0;display:inline-block}.task-form input[type=file]{min-height:0;padding:9px;font-size:11px}.personal-source{overflow-wrap:anywhere;background:#f4f7f7;border-radius:10px;flex-direction:column;gap:8px;margin:16px 0;padding:16px;display:flex}.personal-source span,.personal-source small{color:#667875}.personal-confirm p{line-height:1.8}.personal-confirm .primary{color:#fff;align-items:center;gap:8px;margin:8px 0;display:inline-flex}.personal-confirm strong{display:block}.detail-actions{flex-wrap:wrap}.login-required .primary{align-items:center;gap:8px;margin:8px auto 18px;display:inline-flex}.login-required small{color:#7c8d91;line-height:1.9;display:block}.login-required p{max-width:460px;margin-left:auto;margin-right:auto}.personal-column{white-space:nowrap;width:176px}.personal-row-button{color:#247b65;white-space:nowrap;background:#f7fbf9;border:1px solid #d8e7e1;border-radius:6px;align-items:center;gap:6px;padding:8px 10px;font-size:11px;display:inline-flex}.personal-row-button:hover{background:#eaf4ef}.table-scroll:has(.personal-column) table{min-width:1040px}.personal-confirm h3{align-items:center;gap:7px;display:flex}.personal-confirm button+button{margin-top:12px}
