:root{color:#162033;background:#f5f7fb;font-family:Segoe UI,Microsoft YaHei,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:1180px;min-height:100vh;background:#f5f7fb}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.7}.app-shell{position:relative;display:grid;grid-template-columns:216px 1fr;height:100vh;min-height:100vh;overflow:hidden;background:#f5f7fb}.app-shell,.app-shell *{transition-property:background-color,border-color,color,box-shadow,fill,stroke;transition-duration:.22s;transition-timing-function:ease}.app-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none;opacity:0}.theme-light.app-shell:before{background:radial-gradient(circle at 78% 14%,#ffffff8f,#fff0 34%),#ffffff2e;animation:theme-wash-light .46s ease-out both}.theme-dark.app-shell:before{background:radial-gradient(circle at 78% 14%,#60a5fa38,#60a5fa00 32%),#02061733;animation:theme-wash-dark .46s ease-out both}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:20px 16px 14px;color:#d5e1f1;background:#0d1d31}.brand{display:flex;align-items:center;gap:12px;margin-bottom:34px}.brand-mark{display:grid;width:48px;height:48px;place-items:center;border-radius:10px;color:#172033;background:#f4c83f;box-shadow:inset 0 -3px #00000014}.brand-title{color:#fff;font-size:19px;font-weight:800;letter-spacing:0}.brand-subtitle{margin-top:3px;color:#8fa3bd;font-size:12px}.nav-list{display:grid;gap:12px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;border-radius:8px;color:#d5e1f1;background:transparent;text-align:left;font-size:15px;font-weight:700}.nav-item:hover,.nav-item.active{color:#fff;background:#1267df}.settings-link{margin-top:64px}.local-status{display:grid;gap:8px;margin-top:auto;padding:16px;border:1px solid rgba(255,255,255,.06);border-radius:8px;background:#172b45}.local-status strong{color:#fff;font-size:15px}.local-status span{color:#b0bfd2;font-size:12px;line-height:1.55}.local-dot-row{display:flex;align-items:center;gap:7px;color:#9fb3ca;font-size:12px}.status-dot{display:inline-block;width:9px;height:9px;border-radius:999px;background:#20c56b}.workspace{min-width:0;min-height:0;overflow:auto;padding:24px 28px 10px}.page-transition{animation:page-enter .24s cubic-bezier(.2,.72,.28,1) both;transform-origin:50% 16px}@keyframes page-enter{0%{opacity:0;transform:translateY(8px) scale(.997)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes theme-wash-light{0%{opacity:0}32%{opacity:1}to{opacity:0}}@keyframes theme-wash-dark{0%{opacity:0}36%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.app-shell,.app-shell *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.app-shell:before{display:none}}.workbench-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.workbench-header h1{margin:0;color:#101828;font-size:28px;font-weight:800;letter-spacing:0}.workbench-header h1 span{font-size:21px}.workbench-header p{margin:8px 0 0;color:#667085;font-size:14px}.header-actions{display:flex;align-items:center;gap:18px}.quick-button,.primary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border-radius:7px;font-weight:800}.quick-button{border:1px solid #d8e0ec;color:#1f2a44;background:#fff;box-shadow:0 3px 9px #0f172a0a}.primary-button{color:#fff;background:#1267df}.danger-button{border:1px solid #fecdca;color:#b42318;background:#fff4f2}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{margin-bottom:14px;padding:11px 14px;border:1px solid #fecdca;border-radius:8px;color:#b42318;background:#fffbfa;font-weight:700}.workbench-search-bar{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;margin-bottom:18px;padding:0 14px;border:1px solid #d9e1ec;border-radius:8px;color:#667085;background:#fff;box-shadow:0 8px 22px #0f172a09}.workbench-search-bar input{width:100%;min-height:44px;border:0;outline:0;color:#162033;background:transparent;font-weight:700}kbd{display:inline-flex;min-height:22px;align-items:center;justify-content:center;padding:0 7px;border:1px solid #d8e0ec;border-radius:5px;color:#667085;background:#f8fafc;font-size:12px;font-weight:800;line-height:1}.global-search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:start center;padding-top:76px;background:#0f172a3d}.global-search-modal{display:grid;gap:10px;width:min(720px,calc(100vw - 48px));max-height:calc(100vh - 120px);padding:12px;border:1px solid #d9e1ec;border-radius:8px;background:#fff;box-shadow:0 28px 90px #0f172a42}.global-search-input{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:0 10px;border:1px solid #d9e1ec;border-radius:7px;color:#667085;background:#fbfcff}.global-search-input input{width:100%;min-height:44px;border:0;outline:0;color:#162033;background:transparent;font-weight:800}.global-search-results{display:grid;gap:6px;overflow:auto}.global-search-result{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:4px 12px;min-height:58px;padding:9px 10px;border-radius:7px;color:#344054;background:transparent;text-align:left}.global-search-result:hover,.global-search-result:focus-visible{background:#f1f6ff}.global-search-result strong,.global-search-result small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result strong{color:#101828;font-size:14px}.global-search-result small{grid-column:2;color:#667085;font-size:12px}.search-kind-badge{display:inline-flex;min-height:24px;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;color:#1267df;background:#eaf2ff;font-size:12px;font-weight:800}.global-search-empty{display:grid;min-height:88px;place-items:center;color:#667085;font-weight:800}.quick-task-form{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(150px,.75fr) 132px 132px 112px auto;gap:12px;align-items:end;margin-bottom:18px;padding:16px;border:1px solid #e3e8f0;border-radius:8px;background:#fff;box-shadow:0 8px 22px #0f172a0a}.temporary-task-form{grid-template-columns:minmax(260px,1fr) 150px 150px 120px auto}.quick-task-form label{display:grid;gap:7px;color:#5b6678;font-size:13px;font-weight:700}.quick-task-form input,.quick-task-form select,.drawer-form input,.drawer-form select,.drawer-form textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid #d9e1ec;border-radius:7px;outline:0;color:#162033;background:#fbfcff}.drawer-form textarea{min-height:96px;resize:vertical}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin-bottom:20px}.status-card,.panel{border:1px solid #e4e9f1;border-radius:8px;background:#fff;box-shadow:0 8px 22px #0f172a09}.status-card{min-height:132px;padding:18px 22px}.status-card h2{margin:0 0 16px;color:#111827;font-size:24px;font-weight:500;letter-spacing:0}.status-card.alert-card h2{color:red}.status-card p{margin:0 0 6px;color:#111827;font-size:14px;line-height:1.45}.status-card small{color:#111827;font-size:13px;line-height:1.45}.status-task-list{display:grid;gap:7px;margin-top:-3px}.status-task-row{display:grid;grid-template-columns:minmax(0,1fr) 82px;align-items:center;gap:8px;min-height:28px;padding:4px 0;border-bottom:1px solid #eef2f7}.status-task-row span{overflow:hidden;color:#111827;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.workbench-name-link{display:block;min-width:0;padding:0;overflow:hidden;border-radius:4px;color:inherit;background:transparent;text-align:left;text-overflow:ellipsis;white-space:nowrap}.workbench-name-link:hover,.workbench-name-link:focus-visible{color:#1267df;text-decoration:underline;text-underline-offset:3px}.status-task-name{width:100%;color:#111827;font-size:13px}.status-task-row strong{color:#111827;font-size:12px;font-weight:700;text-align:right;white-space:nowrap}.status-task-row.overdue strong{color:#e11d1d}.status-link{margin-top:10px;font-size:13px}.weekly-card{display:flex;align-items:center;justify-content:space-between}.report-status-card{width:100%;text-align:left}.report-status-card:hover,.report-status-card:focus-visible{border-color:#9cc2f8;box-shadow:0 10px 24px #1267df1a}.weekly-card h2{margin-bottom:9px;color:#667085;font-size:15px;font-weight:800}.weekly-card strong{display:block;color:#111827;font-size:40px;line-height:1}.weekly-card svg{padding:10px;width:54px;height:54px;border-radius:999px;color:#2fbd75;background:#e7f8ef}.temporary-status-card h2{color:#1267df}.main-grid{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(370px,.95fr);gap:20px;margin-bottom:20px}.bottom-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:20px}.panel{padding:18px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-header h2{margin:0;color:#101828;font-size:19px;font-weight:800}.split-header span{color:#344054;font-size:13px}.project-list{display:grid;gap:12px}.project-row{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;min-height:100px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfdff}.project-main{display:grid;gap:9px;min-width:0}.project-title-line{display:flex;align-items:center;gap:10px;min-width:0}.project-title-line strong,.project-title-button{overflow:hidden;color:#101828;font-size:18px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.state-pill{flex:0 0 auto;padding:4px 9px;border-radius:999px;color:#1267df;font-size:12px;font-weight:800;background:#e7f0ff}.project-meta{display:flex;gap:18px;color:#5c6676;font-size:13px}.progress-line{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px}.progress-track{height:7px;overflow:hidden;border-radius:999px;background:#e7ebf1}.progress-fill{height:100%;border-radius:999px}.project-counts{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:12px;text-align:center}.project-counts div{display:grid;gap:5px}.project-counts span{color:#5c6676;font-size:13px;font-weight:700}.project-counts strong{color:#101828;font-size:22px;line-height:1}.danger-text{color:#e11d1d!important}.today-panel{min-height:454px}.today-list{display:grid;gap:9px;margin-bottom:16px}.today-row{display:grid;grid-template-columns:24px minmax(0,1fr) 158px 46px;align-items:center;gap:10px;min-height:44px;padding:7px 8px;border:1px solid #e5eaf1;border-radius:7px;background:#fff}.round-check{display:grid;width:24px;height:24px;place-items:center;color:#a2adbd;background:transparent}.round-check svg[data-lucide=check-circle-2]{color:#25ba72}.today-title{overflow:hidden;color:#344054;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.task-project-tag{overflow:hidden;min-width:0;padding:4px 10px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:800;text-align:center;text-overflow:ellipsis;white-space:nowrap}.workbench-project-tag-button{display:inline-flex;width:100%;align-items:center;justify-content:center}.workbench-project-tag-button:hover,.workbench-project-tag-button:focus-visible{box-shadow:inset 0 0 0 1px currentColor}.today-row time{color:#344054;font-size:13px;text-align:right}.text-link{display:inline-flex;align-items:center;padding:0;color:#1672d8;background:transparent;font-size:14px;font-weight:800}.text-link.inline{font-size:13px}.success-pill{padding:4px 10px;border-radius:999px;color:#15915b!important;background:#e4f8ed;font-weight:800}.success-pill.pending{color:#667085!important;background:#eef2f7}.report-card{display:grid;gap:8px;min-height:142px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.report-card strong{color:#101828;font-size:18px}.report-card p{margin:0;color:#475467;font-size:13px;line-height:1.55}.activity-list{display:grid;gap:13px}.activity-row{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;color:#475467;font-size:14px}.activity-row time{color:#667085}.activity-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{display:grid;min-height:88px;place-items:center;border:1px dashed #cfd8e6;border-radius:8px;color:#667085;background:#fbfcff;font-size:14px;font-weight:700}.tasks-page{display:grid;gap:18px}.tasks-page.has-drawer{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.task-table-panel{overflow:hidden}.task-filter-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.task-filter-tabs button{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid #dce4ee;border-radius:7px;color:#475467;background:#fff;font-size:13px;font-weight:800}.task-filter-tabs button.active{border-color:#1267df;color:#1267df;background:#eaf2ff}.task-filter-tabs span{color:inherit;font-size:12px;opacity:.78}.task-toolbar{display:grid;grid-template-columns:210px 170px minmax(240px,1fr);gap:12px;margin-bottom:14px}.temporary-task-toolbar{grid-template-columns:170px minmax(260px,1fr)}.task-toolbar label,.drawer-form label{display:grid;gap:7px;color:#5b6678;font-size:13px;font-weight:800}.task-toolbar select,.task-search div{width:100%;min-height:38px;border:1px solid #d9e1ec;border-radius:7px;color:#162033;background:#fbfcff}.task-toolbar select{padding:7px 10px}.task-search div{display:flex;align-items:center;gap:8px;padding:0 10px}.task-search input{width:100%;border:0;outline:0;background:transparent}.task-table{display:grid;gap:8px}.task-table-head,.task-table-row{display:grid;grid-template-columns:28px minmax(220px,1.45fr) minmax(130px,.8fr) 76px 110px 94px 52px;align-items:center;gap:12px}.temporary-task-table .task-table-head,.temporary-task-table .task-table-row{grid-template-columns:28px minmax(250px,1.65fr) 76px 110px 110px 94px 52px}.task-table-head{min-height:36px;padding:0 12px;color:#667085;font-size:12px;font-weight:800}.task-table-row{min-height:62px;padding:9px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.task-table-row:hover,.task-table-row.selected{border-color:#9cc2f8;background:#f8fbff}.task-title-cell{display:grid;gap:4px;min-width:0}.task-title-cell strong,.task-title-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-title-cell strong{color:#101828;font-size:14px}.task-title-cell span{color:#667085;font-size:12px}.priority-pill,.status-pill{display:inline-flex;min-height:26px;align-items:center;justify-content:center;padding:0 9px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.priority-pill{color:#1267df;background:#eaf2ff}.priority-pill.high{color:#b42318;background:#fee4e2}.priority-pill.urgent{color:#fff;background:#d92d20}.priority-pill.low{color:#167647;background:#dcfae6}.status-pill{color:#344054;background:#eef2f7}.status-pill.today{color:#1267df;background:#eaf2ff}.status-pill.soon{color:#92400e;background:#fef3c7}.status-pill.overdue{color:#b42318;background:#fee4e2}.status-pill.done{color:#167647;background:#dcfae6}.task-empty{margin-top:8px}.task-drawer{position:sticky;top:24px;padding:18px;border:1px solid #e4e9f1;border-radius:8px;background:#fff;box-shadow:0 12px 30px #0f172a14}.drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.drawer-header h2{margin:0;color:#101828;font-size:18px}.drawer-header p{margin:5px 0 0;color:#667085;font-size:12px}.drawer-header button{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;color:#667085;background:#f2f4f7}.drawer-header-actions{display:flex;gap:8px}.drawer-form{display:grid;gap:12px}.drawer-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drawer-actions{display:grid;gap:10px;margin-top:4px}.placeholder-panel{display:grid;gap:10px;max-width:620px}.placeholder-panel h2,.placeholder-panel p{margin:0}.placeholder-panel p{color:#667085;line-height:1.7}.projects-page{display:grid;gap:18px}.projects-page.has-drawer{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.project-management-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.project-management-summary div{display:grid;gap:5px;min-height:78px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.project-management-summary strong{color:#101828;font-size:26px;line-height:1}.project-management-summary span{color:#667085;font-size:13px;font-weight:800}.project-table{display:grid;gap:8px}.project-table-head,.project-table-row{display:grid;grid-template-columns:minmax(260px,1.4fr) 84px 86px minmax(130px,.7fr) 54px 54px 74px 48px;align-items:center;gap:12px}.project-table-head{min-height:36px;padding:0 12px;color:#667085;font-size:12px;font-weight:800}.project-table-row{min-height:72px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.project-table-row:hover,.project-table-row.selected{border-color:#9cc2f8;background:#f8fbff}.project-name-cell{display:grid;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:10px;min-width:0}.project-name-cell div{display:grid;gap:4px;min-width:0}.project-name-cell strong,.project-name-cell small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-name-cell strong{color:#101828;font-size:14px}.project-name-cell small{color:#667085;font-size:12px}.project-color-dot{width:10px;height:10px;border-radius:999px}.project-color-picker{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;min-height:40px;padding:5px 8px;border:1px solid #d9e1ec;border-radius:7px;background:#fbfcff}.project-color-picker input{width:36px;min-height:28px;height:28px;padding:0;border:0;background:transparent}.project-color-picker span{color:#344054;font-size:13px;font-weight:800}.project-color-swatches{display:grid;grid-template-columns:repeat(auto-fill,24px);gap:8px}.project-color-swatches button{width:24px;height:24px;border:2px solid #ffffff;border-radius:999px;box-shadow:0 0 0 1px #d9e1ec}.project-color-swatches button.active{box-shadow:0 0 0 2px #1267df}.project-status-pill{display:inline-flex;min-height:26px;align-items:center;justify-content:center;padding:0 9px;border-radius:999px;color:#1267df;background:#eaf2ff;font-size:12px;font-weight:800;white-space:nowrap}.project-status-pill.not-started{color:#6941c6;background:#ede9fe}.project-status-pill.paused,.project-status-pill.archived{color:#475467;background:#eef2f7}.project-status-pill.done{color:#167647;background:#dcfae6}.mini-progress{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px}.mini-progress strong{color:#344054;font-size:12px;text-align:right}.project-drawer{position:sticky;top:24px;padding:18px;border:1px solid #e4e9f1;border-radius:8px;background:#fff;box-shadow:0 12px 30px #0f172a14}.project-drawer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.project-drawer-stats div{display:grid;gap:5px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.project-drawer-stats span{color:#667085;font-size:12px;font-weight:800}.project-drawer-stats strong{color:#101828;font-size:20px}.subproject-management{display:grid;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #eef2f7}.compact-header{margin-bottom:0}.subproject-table{display:grid;gap:8px}.subproject-table-head,.subproject-table-row{display:grid;grid-template-columns:minmax(260px,1fr) 180px 70px 94px 48px;align-items:center;gap:12px}.subproject-table-head{min-height:34px;padding:0 12px;color:#667085;font-size:12px;font-weight:800}.subproject-table-row{min-height:66px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.project-space-page{display:grid;gap:18px}.project-space-page.has-drawer{grid-template-columns:minmax(0,1fr) 390px;align-items:start}.project-space-main{min-width:0}.project-space-tabs{display:flex;gap:8px;min-height:42px;margin-bottom:12px;overflow-x:auto}.project-space-tabs button{display:inline-flex;align-items:center;gap:8px;min-width:176px;min-height:38px;padding:0 12px;border:1px solid #d8e0ec;border-radius:7px;color:#344054;background:#fff;font-weight:800}.project-space-tabs button.active{border-color:#1267df;color:#fff;background:#1267df}.overview-dot{display:inline-block;width:10px;height:10px;border-radius:999px;background:#0d1d31}.project-space-tabs button.active .overview-dot{background:#fff}.project-space-overview-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.project-space-overview-summary div{display:grid;gap:4px;min-height:68px;padding:12px 14px;border:1px solid #e4e9f1;border-radius:8px;background:#fff}.project-space-overview-summary strong{color:#101828;font-size:24px;line-height:1}.project-space-overview-summary span{color:#667085;font-size:12px;font-weight:800}.project-space-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;border:1px solid #e4e9f1;border-radius:8px;background:#fff}.segmented-control{display:inline-flex;padding:3px;border:1px solid #d8e0ec;border-radius:8px;background:#f4f7fb}.segmented-control button{min-height:32px;padding:0 13px;border-radius:6px;color:#344054;background:transparent;font-size:13px;font-weight:800}.segmented-control.compact button{min-width:36px;padding:0 9px}.segmented-control button.active{color:#1267df;background:#fff;box-shadow:0 2px 7px #0f172a14}.toolbar-check{display:inline-flex;align-items:center;gap:7px;color:#344054;font-size:13px;font-weight:800}.toolbar-check input{width:15px;height:15px}.project-space-message{width:max-content;max-width:100%;margin-bottom:12px;padding:7px 11px;border-radius:999px;color:#167647;background:#dcfae6;font-size:12px;font-weight:800}.gantt-panel{padding:0;overflow:hidden}.gantt-shell{display:grid;grid-template-columns:460px minmax(0,1fr);min-height:560px}.gantt-left{border-right:1px solid #e4e9f1;background:#fff}.gantt-left-head,.gantt-left-row{display:grid;grid-template-columns:minmax(0,1fr) 124px 62px;align-items:center;gap:8px}.gantt-left-head{height:50px;padding:0 12px;border-bottom:1px solid #e4e9f1;color:#667085;font-size:12px;font-weight:800}.gantt-left-row{height:42px;padding:0 12px;border-bottom:1px solid #eef2f7}.gantt-left-row>span{color:#344054;font-size:12px;font-weight:800;text-align:right}.plan-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.plan-row-actions button{min-height:24px;padding:0 7px;border-radius:5px;color:#1267df;background:#eaf2ff;font-size:11px;font-weight:800}.compact-actions{flex-wrap:nowrap;overflow:hidden}.compact-actions button{min-width:0;padding:0 5px}.plan-node-title{display:flex;align-items:center;gap:6px;min-width:0}.plan-node-title strong,.plan-node-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-node-title strong{color:#101828;font-size:13px;font-weight:800}.plan-node-title small{color:#667085;font-size:11px}.tree-toggle,.tree-spacer{display:grid;flex:0 0 auto;width:18px;height:18px;place-items:center;border-radius:4px}.tree-toggle{color:#667085;background:#eef2f7}.gantt-scroll{overflow-x:auto;overflow-y:hidden;background:#fbfcff}.gantt-canvas{position:relative;min-height:100%}.gantt-time-head{position:relative;height:50px;border-bottom:1px solid #e4e9f1;background:#fff}.gantt-time-head span{position:absolute;top:0;bottom:0;display:grid;place-items:center;border-right:1px solid #eef2f7;color:#667085;font-size:12px;font-weight:800}.gantt-row{position:relative;height:42px;border-bottom:1px solid #eef2f7;background-image:linear-gradient(to right,rgba(226,232,240,.7) 1px,transparent 1px);background-size:91px 100%}.gantt-bar{position:absolute;top:10px;display:flex;height:22px;align-items:center;padding:0 9px;border-radius:5px;color:#fff;background:#1267df;font-size:12px;font-weight:800;text-align:left}.gantt-label{position:absolute;top:8px;display:inline-flex;max-width:240px;min-height:26px;align-items:center;padding:0 4px;border-radius:4px;color:#1267df;background:#fbfcffe0;font-size:12px;font-weight:800;text-align:left}.gantt-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-label.project{color:#0d1d31}.gantt-label.subproject{color:#0f8a52}.gantt-label.phase{color:#c2410c}.gantt-label.milestone{color:#6d28d9}.gantt-label.task{color:#1267df}.gantt-bar.project{height:18px;background:#0d1d31}.gantt-bar.subproject{background:#0f8a52}.gantt-bar.phase{background:#e05b16}.gantt-bar.task{background:#1267df}.gantt-task-line{position:absolute;top:10px;display:block;height:22px;padding:0;border-radius:5px;background:transparent}.gantt-task-line-track{position:absolute;top:10px;left:5px;right:5px;height:2px;border-radius:999px;background:currentColor}.gantt-task-line:before,.gantt-task-line:after{content:"";position:absolute;top:6px;width:10px;height:10px;border:2px solid #ffffff;border-radius:999px;background:currentColor;box-shadow:0 0 0 1px #0f172a1f}.gantt-task-line:before{left:0}.gantt-task-line:after{right:0}.milestone-diamond{position:absolute;top:12px;width:16px;height:16px;border-radius:3px;background:#7c3aed;transform:rotate(45deg)}.today-line{position:absolute;top:0;bottom:0;z-index:2;width:0;border-left:1px dashed #1267df;pointer-events:none}.today-line span{position:absolute;top:2px;left:-16px;padding:2px 6px;border-radius:999px;color:#fff;background:#1267df;font-size:11px;font-weight:800}.project-space-footer{display:flex;justify-content:flex-end;gap:28px;min-height:38px;padding:10px 16px;border-top:1px solid #e4e9f1;color:#667085;font-size:12px;font-weight:800}.plan-table-panel{overflow-x:auto}.plan-table-head,.plan-table-row{display:grid;grid-template-columns:minmax(320px,1.5fr) 72px 104px 104px 64px 64px 94px 240px;align-items:center;gap:12px}.plan-table-head{min-height:36px;color:#667085;font-size:12px;font-weight:800}.plan-table-row{min-height:64px;border-top:1px solid #eef2f7}.plan-node-drawer{position:sticky;top:24px}.reports-page{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.report-settings-panel,.report-editor-panel{min-height:520px}.report-section-title{display:grid;gap:5px;margin-bottom:14px}.report-section-title.compact{margin:22px 0 12px}.report-section-title h2,.report-section-title p{margin:0}.report-section-title h2{color:#101828;font-size:18px;font-weight:800}.report-section-title p{color:#667085;font-size:13px}.report-controls{display:grid;gap:12px}.report-controls label{display:grid;gap:7px;color:#5b6678;font-size:13px;font-weight:800}.report-controls input,.report-controls select{width:100%;min-height:40px;padding:8px 10px;border:1px solid #d9e1ec;border-radius:7px;outline:0;color:#162033;background:#fbfcff}.report-local-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.report-local-summary div{display:grid;gap:4px;min-height:68px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.report-local-summary span{color:#667085;font-size:12px;font-weight:800}.report-local-summary strong{color:#101828;font-size:20px}.history-list{display:grid;gap:9px}.history-item{display:grid;gap:5px;width:100%;min-height:74px;padding:11px 12px;border:1px solid #e2e8f0;border-radius:8px;color:#344054;background:#fff;text-align:left}.history-item:hover,.history-item.active{border-color:#9cc2f8;background:#f8fbff}.history-item strong,.history-item span,.history-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item strong{color:#101828;font-size:14px}.history-item span,.history-item small{color:#667085;font-size:12px}.report-empty{min-height:92px}.report-editor-panel{display:grid;grid-template-rows:auto auto 1fr;gap:12px}.report-editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.report-editor-header h2,.report-editor-header p{margin:0}.report-editor-header h2{color:#101828;font-size:20px;font-weight:800}.report-editor-header p{margin-top:6px;color:#667085;font-size:13px}.report-editor-header .report-record-state{color:#344054;font-weight:700}.report-actions{display:flex;align-items:center;gap:10px}.copy-message{width:max-content;padding:6px 10px;border-radius:999px;color:#167647;background:#dcfae6;font-size:12px;font-weight:800}.report-message-row{display:flex;flex-wrap:wrap;gap:8px}.save-message{color:#175cd3;background:#eaf2ff}.auth-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:#eef4fb}.auth-card{display:grid;width:min(430px,100%);gap:16px;padding:24px;border:1px solid #d9e1ec;border-radius:8px;background:#fff;box-shadow:0 18px 48px #12233d1f}.auth-card label,.users-create-form label{display:grid;gap:7px;color:#344054;font-size:13px;font-weight:800}.auth-card input,.users-create-form input,.users-create-form select,.user-row-actions select{min-height:38px;padding:0 11px;border:1px solid #d8e0ec;border-radius:7px;outline:0;color:#101828;background:#fff}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand>div:last-child{display:grid;gap:3px}.auth-brand strong{color:#101828;font-size:18px}.auth-brand span,.auth-title-block p{color:#667085;font-size:13px}.auth-title-block h1{margin:0 0 6px;color:#101828;font-size:28px;line-height:1.18}.auth-title-block p{margin:0;line-height:1.6}.auth-message{padding:10px 12px;border-radius:7px;color:#b42318;background:#fff1f0;font-size:13px;font-weight:800}.auth-actions{display:flex;flex-wrap:wrap;gap:10px}.auth-loading{justify-items:center;text-align:center}.sidebar-logout{display:inline-flex;min-height:32px;align-items:center;justify-content:center;gap:7px;border:1px solid #d8e0ec;border-radius:7px;color:#344054;background:#fff;font-size:12px;font-weight:800}.users-page{display:grid;gap:18px}.users-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:12px;align-items:end}.users-list{display:grid;gap:10px}.user-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.user-row.disabled{opacity:.72}.user-row-main{display:grid;gap:4px}.user-row-main strong{color:#101828}.user-row-main span,.user-row-main small{color:#667085;font-size:12px;font-weight:800}.user-row-main small{color:#b54708}.user-row-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.visual-report{display:grid;gap:14px;min-height:420px}.visual-report-cover{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;min-height:86px;padding:16px;border:1px solid #d9e7fb;border-radius:8px;background:linear-gradient(135deg,#f8fbff,#eef6ff)}.visual-report-cover-icon{display:grid;width:54px;height:54px;place-items:center;border-radius:8px;color:#1267df;background:#dcecff}.visual-report-cover span,.visual-report-meta span,.visual-report-metrics span{color:#667085;font-size:12px;font-weight:800}.visual-report-cover h3{margin:4px 0 0;color:#101828;font-size:24px;line-height:1.2}.visual-report-meta{display:flex;flex-wrap:wrap;gap:8px}.visual-report-meta span{display:inline-flex;min-height:28px;align-items:center;padding:0 10px;border-radius:999px;background:#eef2f7}.visual-report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.visual-report-metrics div{display:grid;gap:6px;min-height:74px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.visual-report-metrics strong{overflow:hidden;color:#101828;font-size:17px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.visual-report-sections{display:grid;gap:12px}.visual-report-card{display:grid;gap:12px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.visual-report-card header{display:flex;align-items:center;gap:9px;color:#1267df}.visual-report-card h4{margin:0;color:#101828;font-size:17px}.visual-report-card-body{display:grid;gap:8px}.visual-report-subheading{display:flex;align-items:center;gap:7px;margin-top:4px;color:#1267df;font-weight:800}.visual-report-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;color:#344054;font-size:13px;line-height:1.65}.visual-report-item svg{margin-top:3px;color:#25ba72}.visual-report-item.muted{color:#667085}.visual-report-item.muted svg{color:#98a2b3}.visual-report-paragraph{margin:0;color:#344054;font-size:13px;line-height:1.75}.visual-report-empty{display:grid;min-height:420px;place-items:center;align-content:center;gap:10px;border:1px dashed #cfd8e6;border-radius:8px;color:#667085;background:#fbfcff;text-align:center}.visual-report-empty div{display:grid;width:64px;height:64px;place-items:center;border-radius:8px;color:#1267df;background:#eaf2ff}.visual-report-empty strong{color:#101828;font-size:17px}.visual-report-empty span{max-width:420px;font-size:13px;line-height:1.6}.report-raw-editor{display:grid;gap:10px}.report-raw-editor summary{width:max-content;cursor:pointer;color:#1672d8;font-size:13px;font-weight:800}.report-editor{width:100%;min-height:260px;padding:16px;border:1px solid #d9e1ec;border-radius:8px;outline:0;color:#1f2937;background:#fbfcff;font-family:Segoe UI,Microsoft YaHei,Arial,sans-serif;font-size:14px;line-height:1.75;resize:vertical}.icon-button{display:grid;width:36px;height:36px;place-items:center;border:1px solid #d8e0ec;border-radius:7px;color:#344054;background:#fff}.calendar-page{display:grid;grid-template-columns:minmax(660px,1fr) 370px;gap:20px;align-items:start}.calendar-panel{min-height:720px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.calendar-month-switcher{display:flex;align-items:center;gap:10px}.calendar-month-switcher h2{min-width:150px;margin:0;color:#101828;font-size:21px;font-weight:800;text-align:center}.calendar-month-meta{display:flex;flex-wrap:wrap;gap:8px}.calendar-month-meta span{display:inline-flex;min-height:28px;align-items:center;padding:0 10px;border-radius:999px;color:#344054;background:#eef2f7;font-size:12px;font-weight:800}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{gap:8px;margin-bottom:8px}.calendar-weekdays span{color:#667085;font-size:12px;font-weight:800;text-align:center}.calendar-grid{gap:8px}.calendar-day{display:grid;grid-template-rows:auto auto 1fr;gap:7px;min-height:108px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;color:#344054;background:#fff;text-align:left}.calendar-day:hover{border-color:#9cc2f8;background:#f8fbff}.calendar-day.muted{color:#98a2b3;background:#f8fafc}.calendar-day.selected{border-color:#1267df;box-shadow:inset 0 0 0 1px #1267df}.calendar-day.has-overdue{border-color:#fecdca}.calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.calendar-day-head strong{color:#101828;font-size:15px}.calendar-day.muted .calendar-day-head strong{color:#98a2b3}.calendar-day-head span{padding:2px 6px;border-radius:999px;color:#1267df;background:#eaf2ff;font-size:11px;font-weight:800}.calendar-day-counts{display:flex;flex-wrap:wrap;gap:5px}.calendar-day-counts span{color:#1267df;font-size:11px;font-weight:800}.calendar-day-counts span.done{color:#167647}.calendar-day-preview{display:grid;align-content:start;gap:4px;min-width:0}.calendar-day-preview small{overflow:hidden;color:#475467;font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.calendar-detail-panel{position:sticky;top:24px;display:grid;gap:16px}.calendar-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.calendar-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.calendar-detail-header h2,.calendar-detail-header p{margin:0}.calendar-detail-header h2{color:#101828;font-size:20px;font-weight:800}.calendar-detail-header p{margin-top:6px;color:#667085;font-size:13px}.calendar-detail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.calendar-detail-summary div{display:grid;gap:5px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.calendar-detail-summary span{color:#667085;font-size:12px;font-weight:800}.calendar-detail-summary strong{color:#101828;font-size:23px;line-height:1}.calendar-task-list{display:grid;gap:9px}.calendar-task-row{display:grid;grid-template-columns:28px minmax(0,1fr) 44px;align-items:center;gap:10px;min-height:66px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.calendar-task-row.done .task-title-cell strong{color:#667085;text-decoration:line-through}.calendar-empty{min-height:120px}.risk-page{display:grid;gap:18px}.risk-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.risk-summary-card{display:grid;gap:10px;min-height:104px;padding:16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;box-shadow:0 8px 22px #0f172a09}.risk-summary-card span{color:#667085;font-size:13px;font-weight:800}.risk-summary-card strong{color:#101828;font-size:32px;line-height:1}.risk-summary-card.danger strong,.risk-summary-card.urgent strong{color:#d92d20}.risk-summary-card.warning strong,.risk-summary-card.soon strong{color:#b45309}.risk-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(520px,1.4fr);gap:18px;align-items:start}.risk-project-list,.risk-table{display:grid;gap:8px}.risk-project-row{display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:5px 10px;min-height:64px;padding:11px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.risk-project-name{color:#101828;font-weight:800}.risk-project-row small{grid-column:1 / -1;overflow:hidden;color:#667085;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.risk-level{display:inline-flex;min-height:26px;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;font-size:12px;font-weight:800}.risk-level.healthy{color:#167647;background:#dcfae6}.risk-level.watch{color:#92400e;background:#fef3c7}.risk-level.risk,.risk-level.severe{color:#b42318;background:#fee4e2}.risk-table-head,.risk-table-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(130px,.85fr) 96px 86px 108px;align-items:center;gap:12px}.risk-table-head{min-height:34px;padding:0 12px;color:#667085;font-size:12px;font-weight:800}.risk-table-row{min-height:60px;padding:9px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer}.risk-table-row:hover{border-color:#9cc2f8;background:#f8fbff}.risk-task-title{color:#101828;font-weight:800}.risk-table-row>span,.risk-table-row time{overflow:hidden;color:#667085;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.risk-reason{display:inline-flex;min-height:26px;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;color:#1267df!important;background:#eaf2ff;font-weight:800}.settings-page{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(520px,1.35fr);gap:20px;align-items:start}.settings-card{display:grid;gap:16px}.settings-section-header{display:grid;gap:6px}.settings-section-header h2,.settings-section-header p{margin:0}.settings-section-header h2{color:#101828;font-size:19px;font-weight:800}.settings-section-header p{color:#667085;font-size:13px;line-height:1.55}.data-path-list{display:grid;gap:10px}.data-path-list div{display:grid;gap:6px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.data-path-list span{color:#667085;font-size:12px;font-weight:800}.data-path-list strong{overflow:hidden;color:#101828;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.settings-actions{display:flex;flex-wrap:wrap;gap:10px}.theme-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-mode-switch button{display:flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:1px solid #d9e1ec;border-radius:8px;color:#344054;background:#fbfcff;font-weight:800}.theme-mode-switch button.active{border-color:#1267df;color:#1267df;background:#eaf2ff}.shortcut-list{display:grid;gap:9px}.shortcut-list div{display:flex;min-height:42px;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.shortcut-list span{margin-left:auto;color:#344054;font-size:13px;font-weight:800}.ai-key-form{display:grid;gap:12px}.ai-key-form label,.vision-chat-box,.vision-task-modal label{display:grid;gap:7px;color:#5b6678;font-size:13px;font-weight:800}.ai-key-form input,.vision-chat-box textarea,.vision-task-modal input,.vision-task-modal select,.vision-task-modal textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid #d9e1ec;border-radius:7px;outline:0;color:#162033;background:#fbfcff}.settings-timestamp{color:#667085;font-size:12px;font-weight:700}.settings-message{grid-column:1 / -1;width:max-content;padding:7px 11px;border-radius:999px;color:#167647;background:#dcfae6;font-size:12px;font-weight:800}.backup-list{display:grid;gap:10px}.vision-page{display:grid;grid-template-columns:minmax(0,1.35fr) 380px;gap:20px;align-items:start}.vision-panel,.vision-result-panel{display:grid;gap:16px}.vision-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.vision-panel-header h2,.vision-panel-header p{margin:0}.vision-panel-header h2{color:#101828;font-size:20px;font-weight:800}.vision-panel-header p{margin-top:6px;color:#667085;font-size:13px}.vision-composer{display:grid;gap:14px}.vision-image-stage{display:grid;min-height:320px;overflow:hidden;border:1px dashed #b9c6d8;border-radius:8px;background:#fbfcff}.vision-image-stage img{display:block;width:100%;max-height:520px;object-fit:contain;background:#101828}.vision-empty-image{display:grid;place-items:center;align-content:center;gap:8px;min-height:320px;color:#667085}.vision-empty-image svg{color:#1267df}.vision-empty-image strong{color:#101828;font-size:18px}.vision-empty-image span{font-size:13px;font-weight:700}.vision-image-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid #e4e9f1;color:#667085;font-size:12px;font-weight:800}.vision-image-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vision-chat-box textarea,.vision-task-modal textarea{min-height:118px;resize:vertical}.vision-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.vision-message{width:max-content;max-width:100%;padding:7px 11px;border-radius:999px;color:#1267df;background:#eaf2ff;font-size:12px;font-weight:800}.vision-draft-card{display:grid;gap:8px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfcff}.vision-draft-card strong{color:#101828;font-size:16px}.vision-draft-card span,.vision-draft-card p{margin:0;color:#667085;font-size:13px;line-height:1.55}.vision-result-empty{min-height:180px}.vision-raw{color:#667085;font-size:12px;font-weight:700}.vision-raw pre{max-height:220px;overflow:auto;padding:10px;border-radius:7px;background:#f3f6fb;white-space:pre-wrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:24px;background:#0f172a61}.vision-task-modal{display:grid;gap:14px;width:min(560px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;padding:20px;border:1px solid #e4e9f1;border-radius:8px;background:#fff;box-shadow:0 24px 80px #0f172a38}.backup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-height:70px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.backup-row>div{display:grid;gap:5px;min-width:0}.backup-row strong,.backup-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-row strong{color:#101828;font-size:14px}.backup-row span{color:#667085;font-size:12px}.context-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90}.context-menu{position:fixed;display:grid;min-width:190px;padding:6px;border:1px solid #d9e1ec;border-radius:8px;background:#fff;box-shadow:0 18px 50px #0f172a33}.context-menu button{display:flex;min-height:34px;align-items:center;padding:0 10px;border-radius:6px;color:#344054;background:transparent;font-size:13px;font-weight:800;text-align:left}.context-menu button:hover,.context-menu button:focus-visible{color:#1267df;background:#eaf2ff}.context-menu button.danger{color:#b42318}.context-menu button:disabled{color:#98a2b3;background:transparent}:root[data-theme=dark],:root[data-theme=dark] body{color:#d7e0ee;background:#0b111c}.theme-dark.app-shell{background:#0b111c}.theme-dark .workspace{background:linear-gradient(180deg,#1e293b6b,#0b111c00 240px),#0b111c}.theme-dark .sidebar{border-right:1px solid #1e293b;background:#070d16}.theme-dark .brand-mark{color:#1f2937;background:#f0c84b}.theme-dark .brand-title,.theme-dark .workbench-header h1,.theme-dark .panel-header h2,.theme-dark .settings-section-header h2,.theme-dark .vision-panel-header h2,.theme-dark .calendar-detail-header h2,.theme-dark .drawer-header h2,.theme-dark .status-card strong,.theme-dark .project-management-summary strong,.theme-dark .project-name-cell strong,.theme-dark .task-title-cell strong,.theme-dark .plan-node-title strong,.theme-dark .report-card strong,.theme-dark .backup-row strong,.theme-dark .vision-draft-card strong,.theme-dark .data-path-list strong,.theme-dark .calendar-detail-summary strong{color:#f4f7fb}.theme-dark .brand-subtitle,.theme-dark .workbench-header p,.theme-dark .panel-header span,.theme-dark .settings-section-header p,.theme-dark .vision-panel-header p,.theme-dark .calendar-detail-header p,.theme-dark .drawer-header p,.theme-dark .status-card p,.theme-dark .project-meta,.theme-dark .project-name-cell small,.theme-dark .task-title-cell span,.theme-dark .plan-node-title small,.theme-dark .report-card p,.theme-dark .activity-row,.theme-dark .activity-row time,.theme-dark .backup-row span,.theme-dark .data-path-list span,.theme-dark .vision-draft-card span,.theme-dark .vision-draft-card p,.theme-dark .settings-timestamp,.theme-dark .calendar-day-preview small,.theme-dark .calendar-detail-summary span{color:#96a3b8}.theme-dark .panel,.theme-dark .status-card,.theme-dark .quick-task-form,.theme-dark .report-card,.theme-dark .backup-row,.theme-dark .project-table-row,.theme-dark .task-table-row,.theme-dark .temporary-task-table .task-table-row,.theme-dark .subproject-table-row,.theme-dark .plan-table-row,.theme-dark .today-row,.theme-dark .calendar-day,.theme-dark .calendar-task-row,.theme-dark .project-drawer,.theme-dark .task-drawer,.theme-dark .vision-task-modal,.theme-dark .project-management-summary div,.theme-dark .data-path-list div,.theme-dark .calendar-detail-summary div,.theme-dark .vision-draft-card{border-color:#243247;background:#121a28;box-shadow:0 12px 36px #0000002e}.theme-dark .panel.gantt-panel{background:#121a28}.theme-dark .project-table-row:hover,.theme-dark .project-table-row.selected,.theme-dark .task-table-row:hover,.theme-dark .task-table-row.selected,.theme-dark .today-row:hover,.theme-dark .calendar-day:hover,.theme-dark .calendar-day.selected,.theme-dark .calendar-task-row:hover{border-color:#3f6aa3;background:#172438}.theme-dark .task-filter-tabs,.theme-dark .project-space-tabs,.theme-dark .segmented-control,.theme-dark .calendar-toolbar,.theme-dark .task-toolbar,.theme-dark .project-space-toolbar{border-color:#243247;background:#101827}.theme-dark .task-filter-tabs button,.theme-dark .project-space-tabs button,.theme-dark .segmented-control button,.theme-dark .toolbar-check,.theme-dark .task-toolbar label,.theme-dark .temporary-task-toolbar label{color:#9aa8bd}.theme-dark .task-filter-tabs button.active,.theme-dark .project-space-tabs button.active,.theme-dark .segmented-control button.active{color:#eff6ff;background:#1d4ed8}.theme-dark input,.theme-dark select,.theme-dark textarea,.theme-dark .task-search div,.theme-dark .project-color-picker,.theme-dark .theme-mode-switch button,.theme-dark .vision-raw pre{border-color:#334155;color:#e5edf7;background:#0e1624}.theme-dark input::placeholder,.theme-dark textarea::placeholder{color:#64748b}.theme-dark option{color:#e5edf7;background:#0e1624}.theme-dark .theme-mode-switch button.active{border-color:#60a5fa;color:#bfdbfe;background:#17365f}.theme-dark .primary-button{color:#fff;background:#2563eb;box-shadow:0 10px 24px #2563eb38}.theme-dark .quick-button,.theme-dark .icon-button,.theme-dark .plan-row-actions button,.theme-dark .tree-toggle{color:#bfdbfe;background:#172438}.theme-dark .quick-button:hover,.theme-dark .icon-button:hover,.theme-dark .plan-row-actions button:hover,.theme-dark .tree-toggle:hover{background:#1e3a5f}.theme-dark .danger-button{color:#fecaca;background:#7f1d1d}.theme-dark .text-link{color:#7db4ff}.theme-dark .workbench-name-link:hover,.theme-dark .workbench-name-link:focus-visible{color:#7db4ff}.theme-dark .nav-item:hover,.theme-dark .nav-item.active{color:#fff;background:#1d4ed8}.theme-dark .local-status{border-color:#243247;background:#111827}.theme-dark .local-status span,.theme-dark .local-dot-row{color:#94a3b8}.theme-dark .empty-state,.theme-dark .placeholder-panel,.theme-dark .vision-empty-image{border-color:#334155;color:#94a3b8;background:#0e1624}.theme-dark .vision-empty-image strong{color:#f4f7fb}.theme-dark .error-banner{border-color:#7f1d1d;color:#fecaca;background:#3f1116}.theme-dark .settings-message,.theme-dark .vision-message,.theme-dark .project-space-message{color:#bfdbfe;background:#17365f}.theme-dark .success-pill{color:#bbf7d0!important;background:#14532d}.theme-dark .success-pill.pending,.theme-dark .state-pill,.theme-dark .status-pill,.theme-dark .project-status-pill,.theme-dark .priority-pill,.theme-dark .task-project-tag{color:#cbd5e1!important;border-color:#334155!important;background:#1e293b!important}.theme-dark .danger-text{color:#fca5a5!important}.theme-dark .progress-track,.theme-dark .mini-progress .progress-track{background:#263244}.theme-dark .gantt-left,.theme-dark .gantt-time-head{border-color:#243247;background:#111827}.theme-dark .gantt-left-head,.theme-dark .gantt-left-row,.theme-dark .gantt-time-head,.theme-dark .gantt-row{border-color:#243247}.theme-dark .gantt-left-head,.theme-dark .gantt-time-head span,.theme-dark .gantt-left-row>span{color:#94a3b8}.theme-dark .gantt-scroll{background:#0e1624}.theme-dark .gantt-row{background-image:linear-gradient(to right,rgba(71,85,105,.42) 1px,transparent 1px)}.theme-dark .gantt-label{background:#0f172ae6}.theme-dark .today-line{border-color:#60a5fa}.theme-dark .today-line span{color:#dbeafe;background:#1e3a8a}.theme-dark .calendar-day.muted{color:#64748b;background:#0f172a}.theme-dark .calendar-day.today{border-color:#60a5fa}.theme-dark .calendar-day-counts span{color:#bfdbfe;background:#17365f}.theme-dark .calendar-day-counts span.done{color:#bbf7d0;background:#14532d}.theme-dark .modal-backdrop{background:#020617b8}.theme-dark .vision-image-stage{border-color:#334155;background:#0e1624}.theme-dark .vision-image-meta{border-color:#243247;color:#94a3b8}.theme-dark .project-row,.theme-dark .project-counts div,.theme-dark .project-space-overview-summary div,.theme-dark .project-drawer-stats div,.theme-dark .report-local-summary div,.theme-dark .history-item{border-color:#243247;background:#121a28;box-shadow:0 10px 28px #00000029}.theme-dark .project-row:hover,.theme-dark .history-item:hover,.theme-dark .history-item.active{border-color:#3f6aa3;background:#172438}.theme-dark .task-filter-tabs button,.theme-dark .project-filter-tabs button,.theme-dark .project-space-tabs button{border-color:#334155;color:#c6d3e4;background:#121a28}.theme-dark .task-filter-tabs button:hover,.theme-dark .project-filter-tabs button:hover,.theme-dark .project-space-tabs button:hover{border-color:#3f6aa3;background:#172438}.theme-dark .task-filter-tabs button.active,.theme-dark .project-filter-tabs button.active,.theme-dark .project-space-tabs button.active,.theme-dark .segmented-control button.active{border-color:#60a5fa;color:#eff6ff;background:#1d4ed8;box-shadow:none}.theme-dark .segmented-control button{color:#c6d3e4}.theme-dark .status-card h2,.theme-dark .status-card p,.theme-dark .status-card small,.theme-dark .status-task-row span,.theme-dark .status-task-name,.theme-dark .status-task-row strong,.theme-dark .weekly-card strong,.theme-dark .project-title-line strong,.theme-dark .project-title-button,.theme-dark .project-counts strong,.theme-dark .project-space-overview-summary strong,.theme-dark .project-drawer-stats strong,.theme-dark .report-section-title h2,.theme-dark .report-editor-header h2,.theme-dark .calendar-month-switcher h2,.theme-dark .calendar-day-head strong,.theme-dark .history-item strong,.theme-dark .report-local-summary strong,.theme-dark .mini-progress strong,.theme-dark .project-color-picker span,.theme-dark .report-editor-header .report-record-state{color:#f4f7fb}.theme-dark .placeholder-panel h2,.theme-dark .calendar-day,.theme-dark .drawer-header button{color:#d7e0ee}.theme-dark .drawer-header button,.theme-dark .drawer-header-actions button{border:1px solid #334155;color:#e5edf7;background:#172438}.theme-dark .drawer-header button:hover,.theme-dark .drawer-header button:focus-visible,.theme-dark .drawer-header-actions button:hover,.theme-dark .drawer-header-actions button:focus-visible{border-color:#60a5fa;color:#fff;background:#1d4ed8}.theme-dark .weekly-card h2,.theme-dark .split-header span,.theme-dark .project-counts span,.theme-dark .today-title,.theme-dark .today-row time,.theme-dark .project-space-overview-summary span,.theme-dark .project-drawer-stats span,.theme-dark .placeholder-panel p,.theme-dark .subproject-table-head,.theme-dark .project-table-head,.theme-dark .task-table-head,.theme-dark .plan-table-head,.theme-dark .project-space-footer,.theme-dark .report-section-title p,.theme-dark .report-controls label,.theme-dark .report-editor-header p,.theme-dark .history-item span,.theme-dark .history-item small,.theme-dark .report-local-summary span,.theme-dark .calendar-month-meta span,.theme-dark .calendar-weekdays span,.theme-dark .calendar-day-preview small,.theme-dark .ai-key-form label,.theme-dark .vision-chat-box,.theme-dark .vision-task-modal label,.theme-dark .quick-task-form label,.theme-dark .drawer-form label{color:#96a3b8}.theme-dark .status-task-row,.theme-dark .subproject-management,.theme-dark .project-space-footer,.theme-dark .plan-table-row{border-color:#243247}.theme-dark .report-editor,.theme-dark .report-controls input,.theme-dark .report-controls select,.theme-dark .quick-task-form input,.theme-dark .quick-task-form select,.theme-dark .drawer-form input,.theme-dark .drawer-form select,.theme-dark .drawer-form textarea,.theme-dark .ai-key-form input,.theme-dark .vision-chat-box textarea,.theme-dark .vision-task-modal input,.theme-dark .vision-task-modal select,.theme-dark .vision-task-modal textarea{border-color:#334155;color:#e5edf7;background:#0e1624}.theme-dark .calendar-month-meta span,.theme-dark .calendar-day-head span{color:#bfdbfe;background:#17365f}.theme-dark .round-check{color:#718096}.theme-dark .status-card.alert-card h2,.theme-dark .status-task-row.overdue strong{color:#fca5a5}.theme-dark .priority-pill.high,.theme-dark .status-pill.overdue{color:#fecaca!important;background:#7f1d1d!important}.theme-dark .priority-pill.urgent{color:#fff!important;background:#dc2626!important}.theme-dark .priority-pill.low,.theme-dark .status-pill.done,.theme-dark .project-status-pill.done{color:#bbf7d0!important;background:#14532d!important}.theme-dark .status-pill.today{color:#bfdbfe!important;background:#17365f!important}.theme-dark .status-pill.soon{color:#fde68a!important;background:#713f12!important}.theme-dark .workbench-search-bar,.theme-dark .global-search-modal,.theme-dark .global-search-input,.theme-dark .risk-summary-card,.theme-dark .risk-project-row,.theme-dark .risk-table-row,.theme-dark .visual-report-cover,.theme-dark .visual-report-metrics div,.theme-dark .visual-report-card,.theme-dark .visual-report-empty,.theme-dark .shortcut-list div,.theme-dark .context-menu{border-color:#243247;background:#121a28;box-shadow:0 14px 42px #00000038}.theme-dark .global-search-backdrop{background:#020617a8}.theme-dark .workbench-search-bar,.theme-dark .global-search-input,.theme-dark .global-search-empty,.theme-dark .global-search-result small,.theme-dark .risk-summary-card span,.theme-dark .risk-project-row small,.theme-dark .risk-table-head,.theme-dark .risk-table-row>span,.theme-dark .risk-table-row time,.theme-dark .visual-report-cover span,.theme-dark .visual-report-meta span,.theme-dark .visual-report-metrics span,.theme-dark .visual-report-item,.theme-dark .visual-report-paragraph,.theme-dark .visual-report-empty,.theme-dark .visual-report-item.muted{color:#96a3b8}.theme-dark .workbench-search-bar input,.theme-dark .global-search-input input,.theme-dark .global-search-result strong,.theme-dark .risk-summary-card strong,.theme-dark .risk-project-name,.theme-dark .risk-task-title,.theme-dark .visual-report-cover h3,.theme-dark .visual-report-metrics strong,.theme-dark .visual-report-card h4,.theme-dark .visual-report-empty strong,.theme-dark .shortcut-list span{color:#f4f7fb}.theme-dark .visual-report-cover{background:linear-gradient(135deg,#172438,#101827)}.theme-dark .visual-report-cover-icon,.theme-dark .visual-report-empty div,.theme-dark .visual-report-meta span{color:#bfdbfe;background:#17365f}.theme-dark .visual-report-card header,.theme-dark .visual-report-subheading,.theme-dark .report-raw-editor summary{color:#7db4ff}.theme-dark.auth-shell{background:#0b111b}.theme-dark .auth-card,.theme-dark .user-row{border-color:#243247;background:#121a28;box-shadow:0 18px 48px #00000059}.theme-dark .auth-brand strong,.theme-dark .auth-title-block h1,.theme-dark .user-row-main strong{color:#f4f7fb}.theme-dark .auth-brand span,.theme-dark .auth-title-block p,.theme-dark .auth-card label,.theme-dark .users-create-form label,.theme-dark .user-row-main span,.theme-dark .user-row-main small{color:#96a3b8}.theme-dark .auth-card input,.theme-dark .users-create-form input,.theme-dark .users-create-form select,.theme-dark .user-row-actions select,.theme-dark .sidebar-logout{border-color:#2f4058;color:#f4f7fb;background:#0f1724}.theme-dark .auth-message{color:#fecaca;background:#451a1a}.theme-dark .global-search-result{color:#d7e0ee}.theme-dark .global-search-result:hover,.theme-dark .global-search-result:focus-visible,.theme-dark .risk-table-row:hover{border-color:#3f6aa3;background:#172438}.theme-dark .search-kind-badge,.theme-dark .risk-reason{color:#bfdbfe!important;background:#17365f}.theme-dark kbd{border-color:#334155;color:#cbd5e1;background:#0e1624}.theme-dark .risk-level.healthy{color:#bbf7d0;background:#14532d}.theme-dark .risk-level.watch{color:#fde68a;background:#713f12}.theme-dark .risk-level.risk,.theme-dark .risk-level.severe{color:#fecaca;background:#7f1d1d}.theme-dark .context-menu button{color:#d7e0ee}.theme-dark .context-menu button:hover,.theme-dark .context-menu button:focus-visible{color:#fff;background:#1d4ed8}.theme-dark .context-menu button.danger{color:#fecaca}.theme-dark .context-menu button:disabled{color:#64748b}@media(max-width:1280px){.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-grid,.bottom-grid{grid-template-columns:1fr}.quick-task-form{grid-template-columns:repeat(2,minmax(0,1fr))}.tasks-page.has-drawer,.projects-page.has-drawer,.project-space-page.has-drawer{grid-template-columns:1fr}.project-space-overview-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.gantt-shell{grid-template-columns:430px minmax(0,1fr)}.subproject-table-head,.subproject-table-row{grid-template-columns:minmax(260px,1fr) 160px 70px 94px 48px}.project-table-head,.project-table-row{grid-template-columns:minmax(260px,1fr) 84px 86px 130px 54px 54px 74px 48px}.plan-table-head,.plan-table-row{grid-template-columns:minmax(320px,1fr) 72px 104px 104px 64px 64px 94px 240px}.project-management-summary,.task-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.task-table-head,.task-table-row{grid-template-columns:28px minmax(240px,1fr) 140px 76px 110px 94px 52px}.temporary-task-table .task-table-head,.temporary-task-table .task-table-row{grid-template-columns:28px minmax(240px,1fr) 76px 104px 104px 94px 52px}.reports-page,.calendar-page,.risk-summary-grid,.risk-layout{grid-template-columns:1fr}.visual-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.risk-table-head,.risk-table-row{grid-template-columns:minmax(220px,1fr) 140px 96px 86px 108px}.calendar-detail-panel{position:static}.settings-page,.vision-page{grid-template-columns:1fr}.report-editor-header{flex-direction:column}}
