.modal-overlay{position:fixed;inset:0;background:#29323b55;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.modal{width:100%;max-width:510px;max-height:90vh;max-height:90dvh;background:#fff;border-radius:var(--radius-l);box-shadow:var(--shadow-2);display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;outline:0}.modal.wide{max-width:720px}.modal>header{position:sticky;top:0;z-index:2;background:inherit;display:flex;align-items:center;justify-content:space-between;padding:17px 23px;border-bottom:1px solid var(--line);flex-shrink:0}.modal>header h2{min-width:0;overflow-wrap:anywhere;font-size:16px}.modal>header>.icon-button{flex-shrink:0}.modal>:not(header):not(.form-stack):not(.modal-actions){min-width:0;flex-shrink:0}.modal>.form-stack{overflow-y:auto;overscroll-behavior:contain}.modal .modal-actions{position:sticky;bottom:0;z-index:2;background:var(--paper)}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:18px 23px;border-top:1px solid var(--line);flex-shrink:0}.project-color-field{border:0;padding:0;margin:0;min-width:0}.project-color-field legend{padding:0;margin-bottom:8px;font-size:var(--fs-11);font-weight:500;color:var(--muted)}.color-picker{display:grid;grid-template-columns:repeat(auto-fit,44px);gap:8px}.color-picker>label{width:44px;height:44px;position:relative;display:grid;place-items:center;cursor:pointer}.color-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}.color-swatch{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #00000012}.color-picker svg{color:inherit;visibility:hidden}.color-picker input:checked+.color-swatch{outline:2px solid var(--ink);outline-offset:3px}.color-picker input:checked+.color-swatch svg{visibility:visible}.color-picker label:has(input:focus-visible){outline:2px solid var(--brand);border-radius:var(--radius-m)}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:var(--fs-12);color:#7f92a6;cursor:pointer}.checkbox-label input{margin:0}.dependency-options{max-height:120px;overflow:auto;display:grid;gap:10px;border:1px solid #e3e7ec;border-radius:var(--radius-m);padding:12px}.dependency-options small{color:#aab7c4;font-size:var(--fs-11)}.task-detail-actions{display:flex;align-items:center;justify-content:space-between}.danger{color:#bc7a80}.preview-body{padding:22px;overflow:auto}.preview-body>.muted{font-size:var(--fs-11)}.plan-changes{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius-m);margin:18px 0;overflow:hidden}.plan-changes>div{padding:15px;text-align:center;border-right:1px solid var(--line)}.plan-changes>div:last-child{border:0}.plan-changes strong{display:block;font-size:24px;font-weight:500;color:#899fb6}.plan-changes span{font-size:var(--fs-11);color:#a2b0bf}.plan-warnings{padding:16px;background:#fbf5e9;border:1px solid #f0e6d3;border-radius:var(--radius-m);margin-bottom:17px}.plan-warnings h3{display:flex;align-items:center;gap:7px;font-size:var(--fs-12);color:#b79b6d}.plan-warnings p{font-size:var(--fs-11);color:#b29e7e;margin-top:7px}.preview-blocks>div{display:flex;align-items:center;gap:14px;padding:11px 4px;border-bottom:1px solid var(--line)}.preview-blocks span{font-size:var(--fs-11);color:#9eacbb;white-space:nowrap}.preview-blocks strong{font-size:var(--fs-11);font-weight:500;flex:1 1}.preview-blocks svg{color:#b2becb}.draft-reply{white-space:pre-wrap;font-size:var(--fs-12);line-height:1.95;color:#7d90a4}.draft-project{display:flex;align-items:center;gap:9px;padding:13px;background:#f1f5f9;margin-top:14px;border-radius:var(--radius-m);font-size:var(--fs-12);color:#8a9fb6}.draft-project>span{margin-left:auto;font-size:var(--fs-11)}.draft-updates{margin-top:14px;border:1px dashed var(--line);border-radius:var(--radius-m);padding:12px 13px}.draft-updates h3{margin:0 0 6px;font-size:var(--fs-12);font-weight:600;color:#7d90a4}.draft-update{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:5px 0;font-size:var(--fs-13)}.draft-update>span{margin-left:auto;font-size:var(--fs-12);color:#7d90a4}.draft-task{border:1px solid var(--line);border-radius:var(--radius-m);padding:15px;margin-top:12px}.draft-task>div{display:flex;align-items:center;justify-content:space-between;gap:9px}.draft-task strong{font-size:var(--fs-12);font-weight:500}.draft-task p{font-size:var(--fs-11);color:#8e9fb1;margin:7px 0}.draft-task small{font-size:var(--fs-11);color:#a7b5c4}.assistant-overlay{position:fixed;inset:0;z-index:70}.assistant-shade{position:absolute;inset:0;background:#2b353f25;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.assistant-panel{position:absolute;right:0;top:0;bottom:0;width:var(--assistant-width,430px);background:#fff;box-shadow:var(--shadow-2);display:flex;flex-direction:column}.assistant-panel>header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:12px 12px 12px 20px}.assistant-header-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.assistant-resize-handle{position:absolute;z-index:2;left:-6px;top:0;bottom:0;width:12px;cursor:col-resize;touch-action:none}.assistant-resize-handle:after{content:"";position:absolute;left:4px;top:calc(50% - 24px);width:4px;height:48px;border-radius:var(--radius-s);background:var(--brand-400)}.assistant-resize-handle:focus-visible,.assistant-resize-handle:hover,.is-resizing .assistant-resize-handle{background:var(--brand-50);outline:none}.assistant-resize-handle:focus-visible:after{background:var(--brand)}.assistant-overlay:has(.is-resizing){cursor:col-resize;-webkit-user-select:none;user-select:none}@media (max-width:720px){.assistant-resize-handle{display:none}}.assistant-title{display:flex;align-items:center;gap:10px;min-width:0}.assistant-title>div{min-width:0}.assistant-title .sparkle-box{width:36px;height:36px;border-radius:var(--radius-m);background:#ebf2f9}.assistant-title h2{font-size:15px;line-height:1.3}.assistant-title small{display:block;font-size:var(--fs-11);color:#9eadbc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-content{flex:1 1;overflow:auto;padding:24px;overscroll-behavior:contain}.assistant-welcome h3{font-size:17px;margin-bottom:8px}.assistant-welcome p{font-size:var(--fs-12);color:#94a3b4;line-height:1.9;margin-bottom:19px}.assistant-welcome>button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:12px 13px;text-align:left;margin-bottom:9px;color:#8a9bad;font-size:var(--fs-12)}.assistant-welcome>button:hover{background:#f6f9fc}.assistant-composer{padding:16px 20px 20px;border-top:1px solid var(--line)}.assistant-composer textarea{background:#f8fafd;border-color:#e9eef4;min-height:90px}.assistant-composer>div{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.assistant-composer small{font-size:var(--fs-11);color:#adb9c6}.send-button{width:34px;background:var(--brand);color:white;display:flex;align-items:center;justify-content:center;height:var(--control-h);border-radius:var(--control-radius)}.ai-setup{background:#f3f7fb;border:1px solid #e4ecf5;border-radius:var(--radius-m);padding:23px;margin-bottom:26px;color:#899fb7}.ai-setup h3{margin:8px 0 6px;font-size:var(--fs-14)}.ai-setup p{font-size:var(--fs-11);line-height:1.9;color:#9cabbb;margin-bottom:16px}.conversation{margin-top:25px}.user-message{margin-left:35px;background:#ebf2f9;padding:12px 15px;border-radius:10px 10px 2px 10px;font-size:var(--fs-12);color:#8497ab;white-space:pre-wrap}.assistant-message{margin-top:18px;font-size:var(--fs-12)}.ai-mark{display:flex;gap:6px;align-items:center;color:#9dafc3;font-size:var(--fs-11);margin-bottom:8px}.assistant-message p{white-space:pre-wrap;line-height:1.9;color:#7b8fa4}.assistant-message button{margin-top:14px}.session-recovery-layer{z-index:150}.color-quick{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;max-width:312px}.color-quick>label{width:100%}.color-more{width:34px;height:34px;place-self:center;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--paper)}.color-more:hover,.color-more[aria-expanded=true]{color:var(--brand);border-color:var(--brand);background:var(--brand-soft)}.color-picker .color-more svg{visibility:visible;color:inherit;background:none;padding:0}.color-library-panel{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-m);padding:12px;background:color-mix(in srgb,var(--paper) 96%,var(--ink))}.color-library-heading{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px;font-size:var(--fs-11);color:var(--muted)}.color-library-scroll{max-height:224px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:3px}.color-library{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.color-library>label{width:100%;height:40px}.color-library .color-swatch{width:28px;height:28px}.color-reveal{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .26s cubic-bezier(.22,1,.36,1),opacity .18s ease}.color-reveal[data-expanded=true]{grid-template-rows:1fr;opacity:1}.color-reveal-clip{min-height:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.color-reveal{transition:none}}.assistant-collapse{height:0;overflow:hidden;opacity:0;transition:height .2s ease,opacity .16s ease}.assistant-collapse.is-open{opacity:1}.form-more-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;height:auto;padding:2px 0;color:var(--brand);font-size:var(--fs-13)}.form-more-toggle svg{transition:transform .18s ease}.form-more-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.form-stack>.form-more{margin-top:-17px;transition:height .2s ease,opacity .16s ease,margin-top .2s ease;min-width:0}.form-stack>.form-more.is-open{margin-top:0}.form-more-body{display:flex;flex-direction:column;gap:17px}.form-more-body>*{flex-shrink:0}@media (prefers-reduced-motion:reduce){.form-more-toggle svg,.form-stack>.form-more{transition:none}}.form-stack>.availability-times{margin-bottom:-17px;transition:height .2s ease,opacity .16s ease,margin-bottom .2s ease}.form-stack>.availability-times.is-open{margin-bottom:0}.assistant-history{flex:1 1;min-height:0;overflow:auto;padding:4px}.assistant-history>p{padding:14px 10px 10px;font-size:var(--fs-12);color:var(--muted)}.assistant-history button{display:flex;gap:12px;justify-content:space-between;width:100%;text-align:left;padding:10px;border-radius:var(--radius-m)}.assistant-history strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.assistant-history small{flex-shrink:0;color:var(--muted)}.assistant-history button:hover,.assistant-history button[aria-current]{background:var(--brand-50)}.assistant-draft{border:1px solid var(--line);border-radius:var(--radius-m);padding:14px;margin-top:16px}.assistant-progress{display:flex;align-items:center;gap:8px;font-size:var(--fs-12);margin-top:12px;color:var(--muted)}.assistant-progress button{margin:0 0 0 auto}.assistant-message,.user-message{overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.assistant-collapse,.form-stack>.availability-times{transition:none}}.assistant-chat-content{transition:opacity .16s ease}.assistant-chat-content.is-switching{opacity:0}@media (prefers-reduced-motion:reduce){.assistant-chat-content{transition:none}}.assistant-history-row{display:flex;align-items:center;gap:4px}.assistant-history-row>button:first-child{flex:1 1;min-width:0}.assistant-history-row>.assistant-history-delete{flex:0 0 36px;width:36px;min-height:36px;padding:8px;justify-content:center}.member-stack{display:inline-flex;align-items:center;margin-right:4px}.member-stack .avatar{width:24px;height:24px;font-size:var(--fs-11);border:2px solid var(--paper,#fff);margin-left:-8px}.member-stack .avatar:first-child{margin-left:0}.member-stack .avatar.more{background:#dfe6ee;color:#5f7288}.member-panel{padding:20px 23px;gap:16px}.member-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.member-row{display:flex;align-items:center;gap:12px;padding:10px 8px;border-radius:var(--radius-m);border:1px solid var(--line)}.member-identity{min-width:0;flex:1 1}.member-identity strong{display:flex;align-items:center;gap:8px;font-size:var(--fs-13);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-identity small{display:block;font-size:var(--fs-11);color:var(--muted)}.member-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}.member-actions .text-button{display:inline-flex;align-items:center;gap:4px}.member-actions{--control-h:var(--control-h-sm)}.member-role{width:auto}.member-invite-row{display:flex;gap:8px}.member-invite-row input{flex:1 1;min-width:0}.member-invite-row .primary{flex-shrink:0}.member-invite-row select{flex:0 0 auto;width:auto}@media (max-width:480px){.member-invite-row{flex-wrap:wrap}.member-invite-row input{flex-basis:100%}.member-invite-row select{flex:1 1}}.member-error{margin:0 23px 20px}@media (max-width:640px){.member-panel{padding:16px}.member-row{flex-wrap:wrap}.member-actions{width:100%;justify-content:flex-start;padding-left:42px}.member-invite-row{flex-direction:column}}.bucket-panel{padding:20px 23px;gap:16px}.bucket-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.bucket-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper,#fff)}.bucket-row.dragging{opacity:.5}.bucket-grip{color:var(--muted);cursor:grab;display:inline-flex}.bucket-swatch{width:12px;height:12px;border-radius:50%;flex-shrink:0}.bucket-row .bucket-name{min-height:34px;padding:4px 8px;font-size:var(--fs-13);border-color:transparent;background:transparent}.bucket-row .bucket-name:focus,.bucket-row .bucket-name:hover{border-color:var(--line);background:var(--paper,#fff)}.bucket-row select{width:auto;max-width:120px}.bucket-order{display:inline-flex;gap:2px}.bucket-delete{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:8px 4px 4px;border-top:1px dashed var(--line)}.bucket-delete .field{flex:1 1;min-width:180px}.bucket-add{display:flex;gap:8px}.bucket-add input{flex:1 1;min-width:0}.bucket-add .secondary{flex-shrink:0}@media (max-width:640px){.bucket-panel{padding:16px}.bucket-row{grid-template-columns:auto auto minmax(0,1fr) auto}.bucket-row select{grid-column:3}.bucket-row .bucket-order{grid-column:3/5;justify-content:flex-end}.bucket-add{flex-direction:column}}.assignee-options{display:grid;gap:8px;max-height:160px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-m);padding:10px 12px}.assignee-options .checkbox-label .avatar{width:22px;height:22px;font-size:var(--fs-11)}.due-overdue{color:#c0392b;font-weight:600}.label-picker{display:grid;gap:10px}.label-grid{display:flex;flex-wrap:wrap;gap:6px}.label-chip{position:relative;border:1px solid var(--line);padding:2px 4px 2px 2px;background:var(--paper,#fff)}.label-chip,.label-chip label{display:inline-flex;align-items:center;border-radius:999px}.label-chip label{gap:6px;padding:3px 4px 3px 3px;font-size:var(--fs-11);cursor:pointer}.label-chip label:has(input:checked){background:color-mix(in srgb,var(--label) 18%,transparent);color:var(--ink)}.label-chip label:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:1px}.label-chip input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.label-chip i{width:14px;height:14px;border-radius:50%;background:var(--label);flex-shrink:0;box-shadow:inset 0 0 0 2px var(--paper,#fff)}.label-chip label:has(input:checked) i{box-shadow:inset 0 0 0 2px var(--paper,#fff),0 0 0 2px var(--label)}.label-chip .icon-button{--icon-button-size:26px}.label-rename{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;border:1px dashed var(--line);border-radius:var(--radius-m)}.label-rename i{width:14px;height:14px;border-radius:50%}.label-rename .inline-error,.label-rename small{grid-column:1/-1;color:var(--muted);font-size:var(--fs-11)}@media (max-width:640px){.label-rename{grid-template-columns:auto minmax(0,1fr)}.label-rename .secondary{grid-column:1/-1}}.checklist-editor{display:grid;gap:8px}.checklist-summary{font-size:var(--fs-11);color:var(--muted)}.checklist-items{list-style:none;margin:0;padding:0;display:grid;gap:4px}.checklist-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.checklist-item input[type=checkbox]{margin:0 0 0 4px}.checklist-item .checklist-title{min-height:34px;padding:4px 8px;font-size:var(--fs-12);border-color:transparent;background:transparent}.checklist-item .checklist-title:focus,.checklist-item .checklist-title:hover{border-color:var(--line);background:var(--paper,#fff)}.checklist-item.is-done .checklist-title{color:var(--muted);text-decoration:none}.checklist-tools{display:inline-flex;gap:0}.checklist-tools .icon-button{--icon-button-size:28px}.checklist-add{display:flex;gap:8px}.checklist-add input{flex:1 1;min-width:0}.badge.checklist-count{margin-left:8px;vertical-align:middle}@media (max-width:720px){.checklist-add{flex-wrap:wrap}}.delete-confirm{flex-wrap:wrap;align-items:center}.delete-confirm>div{flex:1 1 100%}.delete-confirm p{margin:4px 0 0;font-size:var(--fs-11)}.primary.danger-fill{background:#c0392b;border-color:#c0392b}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.viz-root{color-scheme:light;--viz-surface:var(--paper,#fff);--viz-todo:#4a3aa7;--viz-doing:#2a78d6;--viz-overdue:#e34948;--viz-done:#008300;--viz-single:#2a78d6;--viz-track:#eef1f5;padding:0 22px 12px}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])) .viz-root{color-scheme:dark;--viz-todo:#9085e9;--viz-doing:#3987e5;--viz-overdue:#e66767;--viz-done:#008300;--viz-single:#3987e5;--viz-track:#2a2f36}}:root[data-theme=dark] .viz-root{color-scheme:dark;--viz-todo:#9085e9;--viz-doing:#3987e5;--viz-overdue:#e66767;--viz-done:#008300;--viz-single:#3987e5;--viz-track:#2a2f36}.viz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.viz-figure{margin:0;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--viz-surface);display:flex;flex-direction:column;gap:12px}.viz-figure figcaption{display:flex;flex-direction:column;gap:2px}.viz-figure figcaption strong{font-size:var(--fs-13)}.viz-figure figcaption span{font-size:var(--fs-11);color:var(--muted)}.viz-rows{display:grid;gap:8px}.viz-row{display:grid;grid-template-columns:96px minmax(0,1fr) 32px;align-items:center;gap:10px;font-size:var(--fs-11)}.viz-label{display:inline-flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.viz-label i{width:8px;height:8px;border-radius:50%;flex-shrink:0}.viz-value{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted)}.viz-track{display:flex;gap:2px;height:18px;border-radius:0 4px 4px 0;background:var(--viz-track);overflow:hidden}.viz-seg{height:100%;min-width:6px;padding:0;border:0;border-radius:0;cursor:pointer;transition:opacity .15s,filter .15s}.viz-seg:last-child{border-radius:0 4px 4px 0}.viz-seg:focus-visible,.viz-seg:hover{filter:brightness(1.12)}.viz-seg[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:-2px}.viz-todo{background:var(--viz-todo)}.viz-doing{background:var(--viz-doing)}.viz-overdue{background:var(--viz-overdue)}.viz-done{background:var(--viz-done)}.viz-single{background:var(--viz-single)}.viz-swatch{display:inline-block;width:10px;height:10px;border-radius:2px}.viz-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:var(--fs-11);color:var(--muted)}.viz-legend li{display:inline-flex;align-items:center;gap:6px}.viz-table summary{font-size:var(--fs-11);color:var(--muted);cursor:pointer}.viz-table table{width:100%;margin-top:8px;border-collapse:collapse;font-size:var(--fs-11)}.viz-table td,.viz-table th{padding:4px 6px;border-bottom:1px solid var(--line);text-align:left}.viz-table td{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.viz-tooltip{position:fixed;z-index:30;pointer-events:none;padding:6px 9px;border-radius:var(--radius-s);background:var(--ink);color:var(--paper,#fff);font-size:var(--fs-11);white-space:nowrap;box-shadow:var(--shadow-2)}.viz-empty{padding:8px 22px 12px}@media (max-width:960px){.viz-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.viz-root{padding:0 16px 12px}.viz-row{grid-template-columns:76px minmax(0,1fr) 28px;gap:8px}.viz-track{height:22px}}@media (prefers-reduced-motion:reduce){.viz-seg{transition:none}}.pcal{padding:0 22px 18px;display:grid;gap:12px;min-width:0}.pcal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pcal-toolbar .button-group{display:flex;align-items:center;gap:4px}.pcal-title{margin-left:8px;font-size:var(--fs-13)}.pcal-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;align-items:start}.pcal-viewport{container-type:inline-size;min-width:0;overflow-x:auto;overflow-anchor:none;overscroll-behavior-x:contain}.pcal-strip{display:flex;align-items:flex-start;width:100%}.pcal-period{flex:0 0 100%;min-width:1122px}.pcal-strip.is-month .pcal-period{min-width:988px}.pcal-week{display:grid;grid-template-columns:repeat(7,minmax(160px,1fr));border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper,#fff)}.pcal-day{min-height:220px;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:background .18s}.pcal-day:last-child{border-right:0}.pcal-day header{display:flex;align-items:baseline;gap:4px;padding:8px 8px 6px;border-bottom:1px solid var(--line);font-size:var(--fs-11);color:var(--muted)}.pcal-day header strong{font-size:15px;color:var(--ink)}.pcal-day.is-today header strong{color:var(--brand)}.pcal-cell.over,.pcal-day.over,.pcal-tray.over{background:#eef3f8;box-shadow:inset 0 0 0 2px var(--brand)}.pcal-day-body{position:relative;padding:6px 4px;flex:1 1;min-height:calc(var(--lanes, 0) * 34px + 44px)}.pcal-bar-wrap{position:absolute;z-index:1;left:4px;top:calc(6px + var(--lane) * 34px);width:calc(var(--span) * 100% + (var(--span) - 1) * 1px - 8px)}.pcal-day .pcal-empty{position:absolute;left:0;right:0;top:calc(6px + var(--lanes, 0) * 34px)}.pcal-chip{-webkit-user-select:none;user-select:none;-webkit-user-drag:element;display:inline-flex;align-items:center;gap:6px;width:100%;min-height:28px;padding:3px 8px 3px 6px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper,#fff);font-size:var(--fs-11);text-align:left;color:var(--ink);cursor:grab;transition:transform .15s,box-shadow .15s,opacity .15s}.pcal-chip,.pcal-chip:hover{box-shadow:var(--shadow-1)}.pcal-chip.dragging{opacity:.45}.pcal-chip.spans{background:color-mix(in srgb,var(--project-color,#00448d) 14%,var(--paper,#fff))}.pcal-chip i{width:8px;height:8px;border-radius:50%;background:var(--project-color,#00448d);flex-shrink:0}.pcal-chip>span:first-of-type{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pcal-chip.status-done>span:first-of-type{color:var(--muted);text-decoration:none}.pcal-chip.overdue{border-color:#e34948;color:#c0392b}.pcal-chip .avatar{width:18px;height:18px;font-size:var(--fs-11)}.pcal-empty{margin:0;padding:10px 4px;font-size:var(--fs-11);color:var(--muted);text-align:center}.pcal-month{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));gap:1px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--line)}.pcal-weekday{padding:6px 8px;font-size:var(--fs-11);color:var(--muted)}.pcal-cell,.pcal-weekday{background:var(--paper,#fff)}.pcal-cell{min-height:96px;padding:6px;display:flex;flex-direction:column;gap:3px;transition:background .18s}.pcal-cell strong{font-size:var(--fs-12)}.pcal-cell.is-today strong{color:var(--brand)}.pcal-cell.other-month{opacity:.55}.pcal-cell .pcal-chip{min-height:24px;padding:2px 6px 2px 5px;font-size:var(--fs-11)}.pcal-more{padding:2px 4px;border:0;background:transparent;font-size:var(--fs-11);color:var(--brand);text-align:left}.pcal-tray{border:1px dashed var(--line);border-radius:var(--radius-m);padding:12px;min-height:160px;transition:background .18s}.pcal-tray h3{display:flex;align-items:center;gap:6px;font-size:var(--fs-12)}.pcal-tray>p{font-size:var(--fs-11);margin:6px 0 10px}.pcal-tray-list{display:grid;gap:6px}@media (max-width:960px){.pcal-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.pcal{padding:0 16px 16px}.pcal-toolbar .button-group{flex-basis:100%;order:0}.pcal-toolbar>.view-switch{flex:0 0 auto;order:1}.pcal-scroll-controls{margin-left:auto;order:1}.pcal-toolbar .pcal-repeats{flex-basis:100%;order:2}.pcal-strip.is-week .pcal-period{min-width:calc(700cqw + 2px)}.pcal-week{display:flex;border-radius:var(--radius-m)}.pcal-day{flex:0 0 100cqw;max-width:100cqw;min-height:180px}.pcal-bar-wrap{width:calc(100% - 8px)}.pcal-cell{min-height:64px;padding:4px}.pcal-cell .pcal-chip{width:auto;min-height:18px;padding:2px 4px}.pcal-cell .pcal-chip .avatar{display:none}}.pcal-mine{display:grid;gap:4px;margin:calc(var(--lanes, 0) * 34px) 0 0;padding:0;list-style:none}.pcal-block{display:grid;gap:1px;width:100%;padding:4px 6px;border:1px dashed color-mix(in srgb,var(--project-color,#00448d) 45%,var(--line));border-left:3px solid var(--project-color,#00448d);border-radius:var(--radius-m);background:color-mix(in srgb,var(--project-color,#00448d) 6%,var(--paper,#fff));font-size:var(--fs-11);text-align:left;color:var(--ink);cursor:pointer;transition:background .15s}.pcal-block:hover{background:color-mix(in srgb,var(--project-color,#00448d) 12%,var(--paper,#fff))}.pcal-block.past{opacity:.6}.pcal-block time{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pcal-block span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pcal-mine-total{color:var(--muted)}@media (prefers-reduced-motion:reduce){.pcal-block,.pcal-cell,.pcal-chip,.pcal-day,.pcal-tray{transition:none}}.pcal-day-list{display:none}@media (max-width:720px){.pcal-day .pcal-bar-wrap,.pcal-day .pcal-empty{display:none}.pcal-day-body{min-height:120px}.pcal-mine{margin-top:6px}.pcal-day-list:empty:has(+.pcal-mine):after{display:none}.pcal-day-list{display:grid;gap:6px}.pcal-day-list:empty:after{content:"拖任务到这里";display:block;padding:10px 4px;text-align:center;font-size:var(--fs-11);color:var(--muted)}.selection-content .panel-heading,.selection-content .panel-heading .button-group{flex-wrap:wrap;max-width:100%}.selection-content .panel-heading .button-group{justify-content:flex-end;gap:8px}}.today-picks h3{padding:4px 22px 6px;font-size:var(--fs-11);color:var(--muted)}.task-comments{display:grid;gap:12px}.comment-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-height:320px;overflow:auto}.comment{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start}.comment-body{min-width:0}.comment-head{display:flex;align-items:center;gap:8px;font-size:var(--fs-11);color:var(--muted)}.comment-head strong{color:var(--ink);font-size:var(--fs-12)}.comment-actions{margin-left:auto;display:inline-flex}.comment-actions .icon-button{--icon-button-size:28px}.comment-html{font-size:var(--fs-12);line-height:1.55;word-break:break-word}.comment-html p{margin:4px 0 0}.comment-html ol,.comment-html ul{margin:4px 0 0;padding-left:20px}.comment-html a{color:var(--brand);text-decoration:underline}.comment-html [data-mention]{color:var(--brand);font-weight:600}.comment-placeholder{margin:4px 0 0;font-size:var(--fs-11);font-style:italic;color:var(--muted)}.comment-composer,.comment-edit{display:grid;gap:8px}.comment-composer textarea,.comment-edit textarea{min-height:72px}.comment-composer-actions,.comment-edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.comment-mention{position:relative;margin-right:auto}.comment-preview{padding:8px 10px;border:1px dashed var(--line);border-radius:var(--radius-m);background:#f7f9fb}.comment-empty,.comment-loading{font-size:var(--fs-11);display:flex;align-items:center;gap:6px}.badge.comment-count{margin-left:8px;vertical-align:middle}.notifications-menu,.notifications-trigger{position:relative}.notifications-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#c0392b;color:#fff;font-size:var(--fs-11);font-weight:600;line-height:16px;text-align:center}.notifications-panel{width:340px;max-width:calc(100vw - 32px);padding:0}.notifications-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);font-size:var(--fs-13)}.notifications-list{list-style:none;margin:0;padding:4px 0;max-height:60vh;overflow:auto}.notification{display:grid;grid-template-columns:8px minmax(0,1fr);align-items:start;gap:10px;width:100%;padding:10px 14px;border:0;background:transparent;text-align:left;font-size:var(--fs-12);line-height:1.45;color:var(--ink)}.notification:focus-visible,.notification:hover{background:#f4f7fb}.notification-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:transparent}.notification.is-unread .notification-dot{background:var(--brand)}.notification.is-unread .notification-text{font-weight:600}.notification-text small{display:block;margin-top:2px;font-size:var(--fs-11);font-weight:400;color:var(--muted)}.notifications-empty{padding:18px 14px;font-size:var(--fs-12);color:var(--muted)}.notification-settings{padding:18px 22px;gap:12px}.notification-settings .checkbox-label{font-size:var(--fs-12);color:var(--ink)}@media (max-width:720px){.notifications-menu{position:static}.notifications-panel{position:fixed;inset:64px 12px auto;width:auto;max-width:none}}.notifications-head strong{white-space:nowrap}.task-attachments{display:grid;gap:10px}.attachment-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.attachment{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-m)}.attachment.is-preview{border-color:var(--brand)}.attachment.has-error{border-color:#e34948}.attachment-thumb{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-m);background:#f4f7fb;color:var(--muted);overflow:hidden}.attachment-thumb img{width:100%;height:100%;object-fit:cover}.attachment-meta{min-width:0;display:grid;gap:2px}.attachment-meta a,.attachment-meta>span{font-size:var(--fs-12);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-meta small{font-size:var(--fs-11);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-meta progress{width:100%;height:6px}.attachment-actions{display:inline-flex}.attachment-actions .icon-button{--icon-button-size:30px}.attachment-add{display:grid;gap:8px}.attachment-link{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:6px}.attachment-preview-choice select{width:auto}.attachment-empty,.attachment-loading{font-size:var(--fs-11)}@media (max-width:720px){.attachment-link{grid-template-columns:minmax(0,1fr)}}.sprint-plans{display:flex;flex-direction:column;gap:18px}.sprint-plan-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 22px}.sprint-plan-head h3{font-size:var(--fs-13)}.sprint-hint{padding:0 22px 12px;font-size:var(--fs-12)}.sprint-column.active{flex-basis:340px;max-width:340px}.sprint-column.closed{opacity:.85}.sprint-head{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-bottom:1px solid var(--line)}.sprint-head-row{display:flex;align-items:center;gap:6px}.sprint-head h3{font-size:var(--fs-12);flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sprint-dates,.sprint-stats{font-size:var(--fs-11);color:var(--muted)}.sprint-stats{display:flex;flex-wrap:wrap;gap:2px 10px}.sprint-effort,.sprint-stats{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.burndown{margin:0;padding:8px 10px 6px;display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--line);--viz-single:#2a78d6}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])) .burndown{--viz-single:#3987e5}}:root[data-theme=dark] .burndown{--viz-single:#3987e5}.burndown svg{width:100%;height:auto;display:block}.burndown-grid{stroke:var(--line)}.burndown-ideal{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:4 3}.burndown-actual{fill:none;stroke:var(--viz-single);stroke-width:2;stroke-linejoin:round}.burndown-dot{fill:var(--viz-single);stroke:var(--paper,#fff);stroke-width:2}.burndown text{font-size:var(--fs-11);fill:var(--muted)}.burndown-legend{display:flex;gap:12px;list-style:none;margin:0;padding:0;font-size:var(--fs-11);color:var(--muted)}.burndown-legend i{display:inline-block;width:14px;margin-right:4px;vertical-align:middle;border-top:2px solid var(--viz-single)}.burndown-legend i.ideal{border-top:2px dashed var(--muted)}.burndown .viz-table,.burndown-loading{font-size:var(--fs-11)}.burndown-loading{padding:8px 12px}.bucket-row.sprint-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}.sprint-row-fields{display:grid;grid-template-columns:minmax(0,1fr) 132px 132px;gap:6px;flex:1 1 100%}.sprint-row-fields input{min-width:0}.sprint-row-meta{display:flex;align-items:center;gap:8px;flex:1 1 100%;font-size:var(--fs-12)}.sprint-row-meta .muted{flex:1 1}.sprint-delete{flex:1 1 100%}.sprint-add{display:flex;flex-direction:column;gap:10px;padding-top:8px;border-top:1px solid var(--line)}@media (max-width:720px){.sprint-hint,.sprint-plan-head{padding-left:16px;padding-right:16px}.sprint-column.active{flex-basis:280px;max-width:280px}.sprint-row-fields{grid-template-columns:minmax(0,1fr)}}.sprint-close{flex-direction:column;align-items:stretch}.sprint-carry{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-12)}.sprint-carry label{display:flex;align-items:center;gap:8px;min-height:32px}.sprint-carry input[type=radio]{width:16px;height:16px;margin:0;accent-color:var(--brand)}.plan-copy-options{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;border:0}.plan-copy-options legend{font-size:var(--fs-12);color:var(--muted);margin-bottom:6px}.plan-copy-options .check-row{display:flex;align-items:center;gap:8px;min-height:32px;font-size:var(--fs-13)}.plan-copy-options input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--brand)}.plan-share-url{display:flex;gap:8px}.plan-share-url input{flex:1 1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-12)}.task-guest-note{margin:0 0 4px;font-size:var(--fs-13)}.plan-share-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:var(--fs-12)}.share-page{min-height:100dvh;background:var(--bg);color:var(--ink)}.share-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--paper,#fff)}.share-head h1{font-size:20px;display:inline-flex;align-items:center;gap:10px}.share-head h1 i{width:12px;height:12px;border-radius:50%;display:inline-block}.share-head .muted{font-size:var(--fs-12)}.share-head .share-brand{margin-left:auto;font-size:var(--fs-12);color:var(--muted)}.share-body{max-width:1280px;margin:0 auto;padding:18px 16px 40px}.share-body .panel{border:1px solid var(--line);border-radius:var(--radius-l);background:var(--paper,#fff);overflow:hidden}.share-body .panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 22px}.share-body .panel-heading h2{font-size:15px}.share-task-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper,#fff);color:var(--ink);text-align:left;font-size:var(--fs-13)}.share-task-row .muted{font-size:var(--fs-11)}.share-detail{display:grid;gap:12px;padding:18px 22px;font-size:var(--fs-13)}.share-detail dl{display:grid;grid-template-columns:72px minmax(0,1fr);gap:6px 12px;margin:0}.share-detail dt{color:var(--muted);font-size:var(--fs-12)}.share-detail dd{margin:0}.share-detail ul{margin:0;padding-left:18px}.share-detail .done{text-decoration:none;color:var(--muted)}.share-status{min-height:60dvh;display:grid;place-items:center;text-align:center;padding:24px}@media (max-width:720px){.share-body .panel-heading,.share-head{padding:14px 16px}.plan-share-url{flex-direction:column}}.task-transfer,.task-transfer-panel{display:flex;flex-direction:column;gap:10px}.task-transfer-panel{padding:12px;border:1px dashed var(--line);border-radius:var(--radius-m)}.task-transfer-panel.warn{border-color:#e34948}.task-transfer-panel.warn .muted{color:#b52f2f}.portfolio-create{display:grid;gap:12px;padding:18px 22px;margin:0 0 18px}.portfolio-layout{display:flex;flex-direction:column;gap:18px}.portfolio-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.portfolio-list>li{flex:1 1 240px;max-width:360px}.portfolio-list>li.full-width{flex-basis:100%;max-width:none}.portfolio-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper,#fff);color:var(--ink);text-align:left;transition:box-shadow .18s,border-color .18s}.portfolio-card:hover{box-shadow:var(--shadow-2)}.portfolio-card.selected{border-color:var(--brand);box-shadow:inset 3px 0 var(--brand)}.portfolio-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-m);background:var(--brand-soft);color:var(--brand);flex-shrink:0}.portfolio-card-body{display:flex;flex-direction:column;gap:2px;min-width:0}.portfolio-card-body small{color:var(--muted);font-size:var(--fs-11)}.portfolio-detail{display:flex;flex-direction:column}.portfolio-detail .panel-heading{justify-content:space-between;align-items:flex-start}.portfolio-detail .panel-heading,.portfolio-section{display:flex;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.portfolio-section{flex-direction:column}.portfolio-section:last-child{border-bottom:0}.portfolio-section h3{font-size:var(--fs-13)}.portfolio-plans{list-style:none;margin:0;padding:0;display:grid;gap:10px}.portfolio-plan{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--bg)}.portfolio-plan-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.portfolio-plan-head i{width:10px;height:10px;border-radius:50%;flex-shrink:0}.portfolio-plan-head strong{flex:1 1;min-width:120px}.portfolio-plan-head .muted{font-size:var(--fs-12)}.portfolio-status select{width:auto;font-weight:600}.portfolio-status select.status-on_track{color:#1b7a3d}.portfolio-status select.status-at_risk{color:#b26a00}.portfolio-status select.status-off_track{color:#b52f2f}.portfolio-status select.status-closed{color:var(--muted)}.portfolio-dates{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.key-date{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;border:1px solid var(--line);background:var(--paper,#fff);font-size:var(--fs-12)}.key-date strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.key-date button{display:inline-flex;padding:2px;border:0;background:transparent;color:var(--muted);min-height:0}.key-date-add{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.key-date-add input{width:auto}.key-date-add input:first-child{flex:1 1;min-width:140px}.portfolio-add-plan .member-invite-row select{flex:1 1;min-width:0}@media (max-width:720px){.portfolio-create,.portfolio-detail .panel-heading,.portfolio-section{padding:14px 16px}}.portfolio-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.portfolio-filters h3{flex:1 1}.portfolio-filters select{width:auto}.portfolio-row,.portfolio-table-head{display:grid;grid-template-columns:minmax(140px,1.6fr) minmax(70px,.8fr) 64px minmax(110px,1.2fr) 92px 92px 44px auto;align-items:center;gap:10px}.portfolio-table-head{padding:0 14px;font-size:var(--fs-11);color:var(--muted)}.portfolio-plans.viz-root{padding:0}.portfolio-cell-name{display:inline-flex;align-items:center;gap:8px;min-width:0;font-weight:600}.portfolio-cell-name i{width:10px;height:10px;border-radius:50%;flex-shrink:0}.portfolio-cell-name .link-button{padding:0;border:0;background:transparent;color:var(--brand-dark,#00366f);font:inherit;font-weight:600;text-align:left;min-height:0;cursor:pointer}.portfolio-cell-name .link-button:hover{text-decoration:underline}.portfolio-cell{font-size:var(--fs-12);display:inline-flex;align-items:baseline;gap:4px;min-width:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.portfolio-cell.overdue{color:#b52f2f;font-weight:600}.portfolio-dist .viz-track{width:100%;height:12px}.portfolio-row .icon-button,.portfolio-row .portfolio-status{justify-self:end}.portfolio-row>.portfolio-status~.icon-button{margin-left:-4px}@media (max-width:960px){.portfolio-table-head{display:none}.portfolio-row{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-row .portfolio-cell-name{grid-column:1/-1}.portfolio-cell:before{content:attr(data-label) " ";color:var(--muted);font-weight:400}.portfolio-dist{grid-column:1/-1;display:flex;align-items:center}.portfolio-row .icon-button,.portfolio-row .portfolio-status{justify-self:start}}.portfolio-actions{display:inline-flex;align-items:center;gap:4px;justify-self:end}.portfolio-dist .viz-seg{display:block;border-radius:0;min-width:4px}.portfolio-cell:before{white-space:nowrap}@media (max-width:960px){.portfolio-cell{white-space:nowrap}.portfolio-actions{grid-column:1/-1;justify-self:start}}.roadmap{display:flex;flex-direction:column;gap:10px}.roadmap .gantt-scroll.panel{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-m)}.roadmap-row .gantt-label:disabled{cursor:default;opacity:.85}.roadmap-row .task-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.roadmap-bar{padding:0;height:26px;overflow:visible}.roadmap-sprint{position:absolute;top:3px;bottom:3px;display:flex;align-items:center;padding:0 6px;border-radius:var(--radius-s);background:#ffffff33;border:1px solid #ffffff88;font-size:var(--fs-11);color:#fff;white-space:nowrap;overflow:hidden;box-sizing:border-box}.roadmap-sprint.active{background:#ffffff59}.roadmap-sprint.closed{opacity:.6}.roadmap-key{color:#b26a00;border-color:#d9a441;display:flex;flex-direction:column;align-items:flex-start;height:auto;line-height:1.1}.roadmap-key small{font-size:var(--fs-11);color:var(--muted);white-space:nowrap}.draft-assignees{display:flex;flex-wrap:wrap;gap:4px 14px}.draft-assignees .check-row{display:inline-flex;align-items:center;gap:6px;min-height:32px;font-size:var(--fs-13)}.draft-assignees input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--brand)}.draft-extras{display:block;color:var(--muted)}.task-assistant{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius-m);background:var(--brand-soft)}.task-assistant.state-blocked{border-left-color:#e34948}.task-assistant.state-review{border-left-color:#d99a00}.task-assistant-head{display:flex;align-items:center;gap:8px;font-size:var(--fs-13)}.task-assistant-head .muted{font-size:var(--fs-11)}.task-assistant-result{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-13)}.task-assistant-summary{white-space:pre-wrap}.task-assistant-fields{margin:0;padding-left:18px;font-size:var(--fs-12);color:var(--muted)}.plan-reports-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end}.report-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.report-row{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper,#fff)}.report-row.selected{border-color:var(--brand)}.report-open{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:0;background:transparent;color:var(--ink);font-size:var(--fs-12);text-align:left}.report-open>span:first-of-type{flex:1 1;min-width:0}.report-row .inline-error{display:block;padding:0 12px 8px}.report-body{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--bg)}.report-markdown{font-size:var(--fs-13);line-height:1.6}.report-markdown h3{font-size:15px;margin:6px 0 4px}.report-markdown h4{font-size:var(--fs-13);margin:8px 0 2px}.report-markdown p{margin:4px 0}.report-markdown ul{margin:4px 0;padding-left:20px}@media (max-width:720px){.plan-reports-form{grid-template-columns:minmax(0,1fr)}}.comment-reactions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:6px}.reaction-chip{appearance:none;border:1px solid var(--line);background:var(--surface-2);color:inherit;font:inherit;font-size:var(--fs-12);border-radius:999px;padding:1px 8px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}.reaction-chip:disabled{cursor:default}.reaction-chip.is-mine{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.reaction-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.reaction-add{position:relative;display:inline-flex}.reaction-picker{position:absolute;left:0;top:100%;z-index:3;display:flex;gap:2px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:var(--shadow-2);animation:fade-in .14s ease}.reaction-picker button{appearance:none;border:0;background:transparent;font-size:18px;line-height:1;padding:4px 6px;border-radius:6px;cursor:pointer}.reaction-picker button:hover{background:var(--surface-2)}.share-comments{margin-top:12px}.share-comments .comment-list{margin-top:6px}@media (prefers-reduced-motion:reduce){.reaction-chip,.reaction-picker{transition:none;animation:none}}.estimate-hint{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:var(--radius-m);background:var(--bg);border:1px solid var(--line);font-size:var(--fs-12);line-height:1.5;color:var(--ink)}.estimate-hint svg{flex:none;margin-top:2px;color:#c9a24a}.estimate-hint span{flex:1 1}.estimate-hint .text-button{flex:none;white-space:nowrap}.plan-hints{padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-m);margin-bottom:17px}.plan-hints h3{display:flex;align-items:center;gap:7px;font-size:var(--fs-12);color:#a5843a}.plan-hints p{font-size:var(--fs-11);line-height:1.5;margin-top:7px}.compare-wrap{margin:14px 0 4px;overflow-x:auto;-webkit-overflow-scrolling:touch}.compare-table{width:100%;min-width:560px;border-collapse:collapse;font-size:var(--fs-12)}.compare-table td,.compare-table th{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.compare-table thead th{font-weight:500;color:var(--muted)}.compare-table thead th label{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--ink);cursor:pointer}.compare-table thead th label.is-on{color:var(--brand)}.compare-table thead th small{display:block;margin-top:4px;font-size:var(--fs-11);color:var(--muted);font-weight:400}.compare-table tbody th{font-weight:500;color:var(--muted);white-space:nowrap;width:6em}.compare-table td.is-on{background:var(--brand-soft)}.compare-wrap>.muted{font-size:var(--fs-11);margin-top:8px}.plan-connection{display:grid;gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}.plan-connection h3{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--fs-14)}.plan-connection-facts{display:grid;gap:4px;margin:0;font-size:var(--fs-13)}.plan-connection-facts>div{display:flex;gap:var(--space-3)}.plan-connection-facts dt{flex:0 0 64px;color:var(--text-3)}.plan-connection-facts dd{margin:0;min-width:0;overflow-wrap:anywhere}.plan-connection-facts a{display:inline-flex;align-items:center;gap:3px}.plan-connection-confirm{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--fs-12)}.github-connect-url{display:flex;gap:var(--space-2)}.github-connect-url input{flex:1 1;min-width:0}.github-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2) var(--space-4);margin:0;padding:var(--space-3) 0 0;border:0;border-top:1px solid var(--line)}.github-map legend{padding:0;font-size:var(--fs-12);color:var(--text-3)}.github-map label{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--fs-13)}.github-map select{width:auto}.github-connect.form-stack,.plan-connection .form-stack{padding:0}.plan-connection .button-group{justify-content:flex-start;flex-wrap:wrap}.task-remote{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--fs-13);--control-h:var(--control-h-sm)}.task-remote a{color:var(--brand)}.task-remote-sync{font-size:var(--fs-12);color:var(--text-3)}.task-remote-sync.is-pending{color:var(--warn)}.task-remote-sync.is-failed{color:var(--danger)}.task-remote-milestone{display:inline-flex;align-items:center;gap:6px;color:var(--text-3)}.task-remote-milestone select{width:auto}.plan-settings-dialog{display:flex;flex-direction:column;height:72vh;max-height:640px;min-height:0}.plan-settings-tabs{display:flex;gap:20px;padding:0 23px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;flex-shrink:0}.plan-settings-tabs::-webkit-scrollbar{display:none}.plan-settings-tabs button{height:40px;padding:0 2px;margin-bottom:-1px;border-bottom:2px solid transparent;font-size:var(--fs-13);font-weight:500;color:var(--text-2);white-space:nowrap;transition:color .15s,border-color .15s}.plan-settings-tabs button:hover{color:var(--ink)}.plan-settings-tabs button[aria-selected=true]{color:var(--ink);font-weight:600;border-bottom-color:var(--brand)}.plan-settings-body{flex:1 1;min-height:0;position:relative;overflow:hidden}.persistent-tab-panel{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility 0s .18s}.persistent-tab-panel[data-active=true]{opacity:1;visibility:visible;transition-delay:0s}.plan-settings-dialog>.inline-error{margin:0 23px 18px}@media (prefers-reduced-motion:reduce){.persistent-tab-panel{transition:none}}.assistant-older{align-self:center;margin:4px 0 8px;font-size:var(--fs-12)}.auth-page{display:grid;grid-template-columns:1.05fr 1fr;min-height:100dvh;background:#fff}.auth-story{display:flex;flex-direction:column;padding:40px 54px;position:relative;overflow:hidden}.auth-story:before{content:"";position:absolute;width:550px;height:550px;border:1px solid #d7e1ec88;border-radius:50%;left:-140px;bottom:-280px;box-shadow:0 0 0 70px #dde5ee33,0 0 0 140px #dde5ee22;pointer-events:none}.auth-copy{margin:auto 0;padding:45px 0;position:relative;z-index:1}.auth-copy>.eyebrow{color:#9eadbe;font-size:var(--fs-11)}.auth-copy h1{font-size:37px;line-height:1.65;letter-spacing:-1.5px;margin:17px 0}.auth-copy>p{line-height:2}.auth-illustration{max-width:360px;padding:22px 22px 16px;margin-top:36px;transform:rotate(-2deg)}.illustration-row{display:flex;gap:14px;margin-bottom:12px}.illustration-row>span{font-size:var(--fs-11);color:#a8b5c3;padding-top:10px}.illustration-row>div{flex:1 1;position:relative;border-left:3px solid #9fb4cb;padding:10px 14px}.illustration-row small{display:block;font-size:var(--fs-11)}.illustration-row strong{font-size:var(--fs-12);font-weight:500}.illustration-row.muted-row>div{background:#f2f1ed;border-color:#cbd3bd}.illustration-row.muted-row small{color:#b5b8a8}.illustration-row.muted-row strong{color:#9fa990}.illustration-note{align-items:center;justify-content:center;gap:7px;padding:9px 0 0;color:#a3b1c0}.auth-footer,.illustration-note{display:flex;font-size:var(--fs-11)}.auth-footer{position:relative;justify-content:space-between;color:#a2b0bf}.auth-footer>span{font-size:var(--fs-11)}.auth-form-side{display:flex;align-items:center;justify-content:center;padding:50px}.auth-form-box{width:100%;max-width:345px}.auth-form-box>h2{font-size:25px;margin:17px 0 9px;font-weight:600}.auth-form-box>p{font-size:var(--fs-12);color:#9faebd}.auth-registration-notice{margin:16px -12px 0;padding:10px 12px;border-radius:12px;background:var(--brand-soft);color:var(--brand);font-size:var(--fs-12);font-weight:500;line-height:1.7}.auth-form-box>form{display:grid;gap:20px;margin-top:32px}.auth-form-box .field input{background:var(--paper);border-color:var(--control-border);--control-h:44px}.auth-submit{margin-top:4px;justify-content:space-between}.auth-switch{margin-top:23px;text-align:center;font-size:var(--fs-11)!important}.auth-switch a,.auth-switch button{color:#809bb8;font-size:var(--fs-11);padding:0 4px}.auth-info{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:32px;padding-top:22px;border-top:1px solid #ebeff4;color:#acb8c5;font-size:var(--fs-11)}.auth-admin-link{margin-top:14px;text-align:center;font-size:var(--fs-11)}.auth-admin-link a,.auth-switch a{text-decoration:none;transition:color .16s ease}.auth-admin-link a{color:#acb8c5}.auth-form-side .auth-form-box .auth-admin-link a:hover,.auth-form-side .auth-form-box .auth-switch a:hover{color:var(--brand)}.auth-admin-link a:focus-visible,.auth-switch a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){.auth-admin-link a,.auth-switch a{transition:none}}.mobile-auth-brand{display:none}.auth-form-side{position:relative}.auth-form-box>.language-switch{position:absolute;top:24px;right:24px}.language-switch{display:inline-flex;align-items:center;gap:6px;height:var(--control-h-sm);padding:0 10px;border:1px solid var(--control-border);border-radius:var(--control-radius);background-color:var(--paper);color:var(--text-2);font-size:var(--fs-12);font-weight:500;line-height:1;white-space:nowrap;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.language-switch:hover{background-color:var(--surface-2);color:var(--brand)}.language-switch:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}:root[data-theme=dark] .language-switch{border-color:var(--line);background-color:var(--paper);color:var(--muted)}:root[data-theme=dark] .language-switch:hover{color:var(--brand)}@media (max-width:720px){.auth-form-box>.language-switch{top:16px;right:16px}.language-switch{height:36px}}@media (prefers-reduced-motion:reduce){.language-switch{transition:none}}@media (min-width:1500px){.today-grid{grid-template-columns:1.8fr 1fr}.panel-heading{padding-top:24px;padding-bottom:24px}.daily-intent{padding:25px}.auth-copy h1{font-size:45px}}@media (max-width:1180px){:root{--sidebar:200px}.brand small{font-size:var(--fs-11)}.today-grid{gap:17px;grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr)}.stats-grid{gap:13px}.stat{padding:16px}.stat>strong{font-size:25px}.stat>strong small{font-size:var(--fs-11)}.daily-intent{padding:18px}.daily-intent p{font-size:var(--fs-11)}.calendar-controls{flex-wrap:wrap}.auth-story{padding:35px}.auth-copy h1{font-size:31px}.auth-form-side{padding:35px}}@media (max-width:960px){.today-grid{grid-template-columns:1fr}.right-stack{grid-template-columns:1fr 1fr;gap:17px}.daily-intent{gap:12px}.daily-intent p{max-width:250px}.daily-intent>button{padding:8px;font-size:var(--fs-12)}.stat>strong{display:block}.stat>strong small{display:block;letter-spacing:0}.stat p,.stat>strong small{font-size:var(--fs-11)}.auth-story{padding:28px}.auth-copy h1{font-size:28px}.auth-form-side{padding:30px}.auth-illustration{padding:18px}.auth-copy>.eyebrow{font-size:var(--fs-11)}}@media (max-width:720px){:root{--sidebar:250px}body{font-size:var(--fs-13)}.daily-intent{padding:18px 16px;flex-wrap:wrap;gap:11px;margin-bottom:18px}.daily-intent .sparkle-box{width:36px;height:36px;border-radius:var(--radius-m)}.daily-intent p{max-width:none}.daily-intent>div:nth-child(2){flex:1 1;min-width:0}.daily-intent>button{margin-left:47px;min-height:36px;padding:7px 12px;gap:13px;font-size:var(--fs-12)}.stats-grid{gap:8px;margin-bottom:20px}.stat{padding:12px 10px;border-radius:var(--radius-m)}.stat>span{gap:3px}.stat>span svg{width:13px;height:13px}.stat>strong{font-size:24px;margin-top:9px;line-height:1.3}.stat>strong small{line-height:1.7;margin-top:4px}.stat p{font-size:var(--fs-11);line-height:1.7}.stat .mini-track{margin-top:9px}.right-stack{grid-template-columns:1fr}.panel-heading{padding:18px}.panel-heading h2{font-size:var(--fs-13)}.timeline-date{margin:0 18px 18px}.timeline-list{padding:0 18px 6px}.schedule-item{gap:12px}.schedule-time{font-size:var(--fs-11);width:35px}.schedule-card{padding:10px}.schedule-title>button:first-child{font-size:var(--fs-12)}.schedule-meta{gap:10px}.schedule-meta>button{padding:5px;font-size:var(--fs-11)}.focus-panel{padding:20px}.focus-panel h2{font-size:17px}.focus-panel p{font-size:var(--fs-11)}.focus-panel>button{font-size:var(--fs-12)}.project-summary{padding:4px 18px 19px}.project-summary>div>span{font-size:var(--fs-12)}.project-summary small,.project-summary>small{font-size:var(--fs-11)}.task-row{padding:14px 17px;gap:11px}.task-check{width:20px;height:20px}.task-name strong,.task-name>span{font-size:var(--fs-12)}.task-name>span{gap:4px}.task-name .dot-sep{margin:0 2px}.task-row .badge{font-size:var(--fs-11);padding:3px 5px}.calendar-controls{margin-bottom:15px}.calendar-controls>div{justify-content:space-between}.button-group{gap:9px;flex-wrap:wrap}.footnote{font-size:var(--fs-12)}.gantt{min-width:880px}.tab-strip{gap:18px}.tab-strip button{font-size:var(--fs-12)}.record-row{padding:15px;gap:10px}.record-row strong{font-size:var(--fs-12)}.record-row p,.record-row small{font-size:var(--fs-11)}.record-row>.record-icon{width:32px;height:32px}.record-row>strong{white-space:nowrap}.event-row{padding:15px}.proposal-history{padding:15px;gap:10px}.proposal-history .badge{font-size:var(--fs-11);padding:2px 5px}.form-stack{padding:20px;gap:17px}.field>span{font-size:var(--fs-11)}.form-stack .field select{flex-shrink:0}.form-grid{gap:13px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.form-actions{padding-top:17px;flex-wrap:wrap}.task-detail-actions{flex-wrap:wrap;gap:10px}.message{padding:10px;font-size:var(--fs-11);gap:7px;align-items:flex-start}.message .icon-button{--icon-button-size:26px}.timer-banner{flex-wrap:wrap;padding:12px;gap:9px}.timer-banner strong{font-size:var(--fs-11);flex-basis:75%}.timer-banner>span:not(.pulse){margin-left:15px}.timer-banner button{margin-left:auto}.toast{bottom:85px;font-size:var(--fs-11);width:max-content;max-width:90%;padding:12px 15px}.working{top:67px;right:13px}.modal-overlay{padding:12px;align-items:center}.modal{max-height:calc(100dvh - 24px);border-radius:var(--radius-l)}.modal>header{padding:14px 18px}.modal>header h2{font-size:15px}.modal-actions{padding:15px;gap:10px;flex-wrap:wrap}.preview-body{padding:17px}.plan-changes>div{padding:12px 7px}.plan-changes strong{font-size:22px}.preview-blocks>div{gap:9px;flex-wrap:wrap}.preview-blocks span{font-size:var(--fs-11)}.preview-blocks strong{font-size:var(--fs-11);min-width:120px}.assistant-panel{width:100%}.assistant-panel>header{padding:10px 10px 10px 18px}.assistant-content{padding:22px 18px}.assistant-composer{padding:14px 18px calc(14px + env(safe-area-inset-bottom))}.assistant-composer textarea{min-height:90px}.send-button{width:40px}.assistant-welcome>button{min-height:45px;font-size:var(--fs-12)}.assistant-message p,.user-message{font-size:var(--fs-13)}.auth-page{display:block;background:#f8fafd}.auth-story{display:none}.auth-form-side{min-height:100dvh;padding:32px 28px 45px;align-items:center}.auth-form-box{max-width:380px}.mobile-auth-brand{display:block;margin-bottom:42px}.auth-form-box>.badge{font-size:var(--fs-11)}.auth-form-box>h2{font-size:26px;margin-top:15px}.auth-form-box>p{font-size:var(--fs-12)}.auth-form-box>form{margin-top:30px;gap:21px}.auth-form-box .field input{background:#fff}.auth-submit{min-height:47px;font-size:var(--fs-13)}.auth-switch{margin-top:25px}.auth-info{font-size:var(--fs-11)}.request-log .record-row>small{max-width:85px;text-align:right}.empty{padding:33px 20px 39px}.empty p{font-size:var(--fs-11)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media (max-width:720px){.daily-intent{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:start;column-gap:12px;row-gap:13px}.daily-intent>button{grid-column:2;margin:0;justify-self:start;font-size:var(--fs-12)}.daily-intent h2{font-size:var(--fs-14)}.daily-intent p{font-size:var(--fs-11);color:#8294a8;line-height:1.8}.page-heading p{font-size:var(--fs-11);color:#768a9f}.stat>span{font-size:var(--fs-11);color:#7a8da2}.stat>strong small{font-size:var(--fs-11);color:#8d9daf}.schedule-meta{font-size:var(--fs-12);color:#7d90a5}.footnote{color:#8092a6}.task-name>span{color:#7e91a6}.field-hint{color:#7d90a4}}.draft-task>div>input{min-width:0;flex:1 1}.draft-edit-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px!important;margin-top:12px}.draft-edit-row>.span-all{grid-column:1/-1}@media (max-width:560px){.draft-edit-row{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--brand-50:#f2f6fb;--brand-100:#e6eef7;--brand-200:#c7d9ec;--brand-400:#729fcb;--brand-600:#2865a6}.brand-symbol{background:var(--brand);box-shadow:var(--shadow-1)}.brand-symbol span{background:#a8c8e8}.daily-intent{border-color:#d4e1ef}.daily-intent h2,.daily-intent>button{color:#00448d}.sparkle-box{color:#2865a6}.focus-panel{border-color:#dce7f3}.focus-panel:after{border-color:#c7d9ec;box-shadow:0 0 0 17px #dce7f333,0 0 0 34px #dce7f322}.focus-panel h2{color:#00448d}.focus-panel .eyebrow,.focus-panel p{color:#6384a7}.focus-panel>button{color:#2865a6;border-color:#ceddec}.focus-panel .pulse{background:#2865a6;box-shadow:0 0 0 4px #00448d10}.auth-story{background:#eaf1f8}.auth-copy h1{color:#00448d}.auth-copy>p{color:#6384a7}.auth-form-box>h2{color:#164575}.illustration-row>div{border-color:#729fcb}.illustration-row strong{color:#2865a6}.illustration-row small{color:#6384a7}.selection-content,.view-content{animation:content-enter .2s ease-out backwards}@keyframes content-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes shade-enter{0%{opacity:0}to{opacity:1}}@keyframes drawer-enter{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}a,button,input,select,textarea{transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.mini-track i{transition:width .26s ease}.assistant-shade,.modal-overlay{animation:shade-enter .16s ease-out both}.modal{animation:content-enter .2s ease-out both}.assistant-panel{animation:drawer-enter .22s ease-out both}.toast{animation:content-enter .18s ease-out both}.panel{border:0;border-radius:0;background:transparent}.panel-heading{border-bottom:1px solid var(--line);margin-bottom:12px}.panel .panel{border:0;box-shadow:none}.stats-grid{gap:0;border-block:1px solid var(--line)}.stat{border:0;border-radius:0;background:transparent}.stat+.stat{border-left:1px solid var(--line)}.daily-intent{background:#f6f8fb;border:0;border-radius:var(--radius-s)}.daily-intent .sparkle-box,.daily-intent>button{background:transparent}.daily-intent>button{border:0;font-size:var(--fs-12)}.focus-panel{background:#f6f8fb;border:0;border-radius:var(--radius-s)}.focus-panel:after{display:none}.focus-panel>button{border:0;border-top:1px solid #dce5ef;padding-inline:12px}.fixed-card,.focus-panel>button,.schedule-card{background:transparent;border-radius:0}.fixed-card{border:0;border-left:2px solid #a4b2c0}.project-summary{border-bottom:1px solid var(--line);padding-block:14px}.project-summary:last-child{border:0}.ai-setup,.assistant-message,.draft-project,.draft-reply,.draft-task{box-shadow:none;border-radius:3px}.assistant-welcome>button{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.auth-illustration{border:0;box-shadow:none;padding-inline:0}.auth-illustration,.illustration-row>div{border-radius:0;background:transparent}.auth-story:before{display:none}.calendar-controls,.calendar-view-controls{flex-wrap:wrap}.calendar-view-switch{position:relative;display:grid;grid-template-columns:repeat(4,44px);border:1px solid var(--line);border-radius:var(--radius-s);padding:3px;isolation:isolate}.calendar-view-switch>button{position:relative;z-index:1;font-size:var(--fs-12);color:#66798f;height:28px}.calendar-view-switch>button[aria-pressed=true]{color:var(--brand);font-weight:600}.calendar-view-indicator{position:absolute;top:3px;bottom:3px;left:3px;width:44px;border-radius:3px;background:#e9f0f8;transform:translateX(calc(var(--view-index) * 44px));transition:transform .22s cubic-bezier(.2,.7,.2,1)}.calendar-viewport{overflow-x:auto;overflow-anchor:none;overscroll-behavior-x:contain;border-block:1px solid var(--line)}.calendar-strip{display:flex;align-items:flex-start;width:100%}.calendar-surface{flex:0 0 100%;min-width:0}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-week{min-width:770px}.calendar-day{min-width:0;border-right:1px solid var(--line)}.calendar-day:last-child{border-right:0}.calendar-day>header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px;padding:12px 10px;border-bottom:1px solid var(--line)}.calendar-date{display:flex;align-items:center;gap:8px;font-size:var(--fs-12)}.calendar-date strong{font-size:18px;font-weight:500}.calendar-date span,.calendar-day>header>small{color:var(--text-3);font-size:var(--fs-11)}.calendar-day.is-today>header{background:#f2f6fb}.calendar-day.is-today .calendar-date{color:var(--brand)}.calendar-week .calendar-day{min-height:440px}.calendar-events{padding:8px}.calendar-event{display:block;width:100%;text-align:left;padding:8px 9px;margin-bottom:8px;border-left:2px solid var(--project-color);background:color-mix(in srgb,var(--project-color) 5%,white);border-radius:2px}.calendar-event:hover{background:color-mix(in srgb,var(--project-color) 12%,white)}.calendar-event small{display:flex;align-items:center;gap:5px;flex-wrap:wrap;color:#64778b;font-size:var(--fs-11)}.calendar-event strong{display:block;font-size:var(--fs-12);line-height:1.7;font-weight:500;margin-block:3px;overflow-wrap:anywhere}.calendar-event>span{color:#718195;font-size:var(--fs-11)}.calendar-empty{color:#8996a5;font-size:var(--fs-12);padding:22px 8px;text-align:center}.month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line);text-align:center;padding:12px 0;font-size:var(--fs-11);color:#718195}.calendar-month .calendar-day{min-height:148px;border-bottom:1px solid var(--line)}.calendar-month .calendar-day:nth-child(7n){border-right:0}.calendar-month .calendar-day>header{border:0;padding:8px}.calendar-month .calendar-date strong{font-size:var(--fs-13)}.calendar-month .calendar-events{padding:0 5px 6px}.calendar-month .calendar-event{padding:3px 5px;margin-bottom:4px}.calendar-month .calendar-event strong{font-size:var(--fs-11);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:0}.calendar-month .calendar-event small,.calendar-more{font-size:var(--fs-11)}.calendar-more{color:var(--brand);padding:4px}.outside-month{background:#fafbfc}.outside-month .calendar-date{color:#8d9aaa}.calendar-agenda .calendar-days,.calendar-day .calendar-days{display:block}.calendar-agenda .calendar-day,.calendar-day.calendar-surface .calendar-day{border:0}.calendar-day.calendar-surface .calendar-events{min-height:350px;padding:12px 0}.calendar-agenda .calendar-event,.calendar-day.calendar-surface .calendar-event{display:grid;grid-template-columns:150px minmax(0,1fr) 140px;align-items:center;gap:12px;background:transparent;border-bottom:1px solid var(--line);padding:12px;margin-bottom:0;border-radius:0}.calendar-agenda .calendar-event:hover,.calendar-day.calendar-surface .calendar-event:hover{background:#f6f8fb}.calendar-agenda .calendar-day{display:grid;grid-template-columns:110px minmax(0,1fr);border-bottom:1px solid var(--line)}.calendar-agenda .calendar-day>header{align-content:start;border:0;flex-direction:column;align-items:start;padding-block:18px}.calendar-agenda .calendar-events{padding:4px 0 4px 10px}.calendar-agenda .calendar-empty{text-align:left;padding:16px 12px}.calendar-agenda .calendar-event{grid-template-columns:130px minmax(0,1fr)}.calendar-agenda .calendar-event>span{grid-column:2}@media (max-width:960px){.calendar-day.calendar-surface .calendar-event{grid-template-columns:120px minmax(0,1fr)}.calendar-day.calendar-surface .calendar-event>span{grid-column:2}}@media (max-width:720px){body{background:#fff}.calendar-controls{align-items:stretch;gap:12px}.calendar-controls>div{width:100%;gap:6px}.calendar-date-controls{justify-content:space-between}.calendar-controls h2{font-size:var(--fs-12)}.calendar-view-controls{justify-content:space-between}.calendar-view-switch{grid-template-columns:repeat(4,36px)}.calendar-view-indicator{width:36px;transform:translateX(calc(var(--view-index) * 36px))}.calendar-month .calendar-day{min-height:120px}.calendar-month .calendar-day>header{padding:6px 3px}.calendar-month .calendar-events{padding:0 2px 4px}.calendar-month .calendar-event{padding:2px}.calendar-month .calendar-event small,.calendar-month .calendar-event strong{font-size:var(--fs-11)}.calendar-month .calendar-event small svg{display:none}.calendar-more{padding:2px;font-size:var(--fs-11)}.calendar-agenda .calendar-day{grid-template-columns:64px minmax(0,1fr)}.calendar-agenda .calendar-day>header{padding-inline:3px}.calendar-agenda .calendar-date{flex-direction:column;gap:2px}.calendar-agenda .calendar-event,.calendar-day.calendar-surface .calendar-event{display:block;padding:10px}.stat{padding-inline:10px}.panel-heading{padding-inline:0}}.account-menu{position:relative}.account-trigger{appearance:none;width:36px;height:36px;padding:0;border:1px solid var(--line-strong);border-radius:50%;box-shadow:none;background-clip:padding-box;line-height:1}.account-initial{display:block;font-family:Noto Sans SC Variable,Noto Sans SC,sans-serif;line-height:1;text-box:trim-both cap alphabetic}.account-initial[data-ideographic=true]{text-box:trim-both ideographic-ink}.account-trigger[aria-expanded=true]{border-color:var(--brand-400)}.account-dropdown{position:absolute;top:calc(100% + 14px);right:0;width:220px;padding:8px;border:1px solid var(--line);border-radius:var(--radius-l);background:#fff;box-shadow:var(--shadow-2)}.account-summary{padding:10px 10px 12px;margin-bottom:5px;border-bottom:1px solid var(--line)}.account-summary span,.account-summary strong{display:block;overflow-wrap:anywhere}.account-summary strong{font-size:var(--fs-13)}.account-summary span{margin-top:4px;font-size:var(--fs-11);color:#8293a6}.account-dropdown button{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border-radius:var(--radius-m);text-align:left;color:#60778e;font-size:var(--fs-13)}.account-dropdown button:focus-visible,.account-dropdown button:hover{background:var(--brand-soft);color:var(--brand)}.settings-back{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:6px 0;color:var(--muted);font-size:var(--fs-12);text-align:left}.settings-content{width:100%;max-width:820px}.personal-settings{display:grid;gap:var(--space-6)}.settings-content .panel{display:flex;flex-direction:column;gap:var(--space-3)}.settings-content .panel>.form-stack{padding:var(--space-2) 0 0}.settings-content .panel>.panel-heading{margin:0}.settings-content .panel>:is(button,.secondary,.primary){align-self:flex-start}@media (max-width:720px){.account-trigger{width:32px;height:32px}.account-dropdown{width:210px}}@media (max-width:480px){.personal-settings .form-grid{grid-template-columns:1fr}}html{scroll-padding-top:72px}